Runtime Errors MESSAGE_TYPE_X
Date and Time 29.08.2008 13:22:37
Short text
The current application triggered a termination with a short dump.
发生了什么?
The current application program detected a situation which really
should not occur. Therefore, a termination with a short dump was
triggered on purpose by the key word MESSAGE (type X).
错误分析
Short text of error message:
意外 COMMIT WORK
Long text of error message:
诊断
意外执行 COMMIT WORK。
在订单处理中,COMMIT WORK直到保存处理完成之后才可以执行,因为如果
这样的话,则过帐的数据可能不正确或者不完整。
系统响应
为了避免保存不正确的数据,系统就会退出包含程序终止的事务。在生产系
统中,未发生任何程序终止,除非用户在生产系统中已经相应地维护了该消
息的消息类型(如下所示)。
步骤
请联系 SAP 管理员。
系统管理过程
确保用户在用户出口或者附加商务中未执行 COMMIT WORK,并且用户未调用
任何可以从用户出口或者附加商务执行 COMMIT WORK 的 SAP 函数。
如果需要了解如何操作的详细信息,请参看有关程序终止的长文本。
使用事务OPJB在生产系统中将该消息的类型设置为 X(请输入缺
0作为版本)
Technical information about the message:
Message class....... "C2"
Number.............. 295
Variable 1.......... " "
Variable 2.......... " "
Variable 3.......... " "
Variable 4.......... " "
rigger Location of Runtime Error:
Program Name SAPLCOZV
Include LCOZVU26
Row 70
Module type (FORM)
Module Name COMMIT_SUPPRESS
源码摘录
Line SourceCde
40 CHECK gv_commit_suppress = yx.
41
42 * get message type from customizing for C2 295
43 lv_msg_type = cl_co_msg=>get_msg_type( iv_msgid = 'C2'
44 iv_msgno = '295' ).
45
46 IF lv_msg_type = cl_co_msg_c=>msgty_no_entry.
47 * message C2 295 is not customized
48 * => default settings dependent on client type
49 SELECT SINGLE cccategory FROM t000
50 INTO lv_category
51 WHERE mandt = sy-mandt
52 AND cccategory = 'P'.
53 IF sy-subrc = 0.
54 * productive client => inactive by default
55 lv_msg_type = cl_co_msg_c=>msgty_nothing.
56 ELSE.
57 * active by default
58 lv_msg_type = cl_co_msg_c=>msgty_dump.
59 ENDIF.
60 ENDIF.
61
62 * check if message should be send
63 CHECK lv_msg_type <> cl_co_msg_c=>msgty_no_entry
64 AND lv_msg_type <> cl_co_msg_c=>msgty_nothing.
65
66 * Unexpected COMMIT WORK!!!
67 * there should be no COMMIT WORK in order processing before
68 * fm CO_ZV_ORDER_POST was executed, since this might lead to
69 * inconsistencies!!! (refer to long text of message C2 295)
>>>> MESSAGE ID 'C2' TYPE lv_msg_type NUMBER '295'.
71
72 ENDFORM. "commit_suppress
73
74
75 *&-------------------------------------------------------------
76 *& Form commit_suppress_rollback
77 *&-------------------------------------------------------------
78 FORM commit_suppress_rollback.
79
80 CLEAR gv_commit_suppress.
81 * a ROLLBACK WORK (e.g. generated by catching an A-message)
82 * will unregister PERFORMs ON COMMIT and delete status buffer t
83 * => also clear order buffer tables to avoid inconsistencies
84 CALL FUNCTION 'CO_EXT_ORDER_RESET'.
85
86 ENDFORM. "commit_suppress_rollback