Application Development 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: 

AT SELECTION-SCREEN on <filed >

Former Member
0 Kudos

hi i am having probelm wit using at selection screen option

my report is having a radio button if i select one radion button a selection screen block will apper along with 2 parameters for input, i want to validate filed .

and if i select one more radion button a selection screen block will apper along with 2 parameters for input, i want to validate one filed.

how can i use 2 atselection screen on filed in my progrm

i have written code like dis i want to validate both screen fields seperatily wit respect to the selection of radion button please help me to solve dis

thanks in advance

Moderator message - Welcome to SCN Please respect the 2,500 character maximum when posting. Post only the relevant portions of code Please read [Rules of Engagement|https://wiki.sdn.sap.com/wiki/display/HOME/RulesofEngagement], and [Asking Good Questions in the Forums to get Good Answers|/people/rob.burbank/blog/2010/05/12/asking-good-questions-in-the-forums-to-get-good-answers] before posting again.

Edited by: Rob Burbank on Oct 13, 2010 9:53 AM

2 REPLIES 2

Former Member
0 Kudos

Hi,

Hope this code snippet solves your query.

*-->Selection Screen decleartions
  DATA : v_waerk TYPE vbrk-waerk,
         v_tknum TYPE tknum,
         v_flg_succcess TYPE flag.

*Preparing selection screen radio button
  SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME TITLE text-001.
  PARAMETERS : rb_exp RADIOBUTTON GROUP rb1 USER-COMMAND flag DEFAULT 'X',
               rb_dom RADIOBUTTON GROUP rb1  .
  SELECTION-SCREEN END OF BLOCK b1.

*  * Preparing selection screen select options
  SELECTION-SCREEN BEGIN OF BLOCK b2 WITH FRAME TITLE text-002.

  SELECT-OPTIONS: s_waerk FOR v_waerk   MODIF ID g1 ,
                  s_tknum FOR v_tknum   MODIF ID g2.
  SELECTION-SCREEN END OF BLOCK b2.

AT SELECTION-SCREEN OUTPUT.

*-->Handling selection screen based on radiobuttons
  PERFORM dyn_sel_screen.

*-->validate currency
AT SELECTION-SCREEN ON s_waerk.
  IF s_waerk IS NOT INITIAL.
    PERFORM validate_waers.
  ENDIF.


*-->Validate shipment number
AT SELECTION-SCREEN ON s_tknum .
  IF s_tknum  IS NOT INITIAL.
    PERFORM validate_tknum.
  ENDIF.

form DYN_SEL_SCREEN .
  IF rb_dom = 'X'.
    LOOP AT SCREEN.
      IF screen-group1 = 'G1'.
        screen-active = '1'.
        screen-input = '1'.
      ELSEIF screen-group1 = 'G2' .
        screen-active = '1'.
        screen-input = '1'.
      ENDIF.
      MODIFY SCREEN.
    ENDLOOP.
  ELSEIF rb_exp = 'X'.
    LOOP AT SCREEN.
      IF screen-group1 = 'G1'.
        screen-active = '1'.
        screen-input  = '1' .
      ELSEIF screen-group1 = 'G2'.
        screen-active = '0'.
      ENDIF.

      MODIFY SCREEN.
    ENDLOOP.
  ENDIF.

endform.                    " DYN_SEL_SCREEN

form VALIDATE_WAERS .
  DATA l_v_waerk TYPE waerk.

  SELECT waers
         FROM tcurc
         INTO l_v_waerk
         UP TO 1 ROWS
         WHERE waers IN s_waerk.

  ENDSELECT.

  IF l_v_waerk   IS INITIAL.
    MESSAGE 'Enter a valid Currency.' type 'E'.
  ENDIF.
endform.                    " VALIDATE_WAERS

form VALIDATE_TKNUM .
  DATA l_v_tknum TYPE tknum.

  SELECT tknum
         FROM vttk
         INTO l_v_tknum
         UP TO 1 ROWS
         WHERE tknum IN s_tknum.

  ENDSELECT.

  IF l_v_tknum  IS INITIAL.
    MESSAGE 'Invalid shipment number' type 'E'.
  ENDIF.
endform.

Thanks

Nitesh

Former Member
0 Kudos

i got the answer thanks for support