‎2007 Apr 03 8:22 AM
SELECT-OPTIONS : S_MATNR FOR MARA-MATNR MODIF ID sc1.
SELECT-OPTIONS : S_EBELN FOR EKKO-EBELN MODIF ID sc2.
SELECTION-SCREEN: FUNCTION KEY 1,
FUNCTION KEY 2.
INITIALIZATION.
sscrfields-functxt_01 = 'Material'.
sscrfields-functxt_02 = 'Purchase document'.
LOOP AT SCREEN.
IF SCREEN-GROUP1 = 'SC1' OR SCREEN-GROUP1 = 'SC2'.
SCREEN-ACTIVE = 0.
MODIFY SCREEN.
CONTINUE.
ENDIF.
ENDLOOP.
AT SELECTION-SCREEN.
CASE sscrfields-ucomm.
WHEN 'FC01'.
LOOP AT SCREEN.
IF SCREEN-GROUP1 = 'SC1'.
IF SCREEN-NAME = 'S_MATNR-LOW' OR SCREEN-NAME = 'S_MATNR-HIGH'.
SCREEN-ACTIVE = 0.
MODIFY SCREEN.
CLEAR SCREEN.
CONTINUE.
ENDIF.
ELSEIF SCREEN-GROUP1 = 'SC2'.
IF SCREEN-NAME = 'S_EBELN-LOW' OR SCREEN-NAME = 'S_EBELN-HIGH'.
SCREEN-ACTIVE = 0.
MODIFY SCREEN.
CLEAR SCREEN.
ENDIF.
ENDIF.
ENDLOOP.
WHEN 'FC02'.
LOOP AT SCREEN.
IF SCREEN-GROUP1 = 'SC1'.
IF SCREEN-NAME = 'S_MATNR-LOW' OR SCREEN-NAME = 'S_MATNR-HIGH'.
SCREEN-ACTIVE = 0.
MODIFY SCREEN.
CLEAR SCREEN.
CONTINUE.
ENDIF.
ELSEIF SCREEN-GROUP1 = 'SC2'.
IF SCREEN-NAME = 'S_EBELN-LOW' OR SCREEN-NAME = 'S_EBELN-HIGH'.
SCREEN-ACTIVE = 0.
MODIFY SCREEN.
CLEAR SCREEN.
ENDIF.
ENDIF.
ENDLOOP.
ENDCASE.
I am not able to active the select option depending upon action on button at application toolbar of selection screen.
Please check above code.
Message was edited by:
Nilesh Shete
‎2007 Apr 03 8:57 AM
Hi Nilesh,
Are you looking for this..
REPORT YCHATEST.
TABLES : MARA , EKKO , SSCRFIELDS.
SELECT-OPTIONS : S_MATNR FOR MARA-MATNR MODIF ID SC1.
SELECT-OPTIONS : S_EBELN FOR EKKO-EBELN MODIF ID SC2.
SELECTION-SCREEN: FUNCTION KEY 1,
FUNCTION KEY 2.
DATA : V_FLAG(1) VALUE '0',
V_FLAG1(1) VALUE '0'.
INITIALIZATION.
SSCRFIELDS-FUNCTXT_01 = 'Material'.
SSCRFIELDS-FUNCTXT_02 = 'Purchase document'.
LOOP AT SCREEN.
IF SCREEN-GROUP1 = 'SC1' OR SCREEN-GROUP1 = 'SC2'.
SCREEN-ACTIVE = 0.
MODIFY SCREEN.
CONTINUE.
ENDIF.
ENDLOOP.
AT SELECTION-SCREEN .
CASE SSCRFIELDS-UCOMM.
WHEN 'FC01'.
V_FLAG = '1'.
V_FLAG1 = '0'.
WHEN 'FC02'.
V_FLAG = '0'.
V_FLAG1 = '1'.
ENDCASE.
AT SELECTION-SCREEN OUTPUT.
LOOP AT SCREEN.
IF SCREEN-GROUP1 = 'SC1'.
SCREEN-ACTIVE = V_FLAG.
MODIFY SCREEN.
CLEAR SCREEN.
ELSEIF SCREEN-GROUP1 = 'SC2'.
SCREEN-ACTIVE = V_FLAG1.
MODIFY SCREEN.
CLEAR SCREEN.
ENDIF.
ENDLOOP.
‎2007 Apr 03 8:33 AM
Hi..,
when u click on any of the application toolbar function keys then the Selection screen gets created again.. i mean again the AT SELECTION-SCREEN OUTPUT gets executed agian !!
So whatever modifications u want to do to the selection screen those are to be done in the AT SELECTION-SCREEN OUTPUT event onli...
Check this code its working perfectly...
<b>tables : mara, ekko, sscrfields.
data : w_flag1 type i,
w_flag2 type i.
SELECT-OPTIONS : S_MATNR FOR MARA-MATNR MODIF ID sc1.
SELECT-OPTIONS : S_EBELN FOR EKKO-EBELN MODIF ID sc2.
SELECTION-SCREEN: FUNCTION KEY 1,
FUNCTION KEY 2.
INITIALIZATION.
sscrfields-functxt_01 = 'Material'.
sscrfields-functxt_02 = 'Purchase document'.
LOOP AT SCREEN.
IF SCREEN-GROUP1 = 'SC1' OR SCREEN-GROUP1 = 'SC2'.
SCREEN-ACTIVE = 0.
MODIFY SCREEN.
CONTINUE.
ENDIF.
ENDLOOP.
At selection-screen output.
IF w_flag1 = 1.
LOOP AT SCREEN.
IF SCREEN-GROUP1 = 'SC2'.
SCREEN-ACTIVE = 0.
MODIFY SCREEN.
ENDIF.
ENDLOOP.
CLEAR W_FLAG1.
ELSEIF W_FLAG2 EQ 1.
LOOP AT SCREEN.
IF SCREEN-GROUP1 = 'SC1'.
SCREEN-ACTIVE = 0.
MODIFY SCREEN.
ENDIF.
ENDLOOP.
CLEAR W_FLAG2.
ENDIF.
AT SELECTION-SCREEN.
CASE sscrfields-ucomm.
WHEN 'FC01'.
w_flag1 = 1.
WHEN 'FC02'.
w_flag2 = 1.
ENDCASE.</b>
reward points if it helps u..
sai ramesh
‎2007 Apr 03 8:42 AM
‎2007 Apr 03 8:46 AM
Hi..,
i have corrected your code..
just copy and paste the above Bolded code in your program ..
its working perfectly...!!!
reward all helpful answers,
sai ramesh
‎2007 Apr 03 8:57 AM
Hi Nilesh,
Are you looking for this..
REPORT YCHATEST.
TABLES : MARA , EKKO , SSCRFIELDS.
SELECT-OPTIONS : S_MATNR FOR MARA-MATNR MODIF ID SC1.
SELECT-OPTIONS : S_EBELN FOR EKKO-EBELN MODIF ID SC2.
SELECTION-SCREEN: FUNCTION KEY 1,
FUNCTION KEY 2.
DATA : V_FLAG(1) VALUE '0',
V_FLAG1(1) VALUE '0'.
INITIALIZATION.
SSCRFIELDS-FUNCTXT_01 = 'Material'.
SSCRFIELDS-FUNCTXT_02 = 'Purchase document'.
LOOP AT SCREEN.
IF SCREEN-GROUP1 = 'SC1' OR SCREEN-GROUP1 = 'SC2'.
SCREEN-ACTIVE = 0.
MODIFY SCREEN.
CONTINUE.
ENDIF.
ENDLOOP.
AT SELECTION-SCREEN .
CASE SSCRFIELDS-UCOMM.
WHEN 'FC01'.
V_FLAG = '1'.
V_FLAG1 = '0'.
WHEN 'FC02'.
V_FLAG = '0'.
V_FLAG1 = '1'.
ENDCASE.
AT SELECTION-SCREEN OUTPUT.
LOOP AT SCREEN.
IF SCREEN-GROUP1 = 'SC1'.
SCREEN-ACTIVE = V_FLAG.
MODIFY SCREEN.
CLEAR SCREEN.
ELSEIF SCREEN-GROUP1 = 'SC2'.
SCREEN-ACTIVE = V_FLAG1.
MODIFY SCREEN.
CLEAR SCREEN.
ENDIF.
ENDLOOP.