如何限制SELECT-OPTIONS的选择屏幕的OPTION
REPORT Z_CONECT_A.
* Include type pool SSCR
TYPE-POOLS sscr.
TABLES : marc.
*定義選擇屏幕select-options :
? s_matnr for marc-matnr,
? s_werks for marc-werks.
* Define the object to be passed to the RESTRICTION parameter
DATA restrict TYPE sscr_restrict.
* Auxiliary objects for filling RESTRICT
DATA : optlist TYPE sscr_opt_list,
?????????? ass type sscr_ass.
INITIALIZATION.
* 限制MATNR參數只能使用‘EQ’ 和‘BT’.
? optlist-name = 'OBJECTKEY1'.
? optlist-options-eq = 'X'.
? optlist-options-bt = 'X'.
? APPEND optlist TO restrict-opt_list_tab.
? ass-kind = 'S'.
? ass-name = 'S_MATNR'.
? ass-sg_main = 'I'.
? ass-sg_addy = space.
? ass-op_main = 'OBJECTKEY1'.
? APPEND ass TO restrict-ass_tab.
* 限制 WERKS 參數只能使用CP, GE, LT, NE.
? optlist-name = 'OBJECTKEY2'.
? optlist-options-cp = 'X'.
? optlist-options-ge = 'X'.
? optlist-options-lt = 'X'.
? optlist-options-ne = 'X'.
? APPEND optlist TO restrict-opt_list_tab.
? ass-kind = 'S'.
? ass-name = 'S_WERKS'.
? ass-sg_main = 'I'.
? ass-sg_addy = space.
? ass-op_main = 'OBJECTKEY2'.
? APPEND ass TO restrict-ass_tab.
? 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
??????????? .
? IF sy-subrc <> 0.
?MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
???????? WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
? ENDIF.
轉載于:https://www.cnblogs.com/xiaomaohai/archive/2006/08/05/6157564.html
總結
以上是生活随笔為你收集整理的如何限制SELECT-OPTIONS的选择屏幕的OPTION的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Teddy's Knowledge Ba
- 下一篇: utf-8 编码出现空白