前一段时间写了一篇《SAP ABAP 开发中常用的方法总结》的文章,其中写到关于 SELECT-OPTIONS 的选择范围是没有办法控制的,一位网友给了评论,链接可以控制的网址,我查看了,也测试了,可以控制<、<=、>、>=、=、<>是单个显示,还是多个显示,下面是给出的一段我测试的代码,希望能给需要帮助网友的一些参看:
REPORT Z_TEST.
TYPE-POOLS SSCR.
DATA: RESTRICT TYPE SSCR_RESTRICT,
OPTLIST TYPE SSCR_OPT_LIST,
ASS TYPE SSCR_ASS.
SELECTION-SCREEN BEGIN OF BLOCK BLK WITH FRAME TITLE TEXT-001.
SELECT-OPTIONS S_DATE FOR SY-DATUM NO INTERVALS NO-EXTENSION.
SELECTION-SCREEN END OF BLOCK BLK.
INITIALIZATION.
OPTLIST-NAME = 'OBJECTKEY1'.
OPTLIST-OPTIONS-EQ = 'X'. " 控制显示条件 EQ 等于
OPTLIST-OPTIONS-BT = 'X'.
APPEND OPTLIST TO RESTRICT-OPT_LIST_TAB.
ASS-KIND = 'S'.
ASS-NAME = 'S_DATE'.
ASS-SG_MAIN = 'I'.
ASS-SG_ADDY = SPACE.
ASS-OP_MAIN = 'OBJECTKEY1'.
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.
START-OF-SELECTION.
WRITE: / 'aa'.
备注,下面给出需要控制的条件
*NO-EXTENSION
*NO INTERVALS
*BT SELECT-OPTIONS: 活动范围
*CP 选项: 活动模式
*EQ 选项: 单一活动值
*GE 选项: 大于或等于
*GT 选项: 大于
*LE 选项: 小于或等于
*LT 选项: 小于
*NB SELECT-OPTIONS: 排除范围激活
*NE SELECT-OPTIONS: 单值活动除外
*NP 选项: 活动的模型除外
从上面我们可以看到可以控制只显示EQ,但我想要的是连弹出窗口也没有,默认就是EQ,不知道能不能实现,希望看到的网友若知道如何做,给出参看,谢谢!
阅读(7494) | 评论(3) | 转发(0) |