
Tipos de mensajes en ABAP
Una vez ingresados los parametros de entrada en la pantalla de nuestro reporte y sea ejecutado, vamos a necesitar que estos parametros sean validados con el evento AT SELECTION-SCREEN y tambien que el programa sea capaz de emitir mensajes de modo que guie al usuario, en ABAP existen distintos tipos de mensajes:
Este tipo se visualiza en la barra de estado de la pantalla y tiene un icono verde a la izquierda del texto.
- I = mensaje de informacion
Este tipo se muestra en una ventana de dialogo en la pantalla y se pausara el procesamiento del programa hasta que se interactue con el.
Este tipo produce la terminacion del procesamiento de la pantalla de seleccion, y se debera introducir un nuevo valor en el parametro en la pantalla de seleccion. Se muestra en la barra de estado.
- W = mensaje de advertencia o warning
Funciona igual que el de error solo que se puede saltear pulsando enter, tambien se muestra en la barra de estado.
- A = mensaje de terminacion
Este tipo se muestra en una ventana de dialogo y produce la terminacion del programa.
- X = dump o error en ejecucion
Es un error que interrumpe el procesamiento del programa en el momento que este ocurre, pasa cuando hay un error en la logica del programa (por ejempo la division por 0)
Las clases de mensajes
Se necesita crear una clase para trabajar con los mensajes en ABAP, una clase se utiliza para almacenar todos los mensajes relativos a un proyecto o transaccion ABAP, ademas son objetos separados del programa principal. Se crean en la transaccion SE91
Luego para llamar a un mensaje en el codigo de nuestro programa se utiliza la sentencia MESSAGE, ej:
MESSAGE e001(Zclase_message) WITH <parametro1>...<parametroN>
e = es el tipo de mensaje
001 = el numero del mensaje
Zclase_message = la clase del mensaje
<parametros> = son opcionales
Todos los MENSSAGE se declaran dentro del evento AT SELECTION-SCREEN
Dentro de los mensajes tambien se pueden mostrar los contenidos de las variables, para ello hay que poner &&&& en la descripcion de los mensajes el la clase creada. Tambien se puede utilizar una mezcla de las dos formas.
Para validar los PARAMETERS o SELECT-OPTIONS se utiliza AT SELECTION-SCREEN
Para validar varios se utiliza AT SELECTION-SCREEN ON nombre_parametro y se declara uno por parametro