Ayuda SAP

Consulta LOOP AT SCREEN

Hola, estoy trabajando con un programa que tiene la siguiente instruccion pero no la he trabajado antes, mi duda es los valores que aparecen en la condicion screen-group1 EQ ‘VALOR’ ese valor de donde lo toma pues noto que es un valor que uno lo condiciona donde se realiza eso o donde uno verifica que ese group existe.

IF p_radbt4 IS INITIAL.
LOOP AT SCREEN.
IF screen-group1 EQ ‘GR2’.
screen-active = 0.
MODIFY screen.
ENDIF.
ENDLOOP.

Muchas Gracias

Ana

1 me gusta

tiene pinta de ser el nombre del grupo de radiobutton por la nomenclatura, busca en el codigo ‘gr2’

loop at screen recorre los campos de la pantalla y se utiliza para ocultar o mostrar entre otras muchas opciones

3 Me gusta

Hola,

Los grupos para los radio button se crean desde el screen / dynpro de selección si es un reporte Z Usualmente la parte ABAP declara un include TOP para almacenar toda este código.

En caso que sea otro tipo de Objeto y no un reporte lo mas fácil es que abras el programa desde la SE80 y busques la dynpro en las Subcarpetas, esto solo para saber donde se declaro, de ahí toma el ‘VALOR’ de los grupos, pero esto es a groso modo una constante que declaro el desarrollador para distinguir los grupos.

Que necesitas modificar así te puedo ayudar mejor?

3 Me gusta

En la dynpro creas un cuadro de texto entrada/salida, después de crearlo le das doble clic y se te muestras lo siguiente.


Lo que te señale con color azul son los grupos screen-group1, screen-group2, screen-group3 … y asignas para poder recorrer todos los screen y poder modificar ciertos parámetros definidos por grupos.

En tu caso
Screen-active puede ocultar / mostrar. (Usado para contraseñas)

Buena noche,

Ese dato lo tienes que visualizar en los atributos en los grupos en el radio button

image

Hola Ana

El campo screen-group1 contendrá el modif id que le hayas asignado a tus controles.

Ejemplo de un report sencillo:

SELECTION-SCREEN BEGIN OF BLOCK A02 WITH FRAME TITLE TEXT-002.
SELECT-OPTIONS: S_CARRID FOR SFLIGHT-CARRID MODIF ID GR2,
S_CONNID FOR SFLIGHT-CONNID MODIF ID GR2,
S_FLDATE FOR SFLIGHT-FLDATE MODIF ID GR2.
SELECTION-SCREEN END OF BLOCK A02.

de esa manera ya puedes controlar todos tus campos con el if que nos indicas, para entenderlo mejor realiza un break point en esa sección de tu código y revisa como cambian los campos screen-name y screen-group1.

Si estás utilizando dympro sigue los consejos de GARANGO241 y JRCP.

saludos
Johanna

1 me gusta