Analytics Catalog/Oracle Fusion ERP/Fusion Accounting Hub/AHCS Journal Entry Line - Rights Logic Report
Oracle Fusion · Fusion Accounting Hub

AHCS Journal Entry Line - Rights Logic Report

Fusion Accounting Hub

AHCS Journal Entry Line - Rights Logic Report — the report logic, source tables, and parameterized SQL behind it, reconciled to source and ready to rebuild on a customer-owned warehouse.

Run note · Performance  The subledger (XLA) join — especially Projects-to-XLA — is a known BI Publisher performance trap on large ledgers. Pre-join it in the warehouse, or apply tight ledger, period, and source filters before running online.

Sample build of the AHCS Journal Entry Line - Rights Logic Report — reconciled, and rendered tool-neutral so it runs in Power BI, ThoughtSpot, or Tableau.

AHCS Journal Entry Line - Rights Logic Report
Sample build · illustrative
Filters
Accounting Period
FEB-26
Event Type
Sample
From Accounting Date
2026-02-28
Ledger
Sample
Request Id
1003
To Accounting Date
2026-02-28
$3,573,238
Net amount
6,074
Records
29
Unbalanced
+6.4%
Δ vs prior
Ledger NameAccounting PeriodEvent TypeJournal SourceJournal CategoryJournal Batch NameTransaction Number
Acme IndustrialAPR-26SampleSampleSampleAcme Industrial1001
Northwind TradingMAR-26Northwind Trading1002
Globex HoldingsFEB-26SampleSampleSampleGlobex Holdings1003
Initech LLCJAN-26Initech LLC1004
Umbrella CorpDEC-25SampleSampleSampleUmbrella Corp1005
Acme IndustrialAPR-26SampleSampleSampleAcme Industrial1001
AI Analyst · active
what it watches

On this report the AI Analyst tracks Net amount by Ledger Name, flags entries that move sharply against the prior period, and drills any figure to its source transaction.

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
WITH SECURITY_TBL AS
(SELECT DISTINCT GL.LEDGER_ID
FROM 
GL_LEDGERS GL,
GL_ACCESS_SETS GAS,
	FUN_USER_ROLE_DATA_ASGNMNTS FURDA,
	PER_ROLES_DN PRD,
	PER_USER_ROLES PUR,
	PER_USERS PU

WHERE 
UPPER(GL.LEDGER_CATEGORY_CODE) <> 'NONE'
AND GAS.ACCESS_SET_ID=GL.IMPLICIT_ACCESS_SET_ID
	AND (GAS.ACCESS_SET_ID =FURDA.ACCESS_SET_ID OR GL.LEDGER_ID=FURDA.LEDGER_ID)
	AND UPPER(FURDA.role_name) in ('XXC_AHCS_MANAGER_JOB', 'XXC_GL_INQUIRY_JOB','XXC_GENERAL_ACCOUNTANT_JOB','XXC_GENERAL_ACCOUNTING_MANAGER_JOB')
	AND UPPER(FURDA.ACTIVE_FLAG) = 'Y'
	AND UPPER(FURDA.ROLE_NAME) = UPPER(PRD.ROLE_COMMON_NAME)
	AND PRD.ROLE_ID = PUR.ROLE_ID
	AND PUR.USER_ID = PU.USER_ID
	AND  UPPER(PU.USERNAME) = UPPER(:xdo_user_name)
	AND PU.USER_GUID = FURDA.USER_GUID
	
)

SELECT
 GLL.NAME LEDGER_NAME
, XAH.PERIOD_NAME AS ACCOUNTING_PERIOD
, XET.NAME AS EVENT_TYPE
, GJST.USER_JE_SOURCE_NAME AS JOURNAL_SOURCE 
, GJCT.USER_JE_CATEGORY_NAME AS JOURNAL_CATEGORY
,GJB.NAME AS JOURNAL_BATCH_NAME
, XTE.TRANSACTION_NUMBER
, XAL.AE_LINE_NUM LINE_NUMBER
,XAL.CURRENCY_CODE ENTERED_CURRENCY
,NVL(XAL.ENTERED_DR,0) ENTERED_DR
,NVL(XAL.ENTERED_CR,0) ENTERED_CR
,GLL.CURRENCY_CODE LEDGER_CURRENCY
,NVL(XAL.ACCOUNTED_DR,0) ACCOUNTED_DR
,NVL(XAL.ACCOUNTED_CR,0) ACCOUNTED_CR
, CASE WHEN NVL(GCC.SEGMENT4,'-1')!='-1' THEN  GCC.SEGMENT1 || '.' || GCC.SEGMENT2 || '.' || GCC.SEGMENT3 || '.' || GCC.SEGMENT4 || '.' || GCC.SEGMENT5
 || '.' || GCC.SEGMENT6 || '.' || GCC.SEGMENT7 || '.' || GCC.SEGMENT8 || '.' || GCC.SEGMENT9 END AS ACCOUNT_CODE_COMBINATION
 , FLV3.MEANING AS ACCOUNTING_CLASS
,FLV.MEANING ACCOUNTING_ENTRY_STATUS
,NVL(FLV2.DESCRIPTION, 'Unposted') POSTING_STATUS
, TO_CHAR(XAH.CREATION_DATE,'YYYY-MM-DD','nls_date_language=American') JOURNAL_CREATION_DATE
--, XAH.CREATION_DATE JOURNAL_CREATION_DATE
,XAH.DESCRIPTION HEADER_DESCRIPTION
,XAL.DESCRIPTION LINE_DESCRIPTION
,XAL.SR31 Integration_ID
,XAL.SR32 Source_File_Name
,XAL.SR36 Contract_Number
, XAL.SR37 Source_Set_of_Books
,  XAL.SR33 Reference27
, XAL.SR34 Source_Detail_Reference
,XAL.SR35 Batch_Name

FROM
XLA_TRANSACTION_ENTITIES XTE,
XLA_TRANSACTION_HEADERS XTH,
XLA_AE_HEADERS XAH,
GL_LEDGERS GLL,
XLA_SUBLEDGERS XSL,
XLA_AE_LINES XAL,
GL_CODE_COMBINATIONS GCC,
XLA_SUBLEDGERS_TL XST
,XLA_EVENT_TYPES_TL XET
, GL_JE_SOURCES_TL GJST
, GL_JE_CATEGORIES_TL GJCT
,gl_je_batches GJB
, FND_LOOKUP_VALUES_VL FLV2
, FND_LOOKUP_VALUES_VL FLV
,FND_LOOKUP_VALUES_VL FLV3
,GL_IMPORT_REFERENCES GIR
,SECURITY_TBL ST
WHERE 1=1
AND ST.LEDGER_ID=GLL.LEDGER_ID
AND XAH.AE_HEADER_ID = XAL.AE_HEADER_ID
AND XAH.APPLICATION_ID=XTH.APPLICATION_ID(+)
AND XAH.EVENT_ID=XTH.EVENT_ID(+)
AND XAH.APPLICATION_ID = XAL.APPLICATION_ID
AND XAH.ENTITY_ID = XTE.ENTITY_ID 
AND XAH.APPLICATION_ID = XTE.APPLICATION_ID  
AND XAH.APPLICATION_ID = XSL.APPLICATION_ID 
AND XSL.APPLICATION_ID=XST.APPLICATION_ID
AND xsT.LANGUAGE  = userenv('LANG')
and xah.application_id = xet.application_id
and xah.event_type_code = xet.event_type_code
AND xET.LANGUAGE  = userenv('LANG')
AND XSL.IMPLEMENTATION_MODE_CODE = 'SIMPLIFIED'
AND XAH.LEDGER_ID = GLL.LEDGER_ID
AND XST.APPLICATION_NAME ='RIGHTSLOGIC'
--AND NVL(XAL.SR31,'-1')!='-1'
AND XAL.CODE_COMBINATION_ID = GCC.CODE_COMBINATION_ID(+)
AND GJST.JE_SOURCE_NAME=XSL.JE_SOURCE_NAME
AND GJCT.JE_CATEGORY_NAME(+)=XAH.JE_CATEGORY_NAME
AND GJCT.LANGUAGE (+) = userenv('LANG')
AND GJST.LANGUAGE  = userenv('LANG')
AND FLV3.LOOKUP_TYPE='XLA_ACCOUNTING_CLASS'
AND FLV3.LOOKUP_CODE=XAL.ACCOUNTING_CLASS_CODE
AND FLV.LOOKUP_TYPE='XLA_ACCOUNTING_ENTRY_STATUS'
AND FLV.LOOKUP_CODE=XAH.ACCOUNTING_ENTRY_STATUS_CODE
AND GJB.GROUP_ID(+)=XAH.GROUP_ID
   AND FLV2.LOOKUP_TYPE(+)='MJE_BATCH_STATUS'
   AND FLV2.LOOKUP_CODE(+)=GJB.STATUS
   AND GIR.GL_SL_LINK_ID(+)=XAL.GL_SL_LINK_ID	
   AND GIR.GL_SL_LINK_TABLE(+)	=XAL.GL_SL_LINK_TABLE	
   AND GIR.JE_BATCH_ID=GJB.JE_BATCH_ID(+)
   AND XAL.ACCOUNTING_CLASS_CODE=(SELECT  XAL1.ACCOUNTING_CLASS_CODE
                                   FROM XLA_AE_LINES XAL1 
								   WHERE XAL1.AE_HEADER_ID=XAL.AE_HEADER_ID
								   AND XAL1.AE_LINE_NUM=XAL.AE_LINE_NUM
								   AND XAL1.APPLICATION_ID=XAL.APPLICATION_ID
								   AND (XAL1.ACCOUNTING_CLASS_CODE!='EXCHANGE_GAIN_LOSS'
								   OR (XAL1.ACCOUNTED_DR!=0 OR XAL1.ACCOUNTED_CR!=0))
								   ) 

--Parameters
AND XAH.ACCOUNTING_DATE BETWEEN :P_FROM_ACCOUNTING_DATE AND :P_TO_ACCOUNTING_DATE
AND (XAH.PERIOD_NAME IN (:P_ACCOUNTING_PERIOD) OR 'All' IN ('All'||:P_ACCOUNTING_PERIOD))
AND (GLL.NAME IN (:P_Ledger) OR 'All' IN ('All'||:P_Ledger))
AND (XTH.REQUEST_ID  IN (:P_REQUEST_ID) OR 'All' IN ('All'||:P_REQUEST_ID))
AND (XET.NAME  IN (:P_EVENT_TYPE) OR 'All' IN ('All'||:P_EVENT_TYPE))

ORDER BY GLL.NAME, XAH.PERIOD_NAME, XTE.TRANSACTION_NUMBER, XAL.AE_LINE_NUM, XET.NAME,  GCC.SEGMENT1 || '.' || GCC.SEGMENT2 || '.' || GCC.SEGMENT3 || '.' || GCC.SEGMENT4 || '.' || GCC.SEGMENT5
 || '.' || GCC.SEGMENT6 || '.' || GCC.SEGMENT7 || '.' || GCC.SEGMENT8 || '.' || GCC.SEGMENT9
:P_ACCOUNTING_PERIOD :P_EVENT_TYPE :P_FROM_ACCOUNTING_DATE :P_Ledger :P_REQUEST_ID :P_TO_ACCOUNTING_DATE :xdo_user_name

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_ACCESS_SETSdimensionFUN_USER_ROLE_DATA_ASGNMN…dimensionPER_ROLES_DNdimensionPER_USER_ROLESdimensionGL_LEDGERSfact · one row per source transactionAmount
ElementTypeDefinition
GL_ACCESS_SETSdimensiondimension
FUN_USER_ROLE_DATA_ASGNMNTSdimensiondimension
PER_ROLES_DNdimensiondimension
PER_USER_ROLESdimensiondimension
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.
See the complete model
How this report's fact and dimensions fit the full picture, via conformed keys.
Fusion Accounting Hub 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_ACCESS_SETS
FUN_USER_ROLE_DATA_ASGNMNTS
PER_ROLES_DN
PER_USER_ROLES160
PER_USERS2227
XLA_TRANSACTION_ENTITIES23
XLA_TRANSACTION_HEADERS
XLA_AE_HEADERS1619
XLA_SUBLEDGERS
XLA_AE_LINES2317
GL_CODE_COMBINATIONS761

Every report in this catalog leaves Oracle Fusion and lands in your warehouse the same way — a BICC bulk extract of the source tables, organized into analytics-ready models. Because the pattern is identical for every report, we explain it once — with the full data-flow visual — on a single page.

See the extraction pattern & data flow →