FA-05 EBS R12.x Fixed Assets Tier 2 Data Fix

Mass Additions Diagnostic

Complete mass additions queue health — counts by status, AP distribution linkage, category auto-assignment accuracy, duplicate detection, split/merge candidates, and ON HOLD record resolution.

PlatformOracle EBS R12.x
Input RequiredQueue Status or AP Invoice ID
Diagnostic Checks28+
Data Sources5 Oracle tables
Fix Options4 guided fixes
Backup CreatedYes — Automatic

Why This Fails — and What It Costs

Oracle EBS Fixed Assets Mass Additions is the pipeline that converts capitalizable AP invoice lines into fixed asset records. The process starts when the AP team posts invoices for items that meet the capitalization threshold — the invoice distributions are flagged with a PROJECT TYPE of CAPITALIZED or the distribution account falls within the capital expenditure account range — and the Post Mass Additions program copies those distributions to FA_MASS_ADDITIONS. From there, the asset accountant reviews each line, assigns a category, assigns a location and employee, splits lines where necessary, and advances the record to POST status before running Post Mass Additions to create the actual FA asset.

The ON HOLD queue is the primary diagnostic focus for Mass Additions. A mass addition record enters ON HOLD status when it fails validation — the asset category has not been assigned, the distribution cost falls below the capitalization threshold, the distribution account is mapped to an asset category that does not exist in the FA book, or a split was set up incorrectly and the split amounts do not sum to the total invoice amount. ON HOLD records accumulate over time if the asset accountant does not monitor the queue regularly, and by period close they can represent significant unprocessed capital expenditure.

Split processing is the most error-prone mass additions operation. When an AP invoice line represents the purchase of multiple assets — a server rack with multiple servers, or a vehicle with multiple add-ons — the asset accountant splits the single mass addition line into multiple child records, each with its own cost and category. If the split amounts do not equal the parent total, Oracle FA puts the parent record in SPLIT status and will not allow it to advance to POST. If a split child is assigned the wrong category or cost, the resulting assets will have incorrect depreciation parameters that persist for their full useful life.

FA-05 runs a complete mass additions pipeline diagnostic — ON HOLD record count and aging by hold reason, SPLIT record validation with parent vs child amount reconciliation, POST record count awaiting Post Mass Additions submission, invoice cost vs mass addition cost reconciliation per AP invoice, category assignment completeness, location and employee assignment completeness, and duplicate detection by invoice number and line.

What This Script Diagnoses

FA-05 systematically investigates every major condition that can cause the issue this diagnostic targets. Below is the complete coverage breakdown.

Queue Status by Stage
Complete FA_MASS_ADDITIONS queue analysis — NEW, ON HOLD, SPLIT, POST, POSTED, EXPENSE, CANCELLED counts and amounts. Aging analysis for ON HOLD records — days since AP invoice was posted.
ON HOLD Root Cause
Hold reason breakdown: no category, category not in book, below threshold, split pending, duplicate. Each hold reason has a distinct resolution path. Most common hold resolved by category assignment.
Split Reconciliation
Parent vs child amount validation for all SPLIT records. Children must sum exactly to the parent mass addition amount. Identifies the specific child record with the incorrect amount or the missing child.
Invoice Cost Reconciliation
Mass addition cost vs AP invoice distribution amount cross-reference. Identifies mass additions where the FA cost does not match the source AP amount — common after manual cost adjustments in the queue.
Post Readiness
POST-status record count — assets cleared for capitalization. Category, location, and employee assignment completeness for POST records. Confirms Post Mass Additions will complete without errors before submission.

What the Report Looks Like

Representative output showing the diagnostic running against a real-world scenario. The script identifies every condition, states the root cause, and generates the fix.

FA-05 — FA-05 Diagnostic Report
════════════════════════════════════════════════════════════
  ORACLE EBS R12 — FA MASS ADDITIONS DIAGNOSTIC
════════════════════════════════════════════════════════════
  Book               : US CORP
  Period             : FEB-2026
  Case Number        : FA-524820
  Report Date        : 23-FEB-2026 14:30:15
════════════════════════════════════════════════════════════

[ SECTION 1 — QUEUE STATUS SUMMARY ]
────────────────────────────────────────────────────────────
  ON HOLD            : 12 records — $284,400 ✗
  SPLIT              : 3 parent records — amounts don't balance ✗
  NEW                : 8 records — awaiting category assignment ⚠
  POST               : 22 records — ready for Post Mass Additions ✓
  POSTED             : 184 records — capitalized this period ✓

[ SECTION 2 — ON HOLD ANALYSIS ]             STATUS: ✗ FAIL
────────────────────────────────────────────────────────────
  No Category        : 8 records — category not assigned ✗
  Below Threshold    : 3 records — cost < $5,000 threshold (expense, not capitalize)
  Invalid Category   : 1 record — category not in US CORP book ✗
  Oldest ON HOLD     : 42 days — Invoice INV-2026-00112

[ SECTION 3 — SPLIT VALIDATION ]             STATUS: ✗ FAIL
────────────────────────────────────────────────────────────
  Parent ID 88210    : $48,200 total
  Child 1            : $24,100 ✓
  Child 2            : $24,100 ✓
  Total Children     : $48,200 ✓ Balanced
  Parent ID 88215    : $32,400 total
  Child 1            : $20,000
  Child 2            : $10,000
  Total Children     : $30,000 ≠ $32,400 ✗ — $2,400 unaccounted

[ SECTION 4 — DUPLICATE CHECK ]              STATUS: ✓ PASS

════════════════════════════════════════════════════════════
  DIAGNOSTIC SUMMARY
════════════════════════════════════════════════════════════
  2 blocking: 8 no-category records, 1 split imbalance ($2,400)
  3 below-threshold records should be moved to EXPENSE status
════════════════════════════════════════════════════════════

The Four-Layer Architecture in FA-05

1
Diagnostic Engine
Runs 28+ checks across ON HOLD queue count and aging by hold reason, SPLIT parent vs child amount reconciliation, POST record count, invoice cost vs mass addition cost per AP invoice, category assignment completeness, location and employee completeness, and duplicate detection by invoice number and line.
2
Backup Created
Before any mass addition record is modified, CONS_BACKUP.FA_MASS_ADDITIONS_<case#> and FA_MASS_ADDITION_LINKS_<case#> are created and row counts verified.
3
Guided Data Fix
Category assignments, split amount corrections, threshold-based status changes, and location assignments are all applied directly to FA_MASS_ADDITIONS with full backup. Post Mass Additions is submitted after all records reach POST status.
4
KB Article Generated
Complete KB article generated — queue status by category, ON HOLD reasons, split corrections, actions taken, Post Mass Additions submission result. Upload directly to your knowledge base.

Backup & Rollback for FA-05

Every table touched by FA-05 data fixes is backed up before the first UPDATE fires. Backup is verified by row count. One script restores the original state if needed.

Tables Backed Up — FA-05

CONS_BACKUP.FA_MASS_ADDITIONS_<case#> CONS_BACKUP.FA_MASS_ADDITION_LINKS_<case#> CONS_BACKUP.AP_INVOICE_DISTRIBUTIONS_ALL_<case#>

Backup happens before any DML. Script aborts if backup creation fails.

Pre-Flight Safety Guards

CAPITALIZED_FLAG = 'NO' or STATUS = 'PENDING'Required ✓
No active depreciation run in progressVerified ✓
No active session lock on target rowsChecked ✓
CONS_BACKUP schema accessibleVerified ✓

FIX_BACKUP_REGISTRY Entry

REGISTRY_ID<auto-generated>
CASE_NUMBER<consultant case#>
SOURCE_TABLE<table modified>
ROWS_BACKED_UP<row count>
BACKUP_VERIFIEDYES ✓
ROLLBACK_SQLStored as CLOB
STATUSACTIVE
ENVIRONMENTPRODUCTION

Auto-Generated Knowledge Base Article

This article is produced automatically at the end of every FA-05 execution — written from actual run output. No manual documentation required.

KB-FA-524820-001 · Script: FA-05
Mass Additions Queue — 12 ON HOLD, Split Imbalance $2,400, 3 Below-Threshold Records
FA-05 mass additions diagnostic for US CORP FEB-2026: 12 records ON HOLD ($284,400), 3 records in unbalanced SPLIT status ($2,400 variance on parent 88215), and 3 records below capitalization threshold. 22 records ready to POST. 8 NEW records awaiting category.
ON HOLD — no category: 8 records from a bulk AP invoice import for IT equipment — asset accountant did not review the queue for 2 weeks. Split imbalance parent 88215: split was entered with $20,000 + $10,000 = $30,000 against a $32,400 invoice — the $2,400 freight charge was not split into a third child or added to one of the existing children. Below threshold: 3 incidental purchases on capital project invoices under the $5,000 threshold.
FA_MASS_ADDITIONS — QUEUE_NAME = ON HOLD, MASS_ADDITION_ID (12 records, no ASSET_CATEGORY_ID)
FA_MASS_ADDITION_LINKS — SPLIT_MERGED_CODE, child amounts (Parent 88215: $30,000 vs $32,400)
8 no-category records assigned appropriate IT asset categories. Split parent 88215 corrected — third child added for $2,400 freight (COMPUTER EQUIPMENT). 3 below-threshold records moved to EXPENSE status. Post Mass Additions run — 22 assets capitalized.
Mass additions queue should be reviewed weekly by the asset accountant. ON HOLD records older than 10 business days escalate to the Controller. FA-05 should run at period day-minus-5 to allow time for ON HOLD resolution before close.
FAMass AdditionsFA_MASS_ADDITIONSON HOLDSplitCapitalization ThresholdPost Mass AdditionsEBS R12.2

What This Script Finds

Queue

ON HOLD — No Category Assigned

Most common hold reason. AP invoice lines waiting for an asset accountant to assign the correct FA category. Aged ON HOLD records indicate the queue is not being reviewed regularly. FA-05 bulk-assigns categories for standardized equipment types.

Split

Split Children Don't Sum to Parent

Split total mismatch — typically a freight charge or minor component was not included in the split children. Oracle FA holds the parent in SPLIT status until all children sum exactly to the parent amount.

Threshold

Below Capitalization Threshold

AP invoice line for an item below the organization's capitalization threshold. Should be moved to EXPENSE status — will not be posted as a fixed asset. FA-05 bulk-updates below-threshold records.

Post

Post Mass Additions Not Submitted

Records in POST status awaiting the Post Mass Additions program. Assets are reviewed and ready but the program has not been submitted. FA-05 confirms all POST records are complete before providing submission parameters.

Tables Examined

TableModulePurpose
FA_MASS_ADDITIONSFAMass addition records — queue status, cost, category, location
FA_MASS_ADDITION_LINKSFASplit parent-child relationships and amounts
AP_INVOICE_DISTRIBUTIONS_ALLAPSource AP invoice distribution — cost reconciliation
FA_CATEGORIES_BFAAsset category active status and book assignment
FA_BOOK_CONTROLSFACurrent period and book configuration
Decision Framework

How Every Fix Decision Is Made

Before any data is modified in a production Oracle database, AP-01 walks through a four-stage decision process. Every condition identified by the diagnostic maps to exactly one resolution path.

1
First Option — Always
Can the front end fix this?

Oracle's own forms and concurrent programs are always the first option. If the condition can be corrected through Oracle's standard UI — a form, a concurrent program, a setup screen — that path is taken first. No consultant SQL required, no database risk, and the fix is fully supported by Oracle. The diagnostic identifies these conditions explicitly and states the exact front-end navigation path.

✓ Functional Fix
2
When Front End Is Not Available
Is a direct data fix safe to apply?

When the front-end path is unavailable or would require an unacceptable volume of manual steps, a direct fix is evaluated against explicit criteria. All of the following must be true before proceeding:

The fix mirrors exactly what Oracle's own code would have done if the underlying condition were corrected
All dependent tables have been identified and will be updated in the same transaction
The fix is fully reversible — a single INSERT from the backup table restores the original state
The environment patch level has been confirmed against the fix logic version
⚡ Direct Fix
3
Hard Stops — No Exceptions
Does this require Oracle Support?

Certain table areas are never touched directly, regardless of how well the underlying structure is understood. The diagnostic flags these conditions and generates the Service Request documentation:

XLA subledger tablesXLA_EVENTS, XLA_AE_HEADERS — incorrect changes corrupt the subledger audit trail in ways undetectable until period close fails or an auditor requests a reconciliation
Workflow engine tablesWF_ITEMS, WF_ITEM_ACTIVITY_STATUSES — ad-hoc DML can corrupt the workflow engine state instance-wide
Recurring conditions after a fix — indicates a code defect, not a data error. Documented and submitted as a Service Request with a reproducible test case
⚠ Oracle Support
4
For All Approved Direct Fixes
Backup → Execute → Verify → Document

A timestamped backup table is created and row-count verified before the first UPDATE fires. Explicit parameter confirmation is required — the script will not self-execute. After execution, a verification query confirms the expected state. A complete change record — rows affected, before and after values, database username, timestamp — is written to the FIX_BACKUP_REGISTRY and becomes the primary artifact in the knowledge base entry for this incident.

📋 Documented
Condition Identified Resolution Path Notes
ON HOLD — no category assigned Direct Fix FA-05 assigns ASSET_CATEGORY_ID to FA_MASS_ADDITIONS with full backup based on the invoice description and AP account code. Category selection is confirmed before the update is applied.
Split imbalance — children do not sum to parent Direct Fix FA-05 calculates the variance and corrects the split child amounts in FA_MASS_ADDITIONS and FA_MASS_ADDITION_LINKS with full backup. Adds a third child if freight or other components were omitted.
Below capitalization threshold — should be expensed Direct Fix FA-05 updates QUEUE_NAME from ON HOLD to EXPENSE in FA_MASS_ADDITIONS with full backup for records below the capitalization threshold. These records will not be posted as assets.
Category not in FA book — INVALID category Functional First Add the category to the FA book via Assets > Asset Categories > Books. FA-05 identifies the category code and the book-category assignment that is missing.
Duplicate mass addition — same invoice line posted twice Direct Fix FA-05 identifies the duplicate via invoice number and line number cross-reference. Marks the duplicate CANCELLED in FA_MASS_ADDITIONS with full backup after confirmation.
Mass addition linked to wrong AP invoice Direct Fix FA-05 corrects INVOICE_DISTRIBUTION_ID in FA_MASS_ADDITIONS with full backup. Invoice cost reconciliation confirms the correct distribution before the link is updated.
Post Mass Additions not submitted — records stuck in POST Functional First Submit the Post Mass Additions concurrent program for the book and period. FA-05 confirms all records are in POST status and categories are valid before submission.
NEW records aged over 30 days — unreviewed queue Direct Fix FA-05 identifies NEW records without category or location assigned and generates a review report for the asset accountant. Bulk category assignment available with full backup for standardized equipment types.
Safeguards

Nothing Executes Without a Safety Net

Before any data fix runs, the script verifies pre-flight conditions and creates a complete verified backup. If any check fails, the script aborts. There is no partial execution path.

Pre-Flight Checks — All Must Pass
POSTED_FLAG = 'N'
Will not modify a posted transaction under any circumstances
ACCOUNTING_EVENT_ID IS NULL
Will not modify rows with an active or pending XLA accounting event
No active database lock
Checks V$LOCK — will not proceed if another session holds a lock on target rows
CONS_BACKUP schema writable
Backup schema must be accessible before any DML is permitted
Explicit confirmation required
Script outputs a confirmation prompt — DML does not execute until consultant enters the case number as the execution parameter
Backup Methodology

Before the first UPDATE fires, the script creates a complete copy of every row to be modified. Tables are named CONS_BACKUP.<TABLE>_<CASE#> and persist permanently after execution.

FA_MASS_ADDITIONS
FA_MASS_ADDITION_LINKS
AP_INVOICE_DISTRIBUTIONS_ALL
Row count verified after backup creation. If backup fails for any reason the script aborts without executing any DML. Rollback is a single INSERT from the backup table. No reconstruction required.
FA-05 — Pre-Flight & Backup Verification
════════════════════════════════════════════════════════════
  PRE-FLIGHT SAFETY CHECK
════════════════════════════════════════════════════════════
  Book               : US CORP
  Period             : FEB-2026
  Records in Scope   : 12 ON HOLD + 3 SPLIT records
  CONS_BACKUP Schema : Accessible ✓
  Session Lock Check : No locks on FA_MASS_ADDITIONS ✓
────────────────────────────────────────────────────────────
  ALL PRE-FLIGHT CHECKS PASSED
════════════════════════════════════════════════════════════
  Creating : CONS_BACKUP.FA_MASS_ADDITIONS_524820
  Rows     : 15 rows backed up ✓
  Creating : CONS_BACKUP.FA_MASS_ADDITION_LINKS_524820
  Rows     : 6 rows backed up ✓
  Registry : FIX_BACKUP_REGISTRY — ID 5104 created ✓
────────────────────────────────────────────────────────────
  BACKUP COMPLETE
════════════════════════════════════════════════════════════
  Enter case number to confirm : 524820
  Confirmed. Applying category assignments and split correction...
════════════════════════════════════════════════════════════
Knowledge Base

Every Execution Produces a Record

The knowledge base article is generated automatically from the script's execution output. No manual documentation required. It becomes the institutional record — for the team, for auditors, and for every future engagement in the same environment.

Zero Manual Effort
Every field — environment, tables, before/after values, backup reference, root cause, prevention — is generated from actual execution output. Nothing is written by hand.
Patterns Surface Over Time
The first engagement produces findings. The third produces patterns. Recurring conditions that are invisible as individual incidents become obvious as knowledge base trends.
Survives Staff Turnover
The knowledge base is an institutional record of the Oracle environment. A new manager, a new DBA, or an external auditor can read exactly what happened, what was done, and what prevents recurrence.
KB-FA-524820-001
Mass Additions Queue — 12 ON HOLD, Split Imbalance $2,400, 3 Below-Threshold Records
EBS R12.2.10 · Fixed Assets
● RESOLVED
Symptom
FA-05 mass additions diagnostic for US CORP FEB-2026: 12 records ON HOLD ($284,400), 3 records in unbalanced SPLIT status ($2,400 variance on parent 88215), and 3 records below capitalization threshold. 22 records ready to POST. 8 NEW records awaiting category.
Root Cause
ON HOLD — no category: 8 records from a bulk AP invoice import for IT equipment — asset accountant did not review the queue for 2 weeks. Split imbalance parent 88215: split was entered with $20,000 + $10,000 = $30,000 against a $32,400 invoice — the $2,400 freight charge was not split into a third child or added to one of the existing children. Below threshold: 3 incidental purchases on capital project invoices under the $5,000 threshold.
Tables
FA_MASS_ADDITIONS — QUEUE_NAME = ON HOLD, MASS_ADDITION_ID (12 records, no ASSET_CATEGORY_ID)
FA_MASS_ADDITION_LINKS — SPLIT_MERGED_CODE, child amounts (Parent 88215: $30,000 vs $32,400)
Fix Applied
8 no-category records assigned appropriate IT asset categories. Split parent 88215 corrected — third child added for $2,400 freight (COMPUTER EQUIPMENT). 3 below-threshold records moved to EXPENSE status. Post Mass Additions run — 22 assets capitalized.
Prevention
Mass additions queue should be reviewed weekly by the asset accountant. ON HOLD records older than 10 business days escalate to the Controller. FA-05 should run at period day-minus-5 to allow time for ON HOLD resolution before close.
Tags
FAMass AdditionsFA_MASS_ADDITIONSON HOLDSplitCapitalization ThresholdPost Mass AdditionsEBS R12.2

Oracle Documentation References

References the Oracle public documentation for this diagnostic area. These links open directly on docs.oracle.com.

R12 Guide (PDF)Title & ChapterDetail
120faug.pdfOracle Assets User Guide — Ch. 2: Create Mass Additions from Invoice Distributionspp. 2-35 to 2-41: AP to FA mass additions creation, posting, and ON HOLD resolution
120faug.pdfOracle Assets User Guide — Ch. 2: FA_MASS_ADDITIONS Interface Tablepp. 2-64 to 2-91: Column-level reference for mass additions STATUS, QUEUE_NAME values
120apug.pdfOracle Payables User's Guide — Ch. 8: AccountingAP distribution capitalization flags and Oracle Assets integration accounting

Ready to Resolve This in Your Environment?

FA-05 is one of 65 diagnostic scripts covering every major Oracle EBS and Fusion module. William A. Green Consulting runs the script in your environment, applies guided data fixes, and builds the knowledge base that prevents the same issues from recurring.

Schedule a Discovery Call → ← View All 65 Scripts

See this script run autonomously — Oracle AI Platform →