IDOC 开发 (三)

前言

网上有一个介绍IDOC的文章, 讲的非常详细. 有兴趣的可以看一下.

https://www.cnblogs.com/jiangzhengjun/p/4292135.html#_Toc411677416

为了讲解更有条理, 本文介绍的内容是开发一个IDOC用于实现采购订单的修改(数量/价格)及审批

开发及配置步骤

按下列步骤完成开发及配置

01

创建IDOC段

TCODE: WE31-创建IDOC的段(如下图示例,创建之前需要先定义好相关的数据元素).

注意保存后, 需要设置批准,在下面界面菜单中选择  编辑->设置批准.(同理,后续修改前,需要取消释放  编辑->取消释放)

段配置涉及到三个表. 特殊情况可以直接更改表内容 : 

EDISDEF                        IDoc 开发:IDoc 段定义

EDISEGMENT                 IDoc 开发:IDoc 段

EDSAPPL                       EDI: IDoc 段应用程序结构

 

  02

创建IDOC类型

TCODE: WE30创建IDOC类型 ZSPOCL. 

创建的时候,使用之前定义好的段类型. 编辑相应段的属性. 这些属性系统在产生IDOC的时候会校验.

 03

配置信息类型

TCODE: WE81-创建信息类型,很简单的配置界面.

 04

关联信息类型与IDOC类型

WE82-关联信息类型与IDOC类型.简单的配置界面


05 

创建IDOC处理函数

参考函数IDOC_INPUT_MBGMCR 创建一个自己的函数,调整下面提到的三个部分的逻辑即可. (暂时没有理解标准逻辑怎么建立IDOC和单据的关系的,估计逻辑包含在第三部分中,自定义的IDOC无需考虑建立IDOC和单据的关系)

统一的界面

 第一部分: IDOC解析部分

 第二部分: BAPI函数调用部分. 

(下图中的BAPI函数是一个自定义的函数,整合了BAPI_PO_CHANGE 与 BAPI_PO_RELEASE 函数的调用, 根据数据比较阶段是否需要执行PO_CHANNGE. 最后执行PO_RELEASE . 两者都成功, 才表示BAPI成功. )

 第三部分:BAPI返回的处理 

 06

注册IDOC处理函数

TCODE: BD51 ALE属性. 参照BAPI_IDOC_INPUT1添加自定义的函数

 

07

关联函数与IDOC类型

TCODE: WE57 创建消息类型/IDOC类型/函数的对应关系

 08

维护进站代码

TCODE: WE42 创建进站代码(可以用代码BAPI复制)双击进站代码, 修改对应的函数

 09

封装一个产生IDOC的函数

这个过程不是必须的, 但是会简化后续产生IDOC的过程, 建议执行该步骤.

Z_CREATE_IDOC_OF_POCL

函数中添加如下功能

函数中实现IDOC的控制段的生成

IDOC单据重复的校验

补充特定业务逻辑

调用标准函数IDOC_INBOUND_SINGLE产生IDOC

总结

上述过程完成后, 就实现了一个自定义功能的IDOC开发及开发相关配置过程. 后续只需要配置IDOC的使用即可

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值