华为MetaERP Oracle EBS R12 应收模块 (AR) vs Fusion Cloud Receivables一、整体架构核心差异总览表格维度 EBS R12 AR(本地 EBS)
Oracle EBS R12 应收模块 (AR) vs Fusion Cloud Receivables
一、整体架构核心差异总览
| 维度 | EBS R12 AR(本地 EBS) | Fusion Cloud Receivables(云 ERP) |
|---|---|---|
| 部署形态 | 本地数据库 + 应用层 Forms/Concurrent Manager 并发程序 | 云原生 SaaS,底层 Oracle 自治数据库,UI 为 SAAS 页面 + ESS 云调度作业 |
| 数据架构 | 经典 EBS 多组织架构:SOB/LEDGER、OU 业务实体、MOAC 多组织访问控制 | 云分类账、业务单元 BU、数据访问集,无 MOAC,权限基于云安全上下文 |
| 核心技术栈 | PL/SQL、Forms、Report Builder、并发请求、接口表、Workflow 工作流 | PL/SQL、ESS 作业、OTBI 报表、Fusion BIP、API/REST 接口、Fusion 工作流 |
| 收款逻辑 | 自动收款 AutoReceipt、收款核销、应收调整、催款、账龄分析一体化并发程序 | 云收款智能匹配、自动对账、AI 智能核销、收款账户云托管 |
| 表结构特点 | 大量物理业务表、接口临时表、视图固化,表结构稳定极少改动 | 底层基础表高度封装,大量业务只能通过标准 API 操作,禁止直接 DML 改表 |
第一部分:Oracle EBS R12 应收 AR 模块后台表全拆解
1.1 核心业务主表(日常开票、收款、核销、会计分录)
1)发票核心表(应收销售发票、贷项通知单、借项通知单)
- RA_CUSTOMER_TRX_ALL
- 核心发票头表,ALL 后缀按 OU 业务实体分区数据 关键字段:
CUSTOMER_TRX_ID:发票唯一主键 IDTRX_NUMBER:发票单据编号TRX_DATE:发票开票日期CUSTOMER_ID:客户主数据 ID,关联 HZ_CUSTOMERSSET_OF_BOOKS_ID:旧版账套 ID,R12 替换为LEDGER_IDBILL_TO_SITE_USE_ID:收款地址 IDSTATUS_TRX:发票状态(OPEN 未核销、CLOSED 完全核销、INVALID 作废)PRINTING_OPTION:发票打印状态
- RA_CUSTOMER_TRX_LINES_ALL发票行明细表,一张发票多行商品 / 费用行
CUSTOMER_TRX_LINE_ID:行主键LINE_AMOUNT:单行不含税金额TAX_AMOUNT:单行税额INVENTORY_ITEM_ID:关联库存物料(OM 销售发货开票联动)
- RA_CUST_TRX_LINE_GL_DIST_ALL发票行会计科目分配表,决定应收、收入、税科目入账科目
- GL_CODE_COMBINATION_ID:科目组合 ID,关联 GL_CODE_COMBINATIONS
- ACCOUNT_CLASS:账户类型:AR 应收、REV 收入、TAX 税、FREIGHT 运费
2)收款核心表(现金收款、银行收款、支票收款)
- AR_CASH_RECEIPTS_ALL收款头表
CASH_RECEIPT_ID:收款单号主键RECEIPT_NUMBER:收款单据号RECEIPT_DATE:收款日期STATUS:收款状态:UNAPPLIED 未核销、APPLIED 已核销、UNIDENTIFIED 不明收款、REVERSED 冲销PAYMENT_METHOD_ID:收款方式(现金、转账、票据)
- AR_APPLICATIONS_ALL收款核销明细表(最核心核销关联表) 收款与发票之间的勾对关系全存在这张表
APPLICATION_ID:核销主键CASH_RECEIPT_ID:收款 IDCUSTOMER_TRX_ID:被核销的发票 IDAMOUNT_APPLIED:本次核销金额APPLY_DATE:核销日期GL_DATE:核销入账会计日期
- AR_RECEIVABLES_APPLICATIONS_ALL调整、贷项核销过渡表
3)客户、收款地址、余额基础表
- HZ_CUSTOMERS:客户主表(TCA 全局客户架构)
- HZ_CUST_SITE_USES_ALL:客户收票 / 收款地址
- AR_PAYMENT_SCHEDULES_ALL:发票余额表(重中之重)每一张有效发票一条余额记录,实时记录未核销余额
- AMOUNT_DUE_REMAINING:剩余应收余额
- CLASS:INVOICE 发票、CREDIT 贷项、DEBIT 借项
- STATUS:OPEN/CLOSED EBS 账龄分析、逾期催收全部基于这张表取数
4)会计分录、总账对接表
- AR_GL_INTERFACE_ALL:应收生成的会计分录接口表,提交 “应收过账至总账” 并发程序写入 GL 接口
- GL_JE_HEADERS/LINES:总账正式日记账
- AR_DISTRIBUTIONS_ALL:应收所有业务(开票、收款、核销、调整)的明细会计行
5)常用辅助功能表
- AR_ADJUSTMENTS_ALL:应收金额调整表(折扣、坏账调整、价差调整)
- AR_COLLECTIONS_ALL:催收记录表
- AR_MISC_CASH_DISTRIBUTIONS_ALL:杂项收款(无对应发票的营业外收款)科目分配
- RA_INTERFACE_LINES_ALL / RA_INTERFACE_HEADERS_ALL:开票导入标准接口表(第三方系统批量开票导入)
1.2 EBS AR 经典标准并发程序(后台执行程序)
1、开票相关
- AutoInvoice 自动开票全称:AutoInvoice Import Program 业务场景:OM 订单发货自动开票、第三方系统批量导入开票 执行逻辑: 1)外部数据写入接口表
RA_INTERFACE_HEADERS_ALL、RA_INTERFACE_LINES_ALL2)并发程序读取接口表校验客户、科目、税率、日期 3)校验通过生成正式 RA_CUSTOMER_TRX_ALL 发票;报错写入 RA_INTERFACE_ERRORS_ALL 错误日志表 典型 PL/SQL 调用示例(后台提交并发)
plsql
DECLARE l_req_id NUMBER; BEGIN l_req_id := FND_REQUEST.SUBMIT_REQUEST( APPLICATION => 'AR', PROGRAM => 'RAXTRX', -- AutoInvoice标准程序简称 DESCRIPTION => '自动导入应收发票', START_TIME => SYSDATE, ARGUMENT1 => '参数集名称', ARGUMENT2 => 'OU业务实体ID' ); COMMIT; END; /2、收款自动核销:Automatic Receipts
程序名:ARARUPA 功能:导入银行对账单收款,系统自动按客户、单据号匹配发票核销,写入 AR_CASH_RECEIPTS_ALL+AR_APPLICATIONS_ALL
3、应收过账总账:Transfer to General Ledger
程序简称:ARGLTP 读取 AR_GL_INTERFACE_ALL 数据推送 GL 接口,生成应收模块日记账。
4、账龄分析报表:AR Aging Report
并发程序:ARXAGE,数据源核心表 AR_PAYMENT_SCHEDULES_ALL,按逾期天数分层统计应收余额。
5、收款冲销、发票作废、坏账计提、汇率重估
- 外币应收重估:AR_XLATE
- 坏账准备计提:ARACCR
1.3 EBS AR 典型后台业务 PL/SQL 示例
示例 1:查询某 OU 下未核销应收发票及剩余余额
plsql
SELECT trx.trx_number 发票号, trx.trx_date 开票日期, ps.amount_due_remaining 未核销余额, c.customer_name 客户名称, trx.status_trx 发票状态 FROM RA_CUSTOMER_TRX_ALL trx JOIN AR_PAYMENT_SCHEDULES_ALL ps ON trx.customer_trx_id = ps.customer_trx_id JOIN HZ_CUSTOMERS c ON trx.customer_id = c.customer_id WHERE ps.amount_due_remaining > 0 AND trx.org_id = 82; -- 指定业务实体OU示例 2:查询某笔收款对应的核销明细
plsql
SELECT rc.receipt_number 收款单号, trx.trx_number 被核销发票号, app.amount_applied 核销金额, app.apply_date 核销时间 FROM AR_CASH_RECEIPTS_ALL rc JOIN AR_APPLICATIONS_ALL app ON rc.cash_receipt_id = app.cash_receipt_id JOIN RA_CUSTOMER_TRX_ALL trx ON app.customer_trx_id = trx.customer_trx_id WHERE rc.receipt_number = 'REC2026080801';第二部分:Oracle Fusion Cloud Receivables 应收模块
2.1 Fusion 核心设计约束(和 EBS 最大区别)
- 严禁直接 UPDATE/DELETE 底层物理表,所有业务操作强制走:标准 API、ESS 调度作业、Fusion 导入模板
- 业务数据做多层封装,大量业务视图替代直接查表;底层物理表不对外公开,Oracle 会不定期升级重构表结构
- 多组织维度:Ledger 分类账 > Business Unit 业务单元 BU,替代 EBS ORG_ID
- TCA 客户体系升级为 Fusion Party 模型,全局统一客户主数据
2.2 Fusion 应收关键数据表(对外可查询视图,极少直接基表)
1)发票相关视图
- AR_INVOICES_V 对应 EBS RA_CUSTOMER_TRX_ALL,发票头信息
- AR_INVOICE_LINES_V 发票行明细,对标 RA_CUSTOMER_TRX_LINES_ALL
- AR_DISTRIBUTIONS_V 应收会计科目分配行,对标 RA_CUST_TRX_LINE_GL_DIST_ALL
2)收款与核销视图
- AR_RECEIPTS_V:收款头,对标 AR_CASH_RECEIPTS_ALL
- AR_RECEIPT_APPLICATIONS_V:收款核销关联明细,对标 AR_APPLICATIONS_ALL
- AR_PAYMENT_SCHEDULES_V:应收余额计划,对标 EBS AR_PAYMENT_SCHEDULES_ALL
3)接口表(Fusion 标准导入接口表)
- AR_INVOICE_INTERFACE:批量导入发票接口表(替代 EBS RA_INTERFACE)
- AR_RECEIPT_INTERFACE:外部收款导入接口 数据写入接口表后运行 ESS 作业导入正式业务表。
4)总账对接
GL_INTERFACE、GL_JOURNALS_V,应收 ESS 作业自动推送日记账至总账,无 EBS 独立的 AR_GL_INTERFACE_ALL 表。
2.3 Fusion 应收核心 ESS 后台作业(替代 EBS 并发请求 Concurrent Request)
ESS = Enterprise Scheduler Service,云版定时调度程序
- Import AutoInvoices对标 EBS AutoInvoice,加载接口表发票数据验证生成正式应收发票
- Import Receipts银行收款批量导入、自动智能匹配核销
- Create Accounting(创建会计分录)Fusion 核心作业,实时 / 批量生成应收会计分录,无需单独 “传送总账” 步骤,生成后自动推送总账
- Aging Receivables Report账龄分析 ESS 报表任务,基于 AR_PAYMENT_SCHEDULES_V 取数
- Revalue Foreign Currency Receivables外币应收汇率重估
2.4 Fusion 主流程序调用方式(无 EBS Forms、本地 PL/SQL 并发提交)
方式 1:Fusion 标准 REST API(主流集成方案)
常用应收 API:
- 创建应收发票:
/fscmRestApi/resources/latest/receivablesInvoices - 创建收款:
/fscmRestApi/resources/latest/receivablesReceipts - 收款核销:Receipt Application API
- 查询应收余额、客户对账:Query Receivables Balances API
方式 2:Fusion PL/SQL(仅限客户定制扩展,禁止直接 DML)
Fusion 数据库仅允许只读查询视图,业务写入必须调用内置 API 包:AR_PUBLIC_API.CREATE_INVOICE、AR_PUBLIC_API.APPLY_RECEIPT示例伪代码:
plsql
DECLARE l_return_status VARCHAR2(1); BEGIN AR_PUBLIC_API.CREATE_INVOICE( p_business_unit_id => 10001, p_customer_id => 12345, p_invoice_date => SYSDATE, p_invoice_amount => 10000, x_return_status => l_return_status ); IF l_return_status = 'S' THEN DBMS_OUTPUT.PUT_LINE('发票创建成功'); END IF; END; /方式 3:FBDI 模板导入(Excel 模板上传后台 ESS 解析)
FBDI=Fusion Business Intelligence Integrator,最常用线下批量导入工具:
- AR Invoice FBDI 模板:批量导入销售发票
- AR Receipt FBDI:批量导入银行收款单
第三部分:EBS AR vs Fusion AR 关键业务场景后台执行链路对比
场景 1:第三方系统批量导入开票
EBS 链路
第三方 → 写入 RA_INTERFACE_HEADERS/LINES_ALL 接口表 → 提交 AutoInvoice 并发请求 → 校验通过写入 RA_CUSTOMER_TRX_ALL 正式发票表 → AR_GL_INTERFACE 生成分录 → 运行 ARGLTP 过账至 GL 接口 → GL 导入日记账
Fusion 链路
第三方 Excel/API 写入 AR_INVOICE_INTERFACE 接口表 → 调度 ESS Import AutoInvoices 作业 → 校验入库正式发票表 → 运行 Create Accounting ESS 自动生成会计分录,实时同步总账
场景 2:银行回款自动核销发票
EBS
银行文件解析写入 AR_CASH_RECEIPTS_ALL 临时收款 → 运行 Automatic Receipts 并发程序匹配单号 / 客户 → 写入 AR_APPLICATIONS_ALL 核销记录,更新 AR_PAYMENT_SCHEDULES_ALL 余额
Fusion
银行文件上传 Fusion 现金管理 → 自动推送 AR 收款接口 → ESS 收款导入 + 智能匹配引擎自动核销,一键更新应收余额
第四部分:运维与开发实操注意事项
4.1 EBS AR 开发注意点
- 所有表必须带
_ALL,必须携带ORG_ID做数据隔离,开启 MOAC 时需要设置MO_GLOBAL.INIT('AR') - 禁止直接 update RA_CUSTOMER_TRX_ALL、AR_APPLICATIONS_ALL 核心业务表,必须调用标准 API:
AR_PUBLIC_API.APPLY_RECEIPT_API、AR_INVOICE_API - AutoInvoice 报错优先查 RA_INTERFACE_ERRORS_ALL 错误详情
- AR_PAYMENT_SCHEDULES_ALL 余额异常优先排查核销表 AR_APPLICATIONS_ALL 数据错乱
4.2 Fusion 开发运维红线
- 绝对禁止直接 DML 修改业务表,违规会导致业务数据不一致、Oracle 服务合约失效
- 定制化业务优先选择 REST API、FBDI、ESS 作业、OTBI 自定义报表
- 余额对账只能查询系统标准视图 AR_PAYMENT_SCHEDULES_V,不能依赖底层基表
- 升级版本后视图字段可能变动,定制报表尽量选用 Oracle 发布的标准业务视图
第五部分:常用对账 SQL 定位思路
EBS 核对发票总账一致性
plsql
-- 应收模块应收科目余额与总账核对 SELECT SUM(dist.amount) ar应收账面余额 FROM AR_DISTRIBUTIONS_ALL dist JOIN GL_CODE_COMBINATIONS gcc ON dist.code_combination_id = gcc.code_combination_id WHERE gcc.segment1 = '1122' -- 应收账款科目段 AND dist.gl_date BETWEEN '01-JAN-2026' AND '31-JUL-2026' AND dist.org_id=82;Fusion 只读对账(视图查询)
plsql
SELECT SUM(amount) FROM AR_DISTRIBUTIONS_V WHERE account_segment1 = '1122' AND gl_date BETWEEN TO_DATE('2026-01-01','YYYY-MM-DD') AND TO_DATE('2026-07-31','YYYY-MM-DD');总结
- EBS AR:厚重成熟本地化架构,表结构透明,并发程序 + PL/SQL 高度灵活定制,适合本地重度二开,核心围绕 RA、AR、HZ 系列 ALL 分区表;
- Fusion AR:云原生封闭架构,弱化底层表操作,API/ESS/FBDI 为主,内置智能核销、自动会计,二开偏向集成层而非数据库层; 3. 两套产品业务逻辑(开票 - 收款 - 核销 - 会计)业务模型一致,只是数据存储、调度方式、二次开发模式彻底重构。
