IDOC示例-物料

第一步为Client创建逻辑系统(BD54)
第二步为Client指派逻辑系统(SCC4)
第三步维护RFC目标(SM59)
第四步在发送端创建Distribution Model(BD64)

分布模型用于描述业务对象在逻辑系统间的分布流程。分布模型视图将所有系统分布情景组织起来集中维护,一旦在其视图中为两个逻辑系统分配了消息类型或BAPI,即建立了两个系统之间的连接

点击“创建模型视图”按钮:

IDOC示例-物料_第1张图片

IDOC示例-物料_第2张图片

选择刚创建的模型视频,点击“添加消息类型”按钮(或者点击“Add BAPI”以BAPI的方式实例ALE)

IDOC示例-物料_第3张图片

点击保存.

第五步在发送系统中创建伙伴参数(BD82)

伙伴参数(partner profile)是Idoc发送和接收过程中的基本连接设定。在ALE中,需要将另一方设为伙伴,定义类型为逻辑系统的伙伴参数,才可完成通信。

输入BD82(或在BD64界面选中上一步所创建的模型视图,则点击菜单

image376

,这样在下图中就不用输入模型视图了),在下图中输入分布模型视图(为上一步所创建的模型视图)以及伙伴系统,伙伴系统应该ALE另一方的逻辑系统名,而不是当前系统:

IDOC示例-物料_第4张图片

选择执行功能后,系统将自动生成逻辑伙伴、端口(自动分配)以及输出参数。成功生成接收系统810伙伴参数后,日志界面:

IDOC示例-物料_第5张图片

第六步检查发送端端口配置(WE21) 

IDoc或其状态记录总是通过端口和外部系统进行传递的,是IDoc接口中系统通信相关的基础配置,代表SAP系统和伙伴系统的通信途径。对于每个外部系统都至少需要配置一个端口。在端口配置需指定目标系统

上一步中,从日志发现自动创建了A000000059的端口,并且使用的是前面我们创建RFC目标,可以使用WE21,展开事务性RFC,可以查看:

IDOC示例-物料_第6张图片

第七步在发送端修改伙伴参数文件Partner Profile(WE20)

伙伴参数可以通过WE20手工设定,这里是自动生成的

在第五步之后,创建自动产生伙伴参数文件,通过事务代码WE20,可以查看与修改刚创建好的伙伴参数。

每个在ALE过程中需要传输的消息类型都将添加到端口的出站参数中,本例中所需关注的是物料主数据对应的消息类型MATMAS(CREMAS为其他模型视图所生成的):

IDOC示例-物料_第7张图片

双击 MATMAS消息,可以对其修改,将基本类型修改为MATMAS01:

IDOC示例-物料_第8张图片

第八步向目的端发布Distribution Model(BD64)

在发送系统800中维护了分布模型视图并根据该视图生成接收系统伙伴参数之后,还需在接收系统810中为发送系统维护伙伴参数,但目前接收系统中还不存在ALE分布模型视图,因此不能够自动创建伙伴参数。一个简单的解决方法是:将相关的ALE分布模型视图发布到接收系统中,然后就可以通过同样的视图在目标系统中自动生成发送系统的伙伴参数了,在800系统中,进入BD64界面,并选中MATMAS消息(否则有可能发布不了):

IDOC示例-物料_第9张图片

IDOC示例-物料_第10张图片

 IDOC示例-物料_第11张图片

再登录810查看:

IDOC示例-物料_第12张图片

第九步在目的端生成Partner profile(BD64)
登录到810,T-code:BD64

选定传输过来的Distribution Model,点击菜单Environment -> Generate Partner Profiles:

IDOC示例-物料_第13张图片

IDOC示例-物料_第14张图片

IDOC示例-物料_第15张图片

第十步检查接收端端口号(WE21)

IDOC示例-物料_第16张图片

已经自动建立了端口,并且使用的是此前建立的目标连接

第十一步调整接收端Partner Profile(WE20)

IDOC示例-物料_第17张图片

选择新创建的Partner Type:ZCLIENT800,双击Inbound下的MATMAS:

IDOC示例-物料_第18张图片

该界面中最重要的内容是处理代码(即为进行具体IDoc处理的功能模块或工作流的代号),数据在所指定的处理中被写入IDoc或是从IDoc中读取出

将其Process code改成MATM,保存。如果你不修改这个,默认情况下它自动选择了以A打头的Process code,而并非物料主数据需要的MATM处理码:

一旦传输数据过来后,相应的处理模型不对应,会产生错误:

IDOC示例-物料_第19张图片

至此,整个IDoc发送与接收配置工作已经完成。

 

你可能感兴趣的:(abap,数据库)