SAP note 532914:Derivation of chars: No error message, although flag is set

The system does not issue an error message, even though the 'Issue error message if no value found' flag was set in the attributes of a derivation step of type 'Derivation Rule' or 'Table Lookup'.

CO-PA transaction code:KEDR

[@more@]

Reason and Prerequisites

An entry exists in the derivation rule table or master data table, however, the field to be transferred is blank in this entry. For example, field SPART ('Division') is to be read from table MARA and placed in the CO-PA characteristic SPART ('Division'). The access to key field MARA-MATNR occurs with the CO-PA product number from characteristic ARTNR ('Product number'). An entry exists for the read product number in table MARA, however, the division for this entry is blank. You expect the system to issue an error message which it, however, does not do.

Solution

When you activate the 'Issue error message if no value found' flag, the system only issues an error message if there is no entry with the key field of the derivation rule or the table lookup. In example above, the system would only issue an error message if no corresponding entry existed in key field MATNR for the CO-PA product number in table MARA, not, however, if an entry with a blank division existed.

Example: The characteristic value in CO-PA for ARTNR is 'PUMP'. Consequently,

1. The system issues an error message if no entry with MARA-MATNR 'PUMP' exists in table MARA.

2. The system does not issue an error message if there is an entry with MARA-MATNR 'PUMP' and if the value for MARA-SPART is ' ' in table MARA.

You can create a derivation step of type 'Enhancement' instead of a derivation rule or table lookup, so that the system also issues an error message in point 2, in which the respective table is read and an error message is issued as described in the documentation for enhancement COPA0001 or for Release 4.0 in Note 124813. In the example above, derivation exit EXIT_SAPLKEDRCOPA_001 (Include ZXKKEU11) could look as follows if 'XXXX' is replaced by the respective operating concern, so that the system issues an error message in both of the cases mentioned above:

....

tables: mara.

data: ls_ce0 like ce0XXXX.

....

case i_operating_concern.

when 'XXXX'.

e_exit_is_active = 'X'.

ls_ce0 = i_copa_item.

clear mara.

select single * from mara

where matnr = ls_ce0-artnr.

if sy-subrc = 0.

if mara-spart is initial.

e_failed = 'X'.

else.

ls_ce0-spart = mara-spart.

endif.

else.

e_failed = 'X'.

endif.

e_copa_item = ls_ce0.

endcase.

....

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/46681/viewspace-880406/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/46681/viewspace-880406/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值