‎2007 Sep 26 12:39 PM
I had a check box and parameter in the selection screen,
If the check box is checked in the selection screen then only the parameter field shd appear in the selection screen
any suggestions please.
‎2007 Sep 26 12:44 PM
hi
giving sample program make changes to ur requirement
REPORT ZPRG9.
selection-screen begin of block b1 with frame title text-001.
PARAMETERS: test1(10) TYPE c MODIF ID sc1,
test2(10) TYPE c MODIF ID sc1.
selection-screen end of block b1.
selection-screen begin of block b2 with frame title text-001.
parameters:test3(10) TYPE c MODIF ID sc2,
test4(10) TYPE c MODIF ID sc2.
selection-screen end of block b2.
AT SELECTION-SCREEN OUTPUT.
LOOP AT SCREEN.
IF screen-group1 = 'SC1'.
screen-intensified = '1'.
screen-input = 1.
MODIFY SCREEN.
CONTINUE.
ENDIF.
IF screen-group1 = 'SC2'.
screen-intensified = '0'.
screen-input = 0.
MODIFY SCREEN.
ENDIF.
ENDLOOP.
regards
Nagesh.Paruchuri
‎2007 Sep 26 12:42 PM
‎2007 Sep 26 12:43 PM
Assign a fn code to the checkbox...
And code like
when 'check'.
loop at screen.
if screen-name = inupufield.
screen-input = 1.
endif.
modify screen.
endloop.
Please reward if helpful.
‎2007 Sep 26 12:44 PM
hi
giving sample program make changes to ur requirement
REPORT ZPRG9.
selection-screen begin of block b1 with frame title text-001.
PARAMETERS: test1(10) TYPE c MODIF ID sc1,
test2(10) TYPE c MODIF ID sc1.
selection-screen end of block b1.
selection-screen begin of block b2 with frame title text-001.
parameters:test3(10) TYPE c MODIF ID sc2,
test4(10) TYPE c MODIF ID sc2.
selection-screen end of block b2.
AT SELECTION-SCREEN OUTPUT.
LOOP AT SCREEN.
IF screen-group1 = 'SC1'.
screen-intensified = '1'.
screen-input = 1.
MODIFY SCREEN.
CONTINUE.
ENDIF.
IF screen-group1 = 'SC2'.
screen-intensified = '0'.
screen-input = 0.
MODIFY SCREEN.
ENDIF.
ENDLOOP.
regards
Nagesh.Paruchuri
‎2007 Sep 26 12:45 PM
Hi,
Initially you should give the parameter declaration like,
parameter : matnr for mara-matnr invisible.
Give the Function code for check box like,
if 'checkbox' eq x.
parameter : matnr for mara-matnr visible.
endif.
Thanks,
Reward If helpful.
‎2007 Sep 26 12:51 PM
Hi
SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME TITLE text-001.
PARAMETERS: pa_file TYPE rlgrap-filename MODIF ID abc,
pa_lifnr TYPE lfa1-lifnr MODIF ID abc,
pa_vkorg TYPE vbak-vkorg MODIF ID abc.
SELECTION-SCREEN END OF BLOCK b1.
SELECTION-SCREEN BEGIN OF BLOCK b2 WITH FRAME TITLE text-002.
PARAMETERS: pa_kunnr TYPE vbak-kunnr MODIF ID def.
SELECT-OPTIONS: s_lifnr FOR gs_lfa1-lifnr MODIF ID def,
s_date FOR gs_lfa1-erdat MODIF ID def,
s_augru FOR gs_vbak-augru MODIF ID def,
s_vbeln FOR gs_vbak-vbeln MODIF ID def.
SELECTION-SCREEN END OF BLOCK b2.
SELECTION-SCREEN BEGIN OF BLOCK b3 WITH FRAME TITLE text-003.
SELECTION-SCREEN BEGIN OF LINE.
PARAMETERS: pa_upd RADIOBUTTON GROUP g1 USER-COMMAND uc01 DEFAULT 'X'."#EC *
SELECTION-SCREEN COMMENT 3(60) text-004 FOR FIELD pa_upd.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN BEGIN OF LINE.
PARAMETERS: pa_rep RADIOBUTTON GROUP g1 ."#EC *
SELECTION-SCREEN COMMENT 3(60) text-005 FOR FIELD pa_rep.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN END OF BLOCK b3.
IF pa_rep EQ gc_x.
LOOP AT SCREEN.
IF screen-group1 = gc_abc.
screen-input = gc_zero_num.
ELSEIF screen-group1 = gc_def.
screen-active = gc_one_num.
ENDIF.
MODIFY SCREEN.
ENDLOOP.
ELSEIF pa_upd EQ gc_x.
*For Reprocessing
LOOP AT SCREEN.
IF screen-group1 = gc_def.
screen-input = gc_zero_num.
ELSEIF screen-group1 = gc_abc.
screen-active = gc_one_num.
ENDIF.
MODIFY SCREEN.
CLEAR pa_upd.
ENDLOOP.
ENDIF.
i am sending for 2 check boxes and
that logic is simple use it for ur req
reward if usefull
‎2007 Sep 26 12:52 PM
Check this simple program
REPORT ztest.
TABLES:
sscrfields.
PARAMETERS:
p_check TYPE c AS CHECKBOX USER-COMMAND CMD,
p_field1(20) MODIF ID MOD,
p_fiedl2(20).
AT SELECTION-SCREEN OUTPUT.
IF sscrfields-ucomm EQ 'CMD'.
IF p_check EQ 'X'.
LOOP AT SCREEN.
IF screen-group1 EQ 'MOD'.
screen-active = '1'.
MODIFY SCREEN.
ENDIF.
ENDLOOP.
ENDIF.
ELSE.
IF p_check IS INITIAL.
LOOP AT SCREEN.
IF screen-group1 EQ 'MOD'.
screen-active = '0'.
MODIFY SCREEN.
ENDIF.
ENDLOOP.
ENDIF.
ENDIF.
‎2007 Sep 26 12:56 PM
Hi
SELECTION-SCREEN BEGIN OF BLOCK b4 WITH FRAME TITLE text-008.
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 10(30) text-022 FOR FIELD p_r1.
SELECTION-SCREEN POSITION 1.
PARAMETERS : p_r1 TYPE c RADIOBUTTON GROUP g1 USER-COMMAND ucom.
SELECTION-SCREEN COMMENT 43(31) text-023 FOR FIELD p_r2.
SELECTION-SCREEN POSITION 40.
PARAMETERS : p_r2 TYPE c RADIOBUTTON GROUP g1.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN END OF BLOCK b4.
AT SELECTION-SCREEN OUTPUT.
LOOP AT SCREEN.
IF p_r2 = 'X'.
IF screen-name = text-013. "S_BADAT-LOW
screen-required = c_1. " 1
MODIFY SCREEN.
ENDIF.
IF screen-name = text-014."S_UDATE-LOW
screen-required = c_0. "0
MODIFY SCREEN.
ENDIF.
ELSE.
IF screen-name = text-013.
screen-required = c_0.
MODIFY SCREEN.
ENDIF.
IF screen-name = text-014.
screen-required = c_1.
MODIFY SCREEN.
ENDIF.
ENDIF.
ENDLOOP.
simple way
‎2007 Sep 26 4:25 PM
Hi salman,
In the below codings..
i have used only a check box in selection screen.
the parameter willl get displayed and activated only when the check box is checked.
selection-screen:begin of block a with frame title text-001.
parameter:s_cek as checkbox user-command st.
parameter:s_matnr like mara-matnr modif id m1.
selection-screen:end of block a.
at selection-screen output.
if s_cek = ''.
loop at screen.
if screen-group1 = 'M1'.
screen-invisible = '1'.
screen-input = '0'.
endif.
modify screen.
endloop.
elseif s_cek = 'X'.
loop at screen.
if screen-group1 = 'M1'.
screen-invisible = '1'.
screen-input = '0'.
endif.
endloop.
endif.
Hope this will be heplful to you,
reward points if it s useful,
Regards,
Thasneem
‎2007 Sep 27 6:59 AM
hi salman,
go through this code this will surely solve your doubt.
SELECTION-SCREEN: BEGIN OF BLOCK b1 WITH FRAME TITLE text-001.
PARAMETER: p_chk AS CHECKBOX USER-COMMAND ch1.
PARAMETER: p_vbeln LIKE vbak-vbeln MODIF ID m1.
SELECTION-SCREEN: END OF BLOCK b1.
AT SELECTION-SCREEN OUTPUT.
IF p_chk = ' '.
LOOP AT SCREEN.
IF screen-group1 = 'M1'.
screen-invisible = '1'.
screen-input = '0'.
MODIFY SCREEN.
ENDIF.
ENDLOOP.
ELSEIF p_chk = 'X'.
LOOP AT SCREEN.
IF screen-group1 = 'M1'.
screen-invisible = '1'.
ENDIF.
ENDLOOP.
ENDIF.
<b>please reward points if helpfull.</b>
with regards,
radhika kolluru.
‎2007 Sep 27 7:07 AM
Hi,
Use the below code.
tables: pa0000.
parameters: p_chk1 as checkbox user-command rusr.
selection-screen: begin of block blk1 with frame.
parameters: p_pernr like pa0000-pernr modif id ABC.
selection-screen: end of block blk1.
AT SELECTION-SCREEN output.
LOOP AT SCREEN.
IF SCREEN-GROUP1 = 'ABC'.
IF p_chk1 = 'X'.
SCREEN-ACTIVE = 1.
ELSE.
SCREEN-ACTIVE = 0.
ENDIF.
MODIFY SCREEN.
ENDIF.
ENDLOOP.