Analytics Catalog/Oracle Fusion ERP/Payables/AP Invoice Detail Report with Tax Details
Explore the catalogReportsModulesEnterprise modelOTBI subject areasBICC PVOs
Oracle Fusion · Payables

AP Invoice Detail Report with Tax Details

Payables

Invoice-level Payables detail with the tax and withholding breakdown on each line — recoverable and non-recoverable tax, and withholding by type — so AP can review how tax was applied and reconcile input-tax recovery.

Related  The tax-and-withholding detail companion to the AP Invoice Detail Report.

Run note · Data latency  Several tax reports read the Tax Reporting Ledger extract rather than live transaction tables — run the extract first or the report returns stale or empty results.

Sample build of the AP Invoice Detail Report with Tax Details — reconciled, and rendered tool-neutral so it runs in Power BI, ThoughtSpot, or Tableau.

AP Invoice Detail Report with Tax Details
Sample build · illustrative
Filters
Accounting Status
Validated
Account From
1000-1410-000
Account To
1000-1410-000
Bu
Sample
Gl Date From
2026-02-28
Gl Date To
2026-02-28
4,120
Invoices
$1.90M
Tax
$120K
Non-recoverable
SupplierInvoiceLineTaxable AmountTaxRecoverableWithholding
Acme IndustrialSampleSample$1,240,500.00SampleSampleSample
Northwind Trading$842,150.75
Globex HoldingsSampleSample$96,400.00SampleSampleSample
Initech LLC$1,005,233.10
Umbrella CorpSampleSample$58,720.40SampleSampleSample
Acme IndustrialSampleSample$1,240,500.00SampleSampleSample
AI Analyst · active
reading

The report reads AP invoices with their ZX tax lines and withholding summary, splitting recoverable from non-recoverable tax.

flag

$120K of input tax is non-recoverable, part of it on a rate that should be fully recoverable — a tax-determination setup issue, not a real cost.

root cause & next step

Check the recovery rate on that tax rate; a misconfigured recovery rate turns reclaimable input tax into an expense.

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 SUPPLIER_TBL AS 
(
SELECT PAP.person_number,TO_CHAR(PAP.person_id) person_id
FROM per_all_people_f PAP
WHERE 1=1
AND TRUNC(SYSDATE) BETWEEN PAP.EFFECTIVE_START_DATE AND PAP.EFFECTIVE_END_DATE
)
,VALIDATION_STATUS_TBL AS
(
SELECT MEANING ,  LOOKUP_CODE, LOOKUP_TYPE
	 FROM FND_LOOKUP_VALUES_TL 
	 WHERE ( ( (VIEW_APPLICATION_ID = 200 ) )  
	 AND ( (SET_ID = 0 ) )  AND ( (LANGUAGE = 'US' ) ) )
)
, APPROVAL_STATUS_TBL AS
(SELECT MEANING ,  LOOKUP_CODE, LOOKUP_TYPE
	 FROM FND_LOOKUP_VALUES_TL 
	 WHERE ( ( (VIEW_APPLICATION_ID = 200 ) )  
	 AND ( (SET_ID = 0 ) )  AND ( (LANGUAGE = 'US' ) ) )
	 AND LOOKUP_TYPE = 'AP_WFAPPROVAL_STATUS')
, ACCOUNTING_STATUS_TBL AS
(
SELECT 
CASE WHEN ap_invoices_pkg.get_posting_status(aia.invoice_id)='Y' THEN 'ACCOUNTED'
	     WHEN ap_invoices_pkg.get_posting_status(aia.invoice_id)='N' THEN 'UNACCOUNTED'
		 WHEN ap_invoices_pkg.get_posting_status(aia.invoice_id)='P' THEN 'PARYIALLY ACCOUNTED'
		 END AS ACCOUNTING_STATUS, AIA.invoice_id
FROM AP_INVOICES_ALL AIA
WHERE 1=1
)

,WHT_TBL AS 
(
select
distinct
InvoiceHeader.INVOICE_ID,
InvoiceLine.SUMMARY_TAX_LINE_ID,
WhtSummaryTaxLine.tax ,
WhtSummaryTaxLine.tax_rate,
WhtSummaryTaxLine.tax_amt

 FROM AP_INVOICE_LINES_ALL InvoiceLine,
	 AP_INVOICES_ALL InvoiceHeader,
ZX_WHT_LINES_SUMMARY WhtSummaryTaxLine
WHERE (InvoiceLine.INVOICE_ID = InvoiceHeader.INVOICE_ID )
 AND InvoiceLine.SUMMARY_TAX_LINE_ID = WhtSummaryTaxLine.SUMMARY_TAX_LINE_ID(+)
and  InvoiceHeader.INVOICE_ID=WhtSummaryTaxLine.trx_id(+)
--and InvoiceHeader.invoice_num IN('47004','252600002722_CW')
and WhtSummaryTaxLine.application_id=200
and InvoiceLine.LINE_TYPE_LOOKUP_CODE='AWT'
) 
, LIABILITY_ACC_TBL AS
(
SELECT        
GCC.CONCATENATED_SEGMENTS,
xte.source_id_int_1,
Ledgers.CHART_OF_ACCOUNTS_ID
FROM 
--XLA_DISTRIBUTION_LINKS Xladistlink,
 XLA_AE_LINES Xlalines,
 XLA_AE_HEADERS XAH,
 GL_LEDGERS Ledgers,
 GL_CODE_COMBINATIONS GCC,
 xla_transaction_entities xte
WHERE 1=1
--(Xladistlink.AE_HEADER_ID = Xlalines.AE_HEADER_ID 
--AND Xladistlink.AE_LINE_NUM = Xlalines.AE_LINE_NUM 
--AND Xladistlink.APPLICATION_ID = Xlalines.APPLICATION_ID 
and Xlalines.ae_header_id=xah.ae_header_id
and xah.entity_id=xte.entity_id
and xah.application_id=xlalines.application_id
AND UPPER(Xlalines.accounting_class_code) = 'LIABILITY' 
AND Xlalines.LEDGER_ID = Ledgers.LEDGER_ID 
AND ( ( (Xlalines.CODE_COMBINATION_ID <> -1 ) ) )
AND Xlalines.CODE_COMBINATION_ID = GCC.CODE_COMBINATION_ID(+)
AND Ledgers.CHART_OF_ACCOUNTS_ID=GCC.CHART_OF_ACCOUNTS_ID(+)
AND XAH.ACCOUNTING_ENTRY_STATUS_CODE='F'
AND Xlalines.APPLICATION_ID=200
)
/*, INV_SOURCE_TBL AS
(
SELECT PayablesLookup.DISPLAYED_FIELD,         PayablesLookup.LOOKUP_CODE,         PayablesLookup.LOOKUP_TYPE FROM AP_LOOKUP_CODES PayablesLookup WHERE  ( (PayablesLookup.LOOKUP_TYPE = 'SOURCE' ) ) 
) */

SELECT /*+ PARALLEL(e,12) */
	PSV.segment1 SUPPLIER_NUMBER,
	PSV.VENDOR_NAME SUPPLIER_NAME,
	HAPN.PARTY_NAME ALTERNATIVE_SUPPLIER_NAME,
	PSP.INCOME_TAX_ID SUPPLIER_TAXPAYER_ID,
	ZPTP.REP_REGISTRATION_NUMBER SUPP_TAX_REG_NUM,
    AITT.DESCRIPTION SUP_TAXPAYER_ID_TYPE,
	PSV.ORGANIZATION_TYPE_LOOKUP_CODE SUP_TAX_ORG_TYPE,
	PSV.VENDOR_TYPE_LOOKUP_CODE SUP_CLASS_TYPE,
	PSSAM.VENDOR_SITE_CODE SUPPLIER_SITE,
	HPS.STATUS ,
	HOUFT.NAME BU_NAME,
	HL.ADDRESS1,
	HL.ADDRESS2,
	HL.ADDRESS3,
	HL.ADDRESS4,
	HL.CITY,
	HL.STATE,
	HL.PROVINCE,
	HL.POSTAL_CODE,
	HL.COUNTRY,
	ATV.NAME SUPPLIER_TERMS,
	PSSAM.PAY_GROUP_LOOKUP_CODE SUPP_PAYMENT_GROUP,
	IPMV.PAYMENT_METHOD_NAME PAYMENT_METHOD,
	IEPA.REMIT_ADVICE_EMAIL	SUPPLIER_EMAIL_REMIT,
	AIA.INVOICE_TYPE_LOOKUP_CODE INVOICE_TYPE,
	AILA.ATTRIBUTE2 INVOICE_PO,
	--PHA.SEGMENT1 INVOICE_PO,
	AIA.INVOICE_DATE,
	AIA.INVOICE_NUM,
	APSA.DUE_DATE INVOICE_DUE_DATE,
	AIA.INVOICE_CURRENCY_CODE INVOICE_CURRENCY,
	AIA.DESCRIPTION HEADER_DESC,
	AIDA.DISTRIBUTION_LINE_NUMBER,
	AIDA.LINE_TYPE_LOOKUP_CODE DIST_LINE_TYPE,
	AIA.GL_DATE ACCOUNTING_DATE,
	GCC.SEGMENT1||'.'||GCC.SEGMENT2||'.'||GCC.SEGMENT3||'.'||GCC.SEGMENT4||'.'||GCC.SEGMENT5||'.'||GCC.SEGMENT6||'.'||GCC.SEGMENT7||'.'||GCC.SEGMENT8||'.'||GCC.SEGMENT9 DIST_LINE_ACC,
	AIDA.DESCRIPTION DIST_LINE_DESC,
	AIDA.AMOUNT DIST_LINE_AMOUNT,
	AILA.TAX,
	AC.CHECK_NUMBER PAYMENT_NUM,
	AC.AMOUNT PAYMENT_AMOUNT,
	AC.CHECK_DATE PAYMENT_DATE,
	PPAV.SEGMENT1 PROJECT_NUMBER,
	PPAV.NAME PROJECT_NAME,
	PPTV.DESCRIPTION PROJECT_TYPE,
	(SELECT DISTINCT  PCCV.class_code 
		 FROM 	pjf_class_categories_vl PCCB,
				pjf_class_codes_vl PCCV,
				pjf_project_classes_v PPC,
				pjf_projects_all_vl PPAV1
		 WHERE 
				PPAV.project_id = PPAV1.project_id
			AND PPAV1.project_id = PPC.project_id
			AND PPC.class_category_id=PCCB.class_category_id
			AND PCCB.class_category_id=PCCV.class_category_id
			AND PPC.class_code_id= PCCV.class_code_id
			AND UPPER(PCCB.class_category) IN ('PROJECT TYPE CLASS')
		)  PROJECT_CLASS_CODE,
	PPEV.NAME TASK_NAME,
	PPEV.ELEMENT_NUMBER TASK_NUMBER,
	AILA.PJC_EXPENDITURE_ITEM_DATE EXPENDITURE_ITEM_DATE,
	PHOUFT.NAME EXP_BU_NAME,
	PETV.EXPENDITURE_TYPE_NAME,
	AILA.LINE_NUMBER,
	LAT.CONCATENATED_SEGMENTS LIABILITY_ACC,
	GCC1.CONCATENATED_SEGMENTS LIAB_ACC_INV_HDR,
	NVL( VST.MEANING,AIA.APPROVAL_STATUS) VALIDATION_STATUS,
	 NVL(AST.MEANING,AIA.WFAPPROVAL_STATUS) APPROVAL_STATUS,
	 ACCST.ACCOUNTING_STATUS,
	 WT.tax TAX_NAME,
	 WT.tax_amt,
     WT.tax_rate,
	 AIA.SOURCE,
	 AIA.CREATED_BY,
	 PLDFV.LOCATION_NAME SHIP_TO_LOC,
	 AILA.CONTROL_AMOUNT TAX_CONTROL_AMT,
	 AIA.CONTROL_AMOUNT CONTROL_AMT_HDR,
	 AILA.ATTRIBUTE14 TAX_RATE_CODE,
	  AILA.PRODUCT_TYPE,
	 AILA.PRODUCT_CATEGORY,
	 NVL(AILA.AMOUNT,0) INV_LINE_AMT,
	 NVL(AIA.INVOICE_AMOUNT,0) INV_AMT,
          AILA.USER_DEFINED_FISC_CLASS 
	
FROM
	POZ_SUPPLIERS_V PSV, 
	HZ_ADDTNL_PARTY_NAMES HAPN,
	POZ_SUPPLIERS_PII PSP,
	HZ_PARTIES HP,
	ZX_PARTY_TAX_PROFILE ZPTP,
	AP_INCOME_TAX_TYPES AITT,
	POZ_SUPPLIER_SITES_ALL_M PSSAM,
		HZ_PARTY_SITES HPS,
		HZ_LOCATIONS HL,
	AP_TERMS_V ATV,
	AP_INVOICES_ALL AIA,
	HR_ORGANIZATION_UNITS_F_TL HOUFT,
	AP_PAYMENT_SCHEDULES_ALL APSA,
	AP_INVOICE_DISTRIBUTIONS_ALL AIDA,
	AP_INVOICE_LINES_ALL AILA,
	IBY_PAYMENT_METHODS_VL IPMV,
	IBY_EXTERNAL_PAYEES_ALL IEPA,
	GL_CODE_COMBINATIONS GCC,
	AP_INVOICE_PAYMENTS_ALL AIPA,
	AP_CHECKS_ALL AC,
	PJF_PROJECTS_ALL_VL PPAV,
	PJF_PROJECT_TYPES_VL PPTV,
	PJF_PROJ_ELEMENTS_VL PPEV,
	HR_ORGANIZATION_UNITS_F_TL PHOUFT,
	PJF_EXP_TYPES_VL PETV,
	GL_CODE_COMBINATIONS GCC1,
	VALIDATION_STATUS_TBL VST,
	APPROVAL_STATUS_TBL AST,
	ACCOUNTING_STATUS_TBL ACCST,
	WHT_TBL WT,
	PER_LOCATION_DETAILS_F_VL PLDFV,
	LIABILITY_ACC_TBL LAT
	
WHERE
	1=1
	AND PSV.party_id= HAPN.party_id(+)
	AND PSV.vendor_id							= PSP.vendor_id(+)
	AND PSV.party_id 							= HP.party_id
	AND HP.party_id								= HAPN.party_id(+)
	AND HP.IDEN_ADDR_PARTY_SITE_ID= ZPTP.PARTY_ID(+)
	AND PSV.TYPE_1099							= AITT.INCOME_TAX_TYPE(+)
	AND PSV.VENDOR_ID							= PSSAM.VENDOR_ID
	AND SYSDATE 								BETWEEN PSSAM.EFFECTIVE_START_DATE AND PSSAM.EFFECTIVE_END_DATE
	AND HP.PARTY_ID								= HPS.PARTY_ID
	--AND HOUFT.ORGANIZATION_ID					= ST.organization_id
	AND PSSAM.INACTIVE_DATE 					IS NULL
	AND PSSAM.PARTY_SITE_ID						= HPS.PARTY_SITE_ID
	AND HPS.LOCATION_ID							= HL.LOCATION_ID
	AND PSSAM.TERMS_ID							= ATV.TERM_ID(+)
	AND PSV.VENDOR_ID							= AIA.VENDOR_ID
	AND PSSAM.VENDOR_SITE_ID					= AIA.VENDOR_SITE_ID
	AND AIA.ORG_ID								= HOUFT.ORGANIZATION_ID
	AND SYSDATE 								BETWEEN HOUFT.EFFECTIVE_START_DATE AND HOUFT.EFFECTIVE_END_DATE
	AND HOUFT.LANGUAGE							= USERENV('LANG')
	AND AIA.INVOICE_ID							= APSA.INVOICE_ID
	AND AIA.invoice_id                 			= AILA.invoice_id(+)
    AND AIA.invoice_id                 			= AIDA.invoice_id(+)
    AND AILA.line_number               			= AIDA.invoice_line_number(+)
	AND APSA.PAYMENT_METHOD_CODE					= IPMV.PAYMENT_METHOD_CODE(+)
	AND PSSAM.VENDOR_SITE_ID 					= IEPA.SUPPLIER_SITE_ID(+)
	AND AIDA.DIST_CODE_COMBINATION_ID			= GCC.CODE_COMBINATION_ID(+)
	AND AIA.INVOICE_ID							= AIPA.INVOICE_ID(+)
	AND AIPA.CHECK_ID             				= AC.CHECK_ID(+)
	AND AC.VOID_DATE(+) IS NULL 
	AND AILA.PJC_PROJECT_ID						= PPAV.PROJECT_ID(+)
	AND AILA.PJC_TASK_ID						= PPEV.PROJ_ELEMENT_ID(+)
	AND PPAV.PROJECT_TYPE_ID					= PPTV.PROJECT_TYPE_ID(+)
	AND PPAV.PROJECT_ID 						= PPEV.PROJECT_ID(+)
	AND AILA.PJC_ORGANIZATION_ID				= PHOUFT.ORGANIZATION_ID(+)
	AND SYSDATE 								BETWEEN PHOUFT.EFFECTIVE_START_DATE(+) AND PHOUFT.EFFECTIVE_END_DATE(+)
	AND USERENV('LANG')							= PHOUFT.LANGUAGE(+)
	AND AILA.PJC_EXPENDITURE_TYPE_ID			= PETV.EXPENDITURE_TYPE_ID(+)
	AND AIA.ACCTS_PAY_CODE_COMBINATION_ID = GCC1.CODE_COMBINATION_ID(+)
	AND AIA.APPROVAL_STATUS=VST.LOOKUP_CODE(+)
    AND (case when AIA.INVOICE_TYPE_LOOKUP_CODE = 'PREPAYMENT' then 'PREPAY STATUS' else 'NLS TRANSLATION' end) =VST.LOOKUP_TYPE(+)
	AND AIA.WFAPPROVAL_STATUS=AST.LOOKUP_CODE(+)
	AND AIA.INVOICE_ID							= ACCST.INVOICE_ID(+)
	AND AILA.SUMMARY_TAX_LINE_ID = WT.SUMMARY_TAX_LINE_ID(+) 
	AND AIA.INVOICE_ID	= WT.INVOICE_ID(+)
	AND AIA.INVOICE_ID	                        =LAT.source_id_int_1(+)
	AND GCC.CHART_OF_ACCOUNTS_ID=LAT.CHART_OF_ACCOUNTS_ID(+)
	AND AILA.SHIP_TO_LOCATION_ID = PLDFV.LOCATION_ID(+)
	AND ( SYSDATE  BETWEEN PLDFV.EFFECTIVE_START_DATE(+) AND PLDFV.EFFECTIVE_END_DATE(+))
	AND (PSV.VENDOR_NAME   IN (:P_SUPPLIER_NAME)
	OR  'All'                	IN (:P_SUPPLIER_NAME||'All'))
	AND (AIA.INVOICE_TYPE_LOOKUP_CODE   IN (:P_INVOICE_TYPE)
	OR  'All'                	IN (:P_INVOICE_TYPE||'All'))
	AND trunc(AIA.GL_DATE) 						BETWEEN trunc(:P_GL_DATE_FROM) AND trunc(:P_GL_DATE_TO)
	AND (HOUFT.NAME	   IN (:P_BU)
	OR  'All'                	IN (:P_BU||'All'))
	--AND GCC.SEGMENT4 		    BETWEEN :P_ACCOUNT_FROM AND :P_ACCOUNT_TO
	AND ( GCC.SEGMENT4   IN (:P_ACCOUNT_FROM)
	OR  'All'                	IN (:P_ACCOUNT_FROM||'All'))
	AND ( GCC.SEGMENT4   IN (:P_ACCOUNT_TO)
	OR  'All'                	IN (:P_ACCOUNT_TO||'All'))
	AND (NVL( VST.MEANING,AIA.APPROVAL_STATUS)    IN (:P_VALIDATION_STATUS)
	OR  'All'                				IN (:P_VALIDATION_STATUS||'All'))
	AND ((AIA.SOURCE)    IN (:P_SOURCE)
	OR  'All'                				IN (:P_SOURCE||'All'))
	AND ((ACCST.ACCOUNTING_STATUS)    IN (:P_ACCOUNTING_STATUS)
	OR  'All'                				IN (:P_ACCOUNTING_STATUS||'All'))
	--AND AIA.INVOICE_NUM='1/0325000643'
	
	UNION

SELECT /*+ PARALLEL(e,12) */
	ST.person_number SUPPLIER_NUMBER,
	HP.PARTY_NAME SUPPLIER_NAME,
	HAPN.PARTY_NAME ALTERNATIVE_SUPPLIER_NAME,
	NULL SUPPLIER_TAXPAYER_ID,
	NULL SUPP_TAX_REG_NUM,
	NULL SUP_TAXPAYER_ID_TYPE,
	NULL SUP_TAX_ORG_TYPE,
	NULL SUP_CLASS_TYPE,
	NULL SUPPLIER_SITE,
	NULL STATUS,
	HOUFT.NAME BU_NAME,
	NULL ADDRESS1,
	NULL ADDRESS2,
	NULL ADDRESS3,
	NULL ADDRESS4,
	NULL CITY,
	NULL STATE,
	NULL PROVINCE,
	NULL POSTAL_CODE,
	NULL COUNTRY,
	NULL SUPPLIER_TERMS,
	NULL SUPP_PAYMENT_GROUP,
	IPMV.PAYMENT_METHOD_NAME PAYMENT_METHOD,
	NULL SUPPLIER_EMAIL_REMIT,
	AIA.INVOICE_TYPE_LOOKUP_CODE INVOICE_TYPE,
	AILA.ATTRIBUTE2 INVOICE_PO,
	--PHA.SEGMENT1 INVOICE_PO,
	AIA.INVOICE_DATE,
	AIA.INVOICE_NUM,
	APSA.DUE_DATE INVOICE_DUE_DATE,
	AIA.INVOICE_CURRENCY_CODE INVOICE_CURRENCY,
	AIA.DESCRIPTION HEADER_DESC,
	AIDA.DISTRIBUTION_LINE_NUMBER,
	AIDA.LINE_TYPE_LOOKUP_CODE DIST_LINE_TYPE,
	AIA.GL_DATE ACCOUNTING_DATE,
	GCC.SEGMENT1||'.'||GCC.SEGMENT2||'.'||GCC.SEGMENT3||'.'||GCC.SEGMENT4||'.'||GCC.SEGMENT5||'.'||GCC.SEGMENT6||'.'||GCC.SEGMENT7||'.'||GCC.SEGMENT8||'.'||GCC.SEGMENT9 DIST_LINE_ACC,
	AIDA.DESCRIPTION DIST_LINE_DESC,
	AIDA.AMOUNT DIST_LINE_AMOUNT,
	AILA.TAX,
	AC.CHECK_NUMBER PAYMENT_NUM,
	AC.AMOUNT PAYMENT_AMOUNT,
	AC.CHECK_DATE PAYMENT_DATE,
	PPAV.SEGMENT1 PROJECT_NUMBER,
	PPAV.NAME PROJECT_NAME,
	PPTV.DESCRIPTION PROJECT_TYPE,
	(SELECT DISTINCT  PCCV.class_code 
		 FROM 	pjf_class_categories_vl PCCB,
				pjf_class_codes_vl PCCV,
				pjf_project_classes_v PPC,
				pjf_projects_all_vl PPAV1
		 WHERE 
				PPAV.project_id = PPAV1.project_id
			AND PPAV1.project_id = PPC.project_id
			AND PPC.class_category_id=PCCB.class_category_id
			AND PCCB.class_category_id=PCCV.class_category_id
			AND PPC.class_code_id= PCCV.class_code_id
			AND UPPER(PCCB.class_category) IN ('PROJECT TYPE CLASS')
		)  PROJECT_CLASS_CODE,
	PPEV.NAME TASK_NAME,
	PPEV.ELEMENT_NUMBER TASK_NUMBER,
	AILA.PJC_EXPENDITURE_ITEM_DATE EXPENDITURE_ITEM_DATE,
	PHOUFT.NAME EXP_BU_NAME,
	PETV.EXPENDITURE_TYPE_NAME,
	AILA.LINE_NUMBER,
	LAT.CONCATENATED_SEGMENTS LIABILITY_ACC,
	GCC1.CONCATENATED_SEGMENTS LIAB_ACC_INV_HDR,
	NVL( VST.MEANING,AIA.APPROVAL_STATUS) VALIDATION_STATUS,
	 NVL(AST.MEANING,AIA.WFAPPROVAL_STATUS) APPROVAL_STATUS,
	 ACCST.ACCOUNTING_STATUS,
	 WT.tax TAX_NAME,
	 WT.tax_amt,
     WT.tax_rate,
	 AIA.SOURCE,
	 AIA.CREATED_BY,
	 PLDFV.LOCATION_NAME SHIP_TO_LOC,
	 AILA.CONTROL_AMOUNT TAX_CONTROL_AMT,
	 AIA.CONTROL_AMOUNT CONTROL_AMT_HDR,
	 AILA.ATTRIBUTE14 TAX_RATE_CODE,
	 AILA.PRODUCT_TYPE,
	 AILA.PRODUCT_CATEGORY,
	 NVL(AILA.AMOUNT,0) INV_LINE_AMT,
	 NVL(AIA.INVOICE_AMOUNT,0) INV_AMT,
AILA.USER_DEFINED_FISC_CLASS 
	
FROM
	HZ_ADDTNL_PARTY_NAMES HAPN,
	HZ_PARTIES HP,
	SUPPLIER_TBL ST,
	HZ_PARTY_SITES HPS,
	AP_INVOICES_ALL AIA,
	HR_ORGANIZATION_UNITS_F_TL HOUFT,
	AP_PAYMENT_SCHEDULES_ALL APSA,
	AP_INVOICE_DISTRIBUTIONS_ALL AIDA,
	AP_INVOICE_LINES_ALL AILA,
	IBY_PAYMENT_METHODS_VL IPMV,
	GL_CODE_COMBINATIONS GCC,
	AP_INVOICE_PAYMENTS_ALL AIPA,
	AP_CHECKS_ALL AC,
	PJF_PROJECTS_ALL_VL PPAV,
	PJF_PROJECT_TYPES_VL PPTV,
	PJF_PROJ_ELEMENTS_VL PPEV,
	HR_ORGANIZATION_UNITS_F_TL PHOUFT,
	PJF_EXP_TYPES_VL PETV,
	GL_CODE_COMBINATIONS GCC1,
	 VALIDATION_STATUS_TBL VST,
	 APPROVAL_STATUS_TBL AST,
	 ACCOUNTING_STATUS_TBL ACCST,
	 WHT_TBL WT,
	 PER_LOCATION_DETAILS_F_VL PLDFV,
	 LIABILITY_ACC_TBL LAT
WHERE
	1=1
	AND HP.party_id	= HAPN.party_id(+)
	AND HP.ORIG_SYSTEM_REFERENCE=ST.person_id
	AND HP.PARTY_ID								= HPS.PARTY_ID
	AND HP.party_id								= AIA.PARTY_ID
	AND AIA.ORG_ID								= HOUFT.ORGANIZATION_ID
	AND SYSDATE 								BETWEEN HOUFT.EFFECTIVE_START_DATE AND HOUFT.EFFECTIVE_END_DATE
	AND HOUFT.LANGUAGE							= USERENV('LANG')
	AND AIA.INVOICE_ID							= APSA.INVOICE_ID
	AND AIA.invoice_id                 			= AILA.invoice_id(+)
    AND AIA.invoice_id                 			= AIDA.invoice_id(+)
    AND AILA.line_number               			= AIDA.invoice_line_number(+)
	AND APSA.PAYMENT_METHOD_CODE					= IPMV.PAYMENT_METHOD_CODE(+)
	AND AIDA.DIST_CODE_COMBINATION_ID			= GCC.CODE_COMBINATION_ID(+)
	AND AIA.INVOICE_ID							= AIPA.INVOICE_ID(+)
	AND AIPA.CHECK_ID             				= AC.CHECK_ID(+)
	AND AC.VOID_DATE(+) IS NULL 
	AND AILA.PJC_PROJECT_ID						= PPAV.PROJECT_ID(+)
	AND AILA.PJC_TASK_ID						= PPEV.PROJ_ELEMENT_ID(+)
	AND PPAV.PROJECT_TYPE_ID					= PPTV.PROJECT_TYPE_ID(+)
	AND PPAV.PROJECT_ID 						= PPEV.PROJECT_ID(+)
	AND AILA.PJC_ORGANIZATION_ID				= PHOUFT.ORGANIZATION_ID(+)
	AND SYSDATE 								BETWEEN PHOUFT.EFFECTIVE_START_DATE(+) AND PHOUFT.EFFECTIVE_END_DATE(+)
	AND USERENV('LANG')							= PHOUFT.LANGUAGE(+)
	AND AILA.PJC_EXPENDITURE_TYPE_ID			= PETV.EXPENDITURE_TYPE_ID(+)
	AND AIA.ACCTS_PAY_CODE_COMBINATION_ID = GCC1.CODE_COMBINATION_ID(+)
	AND AIA.APPROVAL_STATUS=VST.LOOKUP_CODE(+)
    AND (case when AIA.INVOICE_TYPE_LOOKUP_CODE = 'PREPAYMENT' then 'PREPAY STATUS' else 'NLS TRANSLATION' end) =VST.LOOKUP_TYPE(+)
	AND AIA.WFAPPROVAL_STATUS=AST.LOOKUP_CODE(+)
	AND AIA.INVOICE_ID	= ACCST.INVOICE_ID(+)
	AND AILA.SUMMARY_TAX_LINE_ID = WT.SUMMARY_TAX_LINE_ID(+) 
	AND AIA.INVOICE_ID	= WT.INVOICE_ID(+)
	AND AIA.INVOICE_ID	                        =LAT.source_id_int_1(+)
	AND GCC.CHART_OF_ACCOUNTS_ID=LAT.CHART_OF_ACCOUNTS_ID(+)
	AND AILA.SHIP_TO_LOCATION_ID = PLDFV.LOCATION_ID(+)
	AND ( SYSDATE  BETWEEN PLDFV.EFFECTIVE_START_DATE(+) AND PLDFV.EFFECTIVE_END_DATE(+))
	AND (HP.PARTY_NAME   IN (:P_SUPPLIER_NAME)
	OR  'All'                	IN (:P_SUPPLIER_NAME||'All'))
	AND (AIA.INVOICE_TYPE_LOOKUP_CODE   IN (:P_INVOICE_TYPE)
	OR  'All'                	IN (:P_INVOICE_TYPE||'All'))
	AND trunc(AIA.GL_DATE) 						BETWEEN trunc(:P_GL_DATE_FROM) AND trunc(:P_GL_DATE_TO)
	AND (HOUFT.NAME	   IN (:P_BU)
	OR  'All'                	IN (:P_BU||'All'))
	--AND GCC.SEGMENT4 		    BETWEEN :P_ACCOUNT_FROM AND :P_ACCOUNT_TO 
	AND ( GCC.SEGMENT4   IN (:P_ACCOUNT_FROM)
	OR  'All'                	IN (:P_ACCOUNT_FROM||'All'))
	AND ( GCC.SEGMENT4   IN (:P_ACCOUNT_TO)
	OR  'All'                	IN (:P_ACCOUNT_TO||'All'))
	AND (NVL( VST.MEANING,AIA.APPROVAL_STATUS)    IN (:P_VALIDATION_STATUS)
	OR  'All'                				IN (:P_VALIDATION_STATUS||'All'))
	AND ((AIA.SOURCE)    IN (:P_SOURCE)
	OR  'All'                				IN (:P_SOURCE||'All'))
	AND ((ACCST.ACCOUNTING_STATUS)    IN (:P_ACCOUNTING_STATUS)
	OR  'All'                				IN (:P_ACCOUNTING_STATUS||'All'))
	--AND AIA.INVOICE_NUM='1/0325000643'
:P_ACCOUNTING_STATUS :P_ACCOUNT_FROM :P_ACCOUNT_TO :P_BU :P_GL_DATE_FROM :P_GL_DATE_TO :P_INVOICE_TYPE :P_SOURCE :P_SUPPLIER_NAME :P_VALIDATION_STATUS

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.

AP_INVOICE_LINES_ALLdimensionZX_LINESdimensionZX_REC_NREC_DISTdimensionZX_WHT_LINES_SUMMARYdimensionAP_INVOICES_ALLfact · one row per source transactionTaxable Amount
●— fact → dimension join
ElementTypeDefinition
AP_INVOICE_LINES_ALLdimensiondimension
ZX_LINESdimensiondimension
ZX_REC_NREC_DISTdimensiondimension
ZX_WHT_LINES_SUMMARYdimensiondimension
Taxable 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.
Payables 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
AP_INVOICES_ALL6315
AP_INVOICE_LINES_ALL5819
ZX_LINESSetup / configuration table — joined for reference, not exposed for analytics
ZX_REC_NREC_DISTSetup / configuration table — joined for reference, not exposed for analytics
ZX_WHT_LINES_SUMMARY23
POZ_SUPPLIERS14575
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.