PDA

Ver la Versión Completa : Actualización de la pantalla de selección


alamo_blanco
20/06/08, 10:35:21
Hola a todos!!

Tengo una pantalla de selección con un radiobutton que permite elegir entre dos opciones, cuando se elige una de las opciones se habilitan otras opciones de selección que estan deshabilitadas o inactivas (en este caso son checkbox). El problema que para habilitar estas opciones es necesario hacer un doble clic sobre el radiobutton para actualizar el valor del parametro p_ok. Como lo podria hacer con un solo clic??

El codigo es el siguiente:


SELECTION-SCREEN BEGIN OF BLOCK tres WITH FRAME TITLE text-003.
PARAMETERS: p_ok RADIOBUTTON GROUP rb1 DEFAULT 'X'.
SELECTION-SCREEN ULINE.
PARAMETERS: p_inc RADIOBUTTON GROUP rb1.
SELECTION-SCREEN BEGIN OF BLOCK tressub1 WITH FRAME.
PARAMETERS: p_penf MODIF ID off AS CHECKBOX.
PARAMETERS: p_em MODIF ID off AS CHECKBOX.
* PARAMETERS: P_ANT AS CHECKBOX DEFAULT 'X'.
PARAMETERS: p_penp MODIF ID off AS CHECKBOX.
PARAMETERS: p_blop MODIF ID off AS CHECKBOX.
PARAMETERS: p_todp MODIF ID off AS CHECKBOX.
SELECTION-SCREEN END OF BLOCK tressub1.
SELECTION-SCREEN END OF BLOCK tres.

AT SELECTION-SCREEN OUTPUT.
LOOP AT SCREEN.

IF screen-group1 = 'OFF' AND p_ok = 'X'.
screen-input = '0'.
ELSEIF screen-group1 = 'OFF' AND p_ok IS INITIAL.
screen-input = '1'.
ENDIF.

MODIFY SCREEN.

ENDLOOP.


Gracias
Un saludo:)

pmarinab
20/06/08, 11:52:49
En la definición del radiobutton añade esta opción: "USER-COMMAND usr".

Te quedaría de la siguiente forma:
PARAMETERS: p_ok RADIOBUTTON GROUP rb1 DEFAULT 'X' USER-COMMAND usr.

De esta forma conseguiras que la lógica de la pantalla se ejecute simplemente con el cambio de valor del radio.

alamo_blanco
20/06/08, 11:56:24
Muchas gracias!!!
Un saludo.:)