当我创建一个有10个项目(或以上)的采购订单时,会出现一个运行时错误。下面是错误消息。
Category: ABAP Programming Error
Runtime Errors: CONVT_NO_NUMBER
ABAP Program: SAPLMEPO
Include MM06EF0B_BUCHEN
Application Component MM-PUR发生了一个异常,下文将对此详细解释。
不能在当前语句的上下文中捕获此异常。例外的原因是:试图将值"*“解释为数字。由于这个值违反了正确显示数字的规则,所以这是不可能的。
下面是发生异常的代码:
DATA indx.
indx = 1.
* Need to merge KNT and XEKKN
* algorithm is: if knt is old, use knt. Else use the equivalent from xekkn
LOOP AT knt.
IF knt-updkz EQ oldpos.
MOVE-CORRESPONDING knt TO lt_ekkn.
ELSE.
READ TABLE xekkn INDEX indx.
MOVE-CORRESPONDING xekkn to lt_ekkn.
indx = indx + 1.
ENDIF.
APPEND lt_ekkn.
ENDLOOP. "v 2068862
看起来是indx的数据类型(char 1),但是当PO项索引= 9,那么index = 10 (实际值是*在调试模式下),就会发生异常。
我该如何解决这个问题?
我还在这里发布了这个问题:https://scn.sap.com/message/16146617
发布于 2015-08-06 05:22:51
假设indx是C(1)是正确的,因为您(或代码的作者)没有指定类型。将行更改为
DATA indx TYPE i.应该解决这个问题。
https://stackoverflow.com/questions/31846687
复制相似问题