ABAP SELECTI-OPTIONS 选择范围控制

来源:互联网 发布:绿岸网络要倒闭了么 编辑:程序博客网 时间:2024/05/29 13:34

ABAP SELECTI-OPTIONS 选择范围控制

http://blog.chinaunix.net/u2/67664/article_84414.html

 

前一段时间写了一篇《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,不知道能不能实现,希望看到的网友若知道如何做,给出参看,谢谢!
 
以上是我参看 http://blog.chinaunix.net/u1/40527/showart.php?id=444154 经过我测试做出来的结果。

 

 

原创粉丝点击