*&---------------------------------------------------------------------*
*& Report ZLM_MSG
*&
*&---------------------------------------------------------------------*
*&弹出对话框,显示多条消息
*&---------------------------------------------------------------------*
REPORT ZLM_MSG
.
"定义消息类型
TYPES
:
BEGIN
OF esp1_message_wa_type
,
msgid
LIKE sy
-msgid
,
msgty
LIKE sy
-msgty
,
msgno
LIKE sy
-msgno
,
msgv1
LIKE sy
-msgv1
,
msgv2
LIKE sy
-msgv2
,
msgv3
LIKE sy
-msgv3
,
msgv4
LIKE sy
-msgv4
,
lineno
LIKE mesg
-zeile
,
END
OF esp1_message_wa_type
.
TYPES
: esp1_message_tab_type
TYPE esp1_message_wa_type
OCCURS
20
.
DATA
:it_error_message
TYPE esp1_message_tab_type
WITH
HEADER
LINE
.
DATA
:v_lineno
TYPE mesg
-zeile
.
CLEAR
:v_lineno
.
v_lineno
= v_lineno +
1
.
it_error_message
-lineno
= v_lineno
.
it_error_message
-msgid
=
'ZLM_MSG'
.
it_error_message
-msgty
=
'E'
.
it_error_message
-msgno
=
'000'
.
it_error_message
-msgv1
=
'测试测试测试测试测试测试测试测试测试测试测试测试'
.
APPEND it_error_message
.
v_lineno
= v_lineno +
1
.
it_error_message
-lineno
= v_lineno
.
it_error_message
-msgid
=
'ZLM_MSG'
.
it_error_message
-msgty
=
'W'
.
it_error_message
-msgno
=
'000'
.
it_error_message
-msgv1
=
'测试测试测试测试'
.
APPEND it_error_message
.
v_lineno
= v_lineno +
1
.
it_error_message
-lineno
= v_lineno
.
it_error_message
-msgid
=
'ZLM_MSG'
.
it_error_message
-msgty
=
'S'
.
it_error_message
-msgno
=
'000'
.
it_error_message
-msgv1
=
'测试测试测试测试测试测试试'
.
APPEND it_error_message
.
v_lineno
= v_lineno +
1
.
it_error_message
-lineno
= v_lineno
.
it_error_message
-msgid
=
'ZLM_MSG'
.
it_error_message
-msgty
=
'E'
.
it_error_message
-msgno
=
'000'
.
it_error_message
-msgv1
=
'测试测试测试'
.
APPEND it_error_message
.
CALL
FUNCTION
'C14Z_MESSAGES_SHOW_AS_POPUP'
TABLES
i_message_tab
= it_error_message
.
另外:https://scn.sap.com/thread/490030 提供了个函数
You can use FM 'SLS_MISC_SHOW_MESSAGE_TAB'.
DATA: it_messages LIKE sls_msgs OCCURS 0 WITH HEADER LINE.
START-OF-SELECTION.
CLEAR it_messages.
MOVE '001' TO it_messages-num.
MOVE 'message001' TO it_messages-msg.
APPEND it_messages.
CLEAR it_messages.
MOVE '002' TO it_messages-num.
MOVE 'message002' TO it_messages-msg.
APPEND it_messages.
CLEAR it_messages.
MOVE '003' TO it_messages-num.
MOVE 'message003' TO it_messages-msg.
APPEND it_messages.
CALL FUNCTION 'SLS_MISC_SHOW_MESSAGE_TAB'
TABLES
p_messages = it_messages
EXCEPTIONS
NO_MESSAGES_PROVIDED = 1
OTHERS = 2
.欢迎关注订阅号:SAP学习记录 (SAPlearning )