在SAP中,IDocs(Intermediate Document) 是应用于SAP和非SAP系统间异步通信的规范性文件。IDocs类似于EDI 文件,常用于交换企业信息系统间销售订单,账单,装运单等信息。
IDoc 端口可从SAP系统发送和接收IDoc类型的文件,支持XML IDoc 和raw IDoc。
发送 IDoc 到 SAP 系统
当配置IDoc端口并连接到SAP系统后,可尝试发送IDoc文件到SAP系统。发送的文件类型支持raw IDoc或XML IDoc。
发送到SAP系统的IDoc文件,需要设置控制记录(Control Record)信息,如DOCREL,SNDPOR,SLDPRT等等。可在IDoc Port->settings页面下的“Control Record Information”中完成配置,使配置系统处理出站IDocs文件的过程更加简单。
在发送IDoc文件之前,必须确保在SAP系统中正确配置了合作伙伴的信息。如果SAP系统中没有任何合作伙伴的信息,将无法匹配所发IDoc文件中的控制记录(Control Record)信息,系统将不会处理数据。下列测试部分中包含更多配置合作伙伴的信息。
T-Code WE60可用于查找不同的IDoc类型的数据段(segment)文件。
测试发送IDoc到SAP
为了测试发送IDoc文件到SAP,首先需要在SAP系统中为RSSBus Connect配置一个交易伙伴信息。如下步骤将说明如何进行设置,以ORDERS IDoc为例:
创建交易伙伴信息:通过T-Code WE20定义一个交易伙伴文件,将Customer项设为Partner Type=KU,并为Partner NO.设置一个有效的客户编号。
为ORDERS文件添加一个入站参数(inbound parameters)值,该文件的消息类型为ORDERS,可以在Inbound Options tab栏中查找到。另外,需要将process code设置为ORDE是为了告诉 SAP系统如何在收到采购单ORDERS文件时创建一个销售订单。
分配客户到销售部门:需要将上一步配置的客户信息分配给相应的分销渠道,销售组织和部门。打开交易(号)VOE2然后在EDSDC界面设置这些信息。
接收来自 SAP 系统的 IDoc
当配置IDoc端口并连接到SAP系统后,就可以接收来自SAP系统的IDoc文件。支持的文件类型包含raw IDoc,XML IDoc.
SAP系统发送IDoc文件时需要为RSSBus Connect创建一个RFC destination。在端口设置页面,可以选择启用IDoc Receiver并输入为RSSBus Connect 注册的Program ID。
测试从SAP发送IDoc
按照下列步骤配置SAP系统并发送MATMAS IDoc文件到RSSBus Connect。
一 定义逻辑系统:进入transaction SALE界面,选择Basic Settings -> Logical Systems -> Define Logical System。然后创建一个包含有效名称的新条目(比如,RSSBUS)和描述信息。
二 创建RFC destination:打开T-Code SM59界面并单击创建选项,填入如下RFC destination信息:
- RFC Destionation:要求名称唯一(比如RSSBus_DEST)
- Connection Type:’T'表示TCP/IP
- Description:对RFC Destionation的描述
- Programe Id:在RSSBus Connect识别RFC destination的唯一名称
- Activation Type:选择注册的服务器程序
当保存上述设置后,可进行连接测试,确认是否能成功连接到RSSBus Connect。
三 创建处理端口:使用T-code WE21,用上一步创建的唯一的名称和描述生成一个新的RFC端口。
四 创建交易伙伴信息:使用T-Code WE20,为第一步添加的逻辑系统(logical system)创建交易伙伴信息(Partner Profile)。然后为MATMAS 添加一个出站参数(outbound parameter),消息类型为MATMAS。在Outbound选项部分,接收端口(receiver port)的设置必须和第三步的设置一致,输出模式必须设为“Transfer IDoc Immed”,且IDoc基本类型应设为MATMAS05。
五 发送IDoc测试文件:使用T-Code BD10向RSSBus Connect发送一个IDoc测试文件,需指定物料号(material number)。在发送消息前,需设置消息类型(Message Type)和逻辑系统(Logical System)信息。
用户可以通过使用T-Code BD87来监控出站信息(outgoing messages)的发送情况。必要的话需做进一步的处理。
常见 IDoc 列表
如下是常用IDoc message 类型以及相对应的EDIFACT和X12协议编号。此列表仅供参考且并未存在IDocs和EDIFACT/X12间官方的映射方式。
MsgType | BasicType | Description | EDIFACT | X12 |
ACLPAY | ACLPAY01 | Freight invoice | INVOIC | 210 |
CREADV | PEXR2002 | Credit advice | CREADV | 812 |
CREADV | PEXR2002 | Extended credit advice | CREEXT | 812 |
CREADV | PEXR2002 | Multiple credit advice | CREMUL | 812 |
CREMAS | CREMAS04 | Vendor/org. info | PARTIN | 816 |
DEBADV | PEXR2002 | Debit advice | DEBADV | 812 |
DEBADV | PEXR2002 | Multiple debit advice | DEBMUL | 812 |
DEBMAS | DEBMAS06 | Customer/org. info | PARTIN | 816 |
DELFOR | DELFOR01 | Delivery schedule | DELFOR | 830 |
DELINS | DELFOR02 | Delivery schedule | DELFOR | 830, 862 |
DELJIT | DELFOR01 | Just in time delivery | DELJIT | 830, 862 |
DELORD | ORDERS05 | Delivery request | ORDERS | 830, 850 |
DESADV | DELVRY03 | Delivery (dispatch advice) | DESADV | 856, 940 |
DIRDEB | PEXR2002 | Direct debit | DIRDEB | 828 |
DIRDEB | PEXFI03 | Direct debit | DIRDEB | 828 |
FINSTA | FINSTA01 | Financial statement | FINSTA | 821, 822 |
GSVERF | GSVERF03 | Credit memo procedure | ORDERS | 861 |
IFTMIN | SHPMNT04 | Forwarding order | IFTMIN | 204, 304 |
INVOIC |
INVOIC02 |
Vendor invoice |
INVOIC |
810, 880 |
LOCKBX | FINSTA01 | Lockbox | PAYORD | 823 |
MBGMCR | MBGMCR03 | Post goods mvmt. & PGI Del | RECADV | 856, 867, 945 |
MBGMCR | MBGMCR03 | Goods mvmt. & goods receipt PO | RECADV | 867, 944 |
ORDCHG | ORDERS05 | PO change request | ORDCHG | 860, 876 |
ORDERS | ORDERS05 | Customer PO | ORDERS | 850, 875 |
ORDRSP | ORDERS05 | PO confirm | ORDRSP | 855, 865 |
PAYEXT | PEXR2002 | Extended payment order | PAYEXT | 820 |
PAYEXT | PEXR2002 | Multiple payment order | PAYMUL | 820 |
PAYEXT | PEXR2002 | Payment order | PAYORD | 820 |
PROACT | PROACT01 | Inventory report | INVRPT | 846, 852 |
PROACT | PROACT01 | Sales forecast | SLSFCT | 852 |
PROACT | PROACT01 | Sales report | SLSRPT | 852 |
REMADV | PEXR2002 | Credit advice | CREADV | 820 |
REMADV | PEXR2002 | Payment advice | REMADV | 820 |
REQOTE | ORDERS05 | Response to request for quotation | REQOTE | 840 |
SDPICK | SDPIID01 | Pick/ship confirm & PGI | RECADV | 856, 867, 945 |
SHPADV | SHPMNT05 | Advanced ship notification | SHPMNT | 856 |
SHPCON | DELVRY03 | Ship confirm/PGI | RECADV | 856, 867, 945 |
SHPMNT | SHPMNT05 | Advanced ship notification | SHPMNT | 856 |
SHPORD | DELVRY03 | Delivery dispatch order | DESADV | 830, 850, 856, 940 |
STATUS | SYSTAT01 | Acknowledgement | CONTRL | 997 |
STATUS | SYSTAT01 | Functional acknowledgement | FUNACK | 997 |
TXTRAW | TXTRAW02 | Error report (text msg.) | APERAK | 824, 864 |
TXTRAW | TXTRAW02 | Error report (text msg.) | GENRAL | 824, 864 |
WHSCON | DELVRY03 | Stock confirmation & PGI | RECADV | 856, 867, 945 |
WHSORD | DELVRY03 | Delivery stock order | DESADV | 940 |
WMTORD | WMTOID02 | Transport request (goods mvmt.) | RECADV | 856, 867, 945 |
WMMBXY |
WMMBID02 |
Post goods receipt (goods mvmt.) |
RECADV | 867, 940, 945 |