Archivo
SMARTFORMS – Imagen o LOGO dinámico en formulario
Caso: se crear una imagen dinámica, de tal forma que el nombre de la misma sea obtenida desde una variable o un campo de la base de datos. Por ejemplo el logo de la sociedad en la impresión del formulario de orden de compra o pedido.
Solución:
1. Vamos a tomar el ejemplo del logo de la sociedad. Este dato se encuentra en la cabecera de la orden de compra (EKKO-BUKRS).
Definimos una carpeta, una sección de líneas de programa (a ejecutarse antes del logo) y debajo una imagen o gráfico.
2. Vamos a Definiciones globales y declaramos la variable GV_LOGO_OTRAS_SOC debe estar creada en las definiciones globales
3. Vamos al gráfico y definimos lo siguiente:
- image003
- image0041
De esta forma el valor que tomará el LOGO depende del contenido de la variable creada GV_LOGO_OTRAS_SOC y sólo se visualizará si tiene valor.
4. Ahora vamos al código fuente creado. Allí debemos indicar lo siguiente:
En nuestro caso, definimos que los logos se guardan como “LOGO_PED_ZZZZ”, siendo ZZZZ la sociedad, en color y tipo BMAP (BITMAP).
5. Recordar que previamente por la SE78 debemos tener creados los LOGOS con el formato definido.
Smartforms: No existe el mensaje 042 del área de trabajo SSFCOMPOSER
Caso: Se previsualiza un formulario smartforms y genera error C!002 “No existe el mensaje 042 del área de trabajo SSFCOMPOSER”.
Solución: El error puede surgir por:
1. El contenido no se ajusta a la ventana: un objeto es más largo que lo esperado en la ventana, o sea un texto, un logo es más grande que la ventana que la contiene
2. Tabla inconsistente: Hay columnas o filas que faltan en alguna tabla o éstas generan un texto muy largo o con caracteres especiales.
3. Hay una imagen que no existe en el mandante donde se está ejecutando el formulario (en la SE78) o se configuró mal dicha imagen.
Se debe revisar los puntos anteriores. Asimismo se puede crear el mensaje SSFCOMPOSER 042 por la SE91 para aclarar mejor el error.
En mi caso se generaba dinámicamente un logo de una firma, pero cuando se generaba un logo123.jpg y esta imagen no estaba subida en el sistema por la SE78, se generaba este error.