✒️ABAP / El evento AT SELECTION-SCREEN y los tipos de mensajes Por Mara Romero Hernandez
ABAP El evento AT SELECTION-SCREEN y los tipos de mensajes

-
Los tipos de mensajes
Una vez que ingresamos todos los parámetros de entrada en la pantalla de selección de nuestro reporte y lo ejecutamos, lo que vamos a querer es que dependiendo de los parámetros introducidos se produzcan determinadas acciones.
Con esto nos referimos a que el programa debe ser capaz de validar que los parámetros introducidos por el usuario en la pantalla de selección son correctos y en caso contrario se deberán emitir los mensajes correspondientes de modo que el
usuario corrija lo introducido.
Por ejemplo, imaginemos que nuestro reporte tiene en su pantalla de selección el parámetro fecha y deseamos que la fecha sea mayor o igual a la fecha actual y que si no es así se emita un mensaje en la pantalla advirtiendo que el valor introducido es incorrecto.
En ABAP existen diferentes tipos de mensajes que podemos utilizar.

Mensajes de Éxito: este tipo de mensaje se visualiza en la barra de estado o status 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: este tipo de mensajes se mostrará 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: 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: este tipo de mensaje se muestra en la barra de status 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: este tipo de mensajes 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.
Mensajes Dump: 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. El ejemplo más conocido que produce un dump es el de la división por cero, es decir si en algún lugar de la lógica de nuestro programa realizamos un cálculo matemático de división por cero entonces se produce un dump.
-
clases de mensajes
Clase de mensajes
Es un objeto de 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 la nueva transacción en productivo.
Luego en el código de nuestro programa, vamos a utilizar la sentencia MESSAGE para emitir mensajes.
MESSAGE e001(ZCLASE_MENSAJE) WITH < parámetro1> ‹ parámetro2>...... ‹parámetroN».
3 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.
Desde ya vale la pena mencionar que tanto el evento AT SELECTION-SCREEN como las pantallas de selección de los programas ABAP junto con sus parámetros tienen únicamente sentido para los programas ABAP que se ejecutan en forma
online, es decir donde hay interacción con el usuario.
Supongamos ahora que la pantalla de selección de nuestro programa tiene varios parámetros de entrada, ya sean parameters o select-options y que para cada uno de ellos se desea validar lo introducido.
De modo que cuando se ingrese un valor incorrecto para un parámetro determinado de la pantalla entonces el usuario tenga la posibilidad de reingresar ese campo en particular y no todos, tal 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 Mara Fadua Romero Hernandez, en su ámbito de estudios para el Curso SAP ABAP.
Mara Fadua Romero Hernandez
Profesión: Psicóloga - Mexico - Legajo: EE18E
✒️Autor de: 67 Publicaciones Académicas
🎓Cursando Actualmente: Curso SAP ABAP Avanzado
🎓Egresado del módulo:
Certificación Académica de Mara Romero






Disponibilidad Laboral: FullTime


















