我们知道SAP里的业务操作,会有各种各样的消息提示,当然,我这里说的不是在程序中写的message,那程序里的消息提醒,我想大家都应该清楚,最常见的系统给出的就是如下所示这样: MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno INTO msgtext WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4. MESSAGE ID 'S...
1, 利用Where use list功能 举例说明,双击状态栏上的消息,找到message class ID: DS, number 017,如下图, SE91,选中对应的消息,点击where use list按钮 一般会找到很多程序, 这时候只能靠人工过滤,找到正确的出错位置, 然后设置断点,再运行一下程序,确认一下。 2, 设置sy-msgid的watch point断点 在命令栏输...
IF sy-subrc <> 0. SET CURSOR FIELD 'P_OPEN'. MESSAGE ID sy-msgid TYPE 'E' NUMBER sy-msgno WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4. ENDIF. IF l_result2 <> 'X'. SET CURSOR FIELD 'P_OPEN'. MESSAGE TEXT-002 TYPE 'E'. ENDIF. IF p_xls = 'X' AND NOT ( P_OPEN CP...
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4. ENDIF. * we want to store information for this message about the customers * which were allowed to fly for free: g_my_message_data-identifier = g_identifier. l_s_my_data-id = '000000...
通过ABAP的关键字MESSAGE抛出消息时,系统变量SY-MSGID会自动被填充消息所属的Message Class,在Jerry这个例子里为DS,而SY-MSGNO被填充为抛出消息的编号,这个例子里为017. 因此,通过在调试器里创建watch point并维护相应的触发条件。在程序运行时,一旦触发条件满足,watch point触发,此时执行到的ABAP语句即为消息弹出的...
* create the message CALL FUNCTION 'BAL_LOG_MSG_ADD' EXPORTING i_log_handle = i_log_handle i_s_msg = l_s_msg EXCEPTIONS OTHERS = 1. IF sy-subrc <> 0. MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4. ...
e_msgid = sy-msgid e_msgno = sy-msgno e_msgty = sy-msgty e_msgv1 = sy-msgv1 e_msgv2 = sy-msgv2 e_msgv3 = sy-msgv3 e_msgv4 = sy-msgv4 * E_SUBRC = SY-SUBRC TABLES t_blntab = it_blntab t_ftclear = it_ftclear ...
'FIELDNAME='LASTSTRTTM'*INPUT_VALUE=' 'TABNAME='BTCH1010'*SHOW_ALL_VALUES_AT_FIRST_TIME=' 'IMPORTINGSELECT_VALUE=TIME1*SELECT_INDEX=*EXCEPTIONS*NO_HELP_FOR_FIELD=1*OTHERS=2.IFSY-SUBRC<>0.*MESSAGEIDSY-MSGIDTYPESY-MSGTYNUMBERSY-MSGNO*WITHSY-MSGV1SY-MSGV2SY-MSGV3SY-MSGV4.ENDIF....
IF SY-SUBRC <> 0. MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4. ENDIF. ENDFORM. " attach_file PERFORM USER_VIEW. u201D预览附件 &--- *& Form USER_VIEW &--- text --
MESSAGE E309(06)with'xxx' XXXX。 使用上面的语句类似于RAISE EXCEPTION的用法,除了以下两种情况: 1、如果对函数模块的调用不处理EXCEPTIONS,则发出消息(在这种情况下,发出错误消息) 2、如果调用程序处理异常,则不发出任何消息。 调用程序将在标准消息变量SY-MSGID,SY-MSGV1和其他中具有消息详细信息。