Analytics Catalog/Oracle Fusion ERP/Control Reports/Ledger Options Report
Explore the catalogReportsModulesEnterprise modelOTBI subject areasBICC PVOs
Oracle Fusion · Control Reports

Ledger Options Report

Control Reports

The core configuration of each ledger — chart of accounts, calendar, currency, and the control accounts (suspense, retained earnings, rounding) — used to confirm ledgers are set up consistently and the required system accounts exist.

Sample build of the Ledger Options Report — reconciled, and rendered tool-neutral so it runs in Power BI, ThoughtSpot, or Tableau.

Ledger Options Report
Sample build · illustrative
Filters
Mi
Sample
Ldgr Name
Globex Holdings
Ledger Set
US Primary
Ss
Sample
3
Ledgers
3
Control accounts set
1
Missing accounts
LedgerChart Of AccountsCalendarCurrencySuspense Account
US Primary1000-2100-000SampleUSD1000-2100-000
EU Primary1000-5400-000USD1000-5400-000
US Primary1000-1410-000SampleUSD1000-1410-000
UK Primary2000-2100-000USD2000-2100-000
US Primary1000-6300-000SampleUSD1000-6300-000
US Primary1000-2100-000SampleUSD1000-2100-000
AI Analyst · active
reading

The report reads GL_LEDGERS with GL_SUSPENSE_ACCOUNTS and the code-combination references, exposing each ledger's calendar, currency, and control accounts.

flag

One ledger has no suspense account defined — out-of-balance journal imports for it will reject instead of routing to suspense, stalling the subledger feed.

root cause & next step

Define the suspense account on that ledger (or confirm suspense posting is off on purpose); a missing suspense account is a frequent cause of failed GL imports at close.

Illustrative data. The live interactive version — drill-through, filters, export, and the AI Analyst — runs on your warehouse. See it live →

This is the report's BI Publisher data model — the SQL data set BI Publisher runs against Oracle tables to produce the output. The same SQL becomes a dbt model in your warehouse, so one definition drives both the formatted report and the analytics layer.

Data sources

How it interconnects: this data set reads the physical tables above. Those same tables surface in OTBI as subject areas and in BICC as PVOs — three lenses on one source. Open any table to trace its subject areas and View Objects.
SQL data set · genericized · parameterized · no hardcoded segments
Show / hide SQL
SELECT
name,
REPLACE(description, CHR(10), ' ') description,
--description,
CURRENCY_CODE,
PERIOD_SET_NAME,
FIRST_LEDGER_PERIOD_NAME,
ID_FLEX_STRUCTURE_NAME,
SLA_DESCRIPTION_LANGUAGE,
SLA_ACCOUNTING_METHOD_CODE,
ALC_LEDGER_TYPE_CODE, /* NO LOOKUP_TYPE*/
Retained_earnings_account,
CUM_TRANS_CCID,
PERIOD_AVERAGE_RATE_TYPE,
PERIOD_END_RATE_TYPE,
FUTURE_ENTERABLE_PERIODS_LIMIT,
THRESHOLD_AMOUNT,
MINIMUM_THRESHOLD_AMOUNT,
SUSPENSE_ALLOWED_FLAG,
SLA_BAL_BY_LEDGER_CURR_FLAG,
Default_Suspense_Account,/* NEED TO CHECK*/
round_acc,
ent_acc_bal_acc,/* NEED TO CHECK*/
ENABLE_JE_APPROVAL_FLAG,
BALANCE_MJE_BY_CURRENCY_FLAG,
ENABLE_RECONCILIATION_FLAG,
ALLOW_INTERCOMPANY_POST_FLAG,
SINGLE_CURRENCY_JOURNAL_FLAG,
PRIOR_PRD_NOTIFICATION_FLAG,
POP_UP_STAT_ACCOUNT_FLAG,
VALIDATE_JOURNAL_REF_DATE,
NET_CLOSING_BAL_FLAG,
STRICT_PERIOD_CLOSE_FLAG,
Journal_Rev_Criteria,
AUTOREV_AFTER_OPEN_PRD_FLAG,
AUTOMATE_SEC_JRNL_REV_FLAG,
SEQUENCING_MODE_CODE,
AP_DOC_SEQUENCING_OPTION_FLAG,
AR_DOC_SEQUENCING_OPTION_FLAG,
Enf_Chro_Order_Pay,
Enf_Chro_Order_Rec,
JRNLS_GROUP_BY_DATE_FLAG,
TO_CHAR(CREATION_DATE,'dd-Mon-YYYY HH24:MI:SS AM','NLS_DATE_LANGUAGE=English') CREATION_DATE,
CREATED_BY,
TO_CHAR(LAST_UPDATE_DATE,'dd-Mon-YYYY HH24:MI:SS AM','NLS_DATE_LANGUAGE=English') LAST_UPDATE_DATE,
LAST_UPDATED_BY,
ENABLE_REVAL_SS_TRACK_FLAG,
LEDGER_CATEGORY_CODE,
OBJECT_TYPE_CODE
FROM

(
SELECT
--ledgr_set.LEDGER_SET,
GL.name,
GL.description,
GL.CURRENCY_CODE,
GL.PERIOD_SET_NAME,
GL.FIRST_LEDGER_PERIOD_NAME,
FIFSV.ID_FLEX_STRUCTURE_NAME,
LT.MEANING SLA_DESCRIPTION_LANGUAGE,
GL.SLA_ACCOUNTING_METHOD_CODE,
GL.ALC_LEDGER_TYPE_CODE, /* NO LOOKUP_TYPE*/
GCC1.concatenated_segments Retained_earnings_account,
GCC2.concatenated_segments CUM_TRANS_CCID,
GDCT.USER_CONVERSION_TYPE PERIOD_AVERAGE_RATE_TYPE,
GDCT1.USER_CONVERSION_TYPE PERIOD_END_RATE_TYPE,
GL.FUTURE_ENTERABLE_PERIODS_LIMIT,
GL.THRESHOLD_AMOUNT,
GL.MINIMUM_THRESHOLD_AMOUNT,
GL.SUSPENSE_ALLOWED_FLAG,
GL.SLA_BAL_BY_LEDGER_CURR_FLAG,
SUS_ACC.concatenated_segments Default_Suspense_Account,/* NEED TO CHECK*/
GCC4.concatenated_segments round_acc,
GCC5.concatenated_segments ent_acc_bal_acc,/* NEED TO CHECK*/
GL.ENABLE_JE_APPROVAL_FLAG,
GL.BALANCE_MJE_BY_CURRENCY_FLAG,
GL.ENABLE_RECONCILIATION_FLAG,
GL.ALLOW_INTERCOMPANY_POST_FLAG,
GL.SINGLE_CURRENCY_JOURNAL_FLAG,
GL.PRIOR_PRD_NOTIFICATION_FLAG,
GL.POP_UP_STAT_ACCOUNT_FLAG,
GL.VALIDATE_JOURNAL_REF_DATE,
GL.NET_CLOSING_BAL_FLAG,
GL.STRICT_PERIOD_CLOSE_FLAG,
GACS.CRITERIA_SET_NAME Journal_Rev_Criteria,
GL.AUTOREV_AFTER_OPEN_PRD_FLAG,
GL.AUTOMATE_SEC_JRNL_REV_FLAG,
CASE WHEN GL.SEQUENCING_MODE_CODE='L' THEN 'Ledger'
     WHEN GL.SEQUENCING_MODE_CODE='LE' THEN 'Legal Entity'
	 WHEN GL.SEQUENCING_MODE_CODE='N' THEN 'No Sequencing'
	 ELSE 
	 GL.SEQUENCING_MODE_CODE END SEQUENCING_MODE_CODE,
GL.AP_DOC_SEQUENCING_OPTION_FLAG,
GL.AR_DOC_SEQUENCING_OPTION_FLAG,
CASE WHEN (GL.ENF_SEQ_DATE_CORRELATION_CODE)='P' THEN 'Payables' else GL.ENF_SEQ_DATE_CORRELATION_CODE end Enf_Chro_Order_Pay,
CASE WHEN (GL.ENF_SEQ_DATE_CORRELATION_CODE)='R' THEN 'Receivables' else GL.ENF_SEQ_DATE_CORRELATION_CODE end Enf_Chro_Order_Rec,
--GL.ENF_SEQ_DATE_CORRELATION_CODE,
GL.JRNLS_GROUP_BY_DATE_FLAG,
GL.CREATION_DATE,
GL.CREATED_BY,
GL.LAST_UPDATE_DATE,
GL.LAST_UPDATED_BY,
GL.ENABLE_REVAL_SS_TRACK_FLAG,
GL.LEDGER_CATEGORY_CODE,
GL.OBJECT_TYPE_CODE

FROM
GL_LEDGERS GL,
/*(SELECT
GL1.NAME LEDGER_SET,
GLSA.LEDGER_ID
FROM
GL_LEDGER_SET_ASSIGNMENTS GLSA,
GL_LEDGERS GL1
WHERE 1=1
AND GLSA.LEDGER_SET_ID=GL1.LEDGER_ID
) ledgr_set,*/
GL_TRANSACTION_CALENDAR GTC,
FND_ID_FLEX_STRUCTURES_VL FIFSV,
GL_CODE_COMBINATIONS GCC1,
GL_CODE_COMBINATIONS GCC2,
--GL_CODE_COMBINATIONS GCC3,
GL_CODE_COMBINATIONS GCC4,
GL_CODE_COMBINATIONS GCC5,
GL_AUTOREV_CRITERIA_SETS GACS,
GL_DAILY_CONVERSION_TYPES GDCT,
GL_DAILY_CONVERSION_TYPES GDCT1,
(SELECT 
GSA.LEDGER_ID,
GCC.CONCATENATED_SEGMENTS
FROM
GL_SUSPENSE_ACCOUNTS GSA,
GL_CODE_COMBINATIONS GCC
WHERE GSA.CODE_COMBINATION_ID=GCC.CODE_COMBINATION_ID(+)
) SUS_ACC,
/*(SELECT MEANING ,
LOOKUP_CODE
FROM FND_LOOKUP_VALUES_TL  
WHERE LOOKUP_TYPE = 'LEDGERS' 
AND  (LANGUAGE = 'US' )) OTC,*/
(SELECT MEANING ,
LOOKUP_CODE
FROM FND_LOOKUP_VALUES_TL  
WHERE LOOKUP_TYPE = 'PER_CORRESP_LANG' 
AND  (LANGUAGE = 'US' )) LT
WHERE 1=1
AND GL.TRANSACTION_CALENDAR_ID=GTC.TRANSACTION_CALENDAR_ID(+)
AND GL.CHART_OF_ACCOUNTS_ID=FIFSV.ID_FLEX_NUM(+)
--AND GL.OBJECT_TYPE_CODE=OTC.LOOKUP_CODE(+)
AND GL.SLA_DESCRIPTION_LANGUAGE=LT.LOOKUP_CODE(+)
AND GL.RET_EARN_CODE_COMBINATION_ID=GCC1.CODE_COMBINATION_ID(+)
AND GL.CUM_TRANS_CODE_COMBINATION_ID=GCC2.CODE_COMBINATION_ID(+)
AND GL.LEDGER_ID =SUS_ACC.LEDGER_ID(+)
--AND GL.SLA_LEDGER_CUR_BAL_SUS_CCID=GCC3.CODE_COMBINATION_ID(+)
AND GL.ROUNDING_CODE_COMBINATION_ID=GCC4.CODE_COMBINATION_ID(+)
AND GL.SLA_ENTERED_CUR_BAL_SUS_CCID=GCC5.CODE_COMBINATION_ID(+)
AND GL.CRITERIA_SET_ID=GACS.CRITERIA_SET_ID(+)
AND GL.PERIOD_AVERAGE_RATE_TYPE=GDCT.CONVERSION_TYPE(+)
AND GL.PERIOD_END_RATE_TYPE=GDCT1.CONVERSION_TYPE(+)
AND UPPER(GL.NAME) NOT LIKE 'DO%NOT%'
--AND GL.ledger_id =ledgr_set.ledger_id(+)
AND (GL.name IN (:P_LDGR_NAME)
OR  'ALL' IN(:P_LDGR_NAME||'ALL'))
AND (GL.OBJECT_TYPE_CODE IN (CASE WHEN (:P_LEDGER_SET)='Ledger' THEN 'L'  end,
                                                                        CASE WHEN (:P_LEDGER_SET)='Ledger Set' THEN 'S' END,
																			 (:P_LEDGER_SET))
OR  'ALL' IN(:P_LEDGER_SET||'ALL'))
--AND UPPER(GL.LEDGER_CATEGORY_CODE)<>'NONE'
--and GL.name='PL BERMUDA USD GAAP'

UNION
SELECT
'' name,
'' description,
'' CURRENCY_CODE,
'NO DATA' PERIOD_SET_NAME,
'' FIRST_LEDGER_PERIOD_NAME,
'' ID_FLEX_STRUCTURE_NAME,
'' SLA_DESCRIPTION_LANGUAGE,
'' SLA_ACCOUNTING_METHOD_CODE,
'' ALC_LEDGER_TYPE_CODE, /* NO LOOKUP_TYPE*/
'' Retained_earnings_account,
'' CUM_TRANS_CCID,
'' PERIOD_AVERAGE_RATE_TYPE,
'' PERIOD_END_RATE_TYPE,
TO_NUMBER('') FUTURE_ENTERABLE_PERIODS_LIMIT,
TO_NUMBER('') THRESHOLD_AMOUNT,
TO_NUMBER('') MINIMUM_THRESHOLD_AMOUNT,
'' SUSPENSE_ALLOWED_FLAG,
'' SLA_BAL_BY_LEDGER_CURR_FLAG,
'' Default_Suspense_Account,/* NEED TO CHECK*/
'' round_acc,
'' ent_acc_bal_acc,/* NEED TO CHECK*/
'' ENABLE_JE_APPROVAL_FLAG,
'' BALANCE_MJE_BY_CURRENCY_FLAG,
'' ENABLE_RECONCILIATION_FLAG,
'' ALLOW_INTERCOMPANY_POST_FLAG,
'' SINGLE_CURRENCY_JOURNAL_FLAG,
'' PRIOR_PRD_NOTIFICATION_FLAG,
'' POP_UP_STAT_ACCOUNT_FLAG,
'' VALIDATE_JOURNAL_REF_DATE,
'' NET_CLOSING_BAL_FLAG,
'' STRICT_PERIOD_CLOSE_FLAG,
'' Journal_Rev_Criteria,
'' AUTOREV_AFTER_OPEN_PRD_FLAG,
'' AUTOMATE_SEC_JRNL_REV_FLAG,
'' SEQUENCING_MODE_CODE,
'' AP_DOC_SEQUENCING_OPTION_FLAG,
'' AR_DOC_SEQUENCING_OPTION_FLAG,
'' Enf_Chro_Order_Pay,
'' Enf_Chro_Order_Rec,
'' JRNLS_GROUP_BY_DATE_FLAG,
TO_DATE('') CREATION_DATE,
'' CREATED_BY,
TO_DATE('') LAST_UPDATE_DATE,
'' LAST_UPDATED_BY,
'' ENABLE_REVAL_SS_TRACK_FLAG,
'' LEDGER_CATEGORY_CODE,
'' OBJECT_TYPE_CODE

FROM
GL_LEDGERS GL
WHERE NOT EXISTS(
SELECT
--ledgr_set.LEDGER_SET,
GL.name,
GL.description,
GL.CURRENCY_CODE,
GL.PERIOD_SET_NAME,
GL.FIRST_LEDGER_PERIOD_NAME,
FIFSV.ID_FLEX_STRUCTURE_NAME,
LT.MEANING SLA_DESCRIPTION_LANGUAGE,
GL.SLA_ACCOUNTING_METHOD_CODE,
GL.ALC_LEDGER_TYPE_CODE, /* NO LOOKUP_TYPE*/
GCC1.concatenated_segments Retained_earnings_account,
GCC2.concatenated_segments CUM_TRANS_CCID,
GL.PERIOD_AVERAGE_RATE_TYPE,
GL.PERIOD_END_RATE_TYPE,
GL.FUTURE_ENTERABLE_PERIODS_LIMIT,
GL.THRESHOLD_AMOUNT,
GL.MINIMUM_THRESHOLD_AMOUNT,
GL.SUSPENSE_ALLOWED_FLAG,
GL.SLA_BAL_BY_LEDGER_CURR_FLAG,
SUS_ACC.concatenated_segments Default_Suspense_Account,/* NEED TO CHECK*/
GCC4.concatenated_segments round_acc,
GCC5.concatenated_segments ent_acc_bal_acc,/* NEED TO CHECK*/
GL.ENABLE_JE_APPROVAL_FLAG,
GL.BALANCE_MJE_BY_CURRENCY_FLAG,
GL.ENABLE_RECONCILIATION_FLAG,
GL.ALLOW_INTERCOMPANY_POST_FLAG,
GL.SINGLE_CURRENCY_JOURNAL_FLAG,
GL.PRIOR_PRD_NOTIFICATION_FLAG,
GL.POP_UP_STAT_ACCOUNT_FLAG,
GL.VALIDATE_JOURNAL_REF_DATE,
GL.NET_CLOSING_BAL_FLAG,
GL.STRICT_PERIOD_CLOSE_FLAG,
GACS.CRITERIA_SET_NAME Journal_Rev_Criteria,
GL.AUTOREV_AFTER_OPEN_PRD_FLAG,
GL.AUTOMATE_SEC_JRNL_REV_FLAG,
GL.SEQUENCING_MODE_CODE,
GL.AP_DOC_SEQUENCING_OPTION_FLAG,
GL.AR_DOC_SEQUENCING_OPTION_FLAG,
CASE WHEN (GL.ENF_SEQ_DATE_CORRELATION_CODE)='P' THEN 'Payables' else GL.ENF_SEQ_DATE_CORRELATION_CODE end Enf_Chro_Order_Pay,
CASE WHEN (GL.ENF_SEQ_DATE_CORRELATION_CODE)='R' THEN 'Receivables' else GL.ENF_SEQ_DATE_CORRELATION_CODE end Enf_Chro_Order_Rec,
--GL.ENF_SEQ_DATE_CORRELATION_CODE,
GL.JRNLS_GROUP_BY_DATE_FLAG,
GL.CREATION_DATE,
GL.CREATED_BY,
GL.LAST_UPDATE_DATE,
GL.LAST_UPDATED_BY,
GL.ENABLE_REVAL_SS_TRACK_FLAG,
GL.LEDGER_CATEGORY_CODE,
GL.OBJECT_TYPE_CODE

FROM
GL_LEDGERS GL,
/*(SELECT
GL1.NAME LEDGER_SET,
GLSA.LEDGER_ID
FROM
GL_LEDGER_SET_ASSIGNMENTS GLSA,
GL_LEDGERS GL1
WHERE 1=1
AND GLSA.LEDGER_SET_ID=GL1.LEDGER_ID
) ledgr_set,*/
GL_TRANSACTION_CALENDAR GTC,
FND_ID_FLEX_STRUCTURES_VL FIFSV,
GL_CODE_COMBINATIONS GCC1,
GL_CODE_COMBINATIONS GCC2,
--GL_CODE_COMBINATIONS GCC3,
GL_CODE_COMBINATIONS GCC4,
GL_CODE_COMBINATIONS GCC5,
GL_AUTOREV_CRITERIA_SETS GACS,
(SELECT 
GSA.LEDGER_ID,
GCC.CONCATENATED_SEGMENTS
FROM
GL_SUSPENSE_ACCOUNTS GSA,
GL_CODE_COMBINATIONS GCC
WHERE GSA.CODE_COMBINATION_ID=GCC.CODE_COMBINATION_ID(+)
) SUS_ACC,
/*(SELECT MEANING ,
LOOKUP_CODE
FROM FND_LOOKUP_VALUES_TL  
WHERE LOOKUP_TYPE = 'LEDGERS' 
AND  (LANGUAGE = 'US' )) OTC,*/
(SELECT MEANING ,
LOOKUP_CODE
FROM FND_LOOKUP_VALUES_TL  
WHERE LOOKUP_TYPE = 'PER_CORRESP_LANG' 
AND  (LANGUAGE = 'US' )) LT
WHERE 1=1
AND GL.TRANSACTION_CALENDAR_ID=GTC.TRANSACTION_CALENDAR_ID(+)
AND GL.CHART_OF_ACCOUNTS_ID=FIFSV.ID_FLEX_NUM(+)
--AND GL.OBJECT_TYPE_CODE=OTC.LOOKUP_CODE(+)
AND GL.SLA_DESCRIPTION_LANGUAGE=LT.LOOKUP_CODE(+)
AND GL.RET_EARN_CODE_COMBINATION_ID=GCC1.CODE_COMBINATION_ID(+)
AND GL.CUM_TRANS_CODE_COMBINATION_ID=GCC2.CODE_COMBINATION_ID(+)
AND GL.LEDGER_ID =SUS_ACC.LEDGER_ID(+)
--AND GL.SLA_LEDGER_CUR_BAL_SUS_CCID=GCC3.CODE_COMBINATION_ID(+)
AND GL.ROUNDING_CODE_COMBINATION_ID=GCC4.CODE_COMBINATION_ID(+)
AND GL.SLA_ENTERED_CUR_BAL_SUS_CCID=GCC5.CODE_COMBINATION_ID(+)
AND GL.CRITERIA_SET_ID=GACS.CRITERIA_SET_ID(+)
AND UPPER(GL.NAME) NOT LIKE 'DO%NOT%'
--AND GL.ledger_id =ledgr_set.ledger_id(+)
AND (GL.name IN (:P_LDGR_NAME)
OR  'ALL' IN(:P_LDGR_NAME||'ALL'))
AND (GL.OBJECT_TYPE_CODE IN (CASE WHEN (:P_LEDGER_SET)='Ledger' THEN 'L'  end,
                                                                        CASE WHEN (:P_LEDGER_SET)='Ledger Set' THEN 'S' END,
																			 (:P_LEDGER_SET))
OR  'ALL' IN(:P_LEDGER_SET||'ALL'))
)
)
ORDER BY
--LEDGER_SET,
NAME,
OBJECT_TYPE_CODE
:MI :P_LDGR_NAME :P_LEDGER_SET :SS

The data-warehouse model — one fact surrounded by conformed dimensions (what you slice by) and measures (what you aggregate), expressed as dbt so it migrates with you. Grain: one row per source transaction.

GL_SUSPENSE_ACCOUNTSdimensionGL_CODE_COMBINATIONSdimensionFND_LOOKUP_VALUES_TLdimensionGL_LEDGERSfact · one row per source transactionAmount
●— fact → dimension join
ElementTypeDefinition
GL_SUSPENSE_ACCOUNTSdimensiondimension
GL_CODE_COMBINATIONSdimensiondimension
FND_LOOKUP_VALUES_TLdimensiondimension
Amountmeasuremeasure
Runs on your cloud warehouse — Snowflake, BigQuery, Redshift, or Synapse on AWS, Google Cloud, Azure, or any provider. Reconciled to the source control total — 0% variance by design. You own the code, the model, and the data.
How the data gets here: a BICC bulk extract of the source tables above, on the same pattern for every report. See the extraction pattern & data flow →
See the complete model
How this report's fact and dimensions fit the full picture, via conformed keys.
Control Reports data model →Enterprise model →

Every source object behind this report. Each linked table has its own page with full column descriptions, drawn from the Oracle BICC lineage and articulated for practitioners.

TableReporting columnsSubject areas
GL_LEDGERS10104
GL_SUSPENSE_ACCOUNTSSetup / configuration table — joined for reference, not exposed for analytics
GL_CODE_COMBINATIONS761
FND_LOOKUP_VALUES_TL13218
Reporting columns = fields the report selects that are exposed as analytics attributes; subject areas = the OTBI subject areas the table appears in. Setup and configuration tables (master data, ledger and book setup, lookups) are referenced by the report's joins but aren't exposed as analytics columns or subject areas — that's expected, not a gap.