华为MetaERP OM 一致性对账 SQL 脚本集合(OM-WSH、WSH-INV、OM-AR、异常订单筛查)

📅 2026/7/4 3:08:48
华为MetaERP OM 一致性对账 SQL 脚本集合(OM-WSH、WSH-INV、OM-AR、异常订单筛查)
一、Oracle EBS OM 月末关账核对签字清单财务架构交付版可直接打印签字适用多 OU MOAC关账前必做财务负责人 供应链负责人双签字归档销售订单 OM 关账核对检查表会计期间年____月 业务实体 OU核对日期____ 核对人____ 复核人____ 审批____模块一订单源头数据完整性检查序号核对事项核对标准是否通过√/×异常说明 处理记录1接口订单异常清理OE_HEADERS_IFACE_ALL / OE_LINES_IFACE_ALL 本期接口错误全部处理完毕OE_INTERFACE_ERRORS_ALL 无未清除报错2未 Book 录入订单清理ENTER 状态长期挂账订单确认是否作废 / 正常待下单无滞留废弃订单3订单 Hold 冻结清理信用 Hold、审批 Hold、价格 Hold 全部解除冻结无理由滞留订单4RMA 退货订单校验所有 RMA 均关联原销售订单行累计退货数量≤原单发货量无超额退货5主数据有效性校验本期订单物料、客户、价目表、税码、会计规则无失效 / 空值模块二OM ↔ WSH 发运数量对账核心数量勾稽序号核对事项核对标准是否通过√/×异常说明 处理记录1订单行发货数量平衡OE_ORDER_LINES_ALL.SHIPPED_QUANTITY 合计 WSH_DELIVERY_DETAILS.SHIPPED_QUANTITY 合计分 OU、分期间无差异2未确认交货 Delivery 清理无本期已拣货但未 Ship Confirm 交货单跨月发货全部调整至正确期间3行程同步检查运行 “连接行程停靠站” 并发订单行状态与交货单状态同步无 Shipped 状态但无 Delivery 明细数据4直运 Drop Ship 订单校验直运订单无库存事务Delivery 数量与订单行发货量匹配模块三WSH ↔ INV 库存出库成本对账COGS 源头序号核对事项核对标准是否通过√/×异常说明 处理记录1销售出库数量平衡WSH 发货总量 MTL_MATERIAL_TRANSACTIONS 销售出库事务总量事务来源 销售订单2无成本物料排查本期出库物料全部存在标准成本 / 移动平均成本无零成本出库3库存事务跨期检查关账前冻结库存无下期日期出库事务混入本期4批次 / 序列号一致性高价值物料发货批次、序列号与库存事务完全匹配模块四OM ↔ AR 应收收入对账财务核心金额勾稽序号核对事项核对标准是否通过√/×异常说明 处理记录1已发货未开票清单核对已 Ship 但未推送 AR 接口 / 接口报错订单全部处理完毕2收入总额平衡本期 OM 已开票订单行含税 / 不含税收入合计 AR 本期销售收入 贷项冲减总额3重复开票校验同一交货明细无多张发票重复生成INVOICED_QUANTITY≤SHIPPED_QUANTITY4贷项通知单匹配RMA 生成贷项金额与退货订单扩展金额完全一致无差额模块五内控与审计专项检查序号核对事项核对标准是否通过√/×异常说明 处理记录1订单变更审批留痕大额、折价、取消订单全部存在工作流审批记录2超信用订单清理超信用额度已发货订单完成回款 / 信用豁免审批3内部 ISO 关联交易核对内部销售收入与对方 OU 应付匹配转移定价无异常差额4手工后台改表排查本期无 DBA 直接更新 OE/WSH/AR 业务表操作所有变更走前台 API模块六关账收尾确认所有异常差异已查明根因并完成调整无遗留跨期 / 单边差异□是 □否OTC 全流程数据勾稽平衡可正常结转收入、成本至总账□是 □否本期所有异常单据处理记录、修复脚本、审批附件归档留存□是 □否核对签字供应链核对人__________ 日期__________ 财务应收 / 成本复核__________ 日期__________ 财务负责人审批__________ 日期__________二、可直接部署 Oracle EBS OM 对账 SQL 脚本集合环境说明适配 R12.1 / R12.2MOAC 多 OU增加 ORG_ID 筛选脚本均使用标准 EBS 表无自定义表替换脚本中:P_ORG_ID、:P_PERIOD_NAME为并发请求参数可直接包装成标准报表并发程序仅查询无 DML 操作生产环境安全执行区分 4 大类OM-WSH 数量对账、WSH-INV 成本对账、OM-AR 收入对账、异常订单筛查脚本。脚本 1OM 订单行 VS WSH 交货明细 数量对账分 OU、分期间sql/* OM-WSH发货数量平衡核对脚本 找出数量差异单据 */ SELECT ooh.org_id, ooh.order_number 销售订单号, ool.line_number 订单行号, ool.inventory_item_id, msit.segment1 物料编码, ool.ordered_quantity 订购数量, ool.shipped_quantity OM系统已发货数量, NVL(wsh_sum.delivery_shipped_qty,0) WSH交货实际发货数量, (ool.shipped_quantity - NVL(wsh_sum.delivery_shipped_qty,0)) 数量差异, ooh.flow_status_code 订单头状态, ool.flow_status_code 订单行状态 FROM oe_order_headers_all ooh INNER JOIN oe_order_lines_all ool ON ooh.header_id ool.header_id INNER JOIN mtl_system_items_b msit ON ool.inventory_item_id msit.inventory_item_id AND ool.org_id msit.organization_id LEFT JOIN ( SELECT ddl.source_line_id, SUM(ddl.shipped_quantity) delivery_shipped_qty FROM wsh_delivery_details ddl WHERE ddl.source_type_code OE GROUP BY ddl.source_line_id ) wsh_sum ON ool.line_id wsh_sum.source_line_id WHERE 11 AND ooh.org_id :P_ORG_ID AND ool.shipped_quantity NVL(wsh_sum.delivery_shipped_qty,0) AND ooh.creation_date BETWEEN gl_periods.start_date AND gl_periods.end_date AND gl_periods.period_name :P_PERIOD_NAME ORDER BY ooh.org_id, ooh.order_number, ool.line_number;脚本 2WSH 交货明细 VS INV 库存销售出库事务对账成本核对sql/* WSH发货与库存出库事务数量、成本核对查找缺库存事务/成本异常 */ SELECT wdd.org_id, ooh.order_number 销售订单号, ool.line_number 订单行号, msit.segment1 物料编码, SUM(wdd.shipped_quantity) WSH发货总数, NVL(mtl_sum.trx_qty,0) 库存出库总数, SUM(wdd.shipped_quantity) - NVL(mtl_sum.trx_qty,0) 数量差异, NVL(mtl_sum.total_cost,0) 出库总成本 FROM wsh_delivery_details wdd INNER JOIN oe_order_lines_all ool ON wdd.source_line_id ool.line_id INNER JOIN oe_order_headers_all ooh ON ool.header_id ooh.header_id INNER JOIN mtl_system_items_b msit ON ool.inventory_item_id msit.inventory_item_id AND ool.org_id msit.organization_id LEFT JOIN ( SELECT mmt.trx_source_line_id, SUM(ABS(mmt.transaction_quantity)) trx_qty, SUM(mmt.transaction_cost * ABS(mmt.transaction_quantity)) total_cost FROM mtl_material_transactions mmt WHERE mmt.trx_source_type Sales order GROUP BY mmt.trx_source_line_id ) mtl_sum ON wdd.source_line_id mtl_sum.trx_source_line_id WHERE wdd.source_type_code OE AND wdd.org_id :P_ORG_ID AND ooh.creation_date BETWEEN gl_periods.start_date AND gl_periods.end_date AND gl_periods.period_name :P_PERIOD_NAME GROUP BY wdd.org_id,ooh.order_number,ool.line_number,msit.segment1,mtl_sum.trx_qty,mtl_sum.total_cost HAVING SUM(wdd.shipped_quantity) NVL(mtl_sum.trx_qty,0) ORDER BY ooh.order_number;脚本 3OM 已开票订单 VS AR 应收发票收入对账财务金额平衡sql/* OM-AR对账本期已开票订单收入与AR发票总额差异核对 */ -- 子查询1OM本期已开票订单不含税收入 WITH om_invoice_data AS ( SELECT ool.org_id, ooh.order_number, SUM(ool.extended_selling_price) om_total_revenue, SUM(ool.extended_tax_amount) om_total_tax FROM oe_order_headers_all ooh INNER JOIN oe_order_lines_all ool ON ooh.header_id ool.header_id WHERE ool.invoiced_quantity 0 AND ooh.org_id :P_ORG_ID AND TRUNC(ooh.creation_date) BETWEEN gl_periods.start_date AND gl_periods.end_date AND gl_periods.period_name :P_PERIOD_NAME GROUP BY ool.org_id, ooh.order_number ), -- 子查询2AR本期销售发票贷项单收入 ar_trx_data AS ( SELECT rla.org_id, rla.source_order_number, SUM(rla.line_amount) ar_line_revenue, SUM(rla.tax_amount) ar_tax_amount FROM ra_customer_trx_all rct INNER JOIN ra_customer_trx_lines_all rla ON rct.customer_trx_id rla.customer_trx_id WHERE rla.source_type ORDER AND rct.trx_date BETWEEN gl_periods.start_date AND gl_periods.end_date AND rla.org_id :P_ORG_ID AND gl_periods.period_name :P_PERIOD_NAME GROUP BY rla.org_id, rla.source_order_number ) SELECT COALESCE(om.org_id,ar.org_id) org_id, COALESCE(om.order_number,ar.source_order_number) 销售订单号, NVL(om.om_total_revenue,0) OM不含税收入, NVL(ar.ar_line_revenue,0) AR不含税收入, NVL(om.om_total_revenue,0) - NVL(ar.ar_line_revenue,0) 收入差额, NVL(om.om_total_tax,0) OM税金, NVL(ar.ar_tax_amount,0) AR税金差额 FROM om_invoice_data om FULL OUTER JOIN ar_trx_data ar ON om.org_id ar.org_id AND om.order_number ar.source_order_number WHERE NVL(om.om_total_revenue,0) NVL(ar.ar_line_revenue,0) OR NVL(om.om_total_tax,0) NVL(ar.ar_tax_amount,0) ORDER BY COALESCE(om.order_number,ar.source_order_number);脚本 4异常订单综合筛查脚本关账前批量排查脏数据sql/* 统一筛查四类异常未处理接口、长期Hold、已发货未开票、超额RMA、零成本出库 */ -- 1. 接口导入错误订单 SELECT 接口错误订单 异常类型, ohea.order_number, ohea.error_message FROM oe_headers_interface_all ohea WHERE ohea.process_status ERROR AND ohea.org_id :P_ORG_ID UNION ALL -- 2. 长期存在Hold冻结订单 SELECT 订单Hold冻结 异常类型, ooh.order_number, oh.hold_name FROM oe_order_headers_all ooh INNER JOIN oe_order_holds_all oohl ON ooh.header_id oohl.header_id INNER JOIN oe_holds_all oh ON oohl.hold_id oh.hold_id WHERE ooh.org_id :P_ORG_ID AND oohl.release_date IS NULL UNION ALL -- 3. 已发货未开票订单 SELECT 已发货未开票 异常类型, ooh.order_number, ool.line_number, ool.shipped_quantity, ool.invoiced_quantity FROM oe_order_headers_all ooh INNER JOIN oe_order_lines_all ool ON ooh.header_id ool.header_id WHERE ool.shipped_quantity 0 AND ool.invoiced_quantity 0 AND ooh.org_id :P_ORG_ID UNION ALL -- 4. RMA退货量大于原发货量超额退货 SELECT RMA超额退货 异常类型, rma.order_number, rma.line_number, rma.shipped_quantity rma退货量, src.shipped_quantity 原单发货量 FROM oe_order_headers_all rma INNER JOIN oe_order_lines_all rmal ON rma.header_id rmal.header_id LEFT JOIN oe_order_lines_all src ON rmal.reference_line_id src.line_id WHERE rma.order_type_id IN (SELECT transaction_type_id FROM oe_transaction_types_all WHERE type_name LIKE %RMA%) AND rmal.shipped_quantity 0 AND ABS(rmal.shipped_quantity) NVL(src.shipped_quantity,0) AND rma.org_id :P_ORG_ID UNION ALL -- 5. 库存零成本出库订单 SELECT 零成本出库 异常类型, ooh.order_number, msit.segment1 物料编码, mmt.transaction_cost FROM mtl_material_transactions mmt INNER JOIN wsh_delivery_details wdd ON mmt.trx_source_line_id wdd.source_line_id INNER JOIN oe_order_lines_all ool ON wdd.source_line_id ool.line_id INNER JOIN oe_order_headers_all ooh ON ool.header_id ooh.header_id INNER JOIN mtl_system_items_b msit ON ool.inventory_item_id msit.inventory_item_id WHERE mmt.trx_source_type Sales order AND NVL(mmt.transaction_cost,0) 0 AND mmt.organization_id :P_ORG_ID;脚本使用配套说明参数适配:P_ORG_ID业务实体 OU ID多 OU 并发报表绑定参数:P_PERIOD_NAME会计期间名称如2026-07过滤当期单据。部署方案在 EBS 标准并发程序中新建 “SQL 报表”粘贴脚本绑定参数权限分配给成本会计、应收会计、供应链主管设置定时请求每日自动运行异常筛查脚本月末手工执行三大对账脚本。差异处理优先级① 接口报错单据 → ② WSH 与 OM 数量差异 → ③ 库存零成本出库 → ④ OM 与 AR 收入差额 → ⑤ RMA 超额退货 / 冻结订单。修复前置约束所有差异禁止直接 update 业务表数量不同步优先运行并发请求「连接行程停靠站」、重启 OM 工作流接口异常修正源数据后重新提交导入。