SAP 消息类的创建和应用
一、消息类创建
-
登录SAP系统,使用事务码SE91,输入需要创建的消息类名:ZMSG_DM01,点击创建。
-
进入界面后输入短文本,点击保存,给消息类分配包,或者建在本地。
-
点击消息标签,对消息号建立对应的消息短文本。
-
消息类的hana底表为T100。
二、消息类应用
-
各种类型消息类的说明。
-
使用程序测试消息类:
REPORT zdemo_test01 MESSAGE-ID zmsg_dm01. CLASS demo DEFINITION. PUBLIC SECTION. CLASS-METHODS abort. CLASS-METHODS info. CLASS-METHODS error. CLASS-METHODS warn. CLASS-METHODS success. CLASS-METHODS exit. CLASS-METHODS show. CLASS-METHODS usage. ENDCLASS. CLASS demo IMPLEMENTATION. METHOD abort. MESSAGE a000."消息类型+消息编号:(a000为a类型编号000) ENDMETHOD. METHOD info. MESSAGE i001. ENDMETHOD. METHOD error. MESSAGE e002. ENDMETHOD. METHOD warn. MESSAGE w003. ENDMETHOD. METHOD success. MESSAGE s004. ENDMETHOD. METHOD exit. MESSAGE X005. ENDMETHOD. METHOD show. DATA: text0 TYPE string, text1 TYPE string, text2 TYPE string, text3 TYPE string, text4 TYPE string. info( ). "弹窗消息 MESSAGE i006 INTO text0. MESSAGE i007 WITH 'A' 'B' 'C' 'D' INTO text1. "WITH在前可以(WITH将后面的字符串替代消息里面的&,类似于宏定义) MESSAGE i008 INTO text2. MESSAGE i009 INTO text3 WITH 'A' 'B' 'C' 'D' . "WITH在后也可以 MESSAGE i010 WITH 'A' INTO text4. WRITE:/ '不带占位符的消息:', text0. WRITE:/ '顺序占位符的消息:', text1. WRITE:/ '输出&符号的消息: ', text2. WRITE:/ '排序占位符的消息:', text3. WRITE:/ '复用占位符的消息:', text4. success( ). "状态栏消息 ENDMETHOD. METHOD usage. * "方式一:MESSAGE - msg * MESSAGE i006. "需在报表程序名后面定义MESSAGE-ID yzll_msg_dm01 * MESSAGE i006(zmsg_dm01). * DATA: * mid TYPE sy-msgid VALUE 'ZMSG_DM01', * mtype TYPE sy-msgty VALUE 'I', * num TYPE sy-msgno VALUE '006'. * MESSAGE ID mid TYPE mtype NUMBER num. * * "方式二:MESSAGE - text * DATA oref TYPE REF TO cx_sy_arithmetic_error. * DATA lv_val TYPE i. * TRY. * lv_val = 1 / 0. * CATCH cx_sy_arithmetic_error INTO oref. * MESSAGE oref->get_text( ) TYPE 'I'. * ENDTRY. * * "方式三:MESSAGE - INTO * "参考 demo=>show( ) ENDMETHOD. ENDCLASS. START-OF-SELECTION. " DEMO=>ABORT( ). DEMO=>EXIT( ). "DEMO=>ERROR( ). "DEMO=>WARN( ). "demo=>show( ). "DEMO=>USAGE( ).
三、消息类的类型
-
A类弹窗
-
I类弹窗
-
E类弹窗
-
W类弹窗
-
S类弹窗
-
X类弹窗