简介:这份PDF资料面向SAP顾问、财务与供应链实施人员,系统梳理集团内部公司间协同的六类典型业务场景及配置方法,帮助读者理清跨公司采购、销售、转储与委外加工在SD、MM、PP、FI等模块中的衔接逻辑。内容涵盖第三方销售、跨公司销售、公司间转储、跨公司转储STO、转包与跨公司采购,并延伸至IDoc触发自动发票校验与收货、公司间清账科目配置、跨公司资产转移等实务要点,配有流程步骤与图示说明。资源包共1个PDF文件,约20.06MB,适合按章节查阅与对照配置。目前已有13027人学习下载,读者可借此掌握各业务场景的适用条件、单据流转路径与财务过账规则,为实际项目中的公司间方案设计与测试验证提供参考。
1. 从一张跨公司发票说起:SAP公司间业务配置到底难在哪
第一次配跨公司销售的时候,我在VF01里死活开不出公司间发票,系统报VF009,翻了一下午才发现是内部客户的供货方销售组织没扩充。这种坑在SAP公司间业务里太常见了——不是逻辑有多深,而是配置点散落在SD、MM、FI、IDoc四个模块里,漏一个就跑不通。这份《SAP公司间6种公司间业务案例及配置详解》把第三方销售、跨公司销售、公司间转储、跨公司转储、转包、跨公司采购六种场景的完整流程和后台配置拆开讲了一遍,从组织单元搭建到IDoc自动生成应付,每一步都有事务代码和路径。如果你正在搭公司间业务的环境,或者配到一半卡在某个报错上,这篇安装笔记可以当操作手册用。
2. 环境准备:公司间业务配置前必须建好的组织单元
2.1 公司代码与工厂的复制和分配
SAP公司间业务的起点是组织单元。没有公司代码、工厂、销售组织、采购组织这些基础骨架,后面所有配置都挂不上去。我一般按这个顺序来:先建公司代码,再建工厂,然后分配,最后建销售组织和采购组织。
建公司代码用OX02从现有公司复制,复制完用OX15改名称和地址。这一步没什么难度,但要注意复制出来的公司代码可能自带一些不需要的参数,比如国家、货币、语言,按实际业务改掉。
# 事务代码 OX02:复制公司代码 # 路径:SPRO-企业结构-定义-财务会计-编辑,复制,删除,检查公司代码 # 输入源公司代码和目标公司代码,执行复制 # 事务代码 OX15:编辑公司代码数据 # 修改公司名称、地址、国家、货币等工厂用OX10复制,操作逻辑和公司代码一样。复制完同样要改名称和地址。这里有个容易忽略的点:复制工厂的时候,系统可能会把源工厂的一些分配关系也带过来,比如装运点、采购组织,需要手动清理。
# 事务代码 OX10:复制工厂 # 路径:SPRO-企业结构-定义-财务会计-编辑,复制,删除,检查工厂 # 事务代码 OX18:给公司代码分配工厂 # 路径:SPRO-企业结构-分配-后勤常规-给公司代码分配工厂OX18这一步要特别注意。因为公司代码是复制的,新公司代码可能已经分配了工厂,这时候要先把旧的分配删掉,再重新分配。我遇到过没删干净导致后续STO流程里工厂取错的情况,排查了很久。
2.2 销售组织、装运点与采购组织的建立
销售组织用OVX5复制,分销渠道用OVXI创建。复制完在定义销售组织里改名称和地址。装运点用OVXD复制,然后用OVXC分配给工厂。
# 事务代码 OVX5:复制销售组织 # 事务代码 OVXI:创建分销渠道 # 事务代码 OVXD:复制装运点 # 事务代码 OVXC:给工厂分配装运点采购组织用OX17分配。这里有个细节:在跨公司销售场景里,接单方需要向生产方购买产品,所以接单方的采购组织要维护好。但生产工厂本身不需要维护采购中心,这一点原文里专门提了。
# 事务代码 OX17:分配采购组织 # 注意:PL01生产工厂在本ICS业务中不需要维护采购中心组织单元建完之后,建议用OX18再检查一遍公司代码和工厂的分配关系,用OVV9检查工厂和组织单位的对应关系。OVV9这个配置在后面公司间开票时会用到,如果内部客户的供货方销售组织没有扩充,VF01开票就会报VF009。
2.3 内部客户与内部供应商的主数据
公司间业务里,内部客户和内部供应商是财务结算的载体。内部供应商用XK01或XK02创建,需要维护内部供应商与供货工厂的关联关系。内部客户用XD01或XD02创建,创建时销售组织要选供货公司的销售组织。
# 事务代码 XK01:创建内部供应商 # 维护供应商与供货工厂的关联关系 # 事务代码 XD01:创建内部客户 # 销售组织选择供货公司的销售组织 # 客户统御科目设置为公司间交易内部客户的主数据里,统御科目要设成公司间交易科目。这个科目在OBYA里配置公司间清账时会用到。如果公司间交易需要挂客户和供应商,OBYA配置选01/31,把客户和供应商设为清账科目;如果只是纯总账交易,选40/50配对应的总账科目就行。
提示:OBYA配置的前提是OBY6中公司代码参数里的“公司”字段要么都为空,要么都有值,不能一个有一个没有。这个限制原文里专门更新过,踩过的人不少。
3. 六种公司间业务的配置与操作流程
3.1 第三方销售与跨公司销售的配置差异
第三方销售的核心是公司不碰货,只做接单和结算。流程是:创建销售订单,系统自动生成采购申请,采购订单收货MIGO,发票校验MIRO,最后对客户开票。这个模式里,计划行的确认日期会自动更新为采购订单的到货日,不需要手动干预。
跨公司销售比第三方销售多了一层公司间结算。销售公司接单,生产公司发货,销售公司对客户开票,生产公司对销售公司开公司间发票。配置上需要多做几件事:
第一,在供货公司下面建内部客户,统御科目是公司间交易。第二,给公司间开票分配订单类型,标准的是IV。第三,在“按工厂分配组织单位”里给交货工厂分配销售区域。第四,在“按销售组织定义内部客户号”里定义内部客户编号。第五,定价过程里要把TSPP勾上。
# 事务代码 VOV8:定义销售订单类型 # 事务代码 VOAZ:分配销售区域到销售凭证类型 # 事务代码 V/08:定义定价过程 # 事务代码 OVKK:维护供方销售组织的定价过程 # 注意:供方销售组织的DoPr = I,Cupp = 1定价过程里PI01和PI02是两个关键定价类型。PI01基于数量,PI02基于百分比。标准定价过程RVAA01里,只要订单中的交货工厂是跨公司的,PI01或PI02就会自动带出来。如果没带出来,检查定价过程里TSPP有没有勾上。
3.2 公司间转储与跨公司转储的移动类型配置
公司间转储是同一公司代码下不同工厂之间的物料调拨。一步法用移动类型301,两步法用303和305。两步法可以通过MB5T查看在途库存。
# 一步法:移动类型301 # 两步法:移动类型303(发出)和305(收货) # MB5T:查看在途库存跨公司转储是不同公司代码之间的调拨,走STO流程。公司代码1向公司代码2下采购订单,公司代码2创建交货单并发货过账,公司代码1收货,公司代码2开销售发票,公司代码1做发票校验。STO可以配置成一步法,公司代码2发货过账时公司代码1同时收货,公司代码2开票时通过IDoc自动产生公司代码1的应付。
# 跨公司转储STO流程: # 1. 公司代码1向公司代码2下采购订单 # 2. 公司代码2创建交货单VL01N,发货过账VL02N # 3. 公司代码1收货MIGO # 4. 公司代码2开销售发票VF01 # 5. 公司代码1发票校验MIRO3.3 转包与跨公司采购的配置要点
转包分标准委外和工序委外。标准委外需要对发出的物料做物流管理,工序委外直接由生产订单触发F类采购订单,采购加工费到生产订单。标准委外的流程是:向加工商下采购订单,指定组件,向加工商发货,库存从自有变成O库存,收货时消耗原材料、计算加工费、更新产成品,最后发票校验。
# 标准委外流程: # 1. 创建采购订单,指定组件和加工费 # 2. 向加工商发货,库存变为O库存 # 3. 收货,消耗原材料,计算加工费,更新产成品 # 4. 发票校验MIRO跨公司采购是集团内销售公司把需求传给生产公司,通过STO做物流转移和财务结算。流程是:客户向公司代码1下单,公司代码1跑MRP产生向公司代码2的采购申请,转成跨公司采购订单,公司代码2跑MRP产生计划订单转生产订单,生产订单完工收货后为客户库存,VL10B发货给公司代码1,公司代码1收货,公司代码2开票,公司代码1发票校验,最后公司代码1发货给客户并开票。
# 跨公司采购关键配置: # MRP4视图独立/集中设置为1 # 生产订单中可以看到原始销售订单号码 # VL10B发货,MB5T查看在途库存4. 避坑排查:公司间业务配置中最容易翻车的五个点
4.1 VF009报错:内部客户的供货方销售组织未扩充
现象:VF01开公司间发票时系统报VF009,提示找不到内部客户或销售组织。
原因:内部客户主数据里,供货方的销售组织没有扩充。公司间开票时系统需要根据内部客户找到对应的销售组织,如果这个销售组织在客户主数据里不存在,就会报VF009。
解决:用XD02打开内部客户,在销售视图里扩充供货方的销售组织。或者在OVV9里检查“按工厂分配组织单位”的配置,确保工厂对应的销售组织已经分配。
4.2 OBYA配置失败:公司代码参数不一致
现象:OBYA里配置公司间清账科目时,系统不允许保存,或者保存后不起作用。
原因:OBY6中公司代码参数里的“公司”字段,一个公司代码有值,另一个没有值。OBYA要求所有相关公司代码的“公司”字段要么都为空,要么都有值。
解决:用OBY6检查每个公司代码的“公司”字段,统一设置为空或者统一设置值。如果公司间仅交易不挂客户供应商,配40/50;如果需要挂客户供应商,配01/31。
4.3 IDoc不触发应付:输出类型RD04未配置
现象:公司间发票开出来后,接单公司那边没有自动生成应付,FBL1N里查不到。
原因:公司间发票的输出类型RD04没有配置,或者IDoc的RFC连接没配好。标准配置下,公司间发票开出后通过输出类型RD04触发IDoc,IDoc再生成接单公司的应付。
解决:检查公司间开票的输出类型配置,确保RD04已经分配给公司间发票类型IV。然后检查WE20里的伙伴参数和WE21里的端口配置,确保IDoc能正常发出。
4.4 跨公司销售开票顺序错误
现象:VF04里默认先开对客户的发票,再开公司间发票,但业务上需要先开公司间发票。
原因:系统默认的开票顺序是对客户发票优先。如果需要调整,需要手动干预。
解决:在VF04里设置默认发票类型为IV,或者在VF01里手动选择发票类型为IV。注意公司间开票不支持行项目拆分开票,如果VOV7里销售订单行项目类别的开票相关设为K,对客户的开票可以部分开票,但公司间开票不行。
4.5 ABT1N批处理报错:LEAVE TO TRANSACTION在批处理中不能使用
现象:用LSMW录屏做公司间资产转移,SM35执行时报“LEAVE TO TRANSACTION在批处理中不能使用”。
原因:ABT1N正常操作保存后会弹出一个对话框提示生成的凭证,批处理中无法显示这个对话框,所以报错。但不影响执行结果,数据可以正常导入。
解决:忽略这个报错,检查导入结果是否正确。如果确实需要避免这个提示,可以在LSMW里调整录屏步骤,跳过对话框那一步。
5. 装完怎么验证:用FBU2和RFBVOR00查跨公司凭证
配置全部做完之后,怎么确认公司间业务真的跑通了?我一般用两个程序来验证:FBU2和RFBVOR00。
FBU2是查询跨公司凭证的事务代码。输入公司代码和会计年度,系统会列出所有涉及两个公司代码的会计凭证。如果公司间销售、跨公司转储这些业务产生了跨公司凭证,这里应该能看到。
# 事务代码 FBU2:查询跨公司凭证 # 输入公司代码、会计年度、期间 # 系统列出所有跨公司会计凭证RFBVOR00是SE38里的一个程序,专门用来查询跨公司凭证。和FBU2的区别是,RFBVOR00可以按更多条件筛选,比如凭证类型、过账日期、参考凭证号。
# 事务代码 SE38:执行程序 RFBVOR00 # 输入选择条件:公司代码、会计年度、凭证类型等 # 执行后列出跨公司凭证清单验证的时候,我一般会走一遍完整的跨公司销售流程:VA01创建销售订单,VL01N创建交货单,VL02N发货过账,VF01开对客户发票,VF01开公司间发票,然后去FBL1N查接单公司对内部供应商的应付。如果应付能查到,说明IDoc触发的自动应付生成成功了。再去WE10查IDoc历史记录,确认IDoc的状态是53(处理成功)。
还有一个验证点是MB5T。跨公司转储和跨公司采购都会产生在途库存,MB5T可以查看在途库存的数量和状态。如果MB5T里能看到在途库存,说明发货过账和收货过账的配置是对的。
最后检查一下OBYA的配置。用SE16查T001U表,看看公司间清账科目有没有正确写入。如果T001U里没有数据,说明OBYA配置没保存成功,需要回去检查OBY6的公司代码参数。
注意:公司间业务的理论开票和对客户开票应当在同月,这样符合成本和收入匹配的原则。如果跨月,期末结账时可能会有差异,需要做调整。
从那以后我每次配完公司间业务,都强制走一遍VA01到VF01的完整流程,再用FBU2和RFBVOR00交叉验证。光看配置文档觉得没问题,实际跑一遍才知道哪里漏了。希望帮到你。
本文还有配套的精品资源,点击获取