
简介这份文档面向SAP财务与资产模块的初、中级用户聚焦在建工程内部订单的全流程操作帮助解决从订单创建到资产结转各环节的实操困惑。资源为单个doc文件压缩包约887KB内容以事务代码与系统路径为主线配合分步截图说明便于对照系统界面逐步执行。手册完整覆盖创建内部订单并批准作业、内部订单过账、结算到在建工程、在建工程结转到固定资产四大环节涉及KO01、KO02、F-02、KO88、AS03、AW01N等关键事务代码并说明批准时自动生成在建工程资产卡片、结算规则自动创建、固定资产折旧起始等要点。目前已有445人学习既可作为日常操作查询指南也可用于新员工培训帮助读者快速掌握内部订单与在建工程衔接的处理逻辑提升数据准确性与工作效率。1. SAP在建工程内部订单从一笔预付款到资产转固的完整链路财务部催着要在建工程台账项目经理问这笔设备预付款到底挂在哪个科目审计又要求每笔在建工程都能追溯到原始凭证——如果你在SAP里管过基建、技改或研发类项目这些场景一定不陌生。SAP系统在建工程内部订单操作手册要解决的就是如何用内部订单这个载体把在建工程从预算、归集、结算到转固的全过程管清楚。它适合三类人刚接手SAP FI/CO模块的财务顾问、需要跑在建工程报表的成本会计、以及负责项目预算控制的PM。核心逻辑一句话内部订单是费用归集的容器在建工程是资产负债表上的过渡科目两者通过结算规则绑定最终由AIAB/AIBU完成转固。下面按实际操作顺序拆开讲。2. 内部订单的创建与在建工程科目绑定先搞清楚订单类型和结算参数2.1 订单类型决定业务边界别拿统计型订单当真实归集用SAP内部订单分真实订单和统计型订单两类在建工程必须用真实订单。真实订单能实际归集成本并执行结算统计型订单只做信息展示不产生FI凭证。创建事务码KO01订单类型通常选0100一般成本控制订单或自定义的Z开头类型。订单类型在后台OPJH配置关键控制参数包括参数在建工程场景建议值说明订单类别真实订单统计型无法结算预算管理激活控制项目超支计划版本0标准计划版本结算参数文件按资产类定制决定能结算到哪些接收方承诺管理激活跟踪采购申请和采购订单创建时还要填公司代码、业务范围、利润中心、工厂等组织字段。这些字段一旦有业务发生就不能随意改所以建单前要和财务确认清楚。我一般会先跑一遍OKKP检查成本控制范围是否激活了订单管理没激活的话KO01根本进不去。2.2 结算规则是命门分配结构写错后面全乱订单创建后第一件事不是录费用而是维护结算规则。事务码KO02进入订单菜单里找“结算规则”。结算规则的核心是分配结构接收方类别选FXA固定资产或G/L总账科目接收方填在建工程科目对应的资产号或科目号结算比例填100%。如果项目分多个标段可以按百分比分给多个接收方。# 查看结算规则配置的事务码路径 SPRO 控制 内部订单 结算 维护结算参数文件 # 常用检查事务码 KOAO # 显示结算规则 KO02 # 修改订单含结算规则结算参数文件决定了订单允许结算到哪些接收方类型。如果发现KO02里结算规则按钮灰掉八成是订单类型没分配结算参数文件回OPJH补上。这里有个血泪经验结算规则里的接收方如果在建工程科目没配好结算时会报“科目不能直接过账”的错误得先去FS00确认该科目是否允许自动过账。2.3 预算下达后才能放行采购否则承诺会超支在建工程内部订单通常要管预算。事务码KO22录入原始预算KO23是补充预算KO24是返还。预算录入后要“下达”才生效下达操作在KO22界面里点“下达”按钮。下达后系统才允许对该订单做采购申请和采购订单的承诺更新。查看预算和实际/承诺对比用KOB1或KO22里的“预算/实际”页签。提示预算下达前如果已经产生了采购申请承诺不会自动回填需要跑事务码KOB2做承诺重建。3. 费用归集与月末处理采购、发票、人工怎么挂到订单上3.1 采购申请和采购订单必须带订单号否则费用进不来在建工程最常见的费用入口是采购。创建采购申请ME51N时在“账户分配”页签填内部订单号科目分配类别选F订单。采购订单ME21N同理。收货MIGO时系统自动生成FI凭证借在建工程科目贷GR/IR。发票校验MIRO时借GR/IR贷应付账款。整个链路里订单号是串联凭证的关键漏填的话费用就跑到成本中心去了后面想调回来非常麻烦。-- 查订单实际归集的成本明细SAP表查询 SELECT * FROM COEP WHERE OBJNR OR000001234567 -- 订单对象号 AND WRTTP IN (01,04) -- 01实际 04承诺 AND KSTAR LIKE 16%; -- 在建工程相关成本要素COEP是CO凭证行项目表OBJNR是订单对象号格式为OR订单号补零。WRTTP字段区分实际和承诺。这条SQL适合做对账用日常操作还是走KOB1或KSB1更直观。3.2 人工和间接费用分摊用KSU5还是KB21N要想清楚除了采购在建工程还可能归集内部人工和分摊费用。内部人工用KB21N做作业类型实际过账前提是订单类型允许作业类型。间接费用分摊用KSU5执行循环分摊或者用KB11N做手工重过账。我一般建议能直接归集的直接归集分摊只用于公共费用因为分摊链路越长审计追溯越难。月末还要跑KSII算差异KSS1算作业价格。在建工程订单如果没启用作业类型这两步可以跳过。但如果有内部人工必须跑完才能结算。3.3 月末结算前的检查清单结算前必须确认三件事订单状态不是CLSD或TECO除非就是要关闭、所有采购收货和发票已入账、结算规则里的接收方科目有效。检查事务码KOAO看结算规则KOB1看余额。如果订单有承诺但没实际结算不会带承诺走承诺会留在订单上直到采购订单被删除或收货完成。# 月末结算前检查步骤 KOB1 # 查看订单实际成本行项目 KOAO # 检查结算规则 KO88 # 执行单个订单结算测试运行先勾选 KO8G # 批量结算KO88执行时先勾“测试运行”看模拟凭证对不对没问题再去掉勾正式跑。正式跑完系统生成结算凭证借在建工程科目贷订单成本要素。如果报错“结算规则不完整”回KOAO补接收方。4. 在建工程转固AIAB/AIBU的实操与常见报错4.1 转固前必须确认资产主数据已建好在建工程转固的接收方是固定资产。转固前要用AS01创建资产主数据资产分类选在建工程对应的类别通常是3000或自定义。资产主数据里的“科目分配”要填对特别是累计折旧科目和折旧费用科目。如果资产没建好就跑AIBU系统会报“资产不存在”。转固事务码有两个AIAB是单个资产转固AIBU是批量转固。AIAB界面填公司代码、资产号、在建工程科目、金额和过账日期。系统自动生成凭证借固定资产贷在建工程。这里的关键是金额不能超过在建工程科目余额否则报“余额不足”。# 转固操作步骤 AS01 # 创建资产主数据 AIAB # 单个资产转固 AIBU # 批量转固需先维护变式 AO90 # 检查在建工程科目对应的资产分类AO90是配置事务码用来定义资产分类和在建工程科目的对应关系。如果AIAB报“科目分配不一致”先查AO90。4.2 部分转固和多次转固的处理一个在建工程订单可能对应多个资产或者分次转固。部分转固时AIAB里填本次转固金额系统按比例结转。多次转固要注意累计转固金额不能超过订单总余额。如果订单已经TECO转固会报“订单已关闭”需要先KO02把状态改回REL或再打开。注意转固凭证的过账日期必须在在建工程科目和固定资产科目的开放期间内跨期转固要先开期间。4.3 转固后订单的关闭与归档全部转固完成后用KO02把订单状态设为TECO技术完成再设为CLSD关闭。关闭后订单不能再记费用。归档用SARA对象类型选CO_ORDER。归档前确认没有未清承诺和未清发票否则归档会失败。5. 避坑与排查在建工程内部订单最常见的5个翻车现场5.1 结算时提示“没有找到结算接收方”现象KO88执行报错消息号KI235或类似。 原因结算规则没维护或者接收方科目被冻结。 解决KOAO检查结算规则确认接收方资产或科目存在且未锁定。如果接收方是资产确认资产主数据已创建且未标记删除。5.2 采购收货后订单余额没变化现象MIGO收货成功但KOB1里看不到成本。 原因采购申请或采购订单的账户分配类别没选F或者订单号填错。 解决ME23N查看采购订单账户分配确认订单号正确。如果已收货用MRKO或KB11N做重过账调整。5.3 转固时金额超过在建工程余额现象AIAB报“金额大于在建工程余额”。 原因部分发票未入账或者结算没跑完。 解决先跑KO88结算再查KOB1确认余额。如果发票未到做暂估入账再转固。5.4 预算下达后承诺仍然超支现象KO22显示预算已下达但采购订单保存时仍报预算超支。 原因预算控制范围没激活或者承诺更新没跑。 解决OKKP检查成本控制范围的预算控制激活状态KOB2重建承诺。5.5 订单关闭后还有费用进来现象订单已CLSD但FI仍能过账到该订单。 原因订单状态控制没配好或者用户用了统计型订单。 解决OPJH检查订单类型的“关闭”状态是否禁止过账。如果是统计型订单只能冲销重做。6. 批量处理与报表技巧让在建工程台账自动跑起来单个订单操作熟练后真正的效率提升在批量和报表。批量结算用KO8G先建变式选择订单类型、公司代码、期间勾选“测试运行”跑一遍看结果没问题再正式跑。批量转固用AIBU变式里填资产范围、在建工程科目和过账日期。这两个事务码的变式可以保存下个月直接调用。报表方面标准报表S_ALR_87013127能看在建工程明细但字段不够灵活。我一般用SQ01建查询或者直接写ABAP取数。下面这个查询逻辑适合做台账-- 在建工程订单台账查询逻辑 SELECT o.AUFNR AS 订单号, o.KTEXT AS 订单描述, SUM(CASE WHEN c.WRTTP 01 THEN c.WTGXXX ELSE 0 END) AS 实际成本, SUM(CASE WHEN c.WRTTP 04 THEN c.WTGXXX ELSE 0 END) AS 承诺, o.STAT AS 状态 FROM AUFK o JOIN COEP c ON o.OBJNR c.OBJNR WHERE o.OBART 0100 AND c.KSTAR LIKE 16% GROUP BY o.AUFNR, o.KTEXT, o.STAT;AUFK是订单主数据表OBJNR是对象号OBART是订单类型。这条SQL按订单汇总实际和承诺适合做月度台账。如果嫌SQL麻烦用KOB1导出Excel再透视也行但数据量大时性能差。最后一个技巧给在建工程订单建一个状态监控报表用事务码KOB1的变式保存每周跑一次重点看状态为REL但余额长期不变的订单——这些要么是项目停滞要么是费用漏记。我自己的习惯是每月关账前把KOB1导出来和采购部的项目进度表对一遍差异超过5%就查凭证。这个习惯帮我提前发现过好几次发票漏入账的问题。希望帮到你。本文还有配套的精品资源点击获取