SAP IDOC 通过采购订单输出消息生成销售订单
题记:
在网络上看到一篇类似的公众号文章,叫《通过IDoc逐步指导PO&SO集成》,个人觉得整个配置过程中还是少了一些重点配置,也少了说明整个功能的核心逻辑,那么,趁着这个机会,就让我来完整说明一下吧!
业务说明:
本功能是用在销售公司接单之后,向生产公司创建采购订单采购物料,系统通过IDOC的设置生成生产公司对销售公司的销售订单。通过这样的功能可以简化工作量,同时也能满足那些不想用也不适用于标准公司间交易的业务场景。
系统配置:
一、RFC连接配置:
目的是为了配置销售公司和生产公司之间的系统连接,有的时候销售公司和生产公司不在一个SAP Client里面,就需要通过这个RFC连接配置连在一起。
事务代码:SM59

选择ABAP连接之后,点击新建按钮

本例销售和生产公司都是同一个主机,所以在这里目标主机填写当前主机名称,如果是不同主机,则填写另一个主机名。
切换到 登录&安全性 页签:

点击连接测试:

二、新建IDOC端口
事务代码WE21

按上图的操作顺序,新建一个端口,将第一个步骤新建的RFC连接封装成一个IDOC端口

保存
三、合作伙伴参数文件
事务代码:WE20
新建合作伙伴类型LI,表示该供应商需要做出站消息:


注意,上面合作伙伴编号需要跟供应商编码一致,伙伴类型是LI 供应商

保存之后,点击出站里的新建按钮:

切换到消息控制:

切换到EDI标准:

保存!
新建合作伙伴类型LS

在逻辑系统这里需要设置相关的进站和出站,因为本例销售和生产都是在一个公司里面,所以出入站都在这里设置!
注意,合作伙伴编号要跟SCC4里面相应的Client的逻辑系统要一致!
如果是在发送端(即新建采购订单的Client里),这里要创建生产公司所在的Client的逻辑系统LS,并设置出站!
如果是在接收端(即生成销售订单的Client里),这里要创建销售公司所在的Client的逻辑系统LS,并设置入站!
因为本例Client只有一个,因此出入站都是在一个逻辑系统里!
设置出站参数并保存!


设置入站参数并保存:

切换到接收端,设置合作伙伴参数KU:编号要跟客户编号一致!

设置KU的入站参数:

四、设置客户与供应商代码的配对参数
事务代码:VOE2

五、设置供应商主数据里面客户代码
事务代码:XK02

六、设置发送端工厂与接收端客户的送达方对应
事务代码:VOE4

七、创建输出条件
事务代码:MN04/MN05


维护相关的采购组织和采购订单凭证类型,切记,这里功能选VN,媒介选择6!
八、设置IDOC处理例程
事务代码:NACE



九、信息记录设置相关的物料
事务代码:ME11/ME12

十、配置单位对应关系
事务代码:CUNI
配置物料单位对应的ISO代码

十一、配置销售订单的定价过程
这个配置是添加EDI1和EDI2的条件类型到销售订单的定价过程里面,目的是接收采购订单的不含税价和金额
事务代码:SPRO

保存!
十二、创建采购订单
事务代码:ME21N

点击抬头的消息:

可以看到相关的输出类型了!
保存采购订单之后,可以在抬头的关系里面看到相关的IDOC出入站


十三、查看生成的销售订单
事务代码:BD87
输入入站的IDOC号码

事务代码:VA03


EDI1和EDI2价格来自于采购订单里的价格!

************************我是分割线********************
总结:
眼花了吗?心乱了吗?这就对了,IDOC就是这么麻烦,不灵活,不方便,个人建议还是老老实实用开发去生成单据吧!
PS:好多图,累死了!能完整看到这里,我也服你。
看我这么辛苦分享,不给点赞赏?
SAP IDOC 通过采购订单输出消息生成销售订单的更多相关文章
- sap 中怎样把非限制库存转为销售订单库存?
把非限制库存转为销售订单库存: MB1B 移动类型413 把销售订单库存转为非限制库存: MB1B移动类型411 E 切记!
- 如何用SAP Cloud for Customer的手机App创建销售订单
第一次启动App,设置一个初始化的pin code: 输入C4C tenant的url,用户名和密码: 登录进系统后,找到Sales Order工作中心: 可以看到系统里很多已有的销售订单了.点击屏幕 ...
- 销售订单(SO)-API-创建销售订单
创建销售订单API主要注意几点: 初始化环境变量:fnd_global.apps_initialize(); mo_global.init('ONT'); mo_global.set_policy_c ...
- 销售订单(SO)-API-更新销售订单
更新销售订单和创建销售订单差不多,调用的API相同,只是传入的时候标识不一样:operation := oe_globals.g_opr_update 示例代码如下: PROCEDURE update ...
- 销售订单(SO)-API-登记销售订单
登记销售订单可以在新增订单的时候就登记:并不是去修改 flow_status 为booked,而是赋值action request:就下面两句 l_action_request_tbl(l_actio ...
- Oracle EBS 跳跳转标准销售订单程序转标准销售订单程序
-- 打开PO PROCEDURE Btn_Open_Po IS BEGIN Fnd_Function.Execute(Function_Name => 'PO_POXPOEPO', Open_ ...
- VA01销售订单批导问题解决
1业务场景 事务代码:VA01创建销售订单,VA02修改销售订单 可以通过BAPI_SALESORDER_CREATEFROMDAT2批量创建 可以通过BAPI_SALESORDER_CHANGE批量 ...
- 为什么S/4HANA的销售订单创建会触发生产订单的创建
调用S/4HANA销售订单创建函数SD_SALES_DOCU_MAINTAIN创建一个销售订单时,会触发生产订单的创建. 销售订单的每个行项目对应一个独立的生产订单,SD_SALES_DOCU_MAI ...
- 标准IDOC同步采购订单
目录 1功能说明 4 2功能实现 4 2.1创建逻辑系统并分配集团(SALE) 4 2.2维护RFC目标(SM59) 5 2.3在发送端创建模型视图(BD64) 5 2. ...
随机推荐
- Json schema 以及在python中的jsonschema
目录 1. JSON Schema简介 2. JSON Schema关键字详解 2.1 $schema 2.2 title和description 2.3 type 3 type常见取值 3.1 当t ...
- Flask蓝图遇到的问题
欢迎加入python学习交流群 667279387 最近在使用flask开发一个业余学习项目,由于之前都是"小打小闹",整个程序都是放在一个文件夹里面的,也没有注意这个问题.这次项 ...
- 洛谷 题解 P5015 【标题统计】 NOIP2018 普及组 T1
没有人用 scanf("%c", &ch) != EOF 吗? scanf 和 EOF 会伤心的. 思路:逐个读入字符,遇到EOF中止,对于每个读入的字符进行判断. 附上考 ...
- HTML中用AJAX方式把数据存储到浏览器中并取出
把对象只有转成字符串形式才可以存入,取出则是把字符串转成对象
- Python如何实现微信群万人同步直播?
很多人传言微信网页版(https://wx.qq.com/)接口已经被封了,所以所有的微信都不能登录网页版,这是错误的. 2019年7月微信对网页版微信进行了动态安全策略调整,导致一大批微信号不能登录 ...
- Java实现数列的排列组合
定义: 排列:从给定个数的元素中取出指定个数的元素,进行排序 组合:从给定个数的元素中仅取出指定个数的元素,不考虑排序 公式: 从n个元素中取出m个元素进行排序的个数: A(m,n)=n(n-1)(n ...
- 【Vuejs】350- 学习 Vue 源码的必要知识储备
前言 我最近在写 Vue 进阶的内容.在这个过程中,有些人问我看 Vue 源码需要有哪些准备吗?所以也就有了这篇计划之外的文章. 当你想学习 Vue 源码的时候,需要有扎实的 JavaScript 基 ...
- rsync实现服务器之间同步目录文件
一般情况下 服务环境一般有三种 dev 开发环境 test 测试环境 prod 生产环境 环境多了,不可避免的事是一些重复的操作,部署什么的 能不能在开发环境打包后,直接同步到测试环境呢?(毕竟重 ...
- 【ES6】数值的扩展
1.Number.isFinite()和Number.isNaN()[只对数值有效] (1)Number.isFinite()用来检查一个数值是否为有限的(finite),即不是Infinity. [ ...
- C#使用 OleDbConnection 连接读取Excel
/// <summary> /// 读取Excel中数据 /// </summary> /// <param name="strExcelPath"& ...