ABAP对话框

来源:互联网 发布:淘宝店铺怎么进货 编辑:程序博客网 时间:2024/06/08 02:11

SAP的标准对话框函数

在用户设计sap的程序时,经常需要一些对话框,用户可以自己编写,但使用SAP系统中提供了的对话框函数将减少许多开发工作。

1sap的函数组列表和用途说明

适用情况

Function group

提示用户将可能丢失数据

SPO1

提示用户对某个问题选择Yes或者No 

SPO1

提示用户将可能丢失数据,并询问用户是否继续操作

SPO1

提示用户在多个操作中选择一个操作

SPO2

提示用户是继续当前操作或者取消当前操作

SPO2

提示用户输入数据 (可以根据一个表检查或者不检查输入值)

SPO4

将数据显示给用户

SPO4

将详细数据显示给用户

SPO6

从列表中选择数据

SP05

用可滚动的对话框显示数据给用户

STAB

从视图或者数据表中打印数据

STPR

 

 

2、函数列表和说明
2.1 SPO1
的函数

·        POPUP_TO_CONFIRM_STEP
用此函数可以建立一个对话框用于询问用户是否执行某步操作,用户可以选择Yes No或者Cancel。该函数可以传入一个标题和两行的文本(提示问题)。系统在窗口上显示一个绿色问号图标。
可以设置某个按钮作为默认按钮。
     CALL FUNCTION 'POPUP_TO_CONFIRM_STEP'
          EXPORTINGTITEL        = '
确认提示测试'
                    TEXTLINE1    =  '
确实要执行'
                    TEXTLINE2    = '
测试?'
                    CANCEL_DISPLAY= SPACE  "
不显示CANCEL按钮
          IMPORTINGANSWER       = ANSWER.

·        POPUP_TO_CONFIRM_WITH_MESSAGE
类似POPUP_TO_CONFIRM_STEP,只是多三行的文本错误诊断提示。系统在窗口上显示一个绿色问号图标。
     call function 'POPUP_TO_CONFIRM_WITH_MESSAGE'
          exportingtitel         = '
确认提示测试'
                    textline1     =  '
确实要执行                         ;;'
                    textline2     =spop-textline2
                    diagnosetext1= spop-diagnose1
                    diagnosetext2= spop-diagnose2
                    diagnosetext3= spop-diagnose3
          importing answer        =answer.

·        POPUP_TO_CONFIRM_WITH_VALUE
用此函数可以建立一个对话框用于询问用户是否执行某步操作,该操作可能会丢失数据,用户可以选择Yes No或者Cancel。该函数可以传入一个标题,两行的文本(提示问题)和一个对象值(对象值将会插入在提示问题文本的两部分之间)。系统在窗口上显示一个绿色问号图标。
可以设置某个按钮作为默认按钮。
     CALL FUNCTION 'POPUP_TO_CONFIRM_WITH_VALUE'
          EXPORTINGTITEL        = TITEL
                    TEXT_BEFORE  ='
确实要执行'
                    OBJECTVALUE  ='TEST'
                    TEXT_AFTER   = '?'
          IMPORTINGANSWER       = ANSWER.

·        POPUP_TO_CONFIRM_LOSS_OF_DATA
用此函数可以建立一个对话框用于询问用户是否执行某步操作,该操作可能会丢失数据,用户可以选择Yes No或者Cancel。该函数可以传入一个标题和一个两行的文本(提示问题)。系统在窗口上显示一个黄色!图标和一行数据将丢失。
可以设置某个按钮作为默认按钮。
     CALL FUNCTION 'POPUP_TO_CONFIRM_LOSS_OF_DATA'
          EXPORTINGTITEL        = TITEL
                    TEXTLINE1    =SPOP-TEXTLINE1
                    TEXTLINE2    =SPOP-TEXTLINE2
          IMPORTINGANSWER       = ANSWER.

·        POPUP_TO_CONFIRM
该函数是POPUP函数的增强版,可以自定义按钮文本和图标。

CALL FUNCTION 'POPUP_TO_CONFIRM'

      EXPORTING

        TITLEBAR       = '确认'

        TEXT_QUESTION  = '你选择的期间已有数据,是否继续?'

        TEXT_BUTTON_1  = ''

        TEXT_BUTTON_2  = ''

      IMPORTING

        ANSWER         = LOC_ANSWER

      EXCEPTIONS

        TEXT_NOT_FOUND = 1

        OTHERS         = 2.

使用这个函数,可以在程序执行过程中弹出是否继续的提示,由用户自己选择!

2.2Function groupSPO2

·        POPUP_TO_DECIDE
显示一个对话框,用户可以两个操作中的一个或者取消。可以传入三行提示文本。

·        POPUP_TO_DECIDE_WITH_MESSAGE
类同POPUP_TO_DECIDE程序员可以多传入With thisfunction module you create a dialog box in which you inform the user about aspecific decision point via a diagnosis text, during an action. He or she canchoose one of two alternative actions offered or cancel the action.
The action, the diagnosis text, the question and the alternative actions arepassed as parameters.
The user action (Alternative 1, Alternative 2, or Cancel) is returned in a parameter.

2.3Function groupSPO4

·        POPUP_GET_VALUES
This function module sends a dialog box for data display and input.
The input fields are passed in a structure and must be defined in theDictionary. You can also specify individual field display attributes and afield text, if the key word from the Dictionary is not to be displayed as fieldtext in the dialog box, in the structure.
The standard help functionality (F1, F4) is supported.

·        POPUP_GET_VALUES_DB_CHECKED
This function module sends a dialog box for data to be input und checkedagainst the database.
The input fields are passed in a structure and must be defined in theDictionary. You can also specify individual field display attributes and afield text in the structure, if the key word from the Dictionary is not to bedisplayed as field text in the dialog box.
A comparison operator for checking the input data in the database is passed.You can specify whether the check is for the existence or absence of an object.A foreign key relationship check is supported.
The standard help functionality (F1, F4) is supported.
The user action is returned in a parameter.

·        POPUP_GET_VALUES_USER_CHECKED
This function module sends a dialog box for data to be input and checkedin an external sub-routine (user exit). The input fields are passed in astructure and must be defined in the dictionary. You can also specifyindividual field display attributes and a field text in the structure, if thekey word from the Dictionary is not to be displayed as field text in the dialogbox.
The Data input by the user in the dialog box are passed to the sub-routinespecified in the interface for checking. Errors found by the check are enteredin an error structure and are evaluated on return from the sub-routine by thefunction module.
The standard help functionality (F1, F4) is supported.
The user action (Continue or Cancel) is returned in aparameter.

·        POPUP_GET_VALUES_USER_HELP
This function module sends a dialog box for data to be input with thepossibility of a check in an external sub-routine (user exit) and branching ina user F1 or F4 help.
The input fields are passed in a structure and must be defined in theDictionary. You can also specify individual field display attributes and afield text in the structure, if the key word from the Dictionary is not to bedisplayed as field text in the dialog box.
You can pass the data which are entered by the user in a dialog box to asub-routine which must be specified in the interface for checking. Errorsoccurring in the check are stored in an error structure and are analyzed by thefunction module upon return from the sub-routine. The data, and an errormessage, if appropriate, are displayed again.
The standard help functionality (F1, F4) is supported.
User exits for a user F1 or F4 help can also be specified.
The user action (Continue or Cancel) is returned in aparameter.

·        POPUP_GET_VALUES_USER_BUTTONS
This function module is like the previous function modulePOPUP_GET_VALUES_USER_HELP, with the additional possibility of passing one ortwo additional pushbuttons and a standard pushbutton, which the user can name.

·        POPUP_GET_VALUES_SET_MAX_FIELD
With this function module you can specify the maximum number of fieldswhich can be displayed in dialog boxes for this function group (SPO4). The specifiedvalue is stored in the function group local memory and applies for the rest ofthe application. Dialog boxes which display more then this number of fields aredisplayed with a scroll bar.

2.4Function groupSPO6

·        POPUP_DISPLAY_TEXT
With this function module you display a text which exists in the system in adialog box.

·        POPUP_DISPLAY_TEXT_WITH_PARAMS
With this function module you display a text which exists in the system withparameters in a dialog box. The parameter values are passed in a table. The useof numbered texts is recommended, to make the parameter values translatable.
The parameter names must be passed in upper-case letters.

2.5Function groupSPO5 

·        POPUP_TO_DECIDE_LIST
从列表中选择数据,样例程序

report  rsspo500.
data:   selectlist like spopli occurs 5 with header line.
data:   antwort   type c.
while antwort ne 2.
clear   selectlist.
refresh selectlist.
selectlist-varoption =
显示含有单选按钮的弹出框'.
append selectlist.
selectlist-varoption = '
显示含有复选框的弹出框'.
selectlist-selflag   = 'X'.
append selectlist.
call function 'POPUP_TO_DECIDE_LIST'
     exporting
*         CURSORLINE         =1
*         MARK_FLAG          =' '
          mark_max           =1
          start_col          =10
          start_row          =10
          textline1          ='Text1'
          textline2          ='POPUP_TO_DECIDE_LIST'
          textline3          ='TEXT3'
          titel              ='TITLE '
     importing
          answer             =  antwort
     tables
          t_spopli           =  selectlist
     exceptions
          not_enough_answers= 1
          too_much_answers   =2
          too_much_marks     =3
          others             =4.
  if antwort eq 'A'.
    exit.
  endif.
endwhile.

if antwort ne 'A'.
  clear   selectlist.
  refresh selectlist.
  selectlist-varoption = '
最多 15个选项'.
  selectlist-selflag   = 'X'.
  append selectlist.
  selectlist-varoption = '
含有复选框'.
  selectlist-selflag   = 'X'.
  append selectlist.
  selectlist-varoption = '
或单选按钮'.
  selectlist-selflag   = 'X'.
  append selectlist.
  selectlist-varoption = '
典型的列表功能:'.
  selectlist-selflag   = 'X'.
  append selectlist.
  selectlist-varoption = '*
选择'.
  selectlist-selflag   = 'X'.
  append selectlist.
  selectlist-varoption = '*
选择全部'.
  selectlist-selflag   = 'X'.
  append selectlist.
  selectlist-varoption = '
取消全部选择'.
  selectlist-selflag   = 'X'.
  append selectlist.
  selectlist-varoption = '3 70
字符/选项'.
  selectlist-selflag   = 'X'.
  append selectlist.
  selectlist-varoption = '65
字符/选项'.
  selectlist-selflag   = 'X'.
  append selectlist.
  selectlist-varoption =  '
激活/不激活可选行'.
  selectlist-selflag   = 'X'.
  selectlist-inactive  = 'X'.
  append selectlist.

* 2. Aufruf **********************************************************

  call function 'POPUP_TO_DECIDE_LIST'
       exporting
*         CURSORLINE         =1
            mark_flag          ='X'
            mark_max           =0
          start_col          =15
          start_row          =15
            textline1          ='Das POPUP bietet'(c01)
            textline2          ='folgende Funktionalit
:'(c02)
            titel              ='Das Beispiel 2'(b02)
       importing
            answer             =  antwort
       tables
            t_spopli           =  selectlist
       exceptions
            not_enough_answers= 1
            too_much_answers   =2
            too_much_marks     =3
            others             =4.

endif.

 

原创粉丝点击