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----为参数之后的內容