🚀PROMO #PLANCARRERA2024 - 🔥Bonificaciones, Precios Congelados y Cuotas

 X 

✒️ABAP La pantalla de selección

ABAP La pantalla de selección

ABAP La pantalla de selección

Pantalla de selección

1 Parámetros de selección

Si queremos introducir algunas delimitaciones a nuestro programa de modo que nuestro reporte solo ejecute para ciertos datos que el usuario deberá introducir en la pantalla entonces deberemos crear una pantalla de selección.

Una 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.

Se utiliza para restriguir el procesamiento y la salida de datos. Por lo general se coloca después de la declaración de datos.

Dentro de una pantalla de selección se pueden declarar dos tipos de objetos: PARAMETERS en los cuales el usuario podrá ingresar valores individuales y SELECT-OPTIONS en donde el usuario podrá ingresar rangos de valores. En el siguiente ejemplo se declararn los parámetros P_FECHA y P_NOMBRE.

Audio: Si deseamos en la pantalla de selección un solo parámetro, entonces utilizaremos la palabra reservada PARAMETER. Si deseamos declarar en la pantalla de selección más de un parametro, entonces utilizaremos la palabra reservada PARAMETERS, seguido de dos puntos. Tengamos en cuenta que podemos también usar PARAMETERS y declarar un solo parámetro. El programa compilará igualmente. O también declarar varios parámetros en la pantalla de selección y para cada uno de ellos escribir en la parte izquierda la palabra reservada PARAMETER.

La longitud máxima que puede tener el nombre de un parámetro es de 8 posiciones.

Añadir a PARAMETER la cláusula OBLIGATORY, hace que el parámetro sea obligatorio.

Añadir a PARAMETER la cláusula DEFAULT asigna un valor por defecto al parámetro. Si ejecutamos el ejemplo anterior veremos lo siguiente:

<< imagen 1.2 >>

Lo que vemos es que al ejecutar nuestro reporte nos aparece la pantalla de selección que acabamos de crear. Vemos que al aderecha de la fecha aparece el icono de matchcode. Si presionamos sobre dicho icono o pulsamos F4 dentro del campo de fecha se abrirá la ventana del calendario.

<< imagen 1.3 >>

Esta ventana es la ayuda de búsqueda al campo SY-DATUM, que es el tipo del parámetro que hemos definido.

Ahora vamos a cambiar las descripciones de los parámetros que aparecen en pantalla. Para esto accedemos desde la transacción SE38 al menú: Pasar a >> Elementos de texto >> Textos de selección

<< imagen 1.4 >>

E ingresamos las descripciones que mejor se adapten a nuestro propósito.

<< imagen 1.5 >>

Audio: Es importante tener en cuenta que para poder introducir los correspondientes textos de selección, el programa en cuestión debe activarse previamente, de lo contrario la columna "texto" correspondiente a la solapa "textos de selección", aparecerá grisada.

También se pueden crear parámetros tipo CHECKBOX en donde el usuario puede marcar las opciones que prefiera, o tipo RADIOBUTTON donde el usuario selecciona una de las opciones entre todas las existentes.

<< imagen 1.6 >>

Los cuáles se visualizarán de la siguiente forma en pantalla:

<< imagen 1.7 >>

Para saber qué campo se seleccionó en el RADIOBUTTON podemos utilizar la siguiente estructura de código, preguntando por cuál fue marcado:

IF check_1 EQ 'X'.

ELSEIF check_2 EQ 'X'.

ELSEIF check_3 EQ 'X'.

.......................

ENDIF.

Los SELECT-OPTIONS son iguales a los PARAMETER salvo que en ellos se puede ingresar rangos de valores, es decir un desde y un valor hasta a parte de valores individuales.

En el siguiente ejemplo se declara el SELECT-OPTIONS denominado s_clavep.

<< imagen 1.8 >>

El tipo utilizado land1_gp es un tipo de la tabla KNA1, por lo que si presionamos en el matchcode veremos la ayuda correspondiente a dicho tipo.

La tabla base datos estándar KNA1 se corresponde al Maestro de Clientes. De cada cliente se guarda en SAP información tal como el número de cliente, el país, el nombre, el código postal, etc.

Podemos crear un marco que encuadre a los parámetros de la pantalla de selección. Para ello debemos colocar la declaración de los parámetros dentro de las 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.

2 Clases de Mensajes

Una vez que ingresamos todos los parámetros de nuestro reporte y ejecutamos el programa, lo que vamos a querer es que dependiendo de los parámetros introducidos se produzan determinadas acciones.

Para analizar el contenido de los parámetros existe el evento AT SELECTION-SCREEN. En este evento es donde se validan los valores ingresados en la pantalla de selección.

Supongamos que queremos que la fecha ingresada por pantalla 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. Para esto, vamos a tener que crear una Clase de Mensaje a través de la transacción SE91, tal y como podemos ver en:

<< imagen 2.1 >>

La transacción estándar 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.

Se le asigna una descripción y grabamos:

<< imagen 2.2 >>

Y creamos nuestro primer mensaje:

<< imagen 2.3 >>

Luego en nuestro programa, escriberemos el código correspondiente al evento AT SELECTION-SCREEN para hacer cumplir con esta validación:

<< imagen 2.4 >>

Vemos como se especifica la clase de mensajes, el número del mensaje, y la letra para expresar el tipo de mensaje que es, que en este caso es "e" de error.

Por último ejecutamos nuestro reporte con una fecha de la pantalla de selección anterior a la fecha actual y vemos el siguiente mensaje en el extremo inferior izquierdo de la pantalla.

<< imagen 2.5 >>

Audio: Dentro de los mensajes que emitimos por pantalla podemos mostrar el contenido de variables. Para ello utilizamos el símbolo ampersand: &. Supongamos que tomamos el mensaje 000 de la clase Z_PRUEBA que utilizamos anteriormente, el cual dice: "La fecha debe ser mayor o igual a la fecha actual" y queremos que al final del mensaje se visualice la fecha del día actual. Entonces, al final de ese mensaje añadimos un espacio y el símbolo &. Luego tendremos que modificar la declaración del mensaje en el programa, agregando a continuación de la clase de mensaje la cláusula WITH seguida de la variable del sistema SY-DATUM que contiene la fecha. Es importante tener en cuenta que cada ampersand puede albergar hasta 50 caracteres, y que como máximo cada mensaje puede contener hasta 4 variables identificadas con ampersand. Si en un mensaje se desea que aparezca el caracter & como texto y no se desea utilizarlo como variable, debemos repetirlo, es decir escribirlo 2 veces juntas.

El mensaje que mostramos es un mensaje de error. Esto está determinado por la letra "e" que antecede al número del mensaje y la clase de mensajes entre paréntesis.

Los tipos de mensajes existentes son:

S: Status.

I: Información.

W: Warning.

E: Error.

A: Terminación.

X: Dump

<< imagen 2.1 >>

Consultas:

El evento AT SELECTION-SCREEN OUTPUT se ejecuta dentro de un programa antes que se muestre la pantalla de selección del mismo, por lo que es el momento que nos proporciona SAP para evaluar si queremos modificar alguna de las propiedades de los parámetros de selección de la pantalla.

En las pantallas de los programas existe una estructura estándar del sistema que almacena cada campo de la pantalla de selección y particularmente de ellos sus propiedades, una de las propiedades de los parámetros de la pantalla de selección es la "Visualización".

La lógica ABAP sería la siguiente:

LOOP AT SCREEN.
CASE screen-name.
WHEN 'CAMPO1'.
SCREEN-INVISIBLE = 1. "Campo Invisible"

SCREEN-INPUT = 1. "Permite entrada de datos"
ENDCASE.

ENDLOOP.

------------------------------

Si debagueando un programa realizas doble clic encima del select options vas a ver que los select options tienen una estructura determinada de campos, es decir son tablas internas, concepto que veremos en detalle en la próxima unidad.

Su estructura de campos es :

SIGN (char de 1 posición)

OPTION (char de 2 posiciones)

LOW (valor individual del tipo de datos del select options)

HIGH (valor individual del tipo de datos del select options)

Ahora bien si en la pantalla de selección ingresamos un rango desde hasta para el select options S_CONNID, por ejemplo AAAA y BBBB entonces los campos contendrán:

SIGN = I

OPTION = BT (Significa between, que quiere decir "entre")

LOW = 'AAAA'

HIGH = 'BBBB'

------------------------------------------------------

Una clase de mensaje puede almacenar hasta 999 mensajes ya que utiliza tres dígitos para identificar cada mensaje.

Los mensajes de la clase de mensajes son textos que son almacenados en la clase. Luego el tipo del mensaje solo dependerá de la letra que anteceda a la clase y número en la sentencia MESSAGE osea si puedes combinar mensaje de cualquier tipo en una misma clase.


 

 

 

Agradecimiento:

Ha agradecido este aporte: Lorena Amoretti

Favorito:

Está publicación ha sido agregada a sus favoritos por: Lorena Amoretti


Sobre el autor

Publicación académica de José Antonio Saavedra Rodríguez, en su ámbito de estudios para la Carrera Consultor ABAP.

SAP Expert


✒️+Comunidad Académica CVOSOFT

Continúe aprendiendo sobre el tema "La pantalla de selección" de la mano de nuestros alumnos.

SAP Senior

Parametros de selección. Si queremos introducir algunas de limitaciones a nuestro programa de modo que nuestro reporte solo ejecute ciertos datos que el usuario deberá introducir en la pantalla entonces deberemos crear una pantalla de selección. Pantalla de selección: Conjunto de campos de entrada y selecciones, que se muestran al ejecutar un reporte y que sirven para filtrar datos en tablas del sistema. Dentro de la pantalla de selección se pueden colocar 2 tipos de objetos: PARAMETER: Objeto de la pantalla de selección que permite ingresar valores individuales que se utilizaran para restringir el procesamiento y salida de los datos posteriores. SELECT-OPTIONS: Objeto de la pantalla de selección...

Acceder a esta publicación

Creado y Compartido por: Rafael Razo

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Senior

Transcripción del audio 1 de la lección 8 de la unidad 2 Si deseamos declaran en la pantalla de selección un solo parámetro entonces utilizaremos la palabra reservada Parameter. Si deseamos declaran en la pantalla de selección mas de un parámetro entonces utilizaremos la palabra reservada Parameters seguido de : . tengamos en cuenta que podemos utilizar también Parameters y declarar un solo parámetro el programa compilara igualmente o también declarar varios parámetros en la pantalla de selección y para cada uno de ellos escribir ala izquierda la palabra parameter Transcripción del audio 1 de la lección 8 de la unidad 2 Es importante tener en cuenta...

Acceder a esta publicación

Creado y Compartido por: Jose Romero Salinas / Disponibilidad Laboral: FullTime

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Senior

En la pantalla de selección se especifican los parámetros de selección y por lo general se coloca después de la declaración de datos. Objetos PARAMETER: para ingresar valores individuales. SELECT OPTION: para ingresar rangos de valores. para declarar un parametro PARAMETER, para varios PARAMETERS: lA LOMGITUD MÁXIMA DEL NOMBRE DE UN PARÁMETRO ES DE 8 POCOSIONES Para cambiar las descripciones de los parámetros en pantalla: Pasar a Textos de selección... y se ingresan las nuevas descripciones. (El programa debe estar activo): También hay parámetroos tipo Checkbox (para tildar opciones) y Radiobutton (para seleccionar una opción). AT...

Acceder a esta publicación

Creado y Compartido por: Pedro Ernesto Maldonado

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP SemiSenior

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. Se utiliza para restringir el procesamiento y la salida de los datos. Por lo general se coloca después de la declaración de datos. Tipos de objetos de la pantalla de selección PARAMETER PARAMETERS: p_fecha LIKE sy-datum OBLIGATORY DEFAULT sy-datum, p_nombre(10) TYPE c OBLIGATORY. La longitud máxima que puede tener el nombre de un parámetro es de 8 posiciones. PARAMETERS: p_list AS CHECKBOX. PARAMETER: p_arg RADIOBUTTON...

Acceder a esta publicación

Creado y Compartido por: John Arley Lopez Sanchez

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Senior

- Pantalla de Selección - Parámetros de selección Si se requiere hacer un programa que genere un reporte con ciertos datos que el usuario introduce desde pantalla entonces creamos una pantalla de selección. Pantalla de Selección: Es un área dentro de los reportes donde se especifican los parámetros de selección por los que se va a ejecutar el programa. Se utiliza para restringir el procesamiento y la salida de los datos, Por lo general se coloca después de la declaración de datos. Dentro de la pantalla de selección podemos declarar dos tipos de objetos: PARAMETER: El usuario podrá ingresar valores individuales. SELECT-OPTIONS: El usuario podrá...

Acceder a esta publicación

Creado y Compartido por: Sandra Erika Bernabe Abreu

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP SemiSenior

Parámetros de Selección: SELECTION – SCREEN: Se pueden declarar 2 tipos. PARAMETER: Valor individual SELECT-OPTIONS: Rangos de valores. CLAÚSULAS: Cláusula OBLIGATORY: Hace que el parámetro sea obligatorio. Cláusula OBLIGATORY DEFAULT: Asigna un valor por defecto. *Cambiar parámetros: MENU - Pasar a -> Elementos de Texto -> Texto de Selección. AT SELECTION-SCREEN: En este evento es donde se validan los valores ingresados en la pantalla de selección.

Acceder a esta publicación

Creado y Compartido por: Enmanuel Vargas Sanchez

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Senior

PARAMETROS DE SELECCIÓN Si queremos introducir algunas delimitaciones a nuestro programa de modo que nuestro reporte solo se ejecute para ciertos datos , debemos crear una pantalla de selección. PANTALLA DE SELECCIÓN - Es un area dentro de los reportes donde se especifican los parametros de selección por los cuales se va a ejecutar el programa, Se coloca despues de la declaración de los datos . Dentro de una pantalla de Selección se pueden declarar 2 tipos de Objetos : PARAMETER - En los cuales los usuarios podrá ingresar valores individuales. Si se desea declara UN PARAMETRO O MAS PODEMOS USAR la palabra PARAMETERS: Un parametro solo puede tener como maximo 8 caracteres. ejemplo. PARAMETERS:...

Acceder a esta publicación

Creado y Compartido por: Victor Rodríguez Azcárate

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Master

Características muy particulares para la selección en pantalla, y muy robustas. El manejo de mensajes predefinidos también puede ayudarnos a mantener un standart en la comunicación o dialogo con el usuario final

Acceder a esta publicación

Creado y Compartido por: Luis Enrique Quintero Florido

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP SemiSenior

PANTALLA DE SELECCION: Se utiliza para restringir el procesamiento y la salida de datos. Por lo generar se coloca después de la declaración de datos. Hay dos tipos de objetos: Parameter->el usuario puede ingresar valores individuales. Select-Options->el usuario puede ingresar rango de valores. Se pueden crear Parametros tipo:...

Acceder a esta publicación

Creado y Compartido por: Roxana Solis Ramirez

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Senior

PARAMETROS DE SELECCION Pantalla de Selección: área dentro de los reportes donde se especifican los parámetros de selección del reporte que deseamos generar. Usado para restringir el procesamiento y salida de los datos, se coloca después de la declaración de datos generalmente. Dentro de una pantalla de selección se pueden declarar dos objetos: PARAMETERS que permite utilizar parámetros de cualquier tipo en la pantalla de selección. PARAMETERS: <var> TYPE <tipo> LIKE <tipo> DEFAULT <valor> Igual que el VALUE. OBLIGATORY Obliga a introducir algún valor. LOWER CASE . Permite introducir minúsculas. ej. PARAMETERS: p_fecha LIKE sy-datum OBLIGATORY...

Acceder a esta publicación

Creado y Compartido por: Alberth Julian Bolanos Bravo

 


 

👌Genial!, estos fueron los últimos artículos sobre más de 79.000 publicaciones académicas abiertas, libres y gratuitas compartidas con la comunidad, para acceder a ellas le dejamos el enlace a CVOPEN ACADEMY.

Buscador de Publicaciones:

 


 

No sea Juan... Solo podrá llegar alto si realiza su formación con los mejores!