SAP MM 实施项目里Open PO 迁移思路探讨
SAP MM 实施项目里Open PO 迁移思路探讨
.序言.
SAP项目上线前夕,除了静态主数据需要导入以外,可能还有一些动态数据,比如open的采购订单,open的销售订单等单据也要迁移到SAP系统里。
笔者所在的项目里,对于Open PO 的迁移,是MM模块里一件非常重要的工作任务。笔者通过参与这个项目,了解到客户global template中Open PO的迁移策略,很受启发。所以写下这篇文字,予以记录。
.Open PO的定义.
实际业务里,Open PO 一般需要考虑GR和IR两个指标。只要没有全数量的GR, 或者没有全数量的IR,则该PO都被视为Open的PO 。笔者所在的项目里也是采用这个标准来判定一个PO是否是open PO。
.Open PO的处理策略.
项目实践中,对于上线前夕open PO的处理,都采用特殊处理方式。
比如定义特殊的PO类型,这种类型的PO可能允许外部给号,毕竟之前的PO号码已经发给供应商了,因企业内部SAP系统切换,如果导致legacy PO 号码发生了变化,需要采购部门在商务上与供应商做比较多的沟通。如果允许外部给号,则业务人员可以将老的PO号码直接输入SAP系统里,这样供应商在后续的送货以及发票环节,完全是无缝衔接,不用额外沟通成本。
另外,项目实施的时候定义的PO release strategy也不对这种类型的PO生效。毕竟Open PO在也上已经是经过企业内部审批过了的,迁移到SAP系统里之后,可以不用再次审批了。通过定义特殊的document type, 可以屏蔽掉BAU采购订单上的release strategy。
处理策略大致是:
Open GR: 新建特殊类型的PO,迁移到SAP系统里的PO里的数量就是OPEN GR的数量。
Open IR:新建特殊类型的PO,迁移到SAP系统里的PO ITEM中Account Assignment Category设置某个标记比如Y(需要自定义),带暂估科目,不用做收货了(不勾选GR Indicator)。
但是具体的业务场景可能比较复杂,上述策略在适用于具体业务场景的时候,需要灵活处理。
.复杂场景分析举例.
举例分析:比方说一个老的采购订单,有4个 Line Item。
Line 1, PO 下了100, GR收20, IR 收20。如何迁移?
SAP里创建PO的Line1,数量是80,后续正常在SAP PO下收货、发票校验。
Line2, PO 下了100, 没GR,有IR。如何迁移?
在SAP里采购订单里line2,采购数量还是100;业务人员在老系统里该PO已入账的IR 冲销掉,然后重新在SAP PO里做发票校验。
Line3, PO 下了100, GR收80,没发票。如何迁移?
LINE3进入SAP系统里后分两个行项目,
第一个行项目,数量是80, Account Assignment设置为 Y,带暂估科目(财务提供科目),以后收到发票,借这个暂估科目,贷应付账款;GR indicator去掉,因为不会再收货。
第2个行项目,数量是20,正常PO行。
Line4, PO下了100,GR收80, IR收30. 如何迁移?
LINE4进入SAP系统里后分两个行项目,
第一个行项目,数量是50,Account Assignment设置为 Y,带暂估科目(财务提供科目), 以后收到发票,借这个暂估科目,贷应付账款; GR indicator去掉,因为不会再收货。
第一个行项目,数量是20,正常PO行。
看得出,业务场景越复杂,在准备迁移数据,判定各个ITEM迁移的数量的时候,需要花费大量人力物力去统计与分析,工作量不少的。
2019-1-10 写于杭州市.
SAP MM 实施项目里Open PO 迁移思路探讨的更多相关文章
- SAP MM 预留单据里的Base date和Requirement date
SAP MM 预留单据里的Base date和Requirement date Base date可以在预留创建的初始界面指定, 这个日期可以作为预留各个行项目默认的requirement date. ...
- SAP MM盘点流程里如何处理事务代码MI11 Recount过的盘点凭证?
SAP MM盘点流程里如何处理事务代码MI11 Recount过的盘点凭证? 1, MI01 create a physical inventory document, 2, MI04 to inpu ...
- SAP MM MB5L 报表里的差异金额如何调整?
SAP MM MB5L 报表里的差异金额如何调整? 5月3号,收到财务顾问提出的一个问题,说是MB5L报表里有差异. 如下查询条件, 报表结果里显示有差异, 经查,导致这个差异的原因之一是,一些物料批 ...
- SAP MM 有了采购订单历史的PO行项目里的采购附加费不允许再改了?
SAP MM 有了采购订单历史的PO行项目里的采购附加费不允许再改了? 正确答案是: 不允许,这是SAP标准逻辑. 那么问题来了!今日收到业务人员报说采购订单4300013979,完成了收货和IV, ...
- SAP MM ME21N 创建PO时报错 - Net price in CNY becomes too large –
SAP MM ME21N 创建PO时报错 - Net price in CNY becomes too large – 笔者所在的项目上,由于客户尚未正式大规模量产,在现阶段,所有的物料基本都是走费用 ...
- SAP MM ME57 把PR转成PO
SAP MM ME57 把PR转成PO 加入P3项目里,笔者负责采购和IM库存管理domain.采购环节里的PR转PO,客户global template里建议使用ME57或者在MD04里做.笔者在项 ...
- SAP MM PIR里的Lower Limit & Upper Limit
SAP MM PIR里的Lower Limit & Upper Limit 在PIR的价格的detail数据里,有2个字段:Lower Limit和Upper Limit.在今天之前,笔者从未 ...
- SAP MM 一个含有多个账号分配对象的行项目的PO及其收货
SAP MM 一个含有多个账号分配对象的行项目的PO及其收货 如下的采购订单,一个行项目数量为8PC,分别对应8个固定资产号, 在该ITEM的科目分配里,按数量做了拆分,每个数量对应一个固定资产号.如 ...
- SAP MM A工厂下的PR可以转成B工厂下的PO?
SAP MM A工厂下的PR可以转成B工厂下的PO? 答案是可能的,这也是SAP标准行为之一. 如下图采购申请单据, PR中的Plant是GENL.该PR 已经转成了PO,如上图. 看这个PO,工厂代 ...
随机推荐
- CIKM 2012 papers to be downloaded
http://dl.acm.org/citation.cfm?id=2398426 http://dl.acm.org/citation.cfm?id=2396825 http://dl.ac ...
- 轻量级C#网络通信组件StriveEngine —— C/S通信开源demo(附源码)
前段时间,有几个研究ESFramework网络通讯框架的朋友对我说,ESFramework有点庞大,对于他们目前的项目来说有点“杀鸡用牛刀”的意思,因为他们的项目不需要文件传送.不需要P2P.不存在好 ...
- MySQL数据备份方法
MySQL的备份和还原 备份:副本 RAID1,RAID10:保证硬件损坏而不会业务中止: DROP TABLE mydb.tb1; 备份类型: 热备份.温备份和冷备 ...
- 使用cloudreve搭建个人网盘
这次将腾迅的对象存储cos挂载到了服务器上,就想自己搭建个网盘,虽然每月50G的空间和10G流量,也够用了 之前写过使用owncloud来搭建个人网盘,使用起来挺方便,就是不知道为什么感觉打开速度慢, ...
- MySQL 数据库在 Windows 下修复 only_full_group_by 的错误
本机上新安装了个MySQL数据库,在插入数据的时候一直提示这个错误: [Err] 1055 - Expression #1 of ORDER BY clause is not in GROUP BY ...
- Angular ui-roter 和AngularJS 通过 ocLazyLoad 实现动态(懒)加载模块和依赖
什么是ui-router ui-router是AngularUI库最有用的组件之一(AngularUI库由AngularJS社区构建).它是一个第三方路由框架,允许通过状态机制组织接口,而不是简单的U ...
- [Swift]LeetCode421. 数组中两个数的最大异或值 | Maximum XOR of Two Numbers in an Array
Given a non-empty array of numbers, a0, a1, a2, … , an-1, where 0 ≤ ai < 231. Find the maximum re ...
- [Swift]LeetCode504. 七进制数 | Base 7
Given an integer, return its base 7 string representation. Example 1: Input: 100 Output: "202&q ...
- Python中面向对象的概念(科普)
面向对象(OOP)基本概念 面向对象编程 —— Object Oriented Programming 简写 OOP 目标 了解 面向对象 基本概念 01. 面向对象基本概念 我们之前学习的编程方式就 ...
- spark按某几列删除dataframe重复行
新建一个 dataframe : val conf = new SparkConf().setAppName("TTyb").setMaster("local" ...