点击蓝字 关注我们

前言

网上有一个介绍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的使用即可

详见链接

无峰,公众号:ABAP 技巧与实战SAP操作手册之 IDOC配置篇

实际项目中, 可以把常用IDOC的创建过程封装到函数中调用,封装的函数中实现IDOC的重复性检查,附加业务功能及IDOC的赋值 等

THE

END

约定

如果你对这篇文章感兴趣,请帮忙点赞,在看,分享.

(如果你真的喜欢这篇文章,请记得回来打个赏,作为支持我继续下去的动力,这是一个正反馈过程. 越多的人打赏,作者越有动力分享,读者就能享受更多的福利.毕竟打赏的金额富不了我,穷不了你,却能支持这个公众号长久发文.)

公众号 : syjf1976_abap

          ABAP开发技巧

微信号 : 392077

公众号主群加入受限, 请扫码加入副群后,向管理员申请加入主群

SAP操作手册之 IDOC开发篇相关推荐

  1. 三菱mr系列服务器故障代码a6,三菱MR-JE-40A操作手册MR-JE-40A故障排除篇手册 - 广州凌控...

    三菱电机通用交流伺服放大器MELSERVO-J3系列. 额定输出:11.0kw. 接口类型:SSCNETⅢ光纤通讯型. 电源规格:三相AC200V. 通过采用运动控制器和伺服放大器之间最快高达0.44 ...

  2. SAP操作手册之 商品/物料主数据增强

    点击蓝字 关注我们 一 前言 每个客户都有自己特殊的物料属性, 因此每个项目中都需要对物料/商品主数据执行增强. 本文已MARA表增强为例,介绍物料/商品主数据增强的过程及注意事项 其它视图增强过程类 ...

  3. gxworks2使用指令手册_GX Works2操作手册(智能功能功能模块操作篇):三菱 GX 三菱 GX Works2操作手册(智能功能功能模块操作篇)...

    资料介绍: 2) 结构化编程 GX Works2 Version 1操作手册 (公共篇) 对 GX Works2 的系统配置及参数设置.在线功能的操作方法等,简单工程及结构化工程中的通用功能有关 内容 ...

  4. Docker系列之常用命令操作手册

    Docker系列之常用命令操作手册 继上一篇博客Docker系列之原理简单介绍之后,本博客对常用的Docker命令进行实践 文章目录 1.安装虚拟机 2.安装Docker 3.Docker镜像操作 4 ...

  5. 1 SAP DEBUG调试改表操作手册

    1 SAP DEBUG调试改表操作手册 8.1 ABAP调试直接改表 步骤1:输入事务码SE16N进入 1处,输入事务码SE16N,按Enter回车键进入 步骤2:输入需要修改的表名   1处,输入需 ...

  6. SAP TR手动导入系统操作手册

    SAP TR手动导入系统操作手册 背景: A系统中的某个需求开发完成,对应的请求需要导入B系统中,但是A.B两系统未配置TMS传输路径 步骤: 在A系统中使用事务码SE10下找到要传输TR编号,例如: ...

  7. 8 SAP QUERY定制报表操作手册 SQVI-推荐

    8 SAP QUERY定制报表操作手册 SQVI-推荐 SAP Query报表定制个功能方便用户按照自己的个人化要求来生成ALV报表.系统通过数据来源,设置表结构和执行三个层面来完成报表输出. SQV ...

  8. 7.1 SAP MASS批量修改操作手册

    7 SAP MASS批量修改操作手册 事务码MASS可以对利润中心.销售订单等超过20种主数据和单据进行批量修改.MASS并不是直接维护数据表,而是调用相关事务码进行操作,当对象类型没有指定事务码时只 ...

  9. 4 SAP权限PFCG操作手册

    4 SAP权限PFCG操作手册 通过事务码PFCG来创建对应的权限角色并分配权限角色给指定的用户,以及对授权对象进行权限增加和修改. 权限角色的命名规则为:前缀Z+模块代码+字符ROL+流水码001- ...

最新文章

  1. 小冰数字孪生主播正式上线 全球首创全流程无人化AI直播
  2. AngularJS的使用方法
  3. 快快: 一点即玩的游戏客户端平台
  4. WebService 基础
  5. java nfa dfa_DFA与NFA
  6. maven-assembly-plugin 和 maven-shade-plugin打包插件的区别
  7. Angular自学笔记(?)ViewChild和ViewChildren
  8. c语言 算术平均滤波法_单片机数字滤波的算法
  9. PHP关键字可以作变量名吗,在PHP中定义了很多关键字,这些关键字不能当做变量名。...
  10. BZOJ.1029.[JSOI2007]建筑抢修(贪心)
  11. 为什么linux/mac os系统和windows系统不一样(文件系统)
  12. 【前端】【cornerstone】cornerstone.js如何编辑图像/加载已有图像数据(以画直线为例)
  13. android 无法添加依赖关系,Android无法添加aop库依赖
  14. Spring源码系列 — BeanDefinition
  15. Lua游戏开发实践指南
  16. 电子信息工程专业实习手册周记_信息专业实习周记范文
  17. 说到VDI与IDV的分分合合,不会再有比这更清晰的解释了!
  18. java 处理表情字符_使用轻量级工具emoji-java处理emoji表情字符
  19. [复变函数]第24堂课 6.3 辐角原理
  20. SEO商务谈判技巧,常见的5个措施有哪些?

热门文章

  1. php jq天室,jQuery实现简单聊天室
  2. 局部变量 全局变量 函数的嵌套
  3. 很久未使用计算机会怎样,电脑很久没用无法开机怎么办 电脑很久没用很卡怎么解决...
  4. 第六章 个人优化vim第三步 :主题colorscheme
  5. IDEA输入汉字出现乱码
  6. 优秀的软件开发经理,都具有这五个特征
  7. 用PDF编辑器打开文件后却不能编辑是怎么回事
  8. php 获取 editcell,PHP编辑器之Komodo Edit的快捷键
  9. 老友记台词学习笔记 SE01EP01(七)
  10. 解决mysql 数据迁移过程中使用 select into或inert into select 批量插入时id使用UUID重复问题(已解决)