Prueba este codigo
Aunque aclaro, no es mio...
REPORT zvdll_pruebas .
DATA: lolo LIKE a306-kschl.
SELECTION-SCREEN BEGIN OF BLOCK 0001 WITH FRAME TITLE text-001.
SELECT-OPTIONS so_kschl FOR lolo.
SELECTION-SCREEN END OF BLOCK 0001.
SELECTION-SCREEN: BEGIN OF BLOCK bloq1 WITH FRAME TITLE text-001.
PARAMETERS: inicio RADIOBUTTON GROUP g1 USER-COMMAND ent,
clte_mat RADIOBUTTON GROUP g1,
prmonmat RADIOBUTTON GROUP g1,
material RADIOBUTTON GROUP g1.
*PARAMETERS: p_file(128) TYPE C default ' ' MODIF ID g2. "parametro con
*la ruta completa del fichero
PARAMETERS: p_vkorg TYPE a306-vkorg MODIF ID g2, " Org. Ventas TYPE C
*default ' ',
p_vtweg TYPE a306-vtweg MODIF ID g2, " CANAL DE DISTRIBUCION
p_kunnr TYPE a305-kunnr MODIF ID g2, " CLIENTE
p_pltyp TYPE a306-pltyp MODIF ID g2, " LISTA DE PRECIOS
p_waerk TYPE a306-waerk MODIF ID g2. " MONEDA
SELECTION-SCREEN: END OF BLOCK bloq1.
INITIALIZATION.
LOOP AT SCREEN.
IF screen-name = 'P_VKORG' OR screen-name =
'%_P_VKORG_%_APP_%-TEXT' OR screen-name = 'P_VTWEG' OR screen-name =
'%_P_VTWEG_%_APP_%-TEXT' OR screen-name = 'P_KUNNR' OR screen-name =
'%_P_KUNNR_%_APP_%-TEXT' OR screen-name = 'P_PLTYP' OR screen-name =
'%_P_PLTYP_%_APP_%-TEXT' OR screen-name = 'P_WAERK' OR screen-name =
'%_P_WAERK_%_APP_%-TEXT'.
screen-invisible = 0.
screen-input = 0.
ENDIF.
* Se actualizan las modificaciones en la tabla SCREEN
MODIFY SCREEN.
ENDLOOP.
AT SELECTION-SCREEN OUTPUT.
LOOP AT SCREEN.
IF clte_mat = 'X'.
IF screen-name = 'P_PLTYP' OR screen-name =
'%_P_PLTYP_%_APP_%-TEXT' OR screen-name = 'P_WAERK'
OR screen-name ='%_P_WAERK_%_APP_%-TEXT' .
screen-invisible = 0.
screen-input = 0.
ENDIF.
ELSE.
IF prmonmat = 'X'.
IF screen-name = 'P_KUNNR'
OR screen-name ='%_P_KUNNR_%_APP_%-TEXT'
.
screen-invisible = 0.
screen-input = 0.
ENDIF.
ELSE.
IF screen-name ='P_PLTYP' OR screen-name =
'%_P_PLTYP_%_APP_%-TEXT' OR
screen-name ='P_WAERK' OR screen-name =
'%_P_WAERK_%_APP_%-TEXT' OR screen-name = 'P_KUNNR'
OR screen-name ='%_P_KUNNR_%_APP_%-TEXT'
.
screen-invisible = 0.
screen-input = 0.
ENDIF.
ENDIF.
ENDIF.
* Se actualizan las modificaciones en la tabla SCREEN
MODIFY SCREEN.
ENDLOOP.
|