
前些天一个群里有人问OBYC 里配置的那个 PIP 科目到底是干嘛用的项目上线一年多科目余额一直没动过连配置对不对都不确定。我一看他们确实上了管道Pipeline采购天然气是供应商通过管道直接进厂的但业务顾问把它当普通采购做了。问题就出在这——标准 SAP 里管道业务只有在 MRKO 管道结算这一步才会真正去读 OBYC 里配置的 PIP 科目其它节点像 MIGO 收货、MIRO 发票校验根本不会碰它。这篇文章就是把这件事彻底讲明白顺便把 MRKO 从配置到实操、再到踩坑的完整路径梳理出来。适合正在做 MM 或 FI 的顾问、管道业务企业的 key user也适合所有被“管道结算到底怎么配、怎么跑”困扰的人。先说结论只要你们的管道物料走的是标准 Pipeline 流程那么月末 MRKO 产生的会计凭证贷方存货科目就是由 OBYC 事务键 PIP 决定的这不只是配置问题更是一整条业务逻辑的落点。1. 管道业务为什么特殊不是所有“收货”都叫收货1.1 我见过最多的管道业务类型做化工、燃气、电厂、钢厂这类项目管道物料最常见的就那几种天然气、蒸汽、工业水、液氧、废酸、压缩空气。它们的共同点是供应商的管道直接接到厂区主管网没有包装、没有托盘、没有送货单甚至没有一个可以称重的“到货动作”。用量靠什么认定流量计。更讲究一点的厂会有计量撬记录流量、压力、温度再换算成标准状态体积月终抄表读数差就是当月消耗量。很多厂是 24 小时不断供的一天里可能每小时的流量都在波动根本不可能像普通采购那样“到一批、收一批、验一批、开票一批”。这个业务特点直接决定了系统不能套用标准采购流程。我参与过的项目里做得顺的都会在项目启动阶段单独开一个业务蓝图章节就叫“管道物料结算”把计量依据、结算周期、损耗承担方式全部定清楚。否则后面每月月底都会有一堆手工调整。1.2 为什么标准采购流程在这里“失灵”先看标准采购流程采购订单 → MIGO 101 收货 → 库存增加 → MIRO 发票校验 → 应付账款。收货时走移动类型 101系统触发 OBYC 里的 BSX 科目把物料金额记进存货发票校验时再触发发票科目和应付账款。但管道业务在这里有两个硬伤第一到货时你根本不知道实际数量强行用 101 收货只能填预估数账实永远对不上第二101 收货会产生真实的库存金额货值挂在存货科目上万一后续抄表数据和预估差很多就要做一堆冲销、重估财务会直接疯掉。所以标准設計就把管道业务从普通采购流程里摘出来单独走一条路先记录数量但不过账金额等结算周期末再按抄表结果一次性确认消耗和负债。PIP 这个 Transaction Key 就是为这条路准备的。这里要说清楚普通采购的“收货”概念在管道业务里被拆成了两步——物理到货流量计记录和数量认定月末抄表 MRKO 确认。很多刚接触这个业务的顾问容易栽跟头就是没理解这个拆分非要把两步合成一步做。1.3 管道、寄售和普通采购的边界SAP 里和 MRKO 一起出现的还有一个概念叫寄售Consignment。寄售物料是供应商放在你仓库里、用了才结算的库存MRKO 也负责处理寄售的负债结算。不少同事会把寄售和管道混在一起因为它们都在 MRKO 这个事务码下面处理。但底层自动记账的科目键并不一样我整理了一个对比业务类型到货确认方式收货是否生成价值消耗/结算时点主要自动记账键普通采购到货即收101 价值收货是走 BSX发货/领用时消耗BSX、GBB、EIN 等寄售供应商寄售库存到货一般无价值挂寄售库存消耗结转/月末结算KON、KOB 等管道管道输送流量计抄表无价值只记数量MRKO 管道结算PIP表格看下来就清楚了PIP 不是给普通采购用的也不是给寄售用的它是管道结算这个动作专用的科目键。这也是为什么“只有 MRKO 用 PIP”这句话是成立的。2. MRKO 结算到底做了什么PIP 科目登场的唯一现场2.1 MRKO 是什么能做什么MRKO 在标准菜单里归在物料管理的采购相关功能中英文全称叫 Settlement of Consignment and Pipeline Materials翻译过来就是“寄售和管道物料的结算”。它的作用是把已经到货但尚未结算的管道库存或寄售库存按消耗数量一次性结算掉。操作上你可以按公司代码、工厂、供应商、物料去筛系统会把未结算的管道收货汇总出来列出数量、金额、状态。你选中对应行点结算系统生成物料凭证和会计凭证。做客户演示的时候我经常说把 MRKO 理解成一个“月末结账按钮”按一下管道里的气变成账上的钱。这个比喻虽然粗糙但业务用户一听就懂。MRKO 最关键的一点是它是全自动科目确定。系统根据物料的评估类、公司代码、工厂去 OBYC 里找对应的科目配置。管道结算时找的就是 PIP。如果把 PIP 配错了或者漏配了MRKO 要么报错要么生成一张科目完全不对的凭证。2.2 结算前后的科目变化一笔 5 万块的管道费用一个最简单的例子演示。工厂 1000物料 NGAS天然气评估类 3000采购订单单位是立方米采购价格 5 元/立方米。当月流量计初值 1000末值 2000实际消耗 1000 立方米。MRKO 之前库存主数据里有管道库存 1000 立方米但没有金额FI 模块里看不到任何相关凭证。这时候你去 FBL3N 查科目什么都查不到这是正常的。MRKO 过账之后系统生成一笔会计凭证借贷方向科目金额借燃料消耗费用成本中心/物料消耗科目5000贷管道应付暂估OBYC 的 PIP 科目5000如果你的项目配置成直接结转供应商应付贷方也可以是供应商统驭科目PIP 作为中间过渡科目。之后供应商开票 5000 元MIRO 做发票校验借管道应付暂估 5000贷应付账款-供应商 5000。这样 PIP 科目余额归零整个闭环就完成了。这个例子里的结算单价取的是采购订单/信息记录价格。如果有运费、保险费、热值调整项目里通常会再加差异科目但核心逻辑不变MRKO 把“管道里的数量”变成“账上的负债和费用”而负债科目的落点就是 PIP。2.3 为什么 MIGO 和 MIRO 都不碰 PIP很多顾问第一次接触时都会问为什么 PIP 只在 MRKO 用别的环节就不能用吗原因可以归纳成一句话PIP 是“管道负债科目”的专用 key只有“管道消耗结算”这个动作需要确认负债所以只有它读。MIGO 101 对管道物料做收货时标准逻辑里不产生会计凭证就算你的项目配置了中转科目用的也是 GBB 系列不会读 PIP。MIRO 发票校验时系统参照采购订单或收货开票科目确定走的是发票校验相关路径也不会回来找 PIP。所以如果你的管道业务一直没跑 MRKOPIP 科目余额为零非常正常。但如果你把管道业务做成了普通采购PIP 科目就永远用不上同时你的管道库存金额会和实际流量计数据永远对不上。我见过一个客户天然气单价挂在 BSX 存货科目里每月底财务手工调账做了一整年最后还是绕回来老老实实上 MRKO PIP。早知如此当初配置阶段就该把这条链路测通。3. OBYC 中 PIP 科目的配置方法与关键细节3.1 配置入口事务键列表里的 PIPOBYC 是 SAP 里最常碰的自动记账配置事务码之一路径是 IMG → 物料管理 → 评估和科目设置 → 科目确定 → 配置自动记账事务码 OBYC。界面分两层上层是事务键列表像 BSX、GBB、PRD、KON、KOB 这些都在里面下层是对应事务键下按科目表、评估类、修改标识维护的具体科目组合。要找 PIP就在事务键列表里找到 PIP点进去维护。事务键列表里如果没有可以先在 SE16N 查表 T030输入条件 TCODEPIP看标准数据里有没有预置行。维护内容主要是科目表、公司代码部分版本按工厂看、评估类、总账科目号。保存后MRKO 结算时系统就会根据物料主数据里的评估类自动匹配这个科目。这里插一句SAP 里这个 PIP 和程序员电脑上那个 pip install 的 pip 半毛钱关系没有只是缩写撞车。查资料的时候别混了一个是 SAP 的自动记账事务键一个是 Python 的包管理工具。3.2 三笔账应该一起配好管道业务不是单独配一个 PIP 科目就完事了。至少三笔账要同时处于可用状态事务键典型用途建议科目类型BSX库存价值变更普通收发存都会碰存货科目GBB含相关修改标识发货、消耗、转储等反记账科目成本费用、发出商品等PIP管道结算产生的负债/应付暂估应付暂估类资产负债表科目可选配置还包括 EIN采购发票科目、KDM外币差异等。如果项目启用了物料分类账ML还要考虑差异类科目配置。但基础链路必须保证 BSX、GBB、PIP 三者都通。我强烈建议把 PIP 单独设一个“应付暂估-管道”科目不要和真正的应付账款科目混在一起。原因很简单月底对账时你一眼就能看 PIP 科目余额里有多少钱是“已经消耗但还没收到发票”的。如果混在总应付账款里这个信息就丢了对账全靠猜。3.3 配置时最容易踩的三个坑第一个坑只配 BSX不配 PIP。普通收发存全部正常MIGO 101、MB1A、MB1C 都能过但 MRKO 一执行就报“无法确定科目”。因为 MRKO 找的是 PIP不是 BSX两者各管一段。第二个坑PIP 科目类型配错。PIP 作为负债暂估一般是贷方科目如果你配成一个损益类科目月底利润表会多出一笔莫名其妙的收入或费用。我在项目里见过把 PIP 配到“其他业务收入”的月底一看利润表多了几十万查了半天才发现是 OBYC 维护时选错科目号。第三个坑工厂、公司代码、评估类组合漏配。项目复制工厂或者新增物料评估类时只同步了 BSX忘了 PIP。新工厂一到月底结算就报错。建议上线前做一次全量检查用 SE16N 把 T030 里 TCODEPIP 的所有行导出来和评估类清单逐一核对确保每个公司代码、每个评估类都有对应的 PIP 科目。4. 从零到一管道结算完整实操记录4.1 主数据准备物料、供应商、采购订单管道物料的主数据准备比普通物料多留几个心眼。物料MM01 创建物料类型一般用 ROH也可以根据项目自定义一个标识管道用途的类型。关键字段是“评估类”要选和你项目配置一致的比如 3000。采购视图要维护采购订单单位管道常用立方米、吨、兆焦耳等还要维护“订单价格单位”否则结算价格会错。供应商事务码 BP 维护采购组织视图、会计视图都要建。会计视图里维护统驭科目、付款条款、默认税码。供应商主数据里的税码会影响 MRKO 生成凭证时的税额选错会很麻烦。采购订单ME21N 创建。类型可以用标准 NB也可以用寄售类型变体看你们项目把管道业务放在哪条采购流程下。我在一个燃气项目里用过“标准 PO 物料组表示 PIPE”的做法后台识别物料组前端操作简单后台逻辑也清楚。PO 行项目维护计划价格比如 5 元/立方米如果没有价格MRKO 结算时可能取不到金额生成零金额凭证这种凭证最难查。实操提醒PO 行项目里的“基于收货的发票校验”标记建议取消。因为管道业务不是按 PO 收货开票而是按 MRKO 结算结果开票。如果勾了这个标记MIRO 会一直催你先做常规收货流程反而绕。4.2 管道收货实物到了账面不动管道收货在系统里的操作其实不复杂MIGO 101 参照采购订单做收货数量填你当时流量计读数的估算值。系统处理后MB03 能看到物料凭证MB51 也可以统计数量。但是 FBL3N 查不到会计凭证因为标准管道收货不过账。在这个环节要特别提醒不要因为 FI 没凭证就认为操作失败了。去 MMBE 看库存数量已经增加但金额可能为空这就是管道库存的正常状态——有量无值。如果上线顾问不懂这一点可能会用 MB1C 561 再补一笔初始化库存那就麻烦了561 会把数量和金额一起记账形成 BSX 存货凭证导致后面 MRKO 结算时库存被重复计量。正确做法是从一开始就把管道物料设计成“非评估收货”或者用专门的系统入库流程目的只有一个管道库存永远不做价值入账金额只等 MRKO 确认。4.3 MRKO 界面操作要点进入 MRKO 后第一步是设置选择范围公司代码、工厂、供应商、物料。如果只想看管道业务就在结算类型里选“管道”如果你同时有寄售业务千万别在“寄售”上打勾否则列表会混入寄售库存的待结算数据。执行后系统会列出未结算的管道收货记录包括供应商、物料、数量、金额、期间。勾选需要结算的行点“结算”按钮。弹窗里选择过账日期一般按月结最后一天比如 2025-03-31结算日期通常和过账日期保持一致。保存后系统会提示物料凭证号和会计凭证号。如果列表为空先查三件事有没有管道收货记录物料是不是属于管道采购的特殊库存类型OBYC 里 PIP 科目到底配没配好。这三件事按顺序排查基本不会落空。我的习惯是第一次跑 MRKO 前先建一个测试供应商、测试物料跑一笔小额管道业务把 MRKO 结果发给财务确认科目方向再正式跑。别在月结当天拿生产环境试错那种压力下出错很难看。4.4 结算凭证怎么检查MRKO 跑完之后至少要看三类凭证物料凭证MB03确认消耗数量是否正确管道库存是否相应减少。会计凭证FB03确认借方费用科目、贷方 PIP 科目、税码是否正常。供应商行项目FBL1N 或 FBL3N如果 MRKO 直接生成应付未清项会出现在供应商账上。另外可以用 FAGLB03 查 PIP 科目余额看看当月增加了多少应付暂估。对账方面我习惯用一个 Excel 模板期初表显读数、期末表显读数、消耗量、结算单价、结算金额、供应商账单金额、差异、备注。每月初把 MRKO 结算结果和供应商对账单放在一起差异列出来问题一目了然。这种对账模板看着简单实际比很多 SAP 标准报表都好使因为它直接把计量和财务两套逻辑对应起来了。5. 实战踩坑MRKO 用 PIP 科目时最常遇到的问题5.1 科目无法确定这个报错最经典。MRKO 结算时弹 no account determination先别慌按顺序排查SE16N 查表 T030筛选 TCODEPIP、KTOPL科目表、VALUATIONCLASS物料的评估类如果没有对应行去 OBYC 界面补配如果有行但一直报错检查科目号是否有效、有没有被冻结再检查公司代码和工厂是否在 OBYC 的配置覆盖范围内。实际案例一个客户新上了工厂物料主数据从老工厂复制过来但后台 OBYC 配置只复制了一部分公司代码PIP 没复制过去。月底 MRKO 一跑就报错查了半天。最后手工补上科目设置重新结算才解决。这里值得记住OBYC 配置是“公司代码 科目表 评估类”的组合复制工厂不等于复制科目设置。5.2 结算数量与账单数量不一致管道计量的不确定性是常态温度、压力、热值换算、仪表误差、管损都会导致系统结算数和供应商账单数不一样。比如你抄表算出来消耗 10000 立方米供应商账单按 10200 立方米开多的 200 立方米可能就是管损。处理方式取决于合同约定如果合同约定损耗由买方承担直接把差异计入管道消耗费用供应商账单金额作为最终应付。MRKO 结算数量仍按抄表数差额在费用调整科目里找平。如果合同约定多退少补可以 MRKO 冲销后把数量改成供应商账单数重新结算。但不管哪种方式不能只改 MRKO 的过账金额不改数量否则物料账的数量和金额会对不上。我的建议是计量依据和误差容差一定要在合同里写清楚业务蓝图阶段就把采购、财务拉到一起确认。系统只是工具计量规则不明确SAP 再高端也救不了。5.3 跨月结算和冲销实务中经常出现月底来不及抄表先按预估数结算下月冲销再重新结算。MRKO 的冲销有两个路径在 MRKO 结算清单里选择冲销对应的结算记录系统生成冲销物料凭证和会计凭证也可以直接用 FB08 冲销会计凭证再重新跑 MRKO。核心问题是期间MRKO 结算过账日期不能落在已关闭的 MM 期间。如果 12 月物料账已关但 12 月管道结算还没做只能做在次年 1 月成本会进到次年财务通常不接受。这种情况一般要把 12 月的期间重新打开跑完 MRKO 再关。所以管道业务的月结清单一定要给 MRKO 留窗口不要等所有账都关完了才想起来。去年我就碰到一个项目12 月 31 日晚上财务把期间关了第二天采购说管道结算还没跑最后开会开了两小时想办法把期间打开。这种教训一次就够了。5.4 税码和付款条款不一致MRKO 生成凭证时税码可能来自供应商主数据也可能来自采购订单。如果这两处税码不一致结算凭证可能不带税或税率不正确。管道结算通常是增值税应税业务税码错了影响很大。我在项目里的做法是BP 供应商财务视图和采购信息记录里都固定默认税码MRKO 跑完翻一遍凭证税码列如果发现错误冲销后修正主数据再结算绝不在凭证上手工硬改。付款条款影响的主要是到期日不会改变分录科目但清账时如果付款条件变化导致“未分配金额”也很别扭。所以建议供应商主数据的付款条款和采购订单保持一致避免月末清账对不上。5.5 管道盘点差异怎么处理管道物料没法做传统意义的仓库盘点但仪表故障、泄漏、维护放空都会造成账面数和表显数不一致。处理时MRKO 之前先把账面数量校准到仪表读数用库存盘盈盘亏移动类型常见 701/702或项目自定义移动类型把差异带出来。差异金额走 GBB 对应的差异科目不走 PIP。这里有个隐藏问题如果管道库存被错误地做成了价值库存盘点差异会产生金额凭证数量金额一起动后面 MRKO 再结算库存价值和应付就会对不上。所以遇到盘点差异先确认管道库存是不是“无值数量库存”。如果发现挂金额了优先把错误的库存价值清掉再谈盘点差异。6. 关于管道结算和 PIP最后分享几条实操经验6.1 几条不能忘的实操经验第一别把管道物料做成普通库存。这是最要命的错误。普通库存会让 101 收货直接走 BSX 挂存货金额后续 MRKO 结算时数量、金额全乱财务每月都要手工调。管道业务的核心设计就是“有量无值、结算才出值”一旦破坏这个原则整个流程都会失控。第二PIP 科目建议单独设置。用一个“应付暂估-管道”科目不和真正的应付账款混用。月底对账时一眼能看出还有多少金额等着开票工作效率会高很多。第三月结时间节点要固定。抄表截止日、MRKO 运行日、冲销窗口、开票截止日都要写进月结清单。管道结算最怕的就是“想起来才做”数量还没有、期间已经关两边打架。第四对账模板一定要有。用 Excel 把抄表数、MRKO 结算数量、结算单价、结算金额、供应商开票金额、剩余暂估余额列成一张表每月更新。这张表比任何标准报表都直观。第五跑 MRKO 之前用 MD04 或 MD07 先把数量过一遍。如果你习惯用计划员工作台抄表后先看 MD04 里有没有未结算的管道收货记录再到 MD07 看物料组的整体情况数量对上了再执行 MRKO。这个习惯能帮你提前发现漏收、重复收的问题等结算完再发现就晚了。6.2 一个小提醒别把对账拖到最后一天管道业务本质上是“实物连续流动 数量周期性认定”的业务天然适合月末集中处理。但这也意味着最后一天的压力非常大。我见过太多项目抄表数还没确认供应商对账单已经到了财务催着开票采购催着结算最后只能先按预估数跑 MRKO下月再冲销。如果你能把对账工作提前到每月 25 号左右先做一次预核对把流量计读数和供应商反馈的用量先对一遍差异大的提前排查原因月底那几天会从容很多。这个经验不复杂但真的能救命。