✒️ABAP La construcción del formulario: textos, variables y campos
ABAP La construcción del formulario: textos, variables y campos
1 | Textos
Cuando ingresamos a la transacción SMARTFORMS, lo primero que vemos dentro de la carpeta Parametrizaciones Globales
Para crear un texto en un formulario presionamos el botón derecho del mouse encima de la ventana en donde queremos
crear el texto y seleccionamos la opción Crear/Texto tal como vemos a continuación:
1.1 - Creación de un texto en un formulario smartform
También en este caso cambiaremos el nombre y descripción genérico que asigna ABAP.
Existen cuatro tipos posibles de textos. Ellos son:
Elemento de Texto (Text Element)
Módulo de Texto (Text Module)
Texto Estándar (Include Text)
Texto dinámico (Dynamic Text)
A continuación vamos a ver en detalle cada uno de ellos.
A excepción de la información que vemos en la solapa Propiedades generales (General Attributes)
que va a depender del tipo de texto seleccionado, el resto de las solapas es común a los cuatros tipos de textos.
Utilizaremos la solapa Opciones de salida (Output Options) para definir el estilo, los marcos y sombras tal como vimos en las ventanas.
1.2 - Definimos el estilo, los marcos y las sombras en las opciones de salida
En la solapa Condiciones declararemos las condiciones para la visualización del texto al igual que explicamos con las ventanas.
Elemento de Texto
Cuando creamos un texto, este se creará por defecto como Elemento de Texto.
Vamos a crear un Elemento de Texto dentro de la ventana TITULO con el texto "Usuarios del sistema" tal como vemos a continuación.
1.3 - Los elementos de texto
Si marcamos el texto con el puntero del mouse y cambiamos los valores que aparecen en las listas de Formatos de párrafo y
Formatos de caracter podremos modificar el layout o disposición del texto. En el siguiente caso elegimos el formato de caracter C2.
1.4 - Configuramos el formato de párrafo y caracter
Módulo de Texto
Los módulos de texto (Text Module en inglés) se utilizan para almacenar textos en el sistema que se quieren usar frecuentemente en los formularios.
Esto hace más simple el mantenimiento de los textos en los formularios.
Para crear un Text Module ingresamos a la transacción SMARTFORMS, marcamos el radiobutton Módulo de texto,
ingresamos el nombre del Módulo de texto que en este caso será ZTM_LEYENDA y presionamos el botón Crear.
1.5 - Creamos el módulo de texto ZTM_LEYENDA
Luego completamos la descripción del Módulo de texto con "Leyenda formulario". En la solapa Gestión (Management)
ingresamos el nombre del estilo que utilizaremos, que será Z_PRUEBA_ESTILO.
1.6 - Completamos la descripción y el estilo a utilizar
Finalmente en la solapa Texto ingresamos en el editor el siguiente texto que deseamos que se visualice al final del formulario,
cambiando el formato de párrafo y formato de caracter para modificar el layout del texto.
1.7 - Introducimos el texto
Ahora para utilizar el Módulo de texto que acabamos de crear vamos al formulario ZFORMULARIO_PRUEBA
y dentro de la ventana PIE_PAGINA que creamos en el ejercicio práctico de la lección anterior, creamos un texto.
Allí cambiamos el valor que aparece en la opción Tipo de texto (Text Type) por Módulo de texto e ingresamos
en Nombre al texto ZTM_LEYENDA que acabamos de crear.
1.8 - Configuramos el módulo de texto para utilizarlo en la ventana
Podemos forzar el idioma en el que queremos que se visualice un Módulo de Texto
ingresando el mismo en la opción Idioma (LANGUAGE).
Si marcamos el checkbox "Ningún error si no existe texto" evitaremos que se produzca
un error en tiempo de ejecución en caso de que no exista un Módulo de Texto referenciado.
Si marcamos la opción "Tomar estilo siempre del módulo de texto"
se grisará la opción para ingresar el estilo en el Módulo de Texto.
Texto Estándar
Esta opción de textos se utiliza para aquellos textos que fueron creados con la tecnología
Sapscripts que describimos en la lección "Arquitectura Smartform".
Para crear, modificar y visualizar los Textos estándar utilizaremos la transacción SO10 cuya pantalla vemos a continuación.
1.9 - Creamos el texto estándar ZTEST_TEXTO
Transacción SO10
Utilizaremos la transacción estándar SO10 para la creación, modificación y visualización y borrado de los textos estándar del sistema.
Los textos estándar pueden definirse en diferentes idiomas y se pueden utilizar mediante
la especificación de la opción de idioma & en una secuencia de comandos de SAP.
Una vez allí escribimos el contenido del texto estándar.
1.10 - Escribimos el contenido del texto estándar
Podemos previsualizar como va a quedar finalmente el texto presionando el botón de previsualización.
1.11 - Podemos previsualizar el texto estándar
1.12 - Verificamos que el texto se visualiza correctamente
Para incluir un Texto estándar en un Smartform debemos especificar un Nombre de texto, un Objecto de texto, un ID de texto y un idioma.
Imagen 1.13 - Configuramos el texto estándar para utilizarlo en el smartform
No es conveniente la utilización de Textos estándar (también denominados Textos Include), en su lugar utilizar Módulos de texto.
Texto dinámico
Los textos dinámicos se utilizan cuando queremos imprimir un texto que es variable y que se definirá en tiempo de ejecución.
Este texto va a estar almacenado en una variable que será definida en las definiciones globales del formulario o vendrá por parámetros.
1.14 - Configuramos el texto dinámico para utilizarlo en el smartform
2 | Impresión de variables en textos
Para que un Smartform pueda distinguir entre un texto literal que hallamos escrito en un Elemento de texto y
una variable de la cual queremos imprimir su contenido, debemos utilizar el botón para insertar campos [Hoja con +] en el editor.
2.1 - Con el botón insertamos una variable de texto
Al presionar el botón veremos la siguiente ventana de diálogo en donde podremos introducir campos entre & tal como vemos a continuación.
2.2 - Introducimos la variable entre &
Luego veremos el campo insertado de la siguiente manera:
2.3 - Visualizamos la variable insertada en el elemento de texto
De esta manera al momento de ejecutar el formulario se visualizará el contenido de la variable V_PAIS.
Las variables que utilicemos de este modo deben haber sido declaradas previamente en el sistema.
3 | Listado de campos
Si presionamos el botón del menú Fields list on /off que vemos a continuación [Boton <- Forms Painter] ,
se presentará en el extremo inferior izquierdo de la pantalla un menú compuesto por las siguientes carpetas:
Imagen 3.1 - Visualizamos las carpetas para el manejo de variables, tablas y declaraciones
Interface Import: dentro de esta carpeta veremos todas las variables de entrada del formulario.
Interface Export: dentro de esta carpeta veremos todas las variables de salida del formulario.
Interface Tablas: dentro de esta carpeta veremos las tablas de entrada/salida del formulario.
Datos globales: dentro de esta carpeta veremos todas las declaraciones de datos realizadas en el formulario.
Campos sistema: adentro de esta carpeta veremos las variables del sistema que podemos utilizar dentro de nuestro formularios.
Para imprimir el texto "Página X de XXX" dentro de la ventana NRO_PAGINA,
utilizaremos las variables del sistema SFSY-PAGE y SFSY-FORMPAGES tal como vemos a continuación.
3.2 - Imprimimos en pantalla la página actual y el total de páginas
Variables del sistema para tener en cuenta
Nombre del Campo Descripción
&SFSY-DATE& Muestra la fecha.
&SFSY-TIME& Muestra la hora del día en el formato HH:MM:SS.
&SFSY-PAGE& Inserta el número de la página de impresión actual en el texto.
&SFSY-FORMPAGES& Muestra el número total de páginas para el formulario que se está procesando.
Esto permite incluir textos como ‘página x de y’ en la salida.
&SFSY-JOBPAGES& Contiene el número total de páginas de todos los formularios en el pedido de impresión que se está procesando.
&SFSY-WINDOWNAME& Contiene el nombre de la ventana actual (string en el campo ventana).
&SFSY-PAGENAME& Contiene el nombre de la página actual (string en el campo página).
&SFSY-PAGEBREAK& Es configurada en ‘X’ después de un salto de página.
&SFSY-MAINEND& Es configurado tan pronto como se procese la ventana principal del final de la página actual.
&SFSY-EXCEPTION& Contiene el nombre de la excepción retornada.
 
 
 
Sobre el autor
Publicación académica de Alex Francisco Lemos Collazos, en su ámbito de estudios para la Carrera Consultor ABAP.
Alex Francisco Lemos Collazos
Profesión: Ingeniero en Sistemas - Colombia - Legajo: QS36A
✒️Autor de: 174 Publicaciones Académicas
🎓Cursando Actualmente: Master S/4HANA Material Management
🎓Egresado de los módulos:
- Máster Material Management en SAP S/4HANA LOGISTIC
- Carrera Consultor ABAP Nivel Avanzado
- Carrera Consultor ABAP Nivel Inicial
- Carrera Consultor en SAP SD Nivel Inicial