FA_BOOK_CONTROLS — GL_POSTING_ALLOWED = YES — GL journals can be created once CJE runs
Pre-close scan — depreciation run completion, unfinished mass additions, pending retirements, unreconciled asset cost to GL, CIP capitalization events, and tax book alignment.
The Oracle EBS Fixed Assets period close is a prerequisite for the GL period close — FA must create journal entries and transfer them to GL before the GL period can be closed. The FA period close has its own sequence: depreciation must complete, Calculate Gains and Losses must process all PENDING retirements, Create Journal Entries must run, and finally the period can be closed via the Close Period function in FA Book Controls. Each step must be completed in order, and each step can fail independently. A single PENDING retirement or an asset with zero cost will not block the depreciation run, but it will produce an incomplete accounting picture in GL.
The most common FA period close blocker in large asset portfolios is an incomplete depreciation run — specifically, assets that were added during the period with a date in service that puts them in the current period but were added after depreciation was run. In Oracle FA, you cannot re-run depreciation for a period once it has run. Assets added after the depreciation run will not be depreciated until the next period, resulting in a one-period gap in depreciation for late-added assets. FA-04 identifies assets added after the depreciation run whose depreciation was missed.
Create Journal Entries is the most frequently forgotten FA close step. Depreciation is run, the FA team confirms the depreciation amounts look correct, and then the period is closed — but no one submits Create Journal Entries. The depreciation is recorded in FA_DEPRN_SUMMARY, the asset NBV is reduced in FA_BOOKS, but the GL journals are never generated. The GL close then fails because the FA subledger balance does not match the GL depreciation expense account balance. FA-04 specifically checks whether Create Journal Entries has been run for the current period and whether the resulting GL journals have been posted.
FA-04 runs a complete FA period-close readiness diagnostic — depreciation run status and completion confirmation, PENDING retirement count and CGL status, assets added after depreciation (missed current-period depreciation), Create Journal Entries completion status, journal posting status, unprocessed mass additions count, and FA-to-GL transfer reconciliation.
FA-04 systematically investigates every major condition that can cause the issue this diagnostic targets. Below is the complete coverage breakdown.
Representative output showing the diagnostic running against a real-world scenario. The script identifies every condition, states the root cause, and generates the fix.
════════════════════════════════════════════════════════════
ORACLE EBS R12 — FA PERIOD CLOSE READINESS DIAGNOSTIC
════════════════════════════════════════════════════════════
Book : US CORP
Period : FEB-2026
Case Number : FA-514840
Report Date : 25-FEB-2026 16:10:44
════════════════════════════════════════════════════════════
[ SECTION 1 — DEPRECIATION STATUS ] STATUS: ✓ COMPLETE
────────────────────────────────────────────────────────────
Depreciation run complete — 4,841 assets processed ✓
Run Date : 22-FEB-2026 03:10:44
Total Deprn Amount : $284,120
[ SECTION 2 — ASSETS ADDED AFTER DEPRN ] STATUS: ⚠ WARNING
────────────────────────────────────────────────────────────
⚠ 4 assets added 23-FEB and 24-FEB — depreciation not taken for FEB-2026
Asset 112851 : $8,400 cost — $233/period deprn missed
Asset 112852 : $12,200 cost — $339/period deprn missed
Total Missed : $682 catch-up will run in MAR-2026
[ SECTION 3 — PENDING RETIREMENTS ] STATUS: ✓ PASS
────────────────────────────────────────────────────────────
No PENDING retirements — CGL complete ✓
[ SECTION 4 — CREATE JOURNAL ENTRIES ] STATUS: ✗ FAIL
────────────────────────────────────────────────────────────
✗ Create Journal Entries NOT RUN for FEB-2026 ✗
✗ BLOCKING: GL cannot receive FA depreciation journals
[ SECTION 5 — MASS ADDITIONS QUEUE ] STATUS: ⚠ WARNING
────────────────────────────────────────────────────────────
⚠ 7 mass additions in ON HOLD status — not yet posted as assets
════════════════════════════════════════════════════════════
CLOSE READINESS SUMMARY
════════════════════════════════════════════════════════════
PERIOD CANNOT CLOSE — 1 blocking condition
1. Run Create Journal Entries for US CORP FEB-2026
Advisory: 4 late-added assets will catch up in MAR-2026
Advisory: Review 7 ON HOLD mass additions
════════════════════════════════════════════════════════════
Every table touched by FA-04 data fixes is backed up before the first UPDATE fires. Backup is verified by row count. One script restores the original state if needed.
Backup happens before any DML. Script aborts if backup creation fails.
This article is produced automatically at the end of every FA-04 execution — written from actual run output. No manual documentation required.
The most common FA close blocker. Depreciation complete in FA but GL journals never generated. GL period close will fail because FA subledger balance does not match GL depreciation accounts. FA-04 provides CJE submission parameters.
One or more asset retirements in PENDING status — retirement entered but Calculate Gains and Losses not run. Gain or loss on disposal not yet recognized. FA-04 provides CGL submission parameters.
Assets added after the depreciation run date will not depreciate in the current period. Catch-up runs in the next period automatically. FA-04 quantifies the missed depreciation for the Controller's awareness.
Capitalizable AP invoices still in the mass additions queue at period close — assets not yet on the books. FA-04 identifies the hold reason and correction path to advance them to POST status.
| Table | Module | Purpose |
|---|---|---|
| FA_BOOK_CONTROLS | FA | Period open/close status and depreciation lock flag |
| FA_DEPRN_PERIODS | FA | Depreciation run history — batch ID, run date, completion |
| FA_DEPRN_SUMMARY | FA | Depreciation taken per asset per period |
| FA_RETIREMENTS | FA | Retirement status — PENDING count at period close |
| FA_MASS_ADDITIONS | FA | Mass addition queue status at period close |
| FA_ADDITIONS_B | FA | Assets added during period — date in service vs deprn run date |
| GL_JE_HEADERS | GL | FA depreciation journal batch — posting status |
| GL_PERIOD_STATUSES | GL | GL period open for journal transfer |
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.
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.
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:
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_EVENTS, XLA_AE_HEADERS — incorrect changes corrupt the subledger audit trail in ways undetectable until period close fails or an auditor requests a reconciliationWF_ITEMS, WF_ITEM_ACTIVITY_STATUSES — ad-hoc DML can corrupt the workflow engine state instance-wideA 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.
| Condition Identified | Resolution Path | Notes |
|---|---|---|
| Create Journal Entries not run — depreciation not in GL | Functional First | Submit the Create Journal Entries for Fixed Assets concurrent program for the book, period, and ledger. FA-04 confirms depreciation is complete (DEPRECIATION_BATCH_ID populated) before CJE submission. |
| PENDING retirements — CGL not yet run | Functional First | Submit Calculate Gains and Losses for the book and period. FA-04 identifies all PENDING retirements and their NBV for the CGL submission. CJE should run after CGL completes. |
| Assets added after depreciation run — period gap | Functional First | Late-added assets will catch up in the next period automatically. FA-04 documents the missed amount per asset for the Controller review. No direct fix available — this is standard FA behavior. |
| Mass additions in ON HOLD at period close | Direct Fix | FA-04 identifies each ON HOLD mass addition with the hold reason. Corrects the blocking condition (missing category, split error, cost issue) in FA_MASS_ADDITIONS with full backup. Post Mass Additions rerun after correction. |
| GL journals from CJE not posted | Functional First | Post the FA depreciation journal batch via GL > Journals > Post or the Post Journals concurrent program. FA-04 identifies the unposted GL batch from the CJE run output. |
| FA period already closed — CJE not run in time | Oracle Support | If the FA period was closed before CJE was run, reopening the period requires Oracle Support involvement. FA-04 documents the state for the SR — no direct DML on FA_BOOK_CONTROLS.CURRENT_OPEN_PERIOD. |
| Tax book depreciation incomplete | Functional First | Run depreciation for the TAX book separately from the corporate book. FA-04 identifies tax book period status independently and the assets requiring tax depreciation. |
| Unposted mass additions — assets not yet capitalized | Direct Fix | FA-04 identifies mass additions in POST status that have not been processed. Runs Post Mass Additions concurrent program parameters. Corrections for SPLIT or ON HOLD entries applied with full backup first. |
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.
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.
INSERT from the backup table. No reconstruction required.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.
References the Oracle public documentation for this diagnostic area. These links open directly on docs.oracle.com.
| R12 Guide (PDF) | Title & Chapter | Detail |
|---|---|---|
| 120faug.pdf | Oracle Assets User Guide — Depreciation — Period Close | Depreciation run completion, unposted journal entries, and FA period close sequence |
| 120faug.pdf | Oracle Assets User Guide — Chapter 2: Mass Additions Process | pp. 2-28 to 2-35: Mass additions in NEW or ON HOLD status blocking period close |
| 120glug.pdf | Oracle General Ledger User's Guide — Journal Import | FA journal entry transfer to GL and GL_INTERFACE cleanup for period close |
FA-04 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.
See this script run autonomously — Oracle AI Platform →