Message Box in ABAP

ABAP 的 Message Box 的用法

一. 编辑资料未保存而退出的确认框﹕

操作步骤如下﹕   

1. 定义一個变量接受函数的返回值

例如﹕ data: commandname

2. 调用函数 POPUP_TO_CONFIRM_LOSS_OF_DATA

       CALL FUNCTION 'POPUP_TO_CONFIRM_LOSS_OF_DATA'

         EXPORTING

              textline1    = ‘人民万岁’

              textline2    =  ‘伟大的中国'

              titel        = ‘提示’

*             START_COLUMN  = 25

*             START_ROW      = 6

*        IMPORTING

              ANSWER         = commandname

        EXCEPTIONS

              OTHERS          = 1.

注解﹕ textline1---为MessageBox 第一行內容

    textline2---为MessageBox 第二行內容

    title---------为MessageBox 的标题

    start_column, start_row 决定Message Box 的显示位置

    answer-----为按下MessageBox 的选项按钮的传回值

3. 处理MessageBox选定之后的操作

CASE COMMANDNAME

      WHEN ‘J’    “按钮 <是>

         PERFORM ….

       WHEN ‘N’ “按钮  <否>

         PERFORM….

       WHEN ‘A’ “按钮  <关闭>

         PERFORM…

 

二. 消息框

说明﹕操作步骤同第一种 MessageBox 只是函数不同而已

      函数的返回值不同与第一种函数的返回值

      见下面函数的调用

CALL FUNCTION 'POPUP_TO_CONFIRM_STEP'

     EXPORTING

          DEFAULTOPTION = 'Y'

          textline1      = ‘确定吗?’

          TEXTLINE2      = '麻烦'

          titel          = ‘提问’

*         START_COLUMN   = 25

*         START_ROW      = 6

          CANCEL_DISPLAY = 'X'

    IMPORTING

         ANSWER          = commandname

     exceptions

          OTHERS         = 1.

说明﹕ defaultoption = ‘Y’ (或 ‘J’ ) 表示缺省按钮为 <是>

                     = ‘N’ (或其他字母) 表示缺省按钮为 <否>

      cancel_display = SPACE 表示不显示<取消>按钮

                     = ‘X’ 表示显示<取消>按钮

      commandname    = ‘A’ 表示 <取消>/<关闭>

三 .提问框

     操作步骤同二﹐只是函数不同而已,函数调用如下

            CALL FUNCTION 'POPUP_TO_CONFIRM_WITH_MESSAGE'

               EXPORTING

                    DEFAULTOPTION = 'A'

                    diagnosetext1 = ‘你好吗?’

*                   DIAGNOSETEXT2 = ' '

*                   DIAGNOSETEXT3 = ' '

                    textline1      = ‘信息框’

*                   TEXTLINE2      = ' '

                    titel          = ‘询问’

*                   START_COLUMN   = 25

*                   START_ROW      = 6

*                   CANCEL_DISPLAY = 'X'

              IMPORTING

*                   ANSWER         = commandname

               exceptions

                    OTHERS         = 1.

说明﹕diagnosetext1, diagnosetext2, diagnosetext3 为提问內容

 textline1, textline2 为提示框內容

四.提问框
   说明﹕该种提问框的功能优先于第三种提问框。表现在以下兩点

         1,可以参数传值

         2,文字超过长度可以自动换行

   操作步骤相同于函数三

CALL FUNCTION 'POPUP_TO_CONFIRM_WITH_VALUE'

     EXPORTING

*         DEFAULTOPTION = 'Y'

          objectvalue    = sscrfields-ucomm

          TEXT_AFTER     = '被按下'

          text_before    = ‘按钮’

          titel          = ‘传返值’

*         START_COLUMN   = 25

*         START_ROW      = 6

*         CANCEL_DISPLAY = 'X'

    IMPORTING

         ANSWER         = commandname

     exceptions

          text_too_long = 1

          OTHERS         = 2.

 说明﹕ objectvalu ---为传給MessageBox 的参数值

        text_before---为参数之前的內容

        text_after----为参数之后的內容

posted on 2011-12-29 11:00  T_BUG  阅读(392)  评论(0编辑  收藏  举报