user需要在NOTES系统输入invoice信息,然后通过调用RFC把invoice信息传给SAP来park invoice。就录了个MIR4的BDC,然后将这段代码加到一个RFC里。NOTES系统调用这支RFC的时候就老是出现问题,invoice数据传不过来。NOTES抓到的error为CNTL_ERROR。
到网上查了下,发现SAP针对这个问题有个note,SAP note 311440。根据里面的解释,batch input(包括BDC)如果涉及到SAP控件,就会出现问题。在R3 4.6版本以前使用的控件比较少,所以比较少出问题。从R3 4.6版本以后,使用控件数量大大增加,因此使用batch input经常会出现这个问题。如果能通过direct input或者BAPI实现与batch input相同的功能,最好就不要使用batch input。
下面是SAP NOTE 311440的详细说明。
SAP Note 311440 - Batch input and controls
Note Language: English Version: 12 Validity: Valid Since 07.05.2001
Summary
Symptom
Errors occur when you process or record batch input sessions if the
application uses frontend controls such as the ALV grid or tree. Typical
cases:
(1)The batch input recorder does not record any actions or frontend control
data.
(2) When you process batch input sessions in the background, a
termination or an ABAP short dump with the exception condition CNTL_ERROR
occurs. The exception condition is caused in the control framework (program
SAPLOLEA or also CL_GUI_*).
(3) When you process batch input sessions in the background, a
termination occurs with the message
'Editor could not be initialised' in the batch input log.
Processing a Call Transaction ... Using (processing mode N) in the
background, a termination occurs with the message:
'Exception condition ERROR_DP initialized'
Since controls are only used more frequently as of Release 4.6A, these
problems generally do not occur in Releases < 4.6.
Additional key words