Analytics Catalog/Oracle Fusion ERP/Fixed Assets/Asset Category Exceptions Report
Explore the catalogReportsModulesEnterprise modelOTBI subject areasBICC PVOs
Oracle Fusion · Fixed Assets

Asset Category Exceptions Report

Fixed Assets

Assets whose category setup is inconsistent with the category-book defaults — wrong or missing depreciation method, life, or account — so finance can correct them before they depreciate incorrectly.

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

Asset Category Exceptions Report
Sample build · illustrative
Filters
Mi
Sample
Book Class
CORP
Book Name
Globex Holdings
Date
2026-02-28
Ss
Sample
3,840
Assets checked
52
Category exceptions
18
Wrong method
Asset NumberCategoryBookExpected MethodActual MethodException
1001Computer-HardwareCORPStandardStandardSample
1002BuildingsTAX FEDERALCorporateCorporate
1003VehiclesCORPStandardStandardSample
1004Furniture-FixturesIFRSDefaultDefault
1005MachineryTAX STATEStandardStandardSample
1001Computer-HardwareCORPStandardStandardSample
AI Analyst · active
reading

The report compares each asset's depreciation setup in FA_BOOKS against the category-book defaults in FA_CATEGORY_BOOKS, listing the mismatches.

flag

18 assets depreciate on a method that differs from their category default — they expense at the wrong rate every period until corrected.

root cause & next step

Re-default the 18 assets to their category method, or confirm the override was intentional; mismatches usually come from manual entry that skipped the category default.

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   TRANSACTION_HEADER_ID
		,ASSET_NUMBER
		,DESCRIPTION
		,BOOK_TYPE_CODE
		,CREATION_DATE
		,DATE_PLACED_IN_SERVICE
		,CREATED_BY
		,LAST_UPDATED_BY
		,TO_CHAR(LAST_UPDATE_DATE, 'MM/DD/YYYY HH24:MI:SS') LAST_UPDATE_DATE
		,ATTRIBUTE_CATEGORY_CODE
		,LIFE_IN_MONTHS1
		,LIFE_IN_MONTHS
		,PRORATE_CONVENTION_CODE1
		,PRORATE_CONVENTION_CODE
		,METHOD_CODE1
		,METHOD_CODE
		,BONUS_RULE1
		,BONUS_RULE
		,DEPRN_LIMIT_TYPE1
		,DEPRN_LIMIT_TYPE
		,DEPRN_LIMIT_AMOUNT1 --01/04
		,DEPRN_LIMIT_AMOUNT --01/04
		,DEPRN_LIMIT_PERCENT1 --01/04
		,DEPRN_LIMIT_PERCENT --01/04
		,CAPITALIZE_FLAG1
		,CAPITALIZE_FLAG
		,SEGMENT41
		,SEGMENT4
		,DEPRECIATE_FLAG1
		,DEPRECIATE_FLAG
		,AMORTIZE_FLAG
		,SEGMENT1
		,SEGMENT2
		,SEGMENT3		
		,SEGMENT5
		,SEGMENT6
		,SEGMENT7
		,BOOK_CLASS
		,CATEGORY_ID
		,CATEGORY_ID1
		,BOOK_TYPE_CODE1
		,RUN_DATE
FROM (
	SELECT DISTINCT Q2.TRANSACTION_HEADER_ID
		,Q2.ASSET_NUMBER
		,Q2.DESCRIPTION
		,Q2.BOOK_TYPE_CODE
		,TO_CHAR(Q2.CREATION_DATE, 'MM/DD/YYYY HH24:MI:SS') CREATION_DATE
		,TO_CHAR(Q2.DATE_PLACED_IN_SERVICE, 'MM/DD/YYYY HH24:MI:SS') DATE_PLACED_IN_SERVICE
		,Q2.CREATED_BY
		,Q2.LAST_UPDATED_BY
		,Q2.LAST_UPDATE_DATE --TO_CHAR(Q2.LAST_UPDATE_DATE, 'MM/DD/YYYY HH24:MI:SS') LAST_UPDATE_DATE
		,Q2.ATTRIBUTE_CATEGORY_CODE
		,Q2.LIFE_IN_MONTHS
		,Q2.PRORATE_CONVENTION_CODE
		,Q2.BONUS_RULE
		,Q2.DEPRN_LIMIT_TYPE
		,Q2.DEPRN_LIMIT_AMOUNT --01/04
		,Q2.DEPRN_LIMIT_PERCENT --01/04
		,Q2.CAPITALIZE_FLAG
		,Q2.SEGMENT1
		,Q2.SEGMENT2
		,Q2.SEGMENT3
		,Q2.SEGMENT4
		,Q2.SEGMENT5
		,Q2.SEGMENT6
		,Q2.SEGMENT7
		,Q2.DEPRECIATE_FLAG
		,Q2.AMORTIZE_FLAG
		,Q2.METHOD_CODE
		,Q2.BOOK_CLASS
		,Q2.CATEGORY_ID
		,Q3.CATEGORY_ID1
		,Q3.BOOK_TYPE_CODE1
		,Q3.LIFE_IN_MONTHS1
		,Q3.PRORATE_CONVENTION_CODE1
		,Q3.METHOD_CODE1
		,Q3.BONUS_RULE1
		,Q3.DEPRN_LIMIT_TYPE1
		,Q3.DEPRN_LIMIT_AMOUNT1 --01/04
		,Q3.DEPRN_LIMIT_PERCENT1 --01/04
		,Q3.CAPITALIZE_FLAG1
		,Q3.DEPRECIATE_FLAG1
		,Q3.SEGMENT41
		,TO_CHAR(:P_DATE, 'MM/DD/YYYY') RUN_DATE
	FROM (
		SELECT MAX(FTH.LAST_UPDATE_DATE) LAST_UPDATE_DATE
			,FAB.ASSET_NUMBER
			,FB.BOOK_TYPE_CODE
		FROM FA_ADDITIONS_B FAB
			,FA_BOOKS FB
			,FA_BOOK_CONTROLS FBC
			,FA_TRANSACTION_HEADERS FTH
		WHERE 1 = 1
			AND FAB.ASSET_ID = FB.ASSET_ID
			AND FAB.ASSET_ID = FTH.ASSET_ID
			AND FB.ASSET_ID = FTH.ASSET_ID
			AND FB.BOOK_TYPE_CODE = FTH.BOOK_TYPE_CODE
			AND FB.TRANSACTION_HEADER_ID_IN = FTH.TRANSACTION_HEADER_ID
			AND FB.BOOK_TYPE_CODE = FBC.BOOK_TYPE_CODE
			AND FTH.BOOK_TYPE_CODE = FBC.BOOK_TYPE_CODE
			AND FB.PERIOD_COUNTER_FULLY_RETIRED IS NULL
			AND ( FB.BOOK_TYPE_CODE IN (:P_BOOK_NAME) OR 'All' IN ('All' || :P_BOOK_NAME) )
			AND ( FBC.BOOK_CLASS IN (:P_BOOK_CLASS) OR 'All' IN ('All' || :P_BOOK_CLASS) )
		--
		--AND FAB.ASSET_NUMBER IN('141616','141617')
		--
		GROUP BY FAB.ASSET_NUMBER ,FB.BOOK_TYPE_CODE
		ORDER BY FAB.ASSET_NUMBER DESC
		) 
		Q1
		,(
			SELECT DISTINCT FTH.TRANSACTION_HEADER_ID
				,FAB.ASSET_NUMBER
				,FAT.DESCRIPTION
				,FB.BOOK_TYPE_CODE
				,FAB.CREATION_DATE
				--,FTH.CREATION_DATE --RJ
				,FB.DATE_PLACED_IN_SERVICE
				--,FTH.CREATED_BY
				,FAB.CREATED_BY
				,FTH.LAST_UPDATED_BY
				,FTH.LAST_UPDATE_DATE
				--,FAB.ATTRIBUTE_CATEGORY_CODE
				,FCT.SEGMENT1 || '-' || FCT.SEGMENT2 ATTRIBUTE_CATEGORY_CODE
				,FM.LIFE_IN_MONTHS
				,FACT.PRORATE_CONVENTION_CODE
				,FBR.BONUS_RULE
				--,FB.DEPRN_LIMIT_TYPE
				, (case when FB.DEPRN_LIMIT_TYPE ='NONE' then null else FB.DEPRN_LIMIT_TYPE end ) DEPRN_LIMIT_TYPE
				,DECODE(FB.DEPRN_LIMIT_TYPE, 'AMT', FB.ALLOWED_DEPRN_LIMIT_AMOUNT, NULL) DEPRN_LIMIT_AMOUNT --01/04
				,DECODE(FB.DEPRN_LIMIT_TYPE, 'PCT', FB.ALLOWED_DEPRN_LIMIT, NULL) DEPRN_LIMIT_PERCENT --01/04
				,FB.CAPITALIZE_FLAG
				,GCC.SEGMENT1
				,GCC.SEGMENT2
				,GCC.SEGMENT3
				,GCC.SEGMENT4
				,GCC.SEGMENT5
				,GCC.SEGMENT6
				,GCC.SEGMENT7
				,FB.DEPRECIATE_FLAG
				--,FBC.AMORTIZE_FLAG
				/*,(
					CASE 
						WHEN FTH.AMORTIZATION_START_DATE IS NOT NULL
							THEN 'Y'
						ELSE 'N'
						END
					) AMORTIZE_FLAG -- Modified on 01/10 */
				,(  CASE
						WHEN EXISTS (
						  SELECT
							1
						  FROM
							FA_TRANSACTION_HEADERS A
						  WHERE
							A.ASSET_ID = FB.ASSET_ID
							AND A.BOOK_TYPE_CODE = FB.BOOK_TYPE_CODE
							AND A.AMORTIZATION_START_DATE IS NOT NULL
						) THEN 'Y'
						ELSE 'N'
					  END
				)AMORTIZE_FLAG	-- w.r.t REF-284201					
				,FM.METHOD_CODE
				,FBC.BOOK_CLASS
				,FCT.CATEGORY_ID
			FROM FA_CATEGORIES_B FCT
				,FA_CATEGORY_BOOKS FCB
				,FA_CATEGORY_BOOK_DEFAULTS FCBD
				,FA_ADDITIONS_B FAB
				,FA_ADDITIONS_TL FAT
				,FA_METHODS FM
				,FA_BOOKS FB
				,FA_BOOK_CONTROLS FBC
				,FA_BONUS_RULES FBR
				,GL_CODE_COMBINATIONS GCC
				,FA_TRANSACTION_HEADERS FTH
				,FA_CONVENTION_TYPES FACT
				,(
					SELECT MAX(LAST_UPDATE_DATE)
						,ASSET_ID
						,CODE_COMBINATION_ID
						,BOOK_TYPE_CODE
					FROM FA_DISTRIBUTION_HISTORY
					WHERE DATE_INEFFECTIVE IS NULL
					GROUP BY ASSET_ID
						,CODE_COMBINATION_ID
						,BOOK_TYPE_CODE
					) FDH
			WHERE 1 = 1
				AND FCT.CATEGORY_ID = FCB.CATEGORY_ID
				AND FCB.CATEGORY_ID = FCBD.CATEGORY_ID
				AND FCT.CATEGORY_ID = FCBD.CATEGORY_ID
				AND FCB.CATEGORY_ID = FAB.ASSET_CATEGORY_ID
				AND FAT.ASSET_ID = FAB.ASSET_ID
				AND FAT.LANGUAGE = USERENV('LANG')
				AND FB.METHOD_ID = FM.METHOD_ID
				AND FB.ASSET_ID = FAB.ASSET_ID
				AND FB.ASSET_ID = FAT.ASSET_ID
				AND FCB.BOOK_TYPE_CODE = FBC.BOOK_TYPE_CODE
				AND FCB.BOOK_TYPE_CODE = FB.BOOK_TYPE_CODE
				AND FB.BOOK_TYPE_CODE = FBC.BOOK_TYPE_CODE
				AND FCB.BOOK_TYPE_CODE = FCBD.BOOK_TYPE_CODE 
				AND FBC.BOOK_TYPE_CODE = FCBD.BOOK_TYPE_CODE 
				AND FB.BONUS_RULE_ID = FBR.BONUS_RULE_ID(+)
				--AND GCC.CODE_COMBINATION_ID = FCB.DEPRN_EXPENSE_ACCOUNT_CCID
				AND GCC.CODE_COMBINATION_ID = FDH.CODE_COMBINATION_ID
				AND FDH.ASSET_ID = FAB.ASSET_ID
				AND FDH.BOOK_TYPE_CODE = FTH.BOOK_TYPE_CODE
				AND FTH.ASSET_ID = FAB.ASSET_ID
				AND FTH.BOOK_TYPE_CODE = FBC.BOOK_TYPE_CODE
				AND FTH.ASSET_ID = FB.ASSET_ID
				AND FTH.BOOK_TYPE_CODE = FB.BOOK_TYPE_CODE
				AND FB.TRANSACTION_HEADER_ID_IN = FTH.TRANSACTION_HEADER_ID
				AND FB.PERIOD_COUNTER_FULLY_RETIRED IS NULL
				AND (
					FB.DATE_INEFFECTIVE IS NULL
					OR FB.TRANSACTION_HEADER_ID_IN = (
						SELECT FB1.TRANSACTION_HEADER_ID_OUT
						FROM FA_BOOKS FB1
						WHERE FB.TRANSACTION_HEADER_ID_IN = FB1.TRANSACTION_HEADER_ID_OUT
						)
					)
				AND FACT.CONVENTION_TYPE_ID = FB.CONVENTION_TYPE_ID
				AND ( FB.BOOK_TYPE_CODE IN (:P_BOOK_NAME) OR 'All' IN ('All' || :P_BOOK_NAME) )
				AND ( FBC.BOOK_CLASS IN (:P_BOOK_CLASS) OR 'All' IN ('All' || :P_BOOK_CLASS) )
			--
			--AND FAB.ASSET_NUMBER IN('141616','141617')
			--
			ORDER BY FAB.ASSET_NUMBER DESC
			) 
			Q2
		,(
			SELECT       FCT.CATEGORY_ID CATEGORY_ID1
				 ,FCB.BOOK_TYPE_CODE BOOK_TYPE_CODE1  
				,FM.LIFE_IN_MONTHS LIFE_IN_MONTHS1   
				,FACT.PRORATE_CONVENTION_CODE PRORATE_CONVENTION_CODE1   
				,FM.METHOD_CODE METHOD_CODE1    
				,FBR.BONUS_RULE BONUS_RULE1  
				,FCBD.DEPRN_LIMIT_TYPE DEPRN_LIMIT_TYPE1  
				,DECODE(FCBD.DEPRN_LIMIT_TYPE, 'AMT', FCBD.SPECIAL_DEPRN_LIMIT_AMOUNT, NULL) DEPRN_LIMIT_AMOUNT1 --01/04
				,DECODE(FCBD.DEPRN_LIMIT_TYPE, 'PCT', FCBD.ALLOWED_DEPRN_LIMIT, NULL) DEPRN_LIMIT_PERCENT1 --01/04
				 ,fct.CAPITALIZE_FLAG CAPITALIZE_FLAG1   
				,FCBD.DEPRECIATE_FLAG DEPRECIATE_FLAG1  
				,GCC.SEGMENT4 SEGMENT41  
				,FCT.CREATION_DATE CREATION_DATE1
				,fct.SEGMENT1,fct.SEGMENT2
			FROM FA_CATEGORIES_B FCT 
				,FA_CATEGORY_BOOKS FCB    
				,FA_CATEGORY_BOOK_DEFAULTS FCBD   
				,FA_METHODS FM 
				,FA_BOOK_CONTROLS FBC  
				,FA_BONUS_RULES FBR  
				,GL_CODE_COMBINATIONS GCC 
				,FA_CONVENTION_TYPES FACT 
			WHERE 1 = 1
                AND FCT.CATEGORY_ID = FCB.CATEGORY_ID
                AND FCB.CATEGORY_ID = FCBD.CATEGORY_ID
                AND FCT.CATEGORY_ID = FCBD.CATEGORY_ID
                AND FCBD.METHOD_ID = FM.METHOD_ID
				AND FCB.BOOK_TYPE_CODE = FCBD.BOOK_TYPE_CODE 
				AND FBC.BOOK_TYPE_CODE = FCBD.BOOK_TYPE_CODE
				AND FCBD.BONUS_RULE_ID = FBR.BONUS_RULE_ID(+)
                AND GCC.CODE_COMBINATION_ID = FCB.DEPRN_EXPENSE_ACCOUNT_CCID
                AND FACT.CONVENTION_TYPE_ID = FCBD.CONVENTION_TYPE_ID
                --AND FCT.CATEGORY_ID='300000006086154'
				and (FCB.BOOK_TYPE_CODE IN (:P_BOOK_NAME) OR 'All' IN ('All' || :P_BOOK_NAME) )
				and (FBC.BOOK_CLASS     IN (:P_BOOK_CLASS) OR 'All' IN ('All' || :P_BOOK_CLASS) )
			) 
			Q3
	WHERE Q1.BOOK_TYPE_CODE = Q2.BOOK_TYPE_CODE
		AND Q1.ASSET_NUMBER = Q2.ASSET_NUMBER
		AND Q1.LAST_UPDATE_DATE = Q2.LAST_UPDATE_DATE
		AND Q3.BOOK_TYPE_CODE1 = Q2.BOOK_TYPE_CODE
		AND Q3.CATEGORY_ID1 = Q2.CATEGORY_ID
		--
		--AND Q2.ASSET_NUMBER IN('106')
		--
		AND ( Q2.BOOK_TYPE_CODE IN (:P_BOOK_NAME) OR 'All' IN ('All' || :P_BOOK_NAME) )
		AND ( Q2.BOOK_CLASS IN (:P_BOOK_CLASS) OR 'All' IN ('All' || :P_BOOK_CLASS) )
		AND Q2.LAST_UPDATE_DATE >= :P_DATE
		AND (
			Q2.LIFE_IN_MONTHS <> Q3.LIFE_IN_MONTHS1
			OR Q2.PRORATE_CONVENTION_CODE <> Q3.PRORATE_CONVENTION_CODE1
			OR Q2.METHOD_CODE <> Q3.METHOD_CODE1
			OR nvl(Q2.BONUS_RULE,'x') <> nvl(Q3.BONUS_RULE1,'x')
			OR nvl(Q2.DEPRN_LIMIT_TYPE,'x') <> nvl(Q3.DEPRN_LIMIT_TYPE1,'x')
			OR nvl(Q2.CAPITALIZE_FLAG,'x') <> nvl(Q3.CAPITALIZE_FLAG1,'x')
			OR Q2.SEGMENT4 <> Q3.SEGMENT41
			OR nvl(Q2.DEPRECIATE_FLAG,'x') <> nvl(Q3.DEPRECIATE_FLAG1,'x')
			)
	)
ORDER BY 2,9 DESC
:MI :P_BOOK_CLASS :P_BOOK_NAME :P_DATE :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.

FA_BOOKSdimensionFA_BOOK_CONTROLSdimensionFA_TRANSACTION_HEADERSdimensionFA_CATEGORIES_BdimensionFA_ADDITIONS_Bfact · one row per source transactionAmount
●— fact → dimension join
ElementTypeDefinition
FA_BOOKSdimensiondimension
FA_BOOK_CONTROLSdimensiondimension
FA_TRANSACTION_HEADERSdimensiondimension
FA_CATEGORIES_Bdimensiondimension
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.
Fixed Assets 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
FA_ADDITIONS_B159
FA_BOOKS202
FA_BOOK_CONTROLS2913
FA_TRANSACTION_HEADERS75
FA_CATEGORIES_B510
FA_CATEGORY_BOOKSSetup / configuration table — joined for reference, not exposed for analytics
FA_CATEGORY_BOOK_DEFAULTSSetup / configuration table — joined for reference, not exposed for analytics
FA_ADDITIONS_TL18
FA_METHODS82
FA_BONUS_RULES21
GL_CODE_COMBINATIONS761
FA_CONVENTION_TYPES22
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.