PDA

Ver la Versión Completa : radio buttom en report


larmadovr
05/06/08, 15:26:22
Que tal amigos:

Estoy trabjando con un radio buttom que controla algunos parámetros de mi pantalla, ya sea para que se activen o desactiven, en cuanto a eso todo marcha bien, el problema es que cuando se genera un ALV, y le doy back, el radio buttom toma el valor default, y no logro hacer que si el radio marcado fué otra opción me la respete:

Ejemplo:

radio_1 default X

radio_ 2


Si el usuario selecciona el 2, hace un proceso y genera un AVL, pero cuando le doy back, toma la funcionalidad del radio 1, siendo que mi último radio marcado fué el radio_2.

Alguien sabe como controlarlo ???

Desde ya muchas gracias.

DavidXD_XD
05/06/08, 17:43:51
Hola Armando, es raro pero una idea seria esto ... tienes 2 opciones 1 o 2, entonces exporta a memoria una variable con 1 o 2, luego en el INITIALIZATION realiza un pequeño codigo q diga

IMPORT MEMORY .... FIELD var.

IF var = '1'.
p_radio1 = 'X'.
ELSE.
p_radio2 = 'X'.
ENDIF.

Espero te sirva, a menos q se sepa la causa de xq no se queda con la opcion anterior, mas que fijo el ALV es el culpable :D

larmadovr
05/06/08, 20:54:18
Fijate que ya había hecho esa opción, pero por alguna razón extraña no guarda la memoria, será por que lo exporte después del star-of-selection y deba ser antes???

Pero de cualquier forma lo resolví con lo siguiente:

CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
i_callback_program = g_repid
i_callback_user_command = 'USER_COMMAND'
it_fieldcat = gt_fieldcat[]
it_events = gt_events[]
is_layout = int_flay
i_save = 'X'
is_variant = g_variant
TABLES
t_outtab = gt_output.

IF sy-subrc <> 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ELSE.
IF sy-ucomm = '&F03'.

EXPORT p_soc p_eje p_ver p_tipo s_ceco p_histo TO MEMORY ID
'PANTALLA'.
SUBMIT ZREPORTE_ZPRESUPUESTO VIA SELECTION-SCREEN.
ENDIF.
ENDIF.

Mando a memoria todos los parámetros y después los inicializo, pero hice un submit para que vuelva a poner el programa desde 0, como puedes observar no era lo más optimo, pero fué efectivo...

Saludos y gracias.

ballan
06/06/08, 10:54:10
Yo probaria ir a la tx SE51 entrar en la dynpro y en la pestaña que pone atributos marcar el flag que pone "Retener datos" aver si funciona

larmadovr
06/06/08, 15:19:47
Muchas gracias por tu aportación Ballan, y a todos los que han participado en esta consulta.

En efecto funciona perfecto la opción que recomiendas, a excepción del radio buttom. Pero no por que esté mal la instrucción, sino por que estoy jugando con ella a nivel de código para que active o desactive algunos parámetros, y para esa funcionalidad, no cubre lo que requiero, pero me queda de lección aprendida, ya que esa instrucción la desconocía y es super práctica...

Saludos a todos...