如何根据特定值找到IDOC

2020-10-22 10:15:58 浏览数 (1)

IDOC的官方名称叫Intermediate Document,用于两个模块,或者两个系统间交换信息。

有时候,我们会碰到这样的问题:系统中有大量的IDOC存在,我们手头有一些已知的信息,例如采购订单号,清账凭证号码,销售订单号,或者任何IDOC中可能包含的关键信息,根据这些信息,如何能找到对应的IDOC?

请注意,不是所有的凭证都有关联的IDOC,IDOC一般用于系统内,或系统间的数据交换。

下面,我将用一个例子来展示,在SAP S/4HANA系统中,如何根据采购订单号,找到对应的IDOC。

第一步:确定你要用什么字段来查找IDOC

在这个例子里,我用的是采购订单号。

在下列IDOC清单中(WE02),我希望能根据采购订单号#4500000138,在全部的message type为ORDERS的IDOC中,找到对应的那一条。

如下面的截屏所示,我有378个outbound IDOC,其中有37个是Message type ORDERS。

第二步:找到对应的IDOC Segment

在这个例子里,采购订单字段(BELNR)存在于Segment E1EDK02中。

步骤三:根据采购订单号,找到对应的IDOC

你知道这个IDOC是Outbound IDOC,你可以用鼠标选用“Outbound IDocs”,然后点击“List specific segment”按钮,你会看到一个弹出窗口。在窗口中,输入对应的Segment,本例中就是E1EDK02,然后点击继续。

然后系统会把所有E1EDK02的值都列出来。在列表中,点击搜索按钮,输入采购订单号。

之后,我们能看到系统找到了两条记录。

由于有两条记录,我们还需要找到类型为ORDERS的那一条。分别双击两条IDOC,我们能看到:

  • IDOC 2001的Message Type是ORDERS,这条IDOC是当创建采购订单时创建的,这正是我要找的IDOC。
  • IDOC 2002的Message Type是ORDCHG,这个类型是订单修改,所以不是我想要的。

小结

我们当然也可以通过查后台表的方式来找IDOC,但是不够方便。你找到了IDOC,还得回到WE02来查看IDOC细节,所以我个人更愿意使用本文介绍的方式。

0 人点赞