Application Development and Automation Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 
Read only

at selection-screen output

Former Member
0 Likes
1,437

hi give me some information on use of at selection-screen output in reference of modif-id.

means how it works in association with modif-id?

hi give me some information on use of at selection-screen output in reference of modif-id.

means how it works in association with modif-id?

7 REPLIES 7
Read only

Former Member
0 Likes
996

welcome to sdn .

execute the code for understanding.

PARAMETERS : R1 RADIOBUTTON GROUP RG USER-COMMAND R DEFAULT 'X'.
PARAMETERS : R2 RADIOBUTTON GROUP RG .
PARAMETERS : R3 RADIOBUTTON GROUP RG .

*-------------------------------------------
selection-screen begin of block b1 with frame.
parameters : a(10) type c modif id abc.
parameters : b(10) type c modif id abc.
selection-screen end of block b1.


selection-screen begin of block b2 with frame.
parameters : c(40) type c modif id def.
parameters : d(20) type c modif id def.
selection-screen end of block b2.

selection-screen begin of block b3 with frame.
parameters : e(40) type c modif id ghi.
parameters : f(20) type c modif id ghi.
selection-screen end of block b3.



*-------------------------------------------
at selection-screen output.


IF R1 = 'X'.
LOOP AT SCREEN.
IF screen-group1 = 'DEF' or screen-group1 = 'GHI' .
screen-active = '0'.
MODIFY SCREEN.
ENDIF.
ENDLOOP.
ENDIF.

IF R2 = 'X'.
LOOP AT SCREEN.
IF screen-group1 = 'ABC' or screen-group1 = 'GHI'.
screen-active = '0'.
MODIFY SCREEN.
ENDIF.
ENDLOOP.
ENDIF.

IF R3 = 'X'.
LOOP AT SCREEN.
IF screen-group1 = 'ABC' or screen-group1 = 'DEF'.
screen-active = '0'.
MODIFY SCREEN.
ENDIF.
ENDLOOP.
ENDIF.

regards,

vijay

Read only

Former Member
0 Likes
996

HI,

SELECTION-SCREEN: BEGIN OF BLOCK b0 WITH FRAME TITLE text-900.

PARAMETERS : p_setnam LIKE setnode-setname OBLIGATORY

DEFAULT 'ASPEN' MODIF ID g1.

" matchcode object zsetname.

SELECT-OPTIONS: s_item FOR tf100-item MATCHCODE OBJECT zfsitem

MODIF ID g1.

SELECTION-SCREEN : END OF BLOCK b0.

AT SELECTION-SCREEN OUTPUT.

LOOP AT SCREEN.

IF screen-group1 = 'G1'. "#CCE

screen-input = 0.

MODIFY SCREEN.

ENDIF.

ENDLOOP.

Regards

Subramanian

Message was edited by:

Subramanian PL

Read only

Former Member
0 Likes
996
report abc.
 
 
*-------------------------------------------
PARAMETERS : R1 RADIOBUTTON GROUP RG USER-COMMAND R DEFAULT 'X'.
PARAMETERS : R2 RADIOBUTTON GROUP RG .
 
 
*-------------------------------------------
selection-screen begin of block b1 with frame.
parameters : a(10) type c modif id abc.
parameters : b(10) type c modif id abc.
selection-screen end of block b1.
 
 
selection-screen begin of block b2 with frame.
parameters : c(40) type c modif id def.
parameters : d(20) type c modif id def.
selection-screen end of block b2.
 
 
 
*-------------------------------------------
at selection-screen output.
 
 
IF R1 = 'X'.
LOOP AT SCREEN.
IF SCREEN-name = '%B%_F006' or
   screen-group1 = 'DEF'.
screen-active = '0'.
MODIFY SCREEN.
ENDIF.
ENDLOOP.
ENDIF.
Read only

Former Member
0 Likes
996

Hi,

Modif-id is used for grouping of parameters.With this,you can make modifications to a group of parameters like make a group editable or display mode only.

Check this link.It has the usage with a sample code:

http://help.sap.com/saphelp_46c/helpdata/en/34/8e72d86df74873e10000009b38f9b8/frameset.htm

regards,

Beejal

**Reward if this helps

Read only

Former Member
0 Likes
996

Hi,

Look at the below Sample Program ..

REPORT demo_at_selection_screen_pbo.

PARAMETERS: test1(10) TYPE c MODIF ID sc1,
            test2(10) TYPE c MODIF ID sc2,
            test3(10) TYPE c MODIF ID sc1,
            test4(10) TYPE c MODIF ID sc2.

AT SELECTION-SCREEN OUTPUT.

  LOOP AT SCREEN.
    IF screen-group1 = 'SC1'.
      screen-intensified = '1'.
      MODIFY SCREEN.
      CONTINUE.
    ENDIF.
    IF screen-group1 = 'SC2'.
      screen-intensified = '0'.
      MODIFY SCREEN.
    ENDIF.
  ENDLOOP.

Regards

Sudheer

Read only

Former Member
0 Likes
996

This addition assigns screen objects ( Comment, Underscore line, Parameter, ...) to a modification group and hence allows dynamic modification of the selction screen display.

The modification group name modid must be specified directly and must be no longer than 3 characters. The addition MODIF ID assigns modid to the column SCREEN-GROUP1 of the predefined internal table SCREEN. Parameters assigned to a modification group can be changed together using the LOOP AT SCREEN and MODIFY SCREEN statements at the event AT SELECTION SCREEN OUTPUT.

AT SELECTION SCREEN OUTPUT.

loop at screen.

if SCREEN-GROUP1 = 'MOD'.

screen-input = '0'.

MODIFY SCREEN

endloop.

here you can change the attribute of parameter or select-option dynamically.

reagrds

shiba dutta.

Read only

Former Member
0 Likes
996

Hi vijay,

At selection-screen is the event in ABAP evironemt

.When user midifies some data in the selection scrren , and wants to reflect the change dynamically in the screen after hitting Enter or Clicking ,

At selction-Screen output is fired

ex.

tables:vbak

selection-screen: z_vbak for vbak-vbeln modif id xyz.

at selection-screen output.

if screen-group1 = 'xyz'..

.

ur logic.

.

endif

..here in this case , for selction screen ,there is a dictionary table called 'SCREEN'

is all the time updated .

Modiff ID is used to specifically refere to that select option .

Also there are groups called Gruop1 , Gruop2 ,etc. which are used tocategorised the select-options as per purpose.

More help can be obtained from ABAP Documenataion.(F1 help on keyword)

I guess this answers ur doubt.

Regards.

Note: Reward points if useful