SAP通过IDOC调用BAPI(LSMW+BAPI)method关联message type

前言
在LSMW中,可通过调用business object method(bapi)方法实现批输入,在使用中发现,某些BO对象下的method不可选,原因是method未映射到ALE。
如在输入BUS2032时,仅能查看到两个方法

第一步:查看BO对象方法
T-Code:SOW1 输入相应BO类型后点击创建method 如下图销售订单中已创建名为ChangeFromData的方法,同时该方法关联了BAPI_SALESORDER_CHANGE

第二步:将方法映射到ALE(生成IDOC消息类型)
T-Code:BDBG 输入BO类型和方法后点击创建,如图生成一个ZSALES_CHANGE消息类型,选择包后确定 (此处较慢)。按个人理解,这是创建一个IDoc类型,创建IDoc段和outbound、inbound function函数

测试LSMW调用BAPI(IDOC)
第一步:SM59维护RFC目标逻辑系统
常规配置,连接类型选择3即可
第二步:维护IDOC进站处理 Inbound IDOC Processing
T-Code:LSMW Setting - Inbound IDOC Processing

 

 

 分别维护 File port、Partn.Type、Partner NO

Edit Ports维护端口(文件类型下创建端口)

 

第三步:LSMW - Define Object Attributes

第四步:定义源字段 LSMW-3 Define Source Fields
如修改销售订单中交货冻结字段(BAPI_SALESORDER_CHANGE中需修改更新标识才会生效)

第五步:定义结构关系 LSMW-4 Define Structure Relations

第六步:定义字段映射和转换规则 LSMW-5 Define Field Mapping and Conversion Rules

第七步:WE20维护合作伙伴参数
合作伙伴类型:US
合作伙伴编号:LSMW
入站消息类型:ZSALES_CHANGE (BDBG创建时输入的消息类型)
处理代码:BAPI
此处对应前面IDOC进站处理中的合作伙伴编号和类型

其他
个人觉得是很不错的一个功能,可通过多种方法触发IDOC灵活运用
PS:WM模块中message type:SHP_OBDLV_CONFIRM_DECENTRAL 触发机制有人了解的话请私信我,谢谢
————————————————
版权声明:本文为CSDN博主「SD-LIPS」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/weixin_41891831/article/details/119667672

posted @ 2021-08-16 14:16  SAP-Rex  阅读(1286)  评论(0)    收藏  举报