Oracle EBS R12 AP(应付模块)核心标准并发程序全解
前置基础说明
- 并发程序载体:EBS 应付所有后台批处理逻辑均以Concurrent Request(并发请求)运行,底层封装为 PL/SQL 标准包、可执行文件;
- AP 核心业务闭环主线:发票导入→发票校验→生成会计分录→自动付款选择 / 格式化 / 确认→月结结转、对账、异常清理;
- 程序归属应用简称:
AP(应付)、IBY(EBS 内置支付模块)、XLA(子分类账 SLA)、GL(总账); - 下文按业务流转顺序拆解:程序全称、简称、底层执行包、核心入参、后台数据表流转、业务作用、典型异常场景、PL/SQL 后台调用示例。
一、发票生命周期类核心程序(应付单据入口与合法性校验)
1. Payables Open Interface Import(应付发票开放接口导入)
基础信息
- 并发简称:APXIIMPT
- 底层 PL/SQL 包:
AP_INVOICES_IMPORT_PKG - 定位:外部系统发票接入标准入口(费用系统、采购对账、B2B 电子发票、第三方报销系统)
1.1 接口表流转
临时接口表 → 正式业务基表 1)头:AP_INVOICES_INTERFACE2)行:AP_INVOICE_LINES_INTERFACE3)错误日志:AP_INTERFACE_REJECTIONS(校验失败原因写入本表)
1.2 核心入参
| 参数 | 含义 | 必填 |
|---|---|---|
| Source | 数据来源标识(自定义区分不同外部系统) | 是 |
| Group ID | 批次 ID,隔离多批导入数据 | 是 |
| Validate Only | 仅校验不入库(调试模式) | 否 |
| Create Accounting | 导入后自动触发入账 | 否 |
1.3 执行逻辑
- 校验基础合法性:ORG_ID、供应商、供应商地点、币种、发票号唯一性、科目有效性;
- 校验 PO 匹配关系、税行完整性、金额借贷平衡;
- 校验通过写入正式表
AP_INVOICES_ALL/AP_INVOICE_DISTRIBUTIONS_ALL; - 校验失败写入
AP_INTERFACE_REJECTIONS,可通过报表导出错误明细修正重导。
1.4 后台调用示例
plsql
DECLARE l_req_id NUMBER; BEGIN l_req_id := FND_REQUEST.SUBMIT_REQUEST( 'AP', 'APXIIMPT', 'AP发票接口导入', SYSDATE, FALSE, 'EXT_EXPENSE', -- Source来源 '10086', -- Group_ID批次号 'N', -- Validate Only:N正式入库 'N', -- 不自动创建会计 CHR(0) ); COMMIT; END; /1.5 适用场景
外部系统批量开票、员工费用报销导入、供应商电子发票批量落地。
2. Payables Invoice Validation(发票校验,AP 最核心强制性程序)
基础信息
- 并发简称:APXIVAL
- 底层核心包:
AP_VALIDATE_INVOICE_PKG、AP_HOLDS_PKG、AP_PAYMENT_SCHEDULES_PKG - 定位:发票生效必经节点,未校验发票无法付款、无法正常入账
2.1 核心校验维度
- 三单匹配校验(PO + 接收 + 发票):数量容差、单价容差、订单关闭校验,超容差自动挂价格暂挂 / 数量暂挂;
- 财务基础校验:科目有效、会计期间开启、本位币 / 外币汇率校验、税额合规性;
- 业务控制校验:预算控制(GL 预算 / 项目预算)、审批流状态、发票重复号校验;
- 系统规则校验:冻结规则、预付款核销勾对有效性。
2.2 后台数据变化
- 生成正式付款计划:写入
AP_PAYMENT_SCHEDULES_ALL(决定到期付款日、可付金额); - 异常写入
AP_HOLDS_ALL暂挂表,标记发票锁定禁止付款; - 更新发票状态:
AP_INVOICES_ALL.APPROVAL_STATUS_FLAG=VALIDATED; - 生成会计事件:写入
AP_ACCOUNTING_EVENTS_ALL,为后续生成凭证做数据源。
2.3 常用入参
- 发票编号、供应商、OU、日期范围;Release Holds(自动释放可系统自动解除的临时暂挂);仅校验指定批次发票。
2.4 单张发票后台直接校验(标准包调用,生产谨慎使用)
plsql
DECLARE v_inv_id NUMBER := 123456; v_org_id NUMBER := 82; BEGIN AP_VALIDATE_INVOICE_PKG.Validate_Single_Invoice( P_INVOICE_ID => v_inv_id, P_ORG_ID => v_org_id, P_RELEASE_HOLDS => FALSE, P_TRACE => FALSE ); COMMIT; EXCEPTION WHEN OTHERS THEN ROLLBACK; END; /2.5 常见产出配套报表
Invoice on Hold Report(暂挂发票报表),月结前必须清理全部业务类暂挂。
二、财务入账类核心程序(SLA 子分类账会计处理)
3. Create Accounting - Payables(AP 创建会计分录)
基础信息
- 并发简称:APXACCT
- 底层驱动:全局 SLA 子分类账引擎,AP 层调用包
AP_ACCOUNTING_PKG - 定位:把发票、付款、贷项通知单等业务事件转为正式会计凭证,应付财务记账核心程序
3.1 三种运行模式(关键参数)
- Draft 草稿模式:仅预览分录,不固化数据,用于对账校验;
- Final 正式模式:生成固化 AP 子账分录
AP_AE_HEADERS_ALL/AP_AE_LINES_ALL; - Final Post 模式:生成分录 + 自动推送至
GL_INTERFACE总账接口表。
3.2 数据表流转
AP_ACCOUNTING_EVENTS_ALL业务事件 → SLA 规则解析 →AP_AE_HEADERS_ALL头、AP_AE_LINES_ALL行 → GL 接口表
3.3 核心入参
入账日期范围、OU、账本、交易类型(仅发票 / 仅付款 / 全部业务)、是否传送总账。
3.4 典型会计场景分录来源
- 采购发票:借:成本 / 费用 / 资产 贷:应付账款;
- 付款业务:借:应付账款 贷:银行存款;
- 贷项通知单:冲减应付账款;
- 外币汇兑损益自动生成损益分录。
4. Payables Transfer Journal Entries to GL(应付分录传送总账)
基础信息
- 简称:APXTRFR
- 作用:当 Create Accounting 未勾选自动过账时,单独把 AP 已固化分录推送至 GL 接口表;
- 后续由 GL 并发 “Journal Import” 导入总账正式日记账。
5. Unaccounted Transactions Report(未入账事务报表)
月结必备检查程序,筛选出校验完成但未成功生成会计分录的发票 / 付款,定位入账失败原因(SLA 规则配置错误、期间关闭、科目失效)。
三、自动付款全链路核心程序(EBS AP+IBY 联合执行)
R12 付款架构拆分三段式标准并发,整套统称Payment Process Request(PPR 付款请求),底层由 AP 调用 IBY 支付引擎协同处理Oracle Sup...。
阶段 1:Select Invoices for Payment(付款发票筛选)
简称:APXPBASL
底层包:AP_AUTOSELECT_PKG.SELECT_INVOICES
执行逻辑
- 按付款批次规则筛选满足条件单据:发票已校验、无有效暂挂、审批完成、到期日≤付款截止日、付款方式匹配;
- 将选中的付款计划写入临时表:
AP_SELECTED_INVOICES_ALL; - 锁定对应
AP_PAYMENT_SCHEDULES_ALL行,防止其他付款批次重复支付。
筛选排除规则
有未释放暂挂、未校验发票、已部分付清、付款计划已锁定、供应商冻结全部剔除。
阶段 2:Format Payment Instructions(付款文件格式化)
底层依托 IBY 支付模块
- 根据付款方式(网银、支票、电汇、信用证)生成银行标准格式文件(MT103、XML 付款报文、支票打印格式);
- 归集本次付款所有供应商收款账户、金额、付款附言;
- 生成付款头临时数据,写入
IBY_PAYMENTS_ALL支付明细。
阶段 3:Confirm Payments(付款确认)
简称:APXCONF
核心数据更新动作:
- 正式写入
AP_PAYMENTS_ALL付款主表,生成唯一付款编号; - 核销发票付款计划:更新
AP_PAYMENT_SCHEDULES_ALL.PAID_AMOUNT,付款状态变为全部结清; - 自动触发付款会计事件,后续 Create Accounting 生成付款凭证;
- 标记支票号、付款日期、银行结算流水号。
配套临时跟踪表
AP_CHECKRUN_CONC_PROCESSES_ALL:记录当前运行中付款批次并发状态,防止重复提交同一付款批。
6. AutoRate(外币汇率自动同步程序)
简称:APXRATE
作用:读取 GL 日常汇率表GL_DAILY_RATES,补全未维护汇率的外币发票、付款汇率,避免外币业务无法校验、无法入账。
四、供应商与单据调整类标准程序
7. Supplier Merge Program(供应商合并程序)
简称:APXSMER
业务场景:供应商重复建档、公司并购供应商整合; 执行逻辑:迁移旧供应商所有发票、付款、余额、联系人、银行账户至新供应商,全程保留业务审计轨迹,禁止手工改表合并。
8. Prepayment Application(预付款自动核销程序)
将前期预付账款自动匹配冲抵对应供应商正式发票,自动生成贷项核销分录,替代手工逐行核销。
9. Cancel Payment(作废付款并发)
误付款撤销:回滚AP_PAYMENTS_ALL付款记录,恢复发票付款计划为未付状态,冲销对应付款会计分录,仅允许作废未银行实际结算的付款单据。
五、月结对账、归档、税务类报表型标准程序
10. Accounts Payable Trial Balance(应付试算平衡表)
月结核心对账报表,截止指定日期供应商应付余额,分账龄展示,核对总账应付科目余额与 AP 业务余额一致性。
11. Payment Register / Posted Payments Register
付款登记簿:明细导出本期所有已确认付款、已入账付款单据,银行对账依据;Posted 版本仅包含已生成会计凭证的付款。
12. Invoice Register / Posted Invoices Register
发票登记簿:本期录入、校验、入账发票明细,采购对账、成本核对基础报表。
13. Withholding Tax Reporting(代扣税申报程序)
海外本地化常用:供应商代扣所得税归集、生成税务申报文件、代扣税计提入账。
六、EBS AP 月度关账标准执行顺序(官方推荐流程)
- 外部发票导入:APXIIMPT;
- 全部发票提交:APXIVAL 发票校验;
- 运行暂挂发票报表,清理全部有效暂挂;
- 执行自动付款 PPR 全流程(选择→格式化→确认);
- 运行 AutoRate 补全外币汇率;
- 运行未入账事务报表排查异常;
- 提交 Create Accounting 生成正式会计分录;
- 分录传送 GL,GL 导入日记账;
- 应付试算平衡表对账;
- 关闭 AP 会计期间。
七、关键运维开发注意事项
- 禁止手工 DML 修改 AP 业务基表:发票解冻、作废、修正余额必须调用标准并发 / 标准 PL/SQL 包,直改表会破坏 SLA 会计事件、付款核销关联、审计链;
- 并发串行约束:必须先校验发票,再入账;必须确认付款后再生成付款凭证;
- 高并发场景:大批量付款、海量发票导入拆分 Group_ID 分批执行,避免锁表、性能卡顿;
- 定制开发集成:优先调用 FND_REQUEST 后台提交标准并发,而非直接插入业务表。
八、核心程序汇总速查表
| 业务模块 | 并发名称 | 简称 | 核心 PL/SQL 包 | 核心产出数据表 |
|---|---|---|---|---|
| 发票导入 | Payables Open Interface Import | APXIIMPT | AP_INVOICES_IMPORT_PKG | AP_INVOICES_ALL |
| 发票校验 | Invoice Validation | APXIVAL | AP_VALIDATE_INVOICE_PKG | AP_PAYMENT_SCHEDULES_ALL、AP_HOLDS_ALL |
| 生成会计 | Create Accounting | APXACCT | AP_ACCOUNTING_PKG | AP_AE_HEADERS_ALL、AP_AE_LINES_ALL |
| 付款筛选 | Select Invoices for Payment | APXPBASL | AP_AUTOSELECT_PKG | AP_SELECTED_INVOICES_ALL |
| 付款确认 | Confirm Payments | APXCONF | AP_AUTOMATIC_PAYMENTS_PKG | AP_PAYMENTS_ALL |
| 供应商合并 | Supplier Merge | APXSMER | AP_SUPPLIERS_MERGE_PKG | AP_SUPPLIERS_ALL、AP_INVOICES_ALL |
| 汇率同步 | AutoRate | APXRATE | AP_EXCHANGE_RATES_PKG | AP_INVOICES_ALL.exchange_rate |
如果你需要,我可以单独输出: 1)某一个并发程序完整参数配置手册; 2)一套 AP 月结自动化请求集(Request Set)配置方案; 3)Java/PLSQL 定时自动提交整套 AP 付款批完整代码。