Range options in screen painter

Developed an application in ABAP for employee entitlement. Most of the screens are designed in Screen painter as they has to be run for single Emp. psl no.
But screen for infosystems (2000) is designed using selection-screen as it can be run for single or multiple EMP PSL no.
This infosystems screen is called using " Call selection-screen command'.
Now whenever there is change in program the flow logic of screen 2000 is changed. Now my questions are
- How to call screen 2000 without affecting flow logic.
- How to design screen in screen painter for parameter ranges.
Kindly help as no help is available
thanks
anu

Hi,
select options in screen check this code..
REPORT  ZTEST_SCREEN                            .
DATA : BEGIN OF IT_DYNPFIELDS OCCURS 3.
        INCLUDE STRUCTURE DYNPREAD.
DATA : END OF IT_DYNPFIELDS.
DATA: TEST(10) TYPE C.
RANGES:  R_UNAME FOR SY-UNAME.
DATA:     V_USERNAME LIKE  SY-UNAME.
DATA : V_PROG LIKE D020S-PROG VALUE 'ZTEST_SCREEN',
       V_DNUM LIKE D020S-DNUM VALUE '0100'.
CALL SCREEN 100.
*&      Module  STATUS_0100  OUTPUT
*       text
MODULE STATUS_0100 OUTPUT.
  SET PF-STATUS 'TEST'.
*  SET TITLEBAR 'xxx'.
ENDMODULE.                 " STATUS_0100  OUTPUT
*&      Module  USER_COMMAND_0100  INPUT
*       text
MODULE USER_COMMAND_0100 INPUT.
  CASE SY-UCOMM.
    WHEN 'BACK'.
      LEAVE TO SCREEN 0.
  ENDCASE.
ENDMODULE.                 " USER_COMMAND_0100  INPUT
*&      Module  GET_CURSOR_USERNAME  INPUT
*       text
MODULE GET_CURSOR_USERNAME INPUT.
  REFRESH IT_DYNPFIELDS.
  CLEAR   IT_DYNPFIELDS.
  MOVE 'V_USERNAME' TO IT_DYNPFIELDS-FIELDNAME.
  APPEND IT_DYNPFIELDS.
  CLEAR   IT_DYNPFIELDS.
  CALL FUNCTION 'DYNP_VALUES_READ'
    EXPORTING
      DYNAME               = V_PROG
      DYNUMB               = V_DNUM
      TRANSLATE_TO_UPPER   = 'X'
    TABLES
      DYNPFIELDS           = IT_DYNPFIELDS
    EXCEPTIONS
      INVALID_ABAPWORKAREA = 1
      INVALID_DYNPROFIELD  = 2
      INVALID_DYNPRONAME   = 3
      INVALID_DYNPRONUMMER = 4
      INVALID_REQUEST      = 5
      NO_FIELDDESCRIPTION  = 6
      INVALID_PARAMETER    = 7
      UNDEFIND_ERROR       = 8
      DOUBLE_CONVERSION    = 9
      STEPL_NOT_FOUND      = 10
      OTHERS               = 11.
  IF SY-SUBRC = 0.
    READ TABLE IT_DYNPFIELDS WITH KEY FIELDNAME = 'V_USERNAME'.
    IF SY-SUBRC = 0.
      V_USERNAME = IT_DYNPFIELDS-FIELDVALUE.
    ENDIF.
  ENDIF.
  PERFORM GET_MULTIPLE.
ENDMODULE.                 " GET_CURSOR_USERNAME  INPUT
*&      Form  GET_MULTIPLE
*       text
*  -->  p1        text
*  <--  p2        text
FORM GET_MULTIPLE .
* Dynamically holding Field name
  FIELD-SYMBOLS: <FST> TYPE STANDARD TABLE.
  IF  R_UNAME[] IS INITIAL.
    IF NOT V_USERNAME IS INITIAL.
      R_UNAME-SIGN = 'I'.
      R_UNAME-OPTION = 'EQ'.
      R_UNAME-LOW = V_USERNAME.
      APPEND R_UNAME.
      CLEAR  R_UNAME.
    ENDIF.
  ENDIF.
  ASSIGN R_UNAME[] TO <FST>.
  CALL FUNCTION 'COMPLEX_SELECTIONS_DIALOG'
    EXPORTING
      TITLE             = 'Select Multiple Value'(059)
      TEXT              = 'Finish Group'(058)
      SIGNED            = 'X'
      LOWER_CASE        = ' '
      NO_INTERVAL_CHECK = 'X'
      JUST_DISPLAY      = ' '
      JUST_INCL         = 'X'
    TABLES
      RANGE             = <FST>
    EXCEPTIONS
      NO_RANGE_TAB      = 1
      CANCELLED         = 2
      INTERNAL_ERROR    = 3
      OTHERS            = 4.
  IF SY-SUBRC = 0.
    READ TABLE R_UNAME INDEX 1.
    IF SY-SUBRC = 0.
      V_USERNAME = R_UNAME-LOW.
    ENDIF.
  ENDIF.
ENDFORM.                    " GET_MULTIPLE
Check this thread...
Select option in Dialog program screen
Regards
Vijay

Similar Messages

  • How to degin a  select-option in screen painter?

    Help me !
    How can i create an object  like select-option  in screen painter.
    I want to input a range ,but there are no button or text   in screen painter  like  select-option?

    hai u can create select options on screen but in little differernt way..
    1st way : if u want to give only 1 interval then declare on screen as two different variables in same line
    and after that append the value in ranges.
    2nd way: here u can define as asingle input vriable  beside that variable u can give a icon as extension in select option and give give some function code to that.if we click on that in user command write following code :
      IF V_OKCODE = 'EXT'.
        CALL FUNCTION 'COMPLEX_SELECTIONS_DIALOG'
            EXPORTING
                 TITLE             = 'Title'
                 TEXT              = 'Text'
                 SIGNED            = 'X'
            LOWER_CASE        = ' '
            NO_INTERVAL_CHECK = ' '
            JUST_DISPLAY      = ' '
            JUST_INCL         = ' '
            EXCLUDED_OPTIONS  =
            DESCRIPTION       =
                 HELP_FIELD        = 'T001W-WERKS'
            SEARCH_HELP       =
             TABLES
                  RANGE             = R_WERKS
            EXCEPTIONS
                 NO_RANGE_TAB      = 1
                 CANCELLED         = 2
                 INTERNAL_ERROR    = 3
                 OTHERS            = 4
        IF SY-SUBRC <> 0.
    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
            WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
        ENDIF.
    help field the field reference wich u want to declare and range is where values will be stored atomatically as in select options.
    once we click the icon if we execute the function module a window will open as in selection option in reports.there user can enter the values.once the user enters the values it will stored automatically in ranges declared like r_werks in above example.
    try it..

  • How to declare and work with select-option in screen painter?

    hello there,
    can anybody plz suggest me ,how to declare and work with select-option in screen painter?
    neon

    Hi Blue,
    Please check these threads which will help you a lot..
    module pool programming " to add selection-option on screen"
    Re: Select option in Dialog program screen
    Re: SELECT-OPTIONS in Screen
    Good luck
    Narin

  • How to design select-option through screen painter

    I am new to screen painter. I want to make a screen having range of values high/low (just like select-option)......How can I do this using screen painter?

    Hi!
    Method 1
    a) Create a subscreen area in your screen layout where you want to create the select options.
    b) In the top include of  your module pool program declare a selection screen as a subscreen e.g.
           SELECTION-SCREEN BEGIN OF SCREEN 100 AS SUBSCREEN.
                 select-options s_matnr for mara-matnr.
           SELECTION-SCREEN END OF SCREEN.
    c) In the PBO and PAI of the main screen where the select options needs to be created do a call subscreen of the above screen (100).
           CALL SUBCREEN sub_area INCLUDING    
      This call subscreen statement is necessary for transport of values between screen and program.
    Note: All validations of the selection screen fields e.g. the s_matnr field created above should be done in selection screen events like AT SELECTION-SCREEN etc and not in PAI. These selection screen validations etc should be done in the top include only.
    Method 2
    a) Create 2 separate fields in your screen layout - one for the low value and one for the high value. Insert an icon beside the high value which will call the multiple selections popup screen on user command. Use function module COMPLEX_SELECTIONS_DIALOG to achieve this.
    struc_tab_and_field-fieldname   = con_cust.      " 'KUNNR'
    struc_tab_and_field-tablename = con_kna1.     " 'KNA1'.
    CALL FUNCTION 'COMPLEX_SELECTIONS_DIALOG'
              EXPORTING
              TITLE                   = ' '
                text                         = g_titl1                                " 'Customers'
                tab_and_field     = struc_tab_and_field
              TABLES
                RANGE                   = rng_kunnr
              EXCEPTIONS
                NO_RANGE_TAB          = 1
                CANCELLED                    = 2
                INTERNAL_ERROR     = 3
                INVALID_FIELDNAME = 4
                OTHERS                           = 5.
    IF NOT rng_kunnr[] IS INITIAL.
             Read the very first entry of the range table and pass it to
             dynpro screen field
               READ TABLE rng_kunnr INDEX 1.
               IF sy-subrc = 0.
                  g_cust = rng_kunnr-low.
               ENDIF.
    You can use the return table rng_kunnr to populate your own internal range table with the values entered by the user. Basically here you are just simulating the work of a select-options parameter by module pool screen elements
    You can go with it also ....
    Re: Select-options in dynpro
    Regards....

  • Select Options in Screen Painter

    Hi there
    Is there some way I can create two text boxes and one button, when the buttons gets pressed the same action as your usual SELECT-OPTIONS dialog box gets displayed? Is ther maybe a function module I can call for this?
    Thanx,
    Jan

    you can call a selection screen in sub screen area
    declare selection screen as
    begin of selection-screen 0100 as subscreen.
    end of selection-screen...
    then,
    in flow logic of your module pool screen
    PBO
    call subscreen <sub_area> including sy-repid '0100'.
    " at selection-screen output event is called
    PAI.
    call subscreen <sub_area>.
    "at selection-screen is called
                                              OR
    Call FM COMPLEX_SELECTIONS_DIALOG when the select options button is pressed
    Edited by: Amit Gupta on Nov 6, 2008 11:19 AM

  • Report  and SAP-SCRIPT  &  SCREEN PAINTER

    Hi all ,
      I need some help.
    1)How to transport sap-script.
    2) print program of sap script are client-dependent or client-independent.
    3)Database tables ( on se11)  are client-dependent or client-independent. ( is sy-mandt will make dependent or independent)
    4) how to create select-option on screen painter or with module pool programming.
    5)performance tuning for ABAP report.
    points for all answers assured.
    thanks.

    Ihave some notes on transporting sapscript for earlier version of SAP. 
    The steps may vary based on your version and Suppport PAckages levels. 
    In the future your version and platform detials will help in a quicker response.
    Summary of sapscript EXPORT / IMPORT process.
    Steps to export Layout Sets (sapscript)
    Log on the Source system and client
    This may have to be client 000 and then again in the client in which you do developement.
    Note that sapscript is client dependent
    SE38 and execute program RSTXR3TR
    Tranport number: DS1K9#####
    Mode field: EXPORT
    File system: Server -  radio button
    The dataset name: /usr/sap/trans/data/DS1K9#####.layoutsets
    CHECK the Display dataset contents checkbox
    Execute
    Steps to import Layout Sets (sapscript)
    Log on the target system and client.  This may have to be client 000 and then in the client in which you test, or ultimatly production.
    SE38 and execute program RSTXR3TR
    Tranport number: DS1K9#####
    Mode field: IMPORT
    The dataset name: /usr/sap/trans/data/DS1K9#####.layoutsets
    CHECK the Display dataset contents checkbox
    Execute
    Note: when importing into Production, the export does not need to be performed. 
    Therefore only the import protion is required once the sapscript has been exported from Development.

  • Customer Control in screen painter in Module pool - work like container?

    Customer Control option in screen painter in Module pool - work like container?
    is it true? How?
    Is like any work area or what?
    what is the excat use of that option?
    regards.

    Hello,
    In screen painter ,custom control is used to define the control area on the screen.Just click on that and make your own container area.When you create an ALV grid or TEXT EDITOR or any other control,it will get attached to the screen in that area through the custom container.
    Name the container area as say '<b>CONTAINER</b>'.(in capitals.)
    When you actually create the custom conatiner programatically,you should give the container area name.ie.
    Data : cont type ref to cl_gui_custom_container.
    Create object cont
    exporting
    parent = '<b>CONTAINER</b>'.
    Now,this container that you created-cont is attached to the screen in the area defined by CONTAINER.
    Regards,
    Beejal
    **Reward if this helps

  • ABAP : Screen Painter - Graphical layout

    Hi Experts ,
    I am doing an assignment for the screen painter. but when i click on the layout of it , I am not getting the graphical input. kindly advise. is there some new setting to made.
    thanks & regards ,
    M.S

    Hi M.S,
    If the setting is already check, then the problem is in GUI. While installing GUI there is a option for Screen painter. You need to check it at GUI inatall
    For patch details refer [Graphical Layout Editor|http://help.sap.com/saphelp_nwmobile71/helpdata/en/d1/801b77454211d189710000e8322d00/frameset.htm]
    Regards
    Edited by: Rajvansh Ravi on Nov 26, 2009 6:20 AM

  • Note 1099850 - Disable history via screen painter

    The installation of the SAP GUI 7.10 with patch level 8 has been completed.
    Where in the SAP screen painter is the option of disabling the history for edit fields?

    Hello,
    showing the screen elements attributes in screen painter, there will be a checkbox "No Inputhisotry" on the "display" tab.
    The feature requires both the latest SAPGUI 7.10 and also a 7.10 backend.
    You might not have latter, which might be the reason why you are not finding the option in screen painter.
    Best regards
    Rolf-Martin

  • SELECT-OPTION IN SCREEN (SCREEN-PAINTER)

    I want to put a select option in a screen type screen painter
    Using this the user could enter a ranger of personal numbers.
    Can any one give me a clue on how to do that ?

    This is the code of the program and I my break point I do not have anything in SELPERNR
    REPORT  ZY_TESTSUBSCREEN                        .
    TABLES: PA0003.
    Custom Selection Screen 1010
    SELECTION-SCREEN BEGIN OF SCREEN 1010 AS SUBSCREEN.
    SELECTION-SCREEN BEGIN OF BLOCK B1 WITH FRAME TITLE TEXT-001.
    SELECT-OPTIONS: SELPERNR FOR  PA0003-PERNR.
    SELECTION-SCREEN END OF BLOCK B1.
    SELECTION-SCREEN END OF SCREEN 1010.
    CALL SCREEN 100.
    BREAK STEPHANK.
    *&      Module  USER_COMMAND_0100  INPUT
          text
    MODULE USER_COMMAND_0100 INPUT.
      CHECK SY-UCOMM(1) NE '%'.
      LEAVE TO SCREEN 0.
    ENDMODULE.                 " USER_COMMAND_0100  INPUT
    This is the screen flow
    PROCESS BEFORE OUTPUT.
    MODULE STATUS_0100.
    CALL SUBSCREEN AREA INCLUDING SY-REPID '1010'.
    PROCESS AFTER INPUT.
    MODULE USER_COMMAND_0100.
    Rich do you have any idea why ?

  • How to put "selection options without intervals" on screen painter?

    Hello all,
           I need to put a field for pernr(personal number) on screen painter (module program) and user should be able to enter a list of pernr's to process. I know in report program I can do this by:
    SELECT-OPTIONS: s_lpernr FOR pa001-pernr NO INTERVALS.
    How can I get this work on sccreen painter in module programming? How can I add a field on screen painter with a range without intervals? Please let me know.
    Thanks.
    Mithun.

    You can also do this using the function module COMPLEX_SELECTIONS_DIALOG.
    REPORT  ZTEST_SCREEN                            .
    DATA : BEGIN OF IT_DYNPFIELDS OCCURS 3.
            INCLUDE STRUCTURE DYNPREAD.
    DATA : END OF IT_DYNPFIELDS.
    DATA: TEST(10) TYPE C.
    RANGES:  R_UNAME FOR SY-UNAME.
    DATA:     V_USERNAME LIKE  SY-UNAME.
    DATA : V_PROG LIKE D020S-PROG VALUE 'ZTEST_SCREEN',
           V_DNUM LIKE D020S-DNUM VALUE '0100'.
    CALL SCREEN 100.
    *&      Module  STATUS_0100  OUTPUT
    *       text
    MODULE STATUS_0100 OUTPUT.
      SET PF-STATUS 'TEST'.
    *  SET TITLEBAR 'xxx'.
    ENDMODULE.                 " STATUS_0100  OUTPUT
    *&      Module  USER_COMMAND_0100  INPUT
    *       text
    MODULE USER_COMMAND_0100 INPUT.
      CASE SY-UCOMM.
        WHEN 'BACK'.
          LEAVE TO SCREEN 0.
      ENDCASE.
    ENDMODULE.                 " USER_COMMAND_0100  INPUT
    *&      Module  GET_CURSOR_USERNAME  INPUT
    *       text
    MODULE GET_CURSOR_USERNAME INPUT.
      REFRESH IT_DYNPFIELDS.
      CLEAR   IT_DYNPFIELDS.
      MOVE 'V_USERNAME' TO IT_DYNPFIELDS-FIELDNAME.
      APPEND IT_DYNPFIELDS.
      CLEAR   IT_DYNPFIELDS.
      CALL FUNCTION 'DYNP_VALUES_READ'
        EXPORTING
          DYNAME               = V_PROG
          DYNUMB               = V_DNUM
          TRANSLATE_TO_UPPER   = 'X'
        TABLES
          DYNPFIELDS           = IT_DYNPFIELDS
        EXCEPTIONS
          INVALID_ABAPWORKAREA = 1
          INVALID_DYNPROFIELD  = 2
          INVALID_DYNPRONAME   = 3
          INVALID_DYNPRONUMMER = 4
          INVALID_REQUEST      = 5
          NO_FIELDDESCRIPTION  = 6
          INVALID_PARAMETER    = 7
          UNDEFIND_ERROR       = 8
          DOUBLE_CONVERSION    = 9
          STEPL_NOT_FOUND      = 10
          OTHERS               = 11.
      IF SY-SUBRC EQ  0.
        READ TABLE IT_DYNPFIELDS WITH KEY FIELDNAME = 'V_USERNAME'.
        IF SY-SUBRC = 0.
          V_USERNAME = IT_DYNPFIELDS-FIELDVALUE.
        ENDIF.
      ENDIF.
      PERFORM GET_MULTIPLE.
    ENDMODULE.                 " GET_CURSOR_USERNAME  INPUT
    *&      Form  GET_MULTIPLE
    *       text
    *  -->  p1        text
    *  <--  p2        text
    FORM GET_MULTIPLE .
    * Dynamically holding Field name
      FIELD-SYMBOLS: <FST> TYPE STANDARD TABLE.
      IF  R_UNAME[] IS INITIAL.
        IF NOT V_USERNAME IS INITIAL.
          R_UNAME-SIGN = 'I'.
          R_UNAME-OPTION = 'EQ'.
          R_UNAME-LOW = V_USERNAME.
          APPEND R_UNAME.
          CLEAR  R_UNAME.
        ENDIF.
      ENDIF.
      ASSIGN R_UNAME[] TO <FST>.
      CALL FUNCTION 'COMPLEX_SELECTIONS_DIALOG'
        EXPORTING
          TITLE             = 'Select Multiple Value'(059)
          TEXT              = 'Finish Group'(058)
          SIGNED            = 'X'
          LOWER_CASE        = ' '
          NO_INTERVAL_CHECK = 'X'
          JUST_DISPLAY      = ' '
          JUST_INCL         = 'X'
        TABLES
          RANGE             = <FST>
        EXCEPTIONS
          NO_RANGE_TAB      = 1
          CANCELLED         = 2
          INTERNAL_ERROR    = 3
          OTHERS            = 4.
      IF SY-SUBRC EQ  0.
        READ TABLE R_UNAME INDEX 1.
        IF SY-SUBRC = 0.
          V_USERNAME = R_UNAME-LOW.
        ENDIF.
      ENDIF.
    ENDFORM.                    " GET_MULTIPLE

  • Hide the Range Option in Multiple Selection screen

    Hai,
    I Give the values In single Values In Selection Option Screen.
    I want to need Hide the Range Option Include or Exclude In Multiple selection screen.
    Regards,
    Geetha

    just check this it may help you
    <a href="https://www.sdn.sap.comhttp://www.sdn.sap.comhttp://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/840ad679-0601-0010-cd8e-9989fd650822">https://www.sdn.sap.comhttp://www.sdn.sap.comhttp://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/840ad679-0601-0010-cd8e-9989fd650822</a>
    here restricting the selection screen
    regards
    shiba dutta

  • Background color change option for box in screen painter

    have created a box in screen painter . is there any option to change the back ground color of this box.
    please help

    No, you can not change the background color of your screen painter box.

  • Multiple select option in the screen painter

    Hi all,
    I want to give multiple select option for a particular field in the screen painter.
    how to provide it.
    Nitin

    Hi,
    Refer to this link..[Select-Option in Dialog programming   |Re: Select-Option in Dialog programming]
    [How to make select option in module pool   |how to make select option in module pool]

  • How to disable the SELECT-OPTINS multiple selection screen's Ranges options

    Hi this is sekhar,
                      I have used the Select-options: statement with 'No-Interval' option. Now I need to restrict the user not to enter the values in the Ranges column of multiple selection screen. How can I do it....

    You can also refer this code as below : CHECK OUT SELECT OPTION sel_1_0.
    *& Report  ZTESTREP
    REPORT  ztestrep.
    Include type pool SSCR
    TYPE-POOLS sscr.
    Define the object to be passed to the RESTRICTION parameter
    DATA restrict TYPE sscr_restrict.
    Auxiliary objects for filling RESTRICT
    DATA opt_list TYPE sscr_opt_list.
    DATA ***      TYPE sscr_***.
    Define the selection screen objects
    First block: 3 SELECT-OPTIONS
    SELECTION-SCREEN BEGIN OF BLOCK block_0 WITH FRAME TITLE text-bl0.
    SELECT-OPTIONS sel_0_0 FOR sy-tvar0.
    SELECT-OPTIONS sel_0_1 FOR sy-tvar1.
    SELECT-OPTIONS sel_0_2 FOR sy-tvar2.
    SELECT-OPTIONS sel_0_3 FOR sy-tvar3.
    SELECTION-SCREEN END   OF BLOCK block_0.
    Second block: 2 SELECT-OPTIONS
    SELECTION-SCREEN BEGIN OF BLOCK block_1 WITH FRAME TITLE text-bl1.
    SELECT-OPTIONS sel_1_0 FOR sy-subrc.
    SELECT-OPTIONS sel_1_1 FOR sy-repid.
    SELECTION-SCREEN END   OF BLOCK block_1.
    INITIALIZATION.
    Define the option list
    ALL: All options allowed
      MOVE 'ALL'        TO opt_list-name.
      MOVE 'X' TO: opt_list-options-bt,
                   opt_list-options-cp,
                   opt_list-options-eq,
                   opt_list-options-ge,
                   opt_list-options-gt,
                   opt_list-options-le,
                   opt_list-options-lt,
                   opt_list-options-nb,
                   opt_list-options-ne,
                   opt_list-options-np.
      APPEND opt_list TO restrict-opt_list_tab.
    NOPATTERN: CP and NP not allowed
      CLEAR opt_list.
      MOVE 'NOPATTERN'  TO opt_list-name.
      MOVE 'X' TO: opt_list-options-bt,
                   opt_list-options-eq,
                   opt_list-options-ge,
                   opt_list-options-gt,
                   opt_list-options-le,
                   opt_list-options-lt,
                   opt_list-options-nb,
                   opt_list-options-ne.
      APPEND opt_list TO restrict-opt_list_tab.
    NOINTERVLS: BT and NB not allowed
      CLEAR opt_list.
      MOVE 'NOINTERVLS' TO opt_list-name.
      MOVE 'X' TO: opt_list-options-cp,
                   opt_list-options-eq,
                   opt_list-options-ge,
                   opt_list-options-gt,
                   opt_list-options-le,
                   opt_list-options-lt,
                   opt_list-options-ne,
                   opt_list-options-np.
      APPEND opt_list TO restrict-opt_list_tab.
    EQ_AND_CP: only EQ and CP allowed
      CLEAR opt_list.
      MOVE 'EQ_AND_CP'  TO opt_list-name.
      MOVE 'X' TO: opt_list-options-cp,
                   opt_list-options-eq.
      APPEND opt_list TO restrict-opt_list_tab.
    JUST_EQ: Only EQ allowed
      CLEAR opt_list.
      MOVE 'JUST_EQ' TO opt_list-name.
      MOVE 'X' TO opt_list-options-eq.
      APPEND opt_list TO restrict-opt_list_tab.
    Assign selection screen objects to option list and sign
    KIND = 'A': applies to all SELECT-OPTIONS
      MOVE: 'A'          TO ***-kind,
            '*'          TO ***-sg_main,
            'NOPATTERN'  TO ***-op_main,
            'NOINTERVLS' TO ***-op_addy.
      APPEND *** TO restrict-***_tab.
    KIND = 'B': applies to all SELECT-OPTIONS in block BLOCK_0,
                that is, SEL_0_0, SEL_0_1, SEL_0_2
      CLEAR ***.
      MOVE: 'B'          TO ***-kind,
            'BLOCK_0'    TO ***-name,
            'I'          TO ***-sg_main,
            '*'          TO ***-sg_addy,
            'NOINTERVLS' TO ***-op_main.
      APPEND *** TO restrict-***_tab.
    KIND = 'S': applies to SELECT-OPTION SEL-0-2
      CLEAR ***.
      MOVE: 'S'          TO ***-kind,
            'SEL_0_2'    TO ***-name,
            'I'          TO ***-sg_main,
            '*'          TO ***-sg_addy,
            'EQ_AND_CP'  TO ***-op_main,
            'ALL'        TO ***-op_addy.
      APPEND *** TO restrict-***_tab.
    KIND = 'S': Applies to SELECT-OPTION SEL_0_3
      CLEAR ***.
      MOVE: 'S'        TO ***-kind,
            'SEL_0_3'  TO ***-name,
            'I'        TO ***-sg_main,
            'N'        TO ***-sg_addy,
            'JUST_EQ'  TO ***-op_main.
      APPEND *** TO restrict-***_tab.
    Call function module
      CALL FUNCTION 'SELECT_OPTIONS_RESTRICT'
           EXPORTING
                 restriction                = restrict
              DB                          = ' '
           EXCEPTIONS
                 too_late                   = 1
                 repeated                   = 2
                 not_during_submit          = 3
                db_call_after_report_call  = 4
                selopt_without_options     = 5
                 selopt_without_signs       = 6
                 invalid_sign               = 7
                report_call_after_db_error = 8
                  empty_option_list          = 9
                 invalid_kind               = 10
                 repeated_kind_a            = 11
                 OTHERS                     = 12.

Maybe you are looking for

  • R/3 to BW (error message when scheduling load)

    Hi I am new to BW and R/3. I have been getting this messsage when scheduling the load (transaction data) from R/3 to BW ODS. Error when updating Idocs in Source System Diagnosis Errors have been reported in Source System during IDoc update: System re

  • Japanese Characters Encoding Problem

    Hi All, I have been looking at the problems posted in this forum and quite a few describe the issue I am facing currently but none has been able to provide a solution. The problem I am facing is as follows: Step 1: I am retrieving Japanese data from

  • Logical standby database keeps displaying ORA-16768

    I have a logical standby database setup on a remote host to accept cascaded logs from a physical standby. Everything was working fine until yesterday when I get the above error and log apply services stopped. When I go into Grid Control to Data Guard

  • Moving and editing slideshow between MACs

    I'd like to move an existing (uncompleted) slideshow from an iMac to a Mac Book Pro and complete the project on-site (a wedding reception). What is the best technique to complete this without messing with the hours of work that have gone into the pro

  • Clock-in clock-out process

    Hi guys, WRT to ESS MSS what is the clock-in clock-out process. We are nw2004s SP9. We see the clock-in clock-out corrections ESS application. But we do not find any approval mechanism for the same in UWL for the manger. Though a work item is generat