✒️ABAP La pantalla de selección
ABAP La pantalla de selección
Parámetros de selección
Pantalla de selección: Es un área dentro de los reportes en donde se especifican los parámetros de selección por los cuales se va a ejecutar el programa.
Sirve para restringir el procesamiento y la salida de los datos. Se suele colocar después de la declaración de datos.
Cuando se ejecuta un programa, el usuario interactúa directamente con la pantalla de selección. Se imprime en pantalla los datos, dependiendo de lo que seleccione el usuario de la pantalla de selección.
Hay dos tipos de objetos en la pantalla de selección:
PARAMETER: El usuario podrá ingresar valores individuales.
Ejemplo:
PARAMETERS: p_fecha LIKE sy-datum OBLIGATORY DEFAULT sy-datum,
p_nombre TYPE c OBLIGATORY.
SELECT-OPTIONS: el usuario podrá ingresar un rango de valores.
Ejemplo:
DATA: v_clavep TYPE Land1_gp.
SELECT-OPTIONS s_clave FOR v_clavep
La longitud máxima que puede tener el nombre de un parámetro es de 8 posiciones.
El agregado de la cláusula OBLIGATORY hace que el parámetro sea obligatorio
El agregado de la cláusula DEFAULT asigna un valor por defecto al parámetro.
Para cambiar las descripciones de los parámetros, sería:
- Abrir un programa Z, ir a la barra de menús à Pasar a à Elementos de texto à Texto de selección
El parámetro también lo podemos crear como Checkbox o Radiobutton.
Ejemplo:
PARAMETERS: p_list AS CHECKBOX.
PARAMETER: p_arg RADIOBUTTON GROUP bot2,
p_col RADIOBUTTON GROUP bot2,
p_esp RADIOBUTTON GROUP bot2,
p_otr RADIOBUTTON GROUP bot2.
Podemos crear un "marco" que encuadre a los parámetros de la pantalla de selección. Para ello, debemos colocar a la declaración de los parámetros dentro de las siguientes sentencias:
SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME TITLE text-001...
SELECTION-SCREEN END OF BLOCK b1
Donde b1 es el nombre del marco y text-001 es el título que se visualizará en el extremo superior izquierdo del marco
Clases de mensajes
Una vez que ejecutemos, dependiendo de los parámetros introducidos, queremos que se produzcan determinadas acciones.
Para analizar el contenido de los parámetros, existe el evento AT-SELECTION-SCREEN. Aquí es donde se validan los valores ingresados de la pantalla de selección.
Si por ejemplo, queremos que el usuario introduzca una fecha superior a la actual y no lo hace, emitiremos un mensaje de error. Para ello crearemos una clase de mensaje a través de la transacción SE91, que 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:
- Dentro de la transacción SE91, ponemos un nombre a la clase mensaje, descripción y grabamos.
- Escribimos el texto del mensaje que aparecerá en pantalla.
- Escribimos el siguiente código en el programa: (Al ejecutarse saldrá el error en el extremo inferior izquierda).
AT-SELECTION-SCREEN.
IF p_fecha < sy-datum.
MESSAGE e000(z_prueba) “e es el tipo de mensaje y 000 el nº mensaje”
ENDIF.
Los tipos de mensajes que hay son:
- (S)tatus: El programa continua sin interrupción (aparece en la barra status).
- (I)nformación: El programa continua después de la interrupción (aparece en una ventana de dialogo).
- (W)arning: Depende del contexto del mensaje (aparece en la barra status).
- (E)rror: Depende del contexto del mensaje, puede incluso cancelarse el programa (aparece en la barra status).
- A – Terminación: El programa termina después de una ventana de dialogo (aparece una ventana de dialogo).
- X – Dump: Error en tiempo de ejecución tipo X (Da error Dump).
 
 
 
Sobre el autor
Publicación académica de Miguel Mauricio Sierra Cardona, en su ámbito de estudios para la Carrera Consultor ABAP.
Miguel Mauricio Sierra Cardona
Profesión: Ingeniero de Desarrollo E Innovación - Colombia - Legajo: GN43E
✒️Autor de: 61 Publicaciones Académicas
🎓Egresado del módulo:
Certificación Académica de Miguel Sierra