✒️ABAP El evento AT SELECTION-SCREEN y los tipos de mensajes
ABAP El evento AT SELECTION-SCREEN y los tipos de mensajes
1. Los tipos de mensajes
Mensajes de Éxito (S): este tipo de mensaje se visualiza en la barra de estado o estatus de la pantalla. Luego de su ejecución el procesamiento del programa continúa. Tienen la particularidad que a la izquierda del texto del mensaje se muestra el icono verde con la tilde.
Mensaje de Información (I): este tipo de mensaje se mostrará en una ventana de diálogo en la pantalla. Si el programa se ejecuta de forma online entonces se pausará el procesamiento del programa hasta que el usuario interactúe con el programa. Luego de que se ejecuta un mensaje de este tipo, el programa continúa su ejecución normalmente. Tienen la particularidad que a la izquierda del texto del mensaje se muestra el icono de información.
Mensajes de Error (E): este tipo de mensaje produce la terminación del procesamiento de la pantalla de selección. Los campos de la pantalla de selección especificados en el evento AT SELECTION-SCREEN permiten la entrada de datos en donde el usuario del programa debe introducir un nuevo valor. Tienen la particularidad que a la izquierda del texto del mensaje se muestra el icono de color rojo con el signo de exclamación.
Mensajes de Warning o Advertencia (W): este tipo de mensaje se muestra en la barra de estatus de la pantalla. Funciona de manera similar a los mensajes de error con la excepción que el usuario puede saltear este tipo de mensajes presionando la tecla enter. Tienen la particularidad que a la izquierda del texto del mensaje se muestra el icono de color rojo con el signo de exclamación.
Mensajes de Terminación (A): este tipo de mensaje se mostrará en una ventana de diálogo dentro de la pantalla y produce la terminación del programa. Tiene la particularidad que a la izquierda del texto del mensaje se muestra la imagen de stop.
Mensaje Dump (X): Un dump es un error en tiempo de ejecución que interrumpe el procesamiento del programa en el momento en el que ocurre. Este tipo de mensajes no se utiliza intencionalmente en los programas ABAP sino que ocurre cuando se produce un error que no se contempló en la lógica del programa.
2. Las clases de mensajes
Clase de mensajes
Es un objeto ABAP que se utiliza para almacenar todos los mensajes relativos a un proyecto o transacción de SAP.
Las clases de mensajes se crean a través de la transacción estándar SE91.
Transacción SE91.
Se utiliza para la creación, modificación y visualización de las clases de mensajes en SAP, las cuales nos permiten agrupar los mensajes que utilizaremos en una aplicación.
La clase de mensajes es un objeto ABAP separado del programa principal por lo tanto también debe activarse e incluirse dentro de los objetos ABAP que serán transportados al ambiente de testing, cuando la nueva transacción se desee probar en este ambiente o al ambiente de producción, cuando se quiera implementar las nueva transacción en productivo.
En el código de nuestro programa se utilizará la sentencia MESSAGE para emitir mensajes. La sintaxis de la sentencia es la siguiente:
MESSAGE e001(ZCLASE_MENSAJE) WITH <parametro1> <parametro2> .....<parametroN>.
e tipo de mensaje
001 Número de mensaje
ZCLASE_ MENSAJE Clase de mensaje
<parámetro1> parámetros (son opcionales)
Otra forma que tenemos para crear mensajes utilizando parámetros en los mensajes ya que dentro de los mensajes podemos mostrar el contenido de variables. Para ello vamos a crear el mensaje cuyo contenido será & & & &.
Cada & puede albergar hasta 50 caracteres y como máximo los mensajes puede contener hasta 4 variables (identificadas con el & ). Si el & se quiere representar como texto se colocan dos && juntos.
Otra opción que tenemos disponible dentro de un mensaje definido en la clase de mensajes es utilizar parte texto y parte parámetros.
3. EVENTO AT SELECTION-SCREEN
Para validar los datos introducidos en los parámetros, ya sean PARAMETERS o SELECT-OPTIONS vamos a utilizar el evento AT SELECTION-SCREEN.
La funcionalidad del evento AT SELECTION-SCREEN está especialmente pensada para la validación de los parámetros de la pantalla de selección, cuestión que no sucede con otros eventos de un programa ABAP.
Si dentro del evento AT SELECTION-SCREEN se emite un mensaje de error entonces el procesamiento del programa no se cancela y el programa se queda esperando a que el usuario vuelva a introducir un valor para el parámetro de la pantalla de selección.
Si la pantalla de selección del programa tiene varios parámetros de entrada, ya sean PARAMETERS o SELECT-OPTIONS y para cada uno de ellos se desea validar lo introducido. Tenemos que declarar un evento AT SELECTION-SCREEN ON para cada uno de los parámetros que deseamos validar.
De modo que cuando se ingresa un valor incorrecto para un parámetro determinado de la pantalla el usuario tiene la posibilidad de reingresar ese campo en particular y no todos, ta como sucedería si las validaciones se encuentran una debajo de la otra en el evento AT SELECTION-SCREEN.
 
 
 
Sobre el autor
Publicación académica de Alexis Jesus Perez Ramirez, en su ámbito de estudios para la Carrera Consultor ABAP.
Alexis Jesus Perez Ramirez
Profesión: Licenciado en Computación - Venezuela - Legajo: LK96B
✒️Autor de: 69 Publicaciones Académicas
🎓Egresado del módulo:
Disponibilidad Laboral: FullTime
Presentación:
Licenciado en computación egresado de la ucv, con amplia experiencia en base de datos, análisis de sistemas y programación; tanto en ambiente web, cliente/servidor como en computación central.
Certificación Académica de Alexis Perez