在我看来,企业资源规划系统正在通过qRFC在EWM中创建交付。该设置是标准的,并通过在ERP BD64事务中的分发模型工作。调用一个BAPI,它在EWM中创建一个传递副本。
有时ERP交付没有得到正确的验证,也没有满足要分发给EWM的需求,但它们仍然被发送。在这种情况下,错误将留在EWM SMQ2队列中。
我想防止这种情况发生,因为如果问题需要在ERP方面得到解决,错误就不应该留在EWM中。显而易见的选择是,在分发调用EWM验证API的交付之前,在ERP中实现BADI。如果API拒绝传递,则应该阻止分发。
但是,如果由于任何原因没有调用验证API,那么ERP仍然可能将错误的传递发送给SMQ2队列中的EWM。
有什么办法可以防止这种情况发生吗?在EWM qRFC处理中出现错误(验证ERP传递时)时,我希望从队列中删除错误记录,将错误消息返回到ERP,并将ERP传递标记为非分布式或分发错误。
这能或多或少地以标准的方式进行吗?
发布于 2022-01-21 15:26:04
此ASYNC故障模式在SAP ABAP堆栈中已知。有时,在post调用之前会有一个同步检查调用。当它不存在时,您可以考虑使用同步调用。如果不知道为什么最初使用ASYNC入站队列,就很难就解决方案或流程改进提出建议。
异步入站队列存在关键缺陷。监视选项是非常星期的。没有API来读取要发布的数据。没有“修复”数据和重试等选项。
使用EWM上的包装函数来响应错误并发送反馈是一种选择。
https://stackoverflow.com/questions/70789428
复制相似问题