I am trying to restrict the selection options using FM u2018SELECT_OPTIONS_RESTRICTu2019 but it is not working. Here is the code I am using and it is not changing any option for S_CoCd. Please help me out.
TYPE-POOLS SSCR.
DATA: T_ASS_TAB TYPE SSCR_ASS, "select-options to be restricted
T_OPT_LIST TYPE SSCR_OPT_LIST, "switches controlling each option
RESTRICT TYPE SSCR_RESTRICT. "structure holding above 2 tables
SELECTION SCREEN
selection-screen begin of block box1 with frame title text-t01.
select-options: S_CoCd for CoCd obligatory DEFAULT 'US10'.
selection-screen end of block box1.
Initialize Selection Screen
initialization.
Create t_opt_list entry to specify capabilities of S_CoCd.
CLEAR T_OPT_LIST.
T_OPT_LIST-NAME = 'S_CoCd'."This must match ass_tab-op_main
T_OPT_LIST-OPTIONS-BT = SPACE. "Do not permit BETWEEN
T_OPT_LIST-OPTIONS-CP = SPACE. "Do not permit MATCHES-PATTERN
T_OPT_LIST-OPTIONS-EQ = 'X'. " Permit EQUALS
T_OPT_LIST-OPTIONS-GE = SPACE. "Do not permit GREATER-OR-EQUAL
T_OPT_LIST-OPTIONS-GT = SPACE. "Do not permit GREATER-THAN
T_OPT_LIST-OPTIONS-LE = SPACE. "Do not permit LESS-OR-EQUAL
T_OPT_LIST-OPTIONS-LT = SPACE. "Do not permit LESS-THAN
T_OPT_LIST-OPTIONS-NB = SPACE. "Do not permit NOT-BETWEEN
T_OPT_LIST-OPTIONS-NE = SPACE. "Do not permit NOT-EQUAL
T_OPT_LIST-OPTIONS-NP = SPACE. "Do not permit NO-PATTERN-MATCH
APPEND T_OPT_LIST TO RESTRICT-OPT_LIST_TAB.
Create t_ass_tab entry to show we're restricting select-option S_CoCd.
CLEAR T_ASS_TAB.
T_ASS_TAB-KIND = 'S'. "Apply only to the named SELECT-OPTION
T_ASS_TAB-NAME = 'S_CoCd'. "This is name of the SELECT-OPTION
T_ASS_TAB-SG_MAIN = 'I'. "I = ONLY Inclusions; * = Both
T_ASS_TAB-SG_ADDY = Space.
T_ASS_TAB-OP_MAIN = 'S_CoCd'. "This must match opt_list-name
APPEND T_ASS_TAB TO RESTRICT-ASS_TAB.
Call function to restrict the capabilities of select-option
CALL FUNCTION 'SELECT_OPTIONS_RESTRICT'
EXPORTING
RESTRICTION = RESTRICT
EXCEPTIONS
TOO_LATE = 1
REPEATED = 2
SELOPT_WITHOUT_OPTIONS = 3
SELOPT_WITHOUT_SIGNS = 4
INVALID_SIGN = 5
EMPTY_OPTION_LIST = 6
INVALID_KIND = 7
REPEATED_KIND_A = 8
OTHERS = 9.
Provide error if attempt to restrict capabilities of S_BUKRS failed.
IF SY-SUBRC <> 0.
MESSAGE E089(ZZ) WITH SY-REPID
SY-SUBRC
'SELECT_OPTIONS_RESTRICT'.
ENDIF.
Edited by: Rajesh Hemnani on Jun 17, 2009 11:42 AM