Hiding selection screen full block

Hi Gurus,
I want to hide following selection screen in the out put.
plz guide me how can i do it.
SELECTION-SCREEN BEGIN OF BLOCK bestandsart
    PARAMETERS lgbst LIKE am07m-lgbst.
    PARAMETERS bwbst  LIKE am07m-bwbst DEFAULT 'X'.
    PARAMETERS sbbst LIKE am07m-sbbst.
SELECTION-SCREEN END OF BLOCK bestandsart.
points will be rewared.
Regards
Rajesh

Hi,
use modif statment.
eg
parameters lgbst like am07m-lgbst modif id 'SRN'.
in the at selection-output event.
use this code.
loop at screen.
  if screen-group1 = 'SRN'.
     screen-active = 0.
     modify screen.
  endif.
endloop.
regards,
Santosh Thorat
Edited by: santosh thorat on Jan 4, 2008 6:17 PM
Edited by: santosh thorat on Jan 4, 2008 6:18 PM

Similar Messages

  • Regarding hiding Selection screen block

    hi all ,
    i have 2 blocks in the selection screen. the First block has 4 radiobuttons and the second block has 4 parameters.
    i need to hide the block 2 based on the radiobutton checked in the initail block.
    if radiobutton 1 or 2 is selected then the block should not be visible and if the rdbtn 3 or 4 is selected the block should be visible
    i have wriiten the code but it doesn't work at all. the block is hidden but when i select the radiobtn 3 or 4 it doesn't work
    the code i hve wriiten is as follows
    SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME TITLE text-001.
    PARAMETERS: par1 RADIOBUTTON GROUP rg2 DEFAULT 'X' USER-COMMAND ucom1
    PARAMETERS: par2 RADIOBUTTON GROUP rg2 .
    PARAMETERS: par3 RADIOBUTTON GROUP rg2 .
    PARAMETERS: par4 RADIOBUTTON GROUP rg2
    SELECTION-SCREEN END OF BLOCK b1.
    SELECTION-SCREEN BEGIN OF BLOCK a1 WITH FRAME TITLE text-001.
    SELECTION-SCREEN BEGIN OF LINE.
    PARAMETER p_pwwrk TYPE plaf-pwwrk  MODIF ID FSC.
    SELECTION-SCREEN END OF LINE.
    SELECTION-SCREEN BEGIN OF LINE.
    PARAMETERS p_wch TYPE cr_hname MODIF ID FSC.
    SELECTION-SCREEN END OF LINE.
    SELECTION-SCREEN BEGIN OF LINE.
    SELECT-OPTIONS s_mdv01 FOR g_mdv01 MODIF ID FSC.
    SELECTION-SCREEN END OF LINE.
    SELECTION-SCREEN END OF BLOCK a1.
    I have declared this  after Initialization.
    AT SELECTION-SCREEN OUTPUT.
    if par3 eq 'X' or par4 eq 'X'.
    LOOP AT SCREEN.
    IF screen-group1 = 'FSC'.
    screen-active = 0.
    MODIFY SCREEN.
    ENDIF.
    ENDLOOP.
    endif.
    can anybody please suggest.
    Thanx
    Srinivas

    Hiding Input Fields Locate the document in its SAP Library structure
    To suppress the display of the input field on the selection screen, you use the following syntax:
    PARAMETERS p ...... NO-DISPLAY ......
    Although parameter p is declared, it is not displayed on the selection screen.
    If the parameter belongs to the standard selection screen, you can assign a value to it either by using the DEFAULT addition when you declare it, or during the INITIALIZATION event. If you call the executable program using the SUBMIT statement, the calling program can also pass the value.
    When you use user-defined selection screens, you can assign a value to the parameter at any time before calling the selection screen.
    If you want to display a parameter only in certain cases, for example, depending on the values entered by the user in other input fields of the selection screen, you cannot use the NO-DISPLAY addition. If you use NO-DISPLAY, the parameter actually is an element of the interface for program calls, but not an element of the selection screen. As a result, you cannot make it visible using the MODIFY SCREEN statement.
    To hide a parameter that is an element of the selection screen, you must declare it without the NO-DISPLAY addition and suppress its display using the MODIFY SCREEN statement.
    We can Hide parameter / select option in selection screen dynamically by manipulating screen object.
    SCREEN is like an internal table with a header line. However, you do not have to declare it in your program. Go to debugging mode and then view structure of screen.
    You can modify SCREEN in your ABAP program during the PBO event of a screen. Its contents override the static attributes of the screen fields for a single screen call. The only statements that you can use with SCREEN are:
    LOOP AT SCREEN.
    MODIFY SCREEN.
    ENDLOOP.
    We can hide parameter by set screen-active to 0.
    Here is example of how to hide parameter in selection screen. Write it, and change click on radiobutton to hide parameter.
        REPORT ZAALGAL0006.
        DATA: d_ucomm LIKE sy-ucomm.
        PARAMETERS: p_grpa1(10) MODIF ID A,
        p_grpa2(5) MODIF ID A,
        p_grpb1(2) MODIF ID B.
        PARAMETERS: p_actA RADIOBUTTON GROUP rad1 USER-COMMAND ACT DEFAULT 'X',
        p_actB RADIOBUTTON GROUP rad1.
        AT SELECTION-SCREEN.
        d_ucomm = sy-ucomm.
        AT SELECTION-SCREEN OUTPUT.
        LOOP AT screen.
        IF p_actA = 'X'.
        IF screen-group1 = 'B'.
        screen-active = 0.
        ENDIF.
        ELSEIF p_actB = 'X'.
        IF screen-group1 = 'A'.
        screen-active = 0.
        ENDIF.
        ENDIF.
        MODIFY screen.
        ENDLOOP.
        START-OF-SELECTION.
    regards,
    srinivas
    <b>*reward for useful answers*</b>

  • Hiding selection-screen

    Hi All,
    I have a requirment to hide a selection-screen block based on the radio button option displayed in selection-screen.
    I am able to do this, but in this block there are some mandatory fields to be filled .
    So every time when i change the radio button , i have to fill the mandatory fields in order to hide it .
    Pls let me know how to hide a block without entering the mandatory fields in it .
    Thanks & Regards,
    Rajasekhar.

    Hi Rajasekhar,
    Either remove the 'obligatory' keyword from the syntax when you declare the mandatory fields, rather, check in your program, whether these fields are filled for suitable radio-button corresponding to that block, and if these are empty, give error message 'Fill in required fields'. Thus while hiding the block for a different radio-button You do not require to fill these fields.
    Else, just code some default values in the program to these mandatory fields, so that You need not enter the values to these fields before hiding the block.
    Regards,
    Birendra

  • Hiding selection screen fields upon clicking a button

    Hi .
    I have a requirement like we need to hide and bring back the selection screen fields upon clicking a button( Expand and collapse in the same button) .
    in ABAP Query,we can maintain this,  for the variant we created.
    We need this functionality on the selection-screen presently.
    How to achieve this in the selection -screen?
    Valuale pointers are desparately needful.
    Regards,
    SSR.

    Hi,
    SELECTION SECREEN (P_) Parameter
    (S_) Select Options
    SELECTION-SCREEN : BEGIN OF BLOCK BLK1 WITH FRAME TITLE TEXT-001,
    BEGIN OF LINE,
    COMMENT (26) C1 MODIF ID XYZ.
    SELECT-OPTIONS : S_MATNR FOR MARA-MATNR MODIF ID XYZ NO-EXTENSION .
    SELECTION-SCREEN : END OF LINE,
    BEGIN OF LINE,
    COMMENT (26) C2 MODIF ID XYZ.
    SELECT-OPTIONS : S_MATKL FOR MARA-MATKL MODIF ID XYZ NO-EXTENSION .
    SELECTION-SCREEN : END OF LINE.
    PARAMETERS : R_MATNR RADIOBUTTON GROUP RAD1 DEFAULT 'X'
    MODIF ID ABC USER-COMMAND MAT,
    R_MATKL RADIOBUTTON GROUP RAD1.
    SELECTION-SCREEN END OF BLOCK blk1.
    INITIALIZATION.
    C1 = 'Product Code'.
    c2 = 'Product Group'.
    AT SELECTION-SCREEN OUTPUT.
    LOOP AT SCREEN.
    IF SCREEN-NAME0(7) = 'S_MATNR' OR SCREEN-NAME0(7) = 'S_MATKL'.
    SCREEN-INPUT = '0'.
    SCREEN-INVISIBLE = '1'.
    ENDIF.
    CASE SCREEN-NAME+0(7).
    WHEN 'S_MATNR'.
    IF R_MATNR = 'X'.
    SCREEN-INPUT = '1'.
    SCREEN-INVISIBLE = '0'.
    ENDIF.
    WHEN 'S_MATKL'.
    IF R_MATKL = 'X'..
    SCREEN-INPUT = '1'.
    SCREEN-INVISIBLE = '0'.
    ENDIF.
    ENDCASE.
    IF R_MATNR = 'X'.
    IF SCREEN-NAME = 'C1'.
    C1 = 'Product code'.
    C2 = SPACE.
    ENDIF.
    ENDIF.
    IF R_MATKL = 'X'.
    IF SCREEN-NAME = 'C2'.
    C2 = 'Product Group'.
    C1 = SPACE.
    ENDIF.
    ENDIF.
    MODIFY SCREEN.
    ENDLOOP.
    Hope it helps.
    best regards,
    Nagaraj Kalbavi

  • REG hiding selection-screen comment

    Hi all,
    Cud any one tell me how to hide a selection-screen comment.

    hi chaitanya,
    see the example may be useful.
    SELECTION-SCREEN BEGIN OF BLOCK BLOCK.
    SELECTION-SCREEN BEGIN OF LINE.
    SELECTION-SCREEN COMMENT 1(8) PWD.
    SELECTION-SCREEN POSITION 35.
    PARAMETERS: PASSWORD(8) MODIF ID AAA.
    SELECTION-SCREEN END OF LINE.
    PARAMETERS: PROGRAM(8).
    SELECTION-SCREEN END OF BLOCK BLOCK.
    AT SELECTION-SCREEN OUTPUT.
      LOOP AT SCREEN.
        IF SCREEN-GROUP1 = 'AAA'.
          SCREEN-invisible = '1'.
          MODIFY SCREEN.
        ENDIF.
      ENDLOOP.
    reward if useful,
    thanks and regards

  • Hiding Selection Screens

    I wanted to ask for a way to hide my selection screens.
    Im working on 3 blocks with all radio buttons. There is block b1 which  has 3 radio buttons, and blocks b2 and b3.. which i want hidden and I dont know how to hide it. Blocks b2 and b3 must only show up when a selection from any radio buttons from b1 is made. Can anybody tell me how to hide the blocks at startup?
    Here is my code...
    data: group_id(3) type c.
    Selection parameters
    SELECTION-SCREEN BEGIN OF BLOCK a WITH FRAME TITLE text-001.
    PARAMETERS:p_frm LIKE ekko-aedat,
               p_to LIKE ekko-aedat.
    SELECTION-SCREEN END OF BLOCK a.
    selection-screen begin of block b1 with frame title text-002.
    parameters: pad radiobutton group one,
                pbb radiobutton group one,
                pcrc radiobutton group one.
    selection-screen begin of block b2 with frame title text-003.
    parameters: p_aj radiobutton group thr modif id sru default 'X' user-command ucom,
                p_ae radiobutton group thr modif id sru,
                p_as radiobutton group thr modif id sru,
                p_ak radiobutton group thr modif id sru.
    parameters: thr no-display.
    selection-screen end of block b2.
    selection-screen begin of block b3 with frame title text-003.
    parameters: p_bae radiobutton group two default 'X' user-command ucom modif id bb,
                p_mg radiobutton group two modif id bb,
                p_mkt radiobutton group two modif id bb,
                p_co radiobutton group two modif id bb.
    parameters: two no-display.
    selection-screen end of block b3.
    selection-screen end of block b1.
    parameters: b2 no-display.
    at selection-screen output.
      screen-active = 0.
      case 'X'.
        when pad.
          group_id = 'sru'.
        when pbb.
          group_id = 'bb'.
      endcase.
    loop at screen.
        if screen-group1 = group_id.
          screen-active = 1.
          modify screen.
        endif.
      endloop.
    Thanks!!! Your help is very much appreciated.

    HI JILL
    PLS SEE THIS CODE MAIN ABSERVE THE GROUP IDS
    AND SCREEN-INVISIBLE WHERE U WANT SCREEN IS HIDE THAT TIME U USE SCREEN-INVISIBLE = 1.
    OK
    SEE IT BELOW CODE
    PLS COPY THE CODE AND TEST IT .
    *SELECTION SCREEN  FOR SELECTION CRITERIA
    SELECTION-SCREEN BEGIN OF BLOCK charly
                     WITH FRAME TITLE text-100.
    PARAMETERS: rb_dis RADIOBUTTON GROUP rb DEFAULT 'X'
                                      USER-COMMAND ucomm ,
                rb_hid RADIOBUTTON GROUP rb .
               P_DEL TYPE VBAK-VKGRP .
    SELECTION-SCREEN END   OF BLOCK charly.
    *SELECTION sCREEN FOR PO TABLE
    SELECTION-SCREEN BEGIN OF BLOCK b2
                     WITH FRAME TITLE v_text.
    SELECT-OPTIONS : s_xblnr  FOR  zmshub-xblnr MODIF ID gr2,
                     s_bstkd   FOR  zmshub-bstkd MODIF ID gr2,
                     s_posex   FOR  zmshub-posex_e MODIF ID gr2,
                     s_kdmat  FOR  zmshub-kdmat MODIF ID gr2.
    PARAMETERS : p_upload LIKE ibipparms-path LENGTH 90  MODIF ID gr3 ,
                 p_down LIKE ibipparms-path  DEFAULT 'C:\output_log.txt'
                                           MODIF ID gr3.
    SELECTION-SCREEN END OF BLOCK b2.
    *SELECTION sCREEN FOR  DOWNLOADING
    SELECTION-SCREEN BEGIN OF BLOCK b4
                     WITH FRAME TITLE text-105.
    PARAMETERS :
              rb_n_d_f  RADIOBUTTON GROUP rb1 DEFAULT 'X' ,
              rb_ftp   RADIOBUTTON GROUP rb1 ,
              p_f_n TYPE c LENGTH 25 DEFAULT 'FILE NAME .TXT',
              rb_ws_d  RADIOBUTTON GROUP rb1 ,
              p_dw_f_n TYPE c LENGTH 25 DEFAULT 'C:
    TEMP\FILE.TXT',
              rb_op_ds RADIOBUTTON GROUP rb1 ,
              p_log_p LIKE filename-pathintern  DEFAULT 'ZHKWEB01',
              p_pa_fn LIKE rlgrap-filename MODIF ID gr1
                     DEFAULT  '//SOME-DIR/FILE.TXT',
              rb_ob_dw    RADIOBUTTON GROUP rb1,
             p_file LIKE filename-pathintern   "logical path
                        DEFAULT 'ZHKWEB01',       "name
             p_fname LIKE rlgrap-filename MODIF ID gr1     "path &
    *filename
                     DEFAULT text-t02,             "/some-dir/file.txt
              p_f_name TYPE c LENGTH 25 DEFAULT
    SOME-SERVERNAME\SOME-DIR\SOME-FILE.TXT'.
    SELECTION-SCREEN END OF BLOCK b4.
    AT SELECTION-SCREEN OUTPUT.
      IF NOT rb_dis IS INITIAL.
        LOOP AT SCREEN.
          IF screen-group1 = 'GR3'.
            screen-invisible = 1.
            screen-input = 0.
            MODIFY SCREEN.
          ENDIF.
        ENDLOOP.
      ELSE.
        LOOP AT SCREEN.
          IF screen-group1 = 'GR2'.
            screen-invisible = 0.
            screen-input = 0.
            MODIFY SCREEN.
          ENDIF.
        ENDLOOP.
      ENDIF.
    I WILL BE USEFUL
    KK.

  • How to use At Selection Screen for fields whiledealing with Multiple Blocks

    Hi Guys,
                In my requirement i am having 4 blocks.1st block with raduio buttons for activating the opther 3 Blocks.
                  In these 3 blocks i am having some fields.
           How to do Validation for these fields.?
    I am using At Selection-screen on S-SCAD1. I am getting error"S_SCACD1 is neither a selection screen nor a Parameter"
    On the top of this" At Selection-screen on S-SCAD1" I am having"AT SELECTION-SCREEN OUTPUT."
                    Can anybody tell me how to solve this error?
    Thanks,
    Gopi.

    If you are using your block name than you should use like:
    AT SELECTION-SCREEN ON BLOCK S-SCAD1.
    Regards,
    Naimesh Patel

  • Issue with tabbed block in selection screen

    Hi All,
    I have created a report program with the following code.
    SELECTION-SCREEN BEGIN OF SCREEN 100 AS SUBSCREEN.
    PARAMETERS: p1 TYPE c LENGTH 10.
    SELECTION-SCREEN END OF SCREEN 100.
    SELECTION-SCREEN BEGIN OF SCREEN 200 AS SUBSCREEN.
    PARAMETERS: q1 TYPE c LENGTH 10.
    SELECTION-SCREEN END OF SCREEN 200.
    SELECTION-SCREEN: BEGIN OF TABBED BLOCK mytab FOR 10 LINES,
                      TAB (20) button1 USER-COMMAND push1,
                      TAB (20) button2 USER-COMMAND push2,
                      END OF BLOCK mytab.
    INITIALIZATION.
      button1 = 'Selection Screen 1'.
      button2 = 'Selection Screen 2'.
      mytab-prog = sy-repid.
      mytab-dynnr = 0100.
      mytab-activetab = 'PUSH1'.
    AT SELECTION-SCREEN.
      CASE sy-dynnr.
        WHEN 1000.
          CASE sy-ucomm.
            WHEN 'PUSH1'.
              mytab-dynnr = 100.
            WHEN 'PUSH2'.
              mytab-dynnr = 200.
          ENDCASE.
      ENDCASE.
    Execute the program and click on the second tab-page. Now, click on the 'Execute' button or press F8 (there is no specific functionality coded here).
    The issue now is that the first tab-page is displayed, instead of the second tab remaining displayed. I require the navigation to remain within the second tab-page after the EXECUTE button is clicked.
    Could someone help me out with this issue?
    Regards,
    Dinup
    Edited by: Dinup Sudhakaran on Feb 18, 2008 1:40 PM

    Hi,
    Go through below document with example code.
    It will help you.
    Tabstrip Controls on Selection Screens
    As with screens, you can now use tabstrip controls on selection screens. To do this, you must define a tabstrip area and the associated tab pages, and assign a subscreen to the tab pages. You do not have to (indeed, cannot) declare the tabstrip control or program the screen flow logic in your ABAP program, since both are automatically generated.
    To define a tabstrip area with tab pages, use the following statements in your selection screen definition:
    SELECTION-SCREEN: BEGIN OF TABBED BLOCK <tab_area> FOR <n> LINES,
                      TAB (<len>) <tab1> USER-COMMAND <ucom1>
                                  [DEFAULT [PROGRAM <prog>] SCREEN <scrn>],
                      TAB (<len>) <tab2> USER-COMMAND <ucom2>
                                  [DEFAULT [PROGRAM <prog>] SCREEN <scrn>],
                      END OF BLOCK <tab_area>.
    This defines a tabstrip control <tab_area> with size <n>. The tab pages <tab1>, <tab2>… are assigned to the tab area. <len> defines the width of the tab title. You must assign a function code <ucom> area to each tab title. You can find out the function code from the field SY-UCOMM in the AT SELECTION-SCREEN event.
    For each tab title, the system automatically creates a character field in the ABAP program with the same name. Before the selection screen is displayed, you can assign a text to the field. This then appears as the title of the corresponding tab page on the selection screen.
    You must assign a subscreen to each tab title. This will be displayed in the tab area when the user chooses that title. You can assign one of the following as a subscreen:
    A subscreen screen defined using the Screen Painter.
    A selection screen subscreen, defined in an ABAP program.
    You can make the assignment either statically in the program or dynamically at runtime. If, at runtime, one of the tab titles has no subscreen assigned, a runtime error occurs.
    Static assignment
    Use the DEFAULT addition when you define the tab title. You can specify an ABAP program and one of its subscreens. If you do not specify a program, the system looks for the subscreen in the current program. When the user chooses the tab title, it is activated, and the subscreen is assigned to the tabstrip area. The static assignment is valid for the entire duration of the program, but can be overwritten dynamically before the selection screen is displayed.
    Dynamic assignment
    For each tab area, the system automatically creates a structure in the ABAP program with the same name. This structure has three components – PROG, DYNNR, and ACTIVETAB. When you assign the subscreens statically, the structure contains the name of the ABAP program containing the subscreen, the number of the subscreen, and the name of the tab title currently active on the selection screen (and to which these values are assigned). The default active tab page is the first page. You can assign values to the fields of the structure before the selection screen is displayed, and so set a subscreen dynamically.
    If you assign a normal subscreen screen to a tab title, the dialog modules containing its flow logic must be defined in the current ABAP program. If the subscreen is a selection screen, user actions will trigger the AT SELECTION-SCREEN event and its variants (see Selection Screen Processing). This includes when the user chooses a tab title. If one selection screen is included on another, AT SELECTION-SCREEN will be triggered at least twice – firstly for the "included" selection screen, then for the selection screen on which it appears.
    REPORT demo_sel_screen_with_tabstrip.
    DATA flag(1) TYPE c.
    SUBSCREEN 1
    SELECTION-SCREEN BEGIN OF SCREEN 100 AS SUBSCREEN.
    SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME.
    PARAMETERS: p1(10) TYPE c,
                p2(10) TYPE c,
                p3(10) TYPE c.
    SELECTION-SCREEN END OF BLOCK b1.
    SELECTION-SCREEN END OF SCREEN 100.
    SUBSCREEN 2
    SELECTION-SCREEN BEGIN OF SCREEN 200 AS SUBSCREEN.
    SELECTION-SCREEN BEGIN OF BLOCK b2 WITH FRAME.
    PARAMETERS: q1(10) TYPE c OBLIGATORY,
                q2(10) TYPE c OBLIGATORY,
                q3(10) TYPE c OBLIGATORY.
    SELECTION-SCREEN END OF BLOCK b2.
    SELECTION-SCREEN END OF SCREEN 200.
    STANDARD SELECTION SCREEN
    SELECTION-SCREEN: BEGIN OF TABBED BLOCK mytab FOR 10 LINES,
                      TAB (20) button1 USER-COMMAND push1,
                      TAB (20) button2 USER-COMMAND push2,
                      TAB (20) button3 USER-COMMAND push3
                                       DEFAULT SCREEN 300,
                      END OF BLOCK mytab.
    INITIALIZATION.
      button1 = text-010.
      button2 = text-020.
      button3 = text-030.
      mytab-prog = sy-repid.
      mytab-dynnr = 100.
      mytab-activetab = 'BUTTON1'.
    AT SELECTION-SCREEN.
      CASE sy-dynnr.
        WHEN 1000.
          CASE sy-ucomm.
            WHEN 'PUSH1'.
              mytab-dynnr = 100.
              mytab-activetab = 'BUTTON1'.
            WHEN 'PUSH2'.
              mytab-dynnr = 200.
              mytab-activetab = 'BUTTON2'.
          ENDCASE.
        WHEN 100.
          MESSAGE s888(sabapdocu) WITH text-040 sy-dynnr.
        WHEN 200.
          MESSAGE s888(sabapdocu) WITH text-040 sy-dynnr.
      ENDCASE.
    MODULE init_0100 OUTPUT.
      LOOP AT SCREEN.
        IF screen-group1 = 'MOD'.
          CASE flag.
            WHEN 'X'.
              screen-input = '1'.
            WHEN ' '.
              screen-input = '0'.
          ENDCASE.
          MODIFY SCREEN.
        ENDIF.
      ENDLOOP.
    ENDMODULE.
    MODULE user_command_0100 INPUT.
      MESSAGE s888(sabapdocu) WITH text-050 sy-dynnr.
      CASE sy-ucomm.
        WHEN 'TOGGLE'.
          IF flag = ' '.
            flag = 'X'.
          ELSEIF flag = 'X'.
            flag = ' '.
          ENDIF.
      ENDCASE.
    ENDMODULE.
    START-OF-SELECTION.
      WRITE: / 'P1:', p1,'Q1:', q1,
             / 'P2:', p2,'Q2:', q2,
             / 'P3:', p3,'Q3:', q3.
    This program defines two selection screens – 100 and 200, as subscreens, and places a tabstrip control area with three tab pages on the standard selection screen. A subscreen screen 300 (from the same program) is assigned statically to the third tab page.
    The layout of screen 300 is:
    The input/output fields P1 to Q3 are defined by using the parameters from the ABAP program The pushbutton has the function code TOGGLE.
    The screen flow logic for screen 300 is as follows:
    PROCESS BEFORE OUTPUT.
      MODULE init_0100.
    PROCESS AFTER INPUT.
      MODULE user_command_0100.
    Both dialog modules are defined in the ABAP program.
    When you run the program, the standard selection screen appears. In the INITIALIZATION event, the texts are defined on the tab titles, the subscreen selection screen 100 is assigned to the tab area, and the first tab title is activated.
    User actions on the selection screen are processed in the AT SELECTION-SCREEN event block. In particular, it is here that the subscreens are assigned and tab titles activated when the user chooses one of the first two tab titles. This is not necessary for the third tab title, since the dynamic assignment (screen 300) is always placed in the structure MYTAB when the user chooses it.
    Before the subscreen screen is displayed, the PBO module INIT_100 is executed. User actions on the subscreen screen trigger the PAI module. This includes when the user chooses a tab title. After that, the AT SELECTION-SCREEN event is triggered.
    Messages in the status line show where an action has been processed.

  • Multiple select options validation at selection screen

    Hi,
    I have the requirement to create a selection screen with 3 select options. Two of them are cross-dependent. It is mandatory to fill one of them and it is not allowed to fill both. The third one is optional. I tried the validation at selection-screen on block... and I have a problem that search help buttons for select options react like execution buttons, when I press any of them I am getting one of errors instead of search help.
    Any help on this issue would be appreciated.
    Here is my code:
    DATA:
          so_rbkp TYPE rbkp,
          so_mseg TYPE mseg.
    SELECTION-SCREEN BEGIN OF BLOCK blok WITH FRAME.
      SELECT-OPTIONS:
            s_fakt   FOR so_rbkp-belnr,
            s_matdok FOR so_mseg-mblnr,
            s_god FOR so_mseg-gjahr.
    SELECTION-SCREEN END OF BLOCK blok.
    INITIALIZATION.
    SET TITLEBAR '0100'.
    START-OF-SELECTION.
      AT SELECTION-SCREEN on block blok.
          if s_fakt <> space and s_matdok <> space.
            MESSAGE 'Message1' TYPE 'E'.
          elseif s_fakt = space and s_matdok = space.
            MESSAGE 'Message2' TYPE 'E'.
          endif.
        ENDIF.

    Only perform the check when user wants to execute or submit the program, not when pressing F4 or even Enter, but in a selection-screen event, before START-OF-SELECTION which were program would terminate in error :
    TABLES: SSCRFIELDS.
    AT SELECTION-SCREEN OB BLOCK b01.
        IF sscrfields-ucomm EQ 'ONLI'
        OR sscrfields-ucomm EQ 'PRIN'
        OR sscrfields-ucomm EQ 'SJOB'.
          IF s_fakt[] IS NOT INITIAL AND s_matdok IS NOT INITIAL.
            MESSAGE 'Message1' TYPE 'E'.
          ELSEIF s_fakt[] IS INITIAL and s_matdok[] IS INITIAL.
            MESSAGE 'Message2' TYPE 'E'.
          ENDIF.
        ENDIF.
    (You could also always send the message, but using type 'E' for those function code and 'S' status for any other value.)
    Regards,
    Raymond

  • Error message disble the Fields in Selection Screen

    Hi,
    In my Report i am validating some fields as mandatory.
    If the field is initial then one Error message should be display in the screen and user has to modify the selection screen.
    But after displaying the errro message my selection screen is input disable except the mandatory field.
    I want all the fields should be input enable.
    Sample code for Error message,
    MESSAGE E018 WITH 'Enter Plant'.
    Please provide the code for this.

    Performing checks on SELECTION-SCREEN
    - if the check uses only one independent field (e.g.: value exist in a table) use a[ AT SELECTION-SCREEN ON <field>|http://help.sap.com/abapdocu/en/ABAPAT_SELECTION-SCREEN_EVENTS.htm#!ABAP_ALTERNATIVE_2@2@], the field will be editable when error is raised
    - if the check uses some fields, group them using [SELECTION-SCREEN BEGIN OF BLOCK <block>/END OF BLOCK <block>|http://help.sap.com/abapdocu/en/ABAPSELECTION-SCREEN_BLOCK.htm] and then [AT SELECTION-SCREEN ON BLOCK  <block>|http://help.sap.com/abapdocu/en/ABAPAT_SELECTION-SCREEN_EVENTS.htm#!ABAP_ALTERNATIVE_4@4@], each field of the block will be editable when error is raised
    So, if you really want that each and every field be editable when an error is raised, declare every parameter and select-options in a big block, and perform the check in a unique AT SELECTION-SCREEN ON BLOCK xxx.
    Use Error message, Warning and Information don't break the flow of the report.
    Regards,
    Raymond

  • At selection-screen output and  at selection-screen on

    Hi Experts,
    I had coded in both at selection-screen output for disabling input of certain fields and at selection-screen for validation like this:
    AT SELECTION-SCREEN output.
      IF p_amt = 'X'.
        LOOP AT SCREEN.
          CASE screen-name.
            WHEN 'P_AMT'.
              screen-input = '1'.
            WHEN 'P_TST'.
              screen-input = '1'.
            WHEN 'P_B4C'.
              screen-input = '1'.
            WHEN 'P_AFC'.
              screen-input = '1'.
            WHEN 'P_COM'.
              screen-input = '1'.
            WHEN 'P_COM1'.
              screen-input = '1'.
            WHEN 'P_COM2'.
              screen-input = '1'.
            WHEN OTHERS.
              screen-input = '0'.
          ENDCASE.
          MODIFY SCREEN.
        ENDLOOP.
      ENDIF.
      IF p_amt = 'X'.
        LOOP AT SCREEN.
          CASE screen-name.
            WHEN 'P_AMT'.
              screen-input = '1'.
            WHEN 'P_TST'.
              screen-input = '1'.
            WHEN 'P_B4C'.
              screen-input = '1'.
            WHEN 'P_AFC'.
              screen-input = '1'.
            WHEN 'P_COM'.
              screen-input = '1'.
            WHEN 'P_COM1'.
              screen-input = '1'.
            WHEN 'P_COM2'.
              screen-input = '1'.
            WHEN OTHERS.
              screen-input = '0'.
          ENDCASE.
          MODIFY SCREEN.
        ENDLOOP.
      ENDIF.
      IF p_pdf = 'X'.
        LOOP AT SCREEN.
          CASE screen-name.
            WHEN 'P_PDF'.
              screen-input = '1'.
            WHEN 'P_TST'.
              screen-input = '1'.
            WHEN 'P_PATH'.
              screen-input = '1'.
            WHEN OTHERS.
              screen-input = '0'.
          ENDCASE.
          MODIFY SCREEN.
        ENDLOOP.
      ENDIF.
      IF p_afc = 'X'.
        LOOP AT SCREEN.
          CASE screen-name.
            WHEN 'P_TST'.
              screen-input = '1'.
            WHEN 'S_FID-LOW' OR 'S_FID-HIGH'.
              screen-input = '0'.
            WHEN 'S_ORG-LOW' OR 'S_ORG-HIGH'.
              screen-input = '0'.
            WHEN 'S_OFF-LOW' OR 'S_OFF-HIGH'.
              screen-input = '0'.
            WHEN 'S_DAT-LOW' OR 'S_DAT-HIGH'.
              screen-input = '0'.
          ENDCASE.
          MODIFY SCREEN.
        ENDLOOP.
      ENDIF.
    AT selection-screen on block b5.
    if p_tst is initial.
      message text-016 type 'E'.
    endif.
    AT selection-screen on block b2.
    if p_amt ne 'X' and p_pdf ne 'X'.
    if s_fid is initial and s_org is initial.
    message text-000 type 'E'.
    endif.
    if s_dat is initial.
    message text-000 type 'E'.
    endif.
    endif.
    when i comment out at selection-screen validations the input is disabled for the screen fields as set, else the validations are executed first.
    Any solution for this???
    Thanks in advance.

    AT SELECTION-SCREEN
    Syntax
    AT SELECTION-SCREEN selscreen_event.
    Effect
    This statement defines event blocks for different events selscreen_event that are triggered by the ABAP runtime environment during selection screen processing.
    Selection screen events occur immediately before sending a selection screen and after certain user actions on a displayed selection screen. They assist in selection screen processing in the ABAP program.
    AT SELECTION-SCREEN is triggered at least twice during actions on selection screens that are linked into another selection screen as a subscreen - first for the linked selection screen itself, and then for the linking selection screens.
    Note
    The event blocks after AT SELECTION-SCREEN are implemented internally as procedures. Declarative statments in these event blocks create local data.

  • LDB-PNP Selection Screen

    Hi Experts,
    By mistake the HR  Report Category "HRINCLMS" in LDB selection screen was changed. Now I am trying to change the same but it is not allowing.
    After executing the "HINCREMS" program.In standard program, The selection screen 1st block should be KEY DATE with fields TODAY and OTHER KEY DATE . But due to some changes it is showing PAYROLL PERIOD BLOCK with fields CURRENT PERIOD and OTHER PERIOD(remining blocks are coming correctly).
    This is because in the HR  Report Category "HRINCLMS" the person selection  period should be KEY DATE. But defaultly it is taking as NO ENTRY and I am not able to edit the person selection period it is not in editable mode.
    Its effecting whole hr screen. Please can any one help me to resolve the problem.
    Thanks,
    Shafi.

    And what you said is also right.
    This is a tricky one, and I don't know but maybe it is a bug. I tried modifying it in my development system and as soon as i hit enter the value of Person Selection Period is toggling automatically to 'No entry'.  So, in my opinion you have two options here:
    1) Modify the value via debugging. In this case you have to go to SE16 and display the record for RECPL => HRINCLMS and then set the value for XXXPS to 1
    2) The other way is choosing the following options:
         a) Data Selection Period = Key Date
         b) Person selection period = No entry
         c) Payroll Area = No entry
    Best Regards
    Edited by: Jose Maria Otero on Nov 24, 2011 11:28 AM

  • Issue with CALL SELECTION-SCREEN

    Hi experts,
    I am working on a report.
    Here on the selection screen , based on the selection of some radiobuttons ,i want to call a secondary selection screen.
    So i am using the following program code ,
    AT SELECTION-SCREEN on BLOCk blk.
    IF p_abc  =  c_x.
        CALL SELECTION-SCREEN 100 STARTING AT 20 5.
        IF sy-subrc <> 0.
          MESSAGE text-011 TYPE c_e .
        ENDIF.
      ENDIF.
    so currently , once i complete my slection on the screen 100 , the popup screen stays there and rest of the programing logic is executed correctly.
    My issue is that , once i complete my slection on the screen 100, i want that the pop up should be closed
    And then the the rest of the program logic should continue.    
    please guide me how ,this can be done.
    Regards,
    Rajesh Kumar.

    Hi
    The event AT SELECTION-SCREEN and AT SELECTION-SCREEN ON BLOCK  are very similar, only the second event see the part of selection-screen defined in the block.
    This events are triggered as soon as the user does something: so press ENTER, F8,........
    If u want the second-selction screen is shown once and the main selection-screen has to be displayed under the second one, u can try to run the second one only if the report has to run, so if the user has pressed F8, code ONLI.
    AT SELECTION-SCREEN on BLOCk blk.
    CHECK SY-UCOMM = 'ONLI'.
    IF p_abc = c_x.
      CALL SELECTION-SCREEN 100 STARTING AT 20 5.
      IF sy-subrc 0.
         MESSAGE text-011 TYPE c_e .
      ENDIF.
    ENDIF.
    In tihs way the rest of the program will be executed, else u need to move all code of the event START-OF-SELECTION and END-OF-SELECTION in the event AT SELECTION-SCREEN, or, just as I said before, to move the calling of POPUP to event START-OF-SELECTION.
    Max

  • Validations at selection-screen

    hi ,
    how to do validations at selection-screen?
    with regards
    always learner
    points will be rewarded if useful

    Hi Buddy
      Its good to learn alwasys . Here are some progarms which are useful in selection- screen.
    Dont forget to reward points.
    at selection-screen.
    select LIFNR
           from LFB1
           into table
           where lifnr in s_lifnr.
    if sy-subrc ne 0.
    message e888(sabapdocu) with 'no number found'.
    endif.
    in this way u can write the select query.
    selection-screen begin of block b1.
    parameters: p_datum1 type sy-datum,
    p_datum2 type sy-datum.
    selection-screen end of block b1.
    at selection-screen on block b1.
    if p_datum1 is initial
    and p_datum2 is initial.
    message e001(00) with 'Enter at least one date'.
    endif.
    PARAMETERS: TEST1(10) MODIF ID SC1,
                TEST2(10) MODIF ID SC2,
                TEST3(10) MODIF ID SC1,
                TEST4(10) 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.
    SELECTION-SCREEN BEGIN OF BLOCK B1 WITH FRAME.
      PARAMETERS: R1 RADIOBUTTON GROUP RAD1 DEFAULT 'X',
                  R2 RADIOBUTTON GROUP RAD1,
                  R3 RADIOBUTTON GROUP RAD1.
    SELECTION-SCREEN END OF BLOCK B1.
    SELECTION-SCREEN BEGIN OF BLOCK B2 WITH FRAME.
      PARAMETERS: R4 RADIOBUTTON GROUP RAD2 DEFAULT 'X',
                  R5 RADIOBUTTON GROUP RAD2,
                  R6 RADIOBUTTON GROUP RAD2.
    SELECTION-SCREEN END OF BLOCK B2.
    AT SELECTION-SCREEN ON RADIOBUTTON GROUP RAD1.
      IF R1 = 'X'.
        MESSAGE W040(HB).
      ENDIF.
    AT SELECTION-SCREEN ON RADIOBUTTON GROUP RAD2.
      IF R4 = 'X'.
        MESSAGE W040(HB).
      ENDIF.

  • Check for entries on the selection screen

    if one of the select options is obligatory with no default value then the radio buttons does not work. Can anybody please let me know why. it is the same if i dont make the field obligatory but write code in at selection-screen on block with a error message.
    REPORT  ZSELECT1                                .
    tables : ekko.
    data: group_id(3) type c.
    SELECTION-SCREEN BEGIN OF BLOCK MAIN WITH FRAME TITLE TEXT-001.
    PARAMETERS: p_out RADIOBUTTON GROUP RADI DEFAULT 'X' USER-COMMAND
                                                         CHECK,
                p_file  RADIOBUTTON GROUP RADI.
    SELECTION-SCREEN END OF BLOCK MAIN.
    SELECTION-SCREEN BEGIN OF BLOCK output WITH FRAME TITLE TEXT-002.
    SELECT-OPTIONS: so_ekgrp FOR EKKO-EKGRP obligatory MODIF ID OUT,
                    so_ekorg FOR EKKO-EKORG MODIF ID OUT.
    SELECTION-SCREEN END OF BLOCK OUTPUT.
    SELECTION-SCREEN BEGIN OF BLOCK UPLOAD WITH FRAME TITLE TEXT-003.
    PARAMETERS: p_pcfile LIKE rlgrap-filename MODIF ID UPL,
                p_dismod(1) TYPE c DEFAULT 'N' MODIF ID UPL.
    SELECTION-SCREEN END OF BLOCK UPLOAD.
    AT SELECTION-SCREEN OUTPUT.
      CASE 'X'.
        WHEN P_OUT. GROUP_ID = 'UPL'.
        WHEN P_file. GROUP_ID = 'OUT'.
      ENDCASE.
      LOOP AT SCREEN.
        IF SCREEN-GROUP1 = GROUP_ID.
          screen-input = 0.
          MODIFY SCREEN.
        ENDIF.
      ENDLOOP.

    You cannot have it as mandatory. Instead, you can write the validations in START-OF-SELECTION. Here is the modified code.
    REPORT ZSELECT1 .
    tables : ekko.
    data: group_id(3) type c.
    SELECTION-SCREEN BEGIN OF BLOCK MAIN WITH FRAME TITLE TEXT-001.
    PARAMETERS: p_out RADIOBUTTON GROUP RADI DEFAULT 'X' USER-COMMAND CHECK,
               p_file RADIOBUTTON GROUP RADI.
    SELECTION-SCREEN END OF BLOCK MAIN.
    SELECTION-SCREEN BEGIN OF BLOCK output WITH FRAME TITLE TEXT-002.
    SELECT-OPTIONS: so_ekgrp FOR EKKO-EKGRP MODIF ID OUT,
                    so_ekorg FOR EKKO-EKORG MODIF ID OUT.
    SELECTION-SCREEN END OF BLOCK OUTPUT.
    SELECTION-SCREEN BEGIN OF BLOCK UPLOAD WITH FRAME TITLE TEXT-003.
    PARAMETERS: p_pcfile LIKE rlgrap-filename MODIF ID UPL,
                p_dismod(1) TYPE c DEFAULT 'N' MODIF ID UPL.
    SELECTION-SCREEN END OF BLOCK UPLOAD.
    AT SELECTION-SCREEN OUTPUT.
      CASE 'X'.
        WHEN P_OUT. GROUP_ID = 'UPL'.
        WHEN P_file. GROUP_ID = 'OUT'.
      ENDCASE.
      LOOP AT SCREEN.
        IF SCREEN-GROUP1 = GROUP_ID.
          screen-input = 0.
          MODIFY SCREEN.
        ENDIF.
      ENDLOOP.
    START-OF-SELECTION.
      IF p_out = 'X' and so_ekgrp[] is initial.
        MESSAGE e000 WITH text-e01.
      ENDIF.
    Regards,
    Srinivas

Maybe you are looking for

  • Remote not working properly with one TV

    For one of my TV's the remote is not working as it should. Just today - the operating distance from my couch, which is about 8 ft got reduced to about 3 ft. I don't have this problem with my TV in the bed room. I changed the batteries and they are fu

  • Is there a way i can organise my apps in itunes?

    Hi, I'm pretty sure i've looked everywhere in itunes to see if there is a way to organise the thousands of iOS Apps I have but so far I cannot see one.  Can someone shed light on how to best organise apps so that you can for example, put games you li

  • Pulling My Hair Out! K7N2 Delta2 & MSI NX6200AX (solved, see link last post)

    Posted about the troubles more then a month ago here: https://forum-en.msi.com/index.php?topic=96306.0 . Quick history, Built my Teens a PC with the Delta2 MB, an old XP1700 CPU, some old DDR, and my old (OC'd for 3 years and still running great) Gai

  • What's the error code: 1661 during the IOS5 restore?

    what's the error code: 1661 during the IOS5 restore?

  • IPhoto still keeping Trashed - item library 3x size

    My issue is that I originally tried two attempts to import my old library over to another computer. However, I figured out pretty quickly that this was not the best way to combine libraries and I deleted and trashed the photos I brought in. The iPhot