1.4. - Construcción del formulario: Textos, variables y campos
1.4.1. - Textos
Para crear un texto en un formulario, hay que pulsar el botón derecho del ratón encima de la ventana donde se quiere crear el texto, seleccionando la opción “Crear%uF0E0Texto/Create%uF0E0Text”. Habrá que cambiar el nombre y descripción que asigna ABAP.
Existen cuatro tipos posibles de textos:
1. Elemento de texto (Text element)
2. Módulo de texto (Text module)
3. Texto estándar (Include text)
4. Texto dinámico (Dynamic text)
A excepción de la información que hay en la pestaña “Propiedades generales/General Attributes”, depende del tipo de texto seleccionado, el resto de pestañas es común a los cuatro tipos de textos. Se utiliza la pestaña “Opciones de salida/Outout options” para definir el estilo, los marcos y sombras. La pestaña “Condiciones/Conditions” se declararán las condiciones para la visualización del texto.
Elemento de texto
Es la creación por defecto de un texto. Se creará un elemento de texto, dentro de la ventana “TÍTULO”, con el texto “Usuarios del sistema”.
Se pueden cambiar los valores de salida del texto, marcando el texto y seleccionando el formato de párrafo o de carácter correspondiente.
Módulo de texto
Se utilizan para almacenar textos en el sistema que se quieren usar frecuentemente en los formularios. Para crear un módulo de texto, hay que acceder a la transacción “Smartforms”, marcando el radiobutton “Modulo de texto”. Para el ejemplo, se va a crear con el nombre “ZTM_LEYENDA”.
Una vez creado, en la pestaña “Gestión/Management”, habrá que configurar la descripción del módulo de texto, “Leyenda formulario” y el estilo a utilizar “”.
En la pestaña “Texto/Text”, se añade en el editor el texto que se desea visualizar al final del formulario, cambiando el formato de párrafo y formato de carácter.
Para utilizar el módulo de texto, en el formulario “ZFORMULARIO_PRUEBA_FQ91J”, dentro de la ventana “PIE_PAGINA”, se crea un texto. Hay que cambiar el valor que aparece en la opción “Tipo de texto/Text type”, por módulo de texto, añadiendo el nombre al texto “ZTM_LEYENDA”. Marcar también la opción “Ningún Error si no existe texto/No error if no text exist”, para evitar que se produzca un error en tiempo de ejecución en caso de que no exista el módulo de texto referenciado. Si se marca la opción “Tomar estilo siempre del módulo de texto/Always copy style from text module”, se deshabilitará la opción para añadir el estilo en el módulo de texto. Se puede forzar el idioma que se quiere visualizar en un módulo de texto, añadiéndolo en la opción idioma.
Los módulos de texto son objetos totalmente independientes de los formularios. En el momento de transportar el formulario al ambiente de “testing”, se debe tener en cuenta que también se tienen que transportar a los módulos de texto que se hayan creado para utilizar en dicho formulario. Los módulos de texto se pueden descargar del sistema o subir al sistema SAP en formato xml. Para ello, hay que ir al “Menú%uF0E0Utilidades” y hacer upload o download, según lo que se necesite.
Texto estándar
Se utiliza para aquellos textos que fueron creados con la tecnología “Sapscritps”. Para crear, modificar y visualizar los textos estándar, se utilizará la transacción SO10.
Creado el texto estándar, dentro se configura el mensaje. El símbolo de la izquierda “=” significa que continua en la misma línea que la anterior.
Se puede realizar una previsualización del texto que aparecerá finalmente, en la pantalla de creación del texto estándar, pulsando el primer botón empezando por la izquierda.
Para incluir este texto estándar en un Smartform, se debe especificar un nombre de texto, un objeto de texto, un ID de texto y un idioma. No es recomendable utilizar textos estándar. En su lugar, utilizar módulos de texto.
Texto dinámico
Se utilizan cuando se quiere 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.4.2. - Impresión de variables en textos
Para que un Smartform pueda distinguir entre un texto literal que esté escrito por el usuario en un elemento de texto y una variable de la que se requiere imprimir el contenido, se debe utilizar el botón para insertar campos en el editor.
Al presionar el botón indicado, se abrirá una ventana de dialogo donde se podrán introducir campos entre “&”.
Se insertará en el texto de forma automática al pulsar el botón de aceptar.
En el momento de ejecutar el formulario, se visualizará el contenido de las variables introducidas. Las variables que se utilicen de este modo, deben haber sido declaradas previamente en el sistema.
1.4.3. - Listado de campos
Si se pulsa el botón del menú “Fields list on/off”, se presentará en el extremo inferior de la pantalla un menú compuesto por las carpetas:
1. Interface Import (Import interface)
a. En esta carpeta están todas las variables de entrada del formulario.
2. Interface Export (Export interface)
a. En esta carpeta están todas las variables de salida del formulario.
3. Interface Tablas (Table interface)
a. En esta carpeta están las tablas de entrada/salida del formulario.
4. Datos globales (Global data)
a. En esta carpeta están todas las declaraciones de datos realizadas en el formulario.
5. Campos sistema (System fields)
a. Dentro de esta carpeta están las variables del sistema que se pueden utilizar dentro de los formularios.
Para imprimir el texto “Página X de XXX”, dentro de la ventana “Nro_pagina”, se utilizarán las variables del sistema “SFSY-PAGE” y “SFSY-FORMPAGES”. Se deben arrastrar las variables a la página de texto.