‎2007 May 10 9:03 AM
Hi All,
I Have a 2 radio button's and 3 parameters. Now what i want is, if user presses first radio button only parameter1 should appear and parameter2 and 3 should hide . And if user selects the 2nd radio button parameter2 and parameter3 should appear and parameter one should hide.
please provide me the proper code..
‎2007 May 10 9:34 AM
HI Rahhu,
Not the same as you asked for but with two radio button... try it will help you ,
************************************************************************
S E L E C T I O N - S C R E E N *
************************************************************************
selection-screen begin of block blk3 with frame title text-t03.
parameters : p_fr1 radiobutton group gr2 user-command CLICK ,
p_bk1 radiobutton group gr2 .
selection-screen end of block blk3 .
selection-screen begin of block blk1 with frame title text-t01 .
parameters : p_file like rlgrap-filename .
parameters : p_erf like rlgrap-filename .
selection-screen end of block blk1 .
selection-screen begin of block blk2 with frame title text-t02 .
parameters : dsn like rlgrap-filename default '/interf/thaon_vosges'.
parameters :dsn_err like rlgrap-filename default '/interf/thaon_vosges'.
selection-screen end of block blk2 .
************************************************************************
**
A T S E L E C T I O N - S C R E E N
**
************************************************************************
at selection-screen on value-request for p_file .
call function 'F4_FILENAME'
importing
file_name = vv_file.
p_file = vv_file .
at selection-screen on value-request for p_erf .
call function 'F4_FILENAME'
importing
file_name = vv_file2.
p_erf = vv_file2 .
at selection-screen output .
IF V_INITIAL IS INITIAL .
LOOP AT SCREEN .
if screen-name cs 'DSN' or
screen-name cs 'DSN_ERR' .
"screen-name cs 'P_FILE' or
"screen-name cs 'P_ERRF' OR
" screen-name cs 'P_FORE' or
" screen-name cs 'P_BACK' OR
"screen-name cs 'P_ERR' .
screen-active = 0 .
modify screen .
endif.
ADD 1 TO V_INITIAL .
ENDLOOP .
ENDIF.
if p_fr1 = 'X' .
loop at screen .
if screen-name cs 'DSN' or
screen-name cs 'DSN_ERR' .
screen-active = 0 .
modify screen .
endif.
endloop .
elseif p_bk1 = 'X'.
loop at screen .
if screen-name cs 'P_FILE' or
screen-name cs 'P_ERF' .
screen-active = 0 .
modify screen .
endif.
endloop .
endif.
Regards,
Jayant.
‎2007 May 10 9:44 AM
Hello Raghu,
try this:
SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME TITLE text-001.
*SELECT-OPTIONS : s_werks1 FOR vbrp-werks OBLIGATORY MODIF ID aaa,"Plant
* s_erdat1 FOR sy-datum OBLIGATORY MODIF ID aaa.
SELECT-OPTIONS : s_werks1 FOR vbrp-werks MODIF ID aaa,"Plant
s_erdat1 FOR sy-datum MODIF ID aaa.
"Document Date
SELECT-OPTIONS : s_vbeln FOR vbrp-vbeln MODIF ID bbb.
SELECTION-SCREEN END OF BLOCK b1 .
SELECTION-SCREEN BEGIN OF BLOCK b2 WITH FRAME TITLE text-002.
PARAMETERS : rb1 RADIOBUTTON GROUP grp1 USER-COMMAND uk,"Sales Register
rb2 RADIOBUTTON GROUP grp1,"Purchase Register
rb3 RADIOBUTTON GROUP grp1,"Sales To Purchase link
rb4 RADIOBUTTON GROUP grp1 ,"Stock Transfer
rb5 RADIOBUTTON GROUP grp1."Purchases
SELECTION-SCREEN END OF BLOCK b2 .
AT SELECTION-SCREEN OUTPUT.
LOOP AT SCREEN.
IF rb4 = 'X'.
IF screen-group1 = 'AAA'.
* If you want to disable input field
screen-input = 0.
* if you want to hide input field
screen-active = 0.
MODIFY SCREEN.
ENDIF.
ELSE.
IF screen-group1 = 'BBB'.
* If you want to disable input field
screen-input = 0.
* if you want to hide input field
screen-active = 0.
MODIFY SCREEN..
ENDIF.
ENDIF.
ENDLOOP.
AT SELECTION-SCREEN.
IF rb4 = ' '.
IF s_werks1[] IS INITIAL.
* message error
ENDIF.
IF s_erdat1[] IS INITIAL.
* message error
ENDIF.
ENDIF.
Vasanth
‎2007 May 10 9:59 AM
Hi
PARAMETER: P1 TYPE C MODIF ID 001,
P2 TYPE C MODIF ID 002,
P3 TYPE C MODIF ID 002.
PARAMETER: R1 RADIOBUTTON GROUP R1 DEFAULT 'X' USER-COMMAND RAD,
R2 RADIOBUTTON GROUP R1.
AT SELECTION-SCREEN OUTPUT.
LOOP AT SCREEN.
CASE SCREEN-GROUP1.
WHEN '001'.
IF R2 = 'X'.
SCREEN-ACTIVE = 0.
ENDIF.
WHEN '002'.
IF R1 = 'X'.
SCREEN-ACTIVE = 0.
ENDIF.
ENDCASE.
MODIFY SCREEN.
ENDLOOP.Max
‎2007 May 10 10:12 AM
Hi Raghu,
Refer this code :
SELECTION-SCREEN BEGIN OF BLOCK BL1 WITH FRAME.
SELECT-OPTIONS : P_matnr FOR mara-matnr,
p_werks for marc-matnr,
p_lgort for mard-lgort. .
SELECTION-SCREEN END OF BLOCK BL1.
SELECTION-SCREEN BEGIN OF BLOCK BL2 WITH FRAME TITLE TEXT-456.
PARAMETERS PO RADIOBUTTON GROUP RADI USER-COMMAND R.
PARAMETERS P1 RADIOBUTTON GROUP RADI DEFAULT 'X'.
SELECTION-SCREEN END OF BLOCK BL2.
At selection selection output.
if po = 'X'.
LOOP AT SCREEN.
IF SCREEN-NAME = 'P_werks' or screen-name = 'p_lgort'.
SCREEN-ACTIVE = '0'.
MODIFY SCREEN.
ENDIF.
ENDLOOP.
elseif p1 = 'X'.
loop at screen.
IF SCREEN-NAME = 'P_matnr' .
SCREEN-ACTIVE = '0'.
MODIFY SCREEN.
endif.
endloop.
Reward points if helpful.
Regards,
Hemant
‎2007 May 10 10:15 AM
there are many questions in this forum regarding this topic, u search in this forum , u will get a lot of answers.
The main thing is u should know what is <b>SCREEN</b> table and
aout the event <b>AT SELECTION SCREEN OUTPUT</b>
‎2007 May 10 10:15 AM