Funtion:POPUP_TO_DECIDE_LIST

来源:互联网 发布:苏州科技城软件大厦 编辑:程序博客网 时间:2024/06/06 06:40
Funtion:POPUP_TO_DECIDE_LIST  
   功能:弹出供选择窗口,最多25个选项,选择可以是单选按钮也可以是复选按钮,可以设定最多选择的个数。
   参数:
     Import:
       CURSORLINE   :默认光标所在行
       MARK_FLAG:选择的标志,一般设为‘X’
       MARK_MAX: 最大选择的选项个数
       START_COL:起始行
       START_ROW   :起始列,用来定位弹出窗口的位置
       TEXTLINE1:文本行
       TEXTLINE2:文本行
       TEXTLINE3 :文本行
       TITEL:弹出窗口的标题
       DISPLAY_ONLY:仅显示
     Export:
       ANSWER:A:取消   空:做了选择
     Tables:
       T_SPOPLI:选择结果

例子:
REPORT   Z_BOBO                                   .
* 定义函数需要的变量
DATA: BEGIN OF SPOPLIST OCCURS 15.
           INCLUDE STRUCTURE SPOPLI.
   DATA: END   OF SPOPLIST.
   DATA: ANTWORT TYPE C.
* 添加选择参数
   SPOPLIST-VAROPTION = 'Creditor'.
   APPEND SPOPLIST.
   SPOPLIST-VAROPTION = 'Material'.
   APPEND SPOPLIST.
   SPOPLIST-VAROPTION = 'Account '.
   SPOPLIST-SELFLAG   = 'X'.

   CALL FUNCTION 'POPUP_TO_DECIDE_LIST'
     EXPORTING   TITEL             = 'Possible entra: Order'
               TEXTLINE1         = 'By which criteria'
               TEXTLINE2         = 'should orders'
               TEXTLINE3         = 'be selected?'
               MARK_MAX         = 2
               MARK_FLAG         = 'X'
     IMPORTING   ANSWER           = ANTWORT
     TABLES     T_SPOPLI         = SPOPLIST
     EXCEPTIONS TOO_MUCH_ANSWERS = 1
               TOO_MUCH_MARKS   = 2.

   IF SY-SUBRC = 2.
     WRITE: 'Too many answers chosen.'.
   ENDIF.
* 取消
   IF ANTWORT = 'A'.
     WRITE: 'Popup canceled.'.
   ELSE.
     WRITE: 'Options chosen:'.
     LOOP AT SPOPLIST WHERE SELFLAG = 'X'.
       WRITE: / SPOPLIST-VAROPTION.
     ENDLOOP.
   ENDIF.
原创粉丝点击