✒️ABAP La arquitectura Smartform
ABAP La arquitectura Smartform
ARQUITECTURA SMARTFORM
Los formularios son una herramienta en SAP que se utilizan para crear documentos o reportes con salida mediante impresión o enviados por correo electrónico o fax.
En SAP existen 4 tipos diferentes de formularios:
- Sapscripts: fueron la primera herramienta de SAP para desarrollar formularios. No es muy amigable y tampoco es muy flexible, pero todavía existen muchos formularios de este tipo en los sitemas SAP.
- Smartforms: reemplazaron a los sapscripts en la versión 4.7 de SAP. Son más amigables al desarrollador, y ofrecen más flexibilidad y otras ventajas, como la posibilidad de enviarlos por correo electrónico en formato PDF
- Adobe Forms: es la última tecnología de SAP en cuanto a formularios. Es producto de una alianza con Adobe. Estos formularios tienen la ventaja de poder ser interactivos, es decir que es posible crear campos que el usuario deba completar y luego ser enviados por correo electrónico o bien procesados por el sistema.
- Sobre Formularios en SAP hay una descripción detallada de los mismos.
1. FORMULARIOS
Se utilizan para hacer hojas de pedido, listados simples, facturas, etc. Para crear formularios se utiliza el SAPscript. Para acceder a los formularios desde la pantalla inicial de SAP R/3 se va al menú "Herramientas", "Tratamientos de textos", "Formularios" o directamente a través de la transacción SE71.
En "Formulario" se escribe el nombre con el que se va a crear, modificar o visualizar. En "objetos parciales" se tiene lo siguiente:
- Cabecera -> Define los atributos del formulario, como tipo, tamaño, forma de visualización, fuentes que utilizará por defecto, entre otros.
- Parrafos -> Define los parrafos que se utilizaran para visualizar los datos.
- String -> Indica como se visualizará un determinado dato en el formulario.
- Pags -> Crea las páginas que se utilizaran en el formulario, como mínimo debe haber una página.
- Ventana -> Ventanas a utilizar en la página o páginas que se hayan creado.
- Ventana página -> Aquí se colocarán las ventanas que se han creado en "Ventana", en la página o páginas que se hayan creado en "Pags".
2. CREAR UN FORMULARIO
1. Lo primero que hay que hacer es ir a la transacción SMARTFORMS y colocarle un nombre al formulario que comience con Z (ej: ZSMARTFORMSX). Si no se tiene activado el pushbutton de "Cabecera", se debe activar y clic al botón "Crear". Saldra una pantalla indicando que el formulario no existe y al presionar ENTER se visualizará una pantalla de cabecera.
2. En Definiciones globales se crean las siguientes variables:
IT_KNA1 / TYPE TABLE OF / TY_KNA1
WA_KNA1 / TYPE / TY_KNA1
3. En Definiciones Globales / tipos declarar la siguiente estructura.
TYPES: BEGIN OF TY_KNA1,
KUNNR TYPE KUNNR,
NAME1 TYPE NAME1, "Nombre 1
LAND1 TYPE LAND1,
ORT01 TYPE ORT01,
PSTLZ TYPE PSTLZ,
END OF TY_KNA1.
4. En Inicialización colocar la siguiente sentencia SQL.
SELECT KUNNR
NAME1
LAND1
ORT01
PSTLZ FROM KNA1 INTO TABLE IT_KNA1.
Y en parámetros de salidas colocar IT_KNA1.
5. Pulsar click derecho sobre la ventana principal y seleccionar tabla.
3. SMARTFORMS
Son objetos de SAP que se utilizan para crear documentos que necesitan ser impresos, visualizados por pantalla o enviados por correo electrónico.
Un formulario Smartform está compuesto por dos objetos:
- El programa impresor: que es donde se definen los datos que se imprimirán en el formulario.
- Formulario: que es donde se define el layout o disposición de los datos.
4. TRANSACCIONES
Se utilizan las siguientes transacciones.
Smartforms -> para crear el layout o disposición de los datos.
Smartstyles -> para crear los estilos a utilizar en el smartform.
SE78 -> Agregar imagen al formulario.
SE73 -> Para subir fuentes, crear códigos de barras que no estén en SAP, para utilizarlos en los formularios.
SE38 -> para crear el programa impresor.
5. ESTILOS
En un smartform, los estilos se usan para definir los atributos del texto como negrita, subrayado, tamaño de letra, alineado etc. Estos estilos se crean en la misma transacción smartforms. Ya que los estilos se crean fuera de cada formulario, estos deben crearse con un nombre que inicie con una letra Z o Y, pudiéndose reutilizar en diferentes formularios.
A la hora de trabajar con estilos se tiene la opción de reutilizar un estilo en varios formularios o crear un estilo por cada formulario. La ventaja de reutilizar los estilos en diferentes formularios es que se ahorrara tiempo, la desventaja es que si por algún motivo se decide cambiar el tamaño de letra de un estilo en particular (o cualquier otro atributo) esto afecta a todos los formularios que utilicen el estilo (esto también puede ser una ventaja, si el objetivo es afectar a todos los formularios).
5.1. Crear estilos
Todos los formularios en SAP tienen que utilizar un estilo, se puede utilizar uno estándar de SAP o crear uno propio.
En los estilos se definen formatos de párrafo que contienen información sobre sangrías, espaciados, configuración de fuentes, texto, colores, etc.
- Ingresar a la transacción smartforms.
- Seleccionar el botón de radio Estilos.
- Digitar un nombre que inicie con una letra Z ó Y ej.: z_estilo_hola_mundo.
- Presionar el botón Crear.
Ahora en la carpeta Form.párrafo hacer click derecho y elegir Crear nodos. Se debe crear un nodo por cada combinación de estilos de fuente que se necesite, por ejemplo si se necesita en el reporte un texto Arial de tamaño 8, otro Arial tamaño 8 pero en negrita y otro Arial tamaño 8 centrado, se deben crear 3 estilos diferentes.
Crear párrafo para formato de texto de un formulario smartform
- Definir las propiedades del nodo de formato de párrafo.
- En la pestaña Sangrías e interlineado se define la alineación (izquierda, centrado, derecha, justificado), márgenes e interlineado.
- En la pestaña Font, se define el nombre de la fuente (letra, es decir si es Arial, Times, etc.), el tamaño, y el formato (si es negrita, cursiva, subrayado y color).
- Del mismo modo que se crean los formatos de párrafo, se crean formatos de caracteres. La diferencia entre ambos es que el primero aplica para todo el texto y los formatos de caracteres aplica a palabras o letras específicas, por ejemplo para resaltar alguna frase en negritas.
- Ahora dar doble click Datos cab. y se define cual será el formato de párrafo predefinido.
Con el boton Form Painter se puede hacer aparecer o desaparecer el panel de diseno grafico.
Si se hace doble click en el arbol a la izquierda:
En el nodo Form Attributes se puede controlar los atributos basicos del formulario:
• En el campo Description una descripcion del formulario, por ejemplo "Formulario de prueba".
• En la solapa General Attributes se puede controlar basicamente traduccion a otros lenguajes.
• En la solapa Output Options se puede controlar principalmente:
Page Format es decir el tipo de hoja que se va a usar, habitualmente DINA4.
Style, el estilo que vamos a usar, en este caso ZESTILO1.
En el nodo Form Interfase se puede controlar.
En el nodo Global Definitions se puede controlar.
Para empezar a definir el formulario vamos a crear una primera pagina que tendra:
• Titulo principal del formulario.
• Parte Main para desplegar datos en Loop.
• Un Contador de paginas al final de la hoja.
En la solapa General Attributes le dejamos Windows Type como Main Window.
En la solapa Output Options le daremos el tamano y otras opciones.
En Left Margin le damos 1 CM. - Contola el margen izquierdo.
En Upper Margin le damos 4 CM. - Controla el margen desde arriba.
5.2. Crear formato de párrafo
Lo primero que se tiene que hacer es crear los tipos de párrafos que se van a utilizar, para lo cuale se pulsa sobre el botón derecho del ratón en Form.párrafo.
Posteriormente se digita el nombre del párrafo.
En la primera pestaña se puede definir alineación, sangría, interlineado.
Se pueden utilizar diferentes tipos de medidas, pero se aconseja utilizar CM o MM.
1. En la pestaña FONT se indicará la fuente del parrafo.
2. En la pestaña TABULADORES se pueden crear tabuladores para comenzar los textos en distintas columnas de un párrafo.
3. Las pestañas NUMERACIÓN y ESQUEMA se utilizarán para crear esquemas.
5.3. Crear formato caracter
Se pueden crear caracteres para indicar que se va a imprimir un código de barras, o si se desea un tamaño diferente al tamaño de la fuente del párrafo creado.
En este ejemplo se indica que el carácter es un código de barras (Transacción SE73).
Por último se deberá definir los datos de cabecera, para tener el estilo creado.
 
 
 
Agradecimiento:
Ha agradecido este aporte: Francisco Ortega Aguilar
Favorito:
Está publicación ha sido agregada a sus favoritos por: Francisco Ortega Aguilar
Sobre el autor
Publicación académica de Sergio Armando Beltran Castaneda, en su ámbito de estudios para la Carrera Consultor ABAP.
Sergio Armando Beltran Castaneda
Profesión: Ingeniero de Sistemas con Especialización en Gerencia de Proyectos - Colombia - Legajo: WK55K
✒️Autor de: 70 Publicaciones Académicas
🎓Cursando Actualmente: Consultor ABAP Nivel Avanzado
🎓Egresado del módulo:
Disponibilidad Laboral: FullTime
Presentación:
Soy ingeniero de sistemas desde hace mas de 10 años y quiero enfocarme en el mundo sap, iniciando en el lenguaje abap, con miras a ampliar mi conocimiento profesional y laboral.
Certificación Académica de Sergio Beltran