✒️ABAP La construcción del formulario: configuración general, páginas y ventanas
ABAP La construcción del formulario: configuración general, páginas y ventanas
CONSTRUCCIÓN DEL FORMULARIO: CONFIGURACIÓN GENERAL, PÁGINAS Y VENTANAS
Configuración general
Transaccion SMARTFORMS
Click en la opcion Form y digitar el nombre del formulario, por ejemplo ZFORM_PRUEBA. (Click en la opcion Style y darle el nombre del estilo, por ejemplo ZESTILO1. lo que permite es editar el estilo sin ir a la transaccion SMARTSTYLES ). Click en Create.
Cuando se ingresa a la transacción SMARTFORMS, lo primero que se ve dentro de la carpeta Parametrizaciones Globales (Global Settings), son los atributos del formulario.
Con el boton Form Painter se puede hacer aparecer o desaparecer el panel de diseno grafico.
Al hacer doble click en el arbol a la izquierda:
Aquí se podrá asignar una descripción del formulario. En este caso se escribirá "Formulario de Usuarios". En la solapa Propiedades Generales (General Attributes) se visualiza el idioma de creación del formulario, que será ES (Español) y se podrán seleccionar los distintos idiomas en los que se traducirá el formulario.
Uno de los puntos más fuertes de los formularios SmartForms es que pueden ser traducidos a varios idiomas con un mínimo de trabajo. Un formulario SmartForm está compuesto por distintos objetos, dos de los más importantes son: Páginas y Ventanas.
En el nodo Form Attributes se pueden controlar los atributos basicos del formulario:
• En el campo Description una descripcion del formulario, por ejemplo "Formulario de prueba".
En la solapa Opciones de Salida (Output Options) se pueden controlar principalmente:
- El formato de página (Page Format), es decir el tipo de hoja que se va a usar, habitualmente DINA4.
- Los caracteres por pulgadas (Characters per Inch),
- Las líneas por pulgadas (Lines per Inch),
- Estilo (Style), el estilo que vamos a usar, en este caso ZESTILO1.
- La salida del formulario (Output format).
Definir los datos de entrada. Para ello seleccionar sobre el panel de la izquierda, Form Interface (Formulario de Interfase) donde se especifican las variables, estructuras y tablas que contendra el formulario, y se observará (sobre el panel derecho) que está compuesto por las solapas:
Import, Export, Tables y Exceptions.
%uF0B7 Import: Parámetros de entrada al SMARTFORM.
%uF0B7 Export: Parámetros de salida del SMARTFORM.
%uF0B7 Tables: Tablas que se envían al SMARTFORM.
%uF0B7 Exceptions: utilizado para el control de los posibles errores que pueda tener el smartform.
Sólo se utilizarán las solapas 1 y 3. En el apartado Import (1) se detallarán aquellos parámetros de entrada que tendrá el formulario, a excepción de las tablas que irán en Tables (3).
Los parámetros de entrada corresponderán con los parámetros de salida definidos en el programa impresor con su correspondiente tipo de dato.
En Export (2) y en Exceptions (4) no será necesario hacer modificaciones.
En la pestaña Tables (3) habrá que definir como parámetro de entrada una tabla interna que debe corresponder con la estructura definida como parámetro de salida para el programa impresor. Lo primero que se debe hacer es asegurarse de tener una estructura. Para ello, se crear una estructura en la transacción SE11.
Seleccionar sobre la izquierda el item Global Definitions (Definiciones Globales) que permitirá especificar cuáles serán las estructuras que utilizará el Smartform para almacenar la información que será pasada como parámetro. Se verán las solapas:
- Global Data (Datos Globales), aquí se crea una estructura intermedia que recoge los datos del SmartForms y los almacena para poder mostrarlos en el formulario.
- Types (Tipos), declarar los tipos a utilizados en el formulario.
- Field Symbols (Símbolos de Campo), declarar los Field Symbols utilizados en el formulario.
- Initialization (Inicialización), declarar el código que necesite ejecutar el formulario, incluidas llamadas a subrutinas.
- Forms Routines (Rutinas Form), aqui se declara el código de todas las subrutinas que se hayan especificado en la solapa Initialization.
- Currency/Quant.Fields (Campos de moneda/cantidad), aquí se especifican los campos de importe que se utilicen en el formulario.
Se debe crear un LOOP para poder asignar los valores de la tabla de parámetro a la tabla intermedia. Una vez creado, se debe mover el texto dentro del LOOP. En el LOOP se deben asignar los datos de la tabla hacia la tabla intermedia.
Para empezar a definir el formulario vamos a crear una primera página que tendrá:
• Título principal del formulario.
• Parte Main para desplegar datos en Loop.
• Un Contador de páginas al final de la hoja.
Elementos del layout
• Cabecera
• Párrafos
• Strings
• Ventanas
• Páginas
• Ventanas de página
• Elementos de texto
• Módulos de texto
• Gráficos
• Direcciones
• Tablas
• Loops
• Líneas de código
• Condiciones
• Comandos
• Carpetas
PÁGINAS
Un formulario consiste en una o más páginas, la primera página ya existe cuando se crea un formulario, lo normal es que se cambie este nombre. Es aqui donde se indican las páginas que conformará el formulario. Inicialmente le único campo en el que se pueden introducir datos, es en la página: al ingresar el nombre y presionar Enter se activarán el resto de campos y en la pestaña "pags" no se vera la pagina creada.
- En opciones de salida, indicaremos si queremos que la página este en vertical o apaisado (horizontal)
- En Fondo, indicaremos una imagen de fondo para el formulario (marca de agua).
Existen diversos campos que servirán para configurar la página:
- Pág cont. -> Indica la siguiente página que se visualizará. Cuando se utiliza más de una página es obligatorio introducirla.
- Modo -> Hace referencia a como se realizará la numeración. Al pulsar F4 se visualizará una ventana con las distintas posibilidades de paginación.
- Tipo numeración -> Es el tipo de numeración a utilizar en los esquemas y páginas. Al pulsar F4 se visualizará una ventana con las distintas posibilidades de paginación.
En la cabecera se define la primera página que previamente debe ser creada aquí.
Aquí se informa cual va a ser la página siguiente. Si no hay una siguiente, el proceso de impresión finaliza después que la página corriente ha sido impresa.
Si se quiere crear una pa´gina nueva, copiar de una ya creada o borrarla, se debe ir al menú "Tratar" y se visualizarán las opciones "Crear Elemento" (SHIFT + F7), "Copiar Elemento" (SHIFT + F8) y "Borrar Elemento" (SHIFT + F2).
Se debe tener cuidado al borrar una página, asegurarse que este seleccionada y resaltada en azul, para ello hacer doble clic sobre la misma y el boton "Seleccionar".
VENTANAS
Son el área de salida de datos, que se mostraran dentro de las páginas en el formulario, existen varios tipos de ventanas, se tienen la principal que será el main y luego se harán ventanas auxiliares.
- Opciones de salida, se indica las dimensiones de la ventana, posición en la página, marcos y sombras
- Condiciones, se indican las condiciones para la visualización de la ventana, y también se podrá indicar los siguientes casos.
Los textos dentro de una windows pueden ser subdivididos o identificados usando elementos de texto.
La posición de una ventana está indicada por la distancia de la esquina superior izquierda con respecto al formato de página dado en la cabecera.
Para definir una ventana se especifica el nombre y el tipo.
Un formulario puede tener varias páginas. Si la ventana en distintas páginas va a contener la misma información, se especifica CONST, sino es VAR. Es solo por razones de rendimiento.
Hay 3 tipos de ventanas:
MAIN: Es la ventana principal donde se escribirá el texto variable, como puede ser el cuerpo de una carta. Cuando físicamente la ventana se llene, continua en la página siguiente, la ventana es la misma, solo varia su posición y longitud (pero no el ancho). Se puede definir más de una ventana MAIN en una página.
Para definir una ventana es necesario haber definido previamente el formato de párrafo asociado .
VAR: Es una ventana cuyo contenido puede variar. Estas deben definirse en cada página que deban aparecer.
CONST: Define una ventana cuyo contenido nocambia.
PÁRRAFOS
Sirven para definir la apariencia del formulario
• espacio entre líneas
• márgenes izquierdo y derecho
• alineamiento (izq., dcha., centralizado, justificado)
• identación de la primera línea
• tabuladores
• fonts
• opciones outline (división en capítulos o secciones con numeración arábigos, romanos, letras, *, etc)
• protección de corte de páginas.
Un párrafo se identifica por dos letras.
El párrafo por defecto se define en la cabecera.
• Atributos estándar son la descripción del párrafo, 2 letras de identificación que posteriormente servirán para utilizarlo, márgenes, tipos de interlineado.
• Fuentes. Aquí se define el tipo de fuente asociado al párrafo, así como sus atributos, tales como tamaño, negrita, cursiva.
• Tabuladores. Aquí se definen las posiciones de tabulación que se necesiten para cada párrafo. Se deberá indicar una posición, ya sea en centímetros (CM), caracteres (CH), milímetros (MM), puntos (PT) y un tipo de alineación: izquierda (LEFT), derecha (RIGHT), centrado (CENTER), al signo (SIGN) o a la coma decimal (DECIMAL).
STRINGS
• Caracteres. Dentro de cualquier párrafo es posible cambiar el tipo de letra para la parte de la línea que se desee. Esto se puede hacer desde la opción STRINGS.
• Se deberá introducir un código de 2 posiciones, una descripción, el tipo de letra deseada, sus atributos, así como características especiales como crear códigos de barra, impedir que la línea se parta en 2 cuando alcanza final de línea, esconder el texto en la salida impresa, crear un subíndice o superíndice.
ELEMENTOS DE TEXTO
Los elementos de texto se definen para cada ventana. El programa de impresión accede a los elementos de texto por nombre, los formatea e imprime en la ventana correspondiente.
 
 
 
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