Lease Details Report
The register of leases and their terms — commencement and end dates, payment schedule, discount rate, classification, and current liability and right-of-use balances — the single list finance uses to review the lease portfolio.
Sample build of the Lease Details Report — reconciled, and rendered tool-neutral so it runs in Power BI, ThoughtSpot, or Tableau.
| Lease | Lessor | Commencement | End Date | Classification | Discount Rate | Lease Liability |
|---|---|---|---|---|---|---|
| Sample | Sample | Sample | 2026-04-30 | Standard | Sample | Sample |
| — | — | — | 2026-03-31 | Corporate | — | — |
| Sample | Sample | Sample | 2026-02-28 | Standard | Sample | Sample |
| — | — | — | 2026-01-31 | Default | — | — |
| Sample | Sample | Sample | 2025-12-31 | Standard | Sample | Sample |
| Sample | Sample | Sample | 2026-04-30 | Standard | Sample | Sample |
The report reads FLA_LEASES_ALL with its detail and schedule tables, presenting each lease's terms and current liability and ROU balances.
34 leases expire within twelve months — without a renew-or-exit decision, their ROU amortization and the cash-flow forecast both change at expiry.
Flag the 34 to lease administration for renewal decisions now; late decisions force retroactive remeasurement and disclosure rework.
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
- FLA_LEASES_ALL
- FLA_LEASE_DETAILS
- FLA_SCHEDULES
- FLA_SCHEDULE_HEADERS
- GL_DAILY_RATES
Show / hide SQL
<![CDATA[SELECT s.period_name prd_nm,
s.schedule_date sch_date,
SUM(s.ifrs_adjusted_liability_amount) ifrs_liab_adj_lr,
SUM(s.ifrs_opening_liability_amount) op_liab_sum_lr,
SUM(s.ifrs_interest_amount) int_am_sum_lr,
SUM(s.ifrs_payment_amount) cash_lr,
SUM(s.ifrs_closing_liability_amount) cls_liab_sum_lr,
SUM(s.ifrs_adj_fin_rou_amount) ifrs_rou_adj_lr,
SUM(s.ifrs_opening_rou_amount) ifrs_op_fin_rou_sum_lr,
SUM(s.ifrs_amortization) ifrs_fin_amor_sum_lr,
SUM(s.ifrs_closing_rou_amount) ifrs_cls_fin_rou_sum_lr,
SUM(s.asc_opening_liability_amount) asc_op_liab_sum_lr,
SUM(s.asc_payment_amount) asc_pay_amt_lr,
SUM(s.asc_interest_amount) asc_int_am_sum_lr,
SUM(s.asc_closing_liability_amount) asc_cls_liab_sum_lr,
SUM(s.asc_adjusted_liability_amount) asc_adj_amt_lr,
SUM(s.asc_opening_oper_rou_amount) asc_op_oper_rou_sum_lr,
SUM(s.asc_oper_amortization) asc_oper_amor_sum_lr,
SUM(s.asc_lease_expense) asc_ls_exp_sum_lr,
SUM(s.asc_closing_oper_rou_amount) asc_cls_oper_rou_sum_lr,
SUM(s.asc_opening_fin_rou_amount) asc_op_fin_rou_sum_lr,
SUM(s.asc_fin_amortization) asc_fin_amor_sum_lr,
SUM(s.asc_closing_fin_rou_amount) asc_cls_fin_rou_sum_lr,
SUM(s.ASC_ADJ_FIN_ROU_AMOUNT) asc_adj_fin_rou_sum_lr,
SUM(s.ASC_ADJ_OPER_ROU_AMOUNT) asc_adj_oper_rou_sum_lr,
SUM(s.ASC_CONTINGENT_AMOUNT) asc_cont_amt_sum_lr,
SUM(s.ifrs_reclass_stl_amount) ifrs_rec_stl_sum_lr,
SUM(s.ifrs_closing_stl_amount) ifrs_cls_stl_sum_lr,
SUM(s.ifrs_reclass_ltl_amount) ifrs_rec_ltl_sum_lr,
SUM(s.ifrs_closing_ltl_amount) ifrs_cls_ltl_sum_lr,
SUM(s.asc_reclass_stl_amount) asc_rec_stl_sum_lr,
SUM(s.asc_closing_stl_amount) asc_cls_stl_sum_lr,
SUM(s.asc_reclass_ltl_amount) asc_rec_ltl_sum_lr,
SUM(s.asc_closing_ltl_amount) asc_cls_ltl_sum_lr,
SUM(s.ifrs_oper_lease_revenue) ifrs_op_lrev_sum_lr,
SUM(s.ifrs_oper_non_lease_revenue) ifrs_op_nlrev_sum_lr,
SUM(s.asc_oper_lease_revenue) asc_op_lrev_sum_lr,
SUM(s.asc_oper_non_lease_revenue) asc_op_nlrev_sum_lr,
SUM(s.ifrs_oper_uer_amount) ifrs_op_uer_amt_sum_lr,
SUM(s.asc_oper_uer_amount) asc_op_uer_amt_sum_lr,
SUM(s.asc_present_value) ASC_PRS_VAL,
s.currency_code curr_code,
-- Current Month Last-Day Conversion Rate (CORPORATE)
(CASE
WHEN S.currency_code = 'USD' THEN 1
ELSE NVL((
SELECT GDR.CONVERSION_RATE
FROM GL_DAILY_RATES GDR
WHERE GDR.FROM_CURRENCY = S.currency_code
AND GDR.TO_CURRENCY = 'USD'
AND UPPER(GDR.CONVERSION_TYPE) = 'CORPORATE'
AND GDR.CONVERSION_DATE = (
SELECT MAX(GDR2.CONVERSION_DATE)
FROM GL_DAILY_RATES GDR2
WHERE GDR2.FROM_CURRENCY = S.currency_code
AND GDR2.TO_CURRENCY = 'USD'
AND UPPER(GDR2.CONVERSION_TYPE) = 'CORPORATE'
AND GDR2.CONVERSION_DATE IN (
SELECT LAST_DAY(CONVERSION_DATE)
FROM GL_DAILY_RATES
WHERE FROM_CURRENCY = S.currency_code
AND TO_CURRENCY = 'USD'
AND UPPER(CONVERSION_TYPE) = 'CORPORATE'
AND CONVERSION_DATE <= LAST_DAY(S.schedule_date)
)
)
), 0)
END) AS CONVERSION_RATE,
-- Previous Month Last-Day Conversion Rate (CORPORATE)
(CASE
WHEN S.currency_code = 'USD' THEN 1
ELSE NVL((
SELECT GDR.CONVERSION_RATE
FROM GL_DAILY_RATES GDR
WHERE GDR.FROM_CURRENCY = S.currency_code
AND GDR.TO_CURRENCY = 'USD'
AND UPPER(GDR.CONVERSION_TYPE) = 'CORPORATE'
AND GDR.CONVERSION_DATE = (
SELECT MAX(GDR2.CONVERSION_DATE)
FROM GL_DAILY_RATES GDR2
WHERE GDR2.FROM_CURRENCY = S.currency_code
AND GDR2.TO_CURRENCY = 'USD'
AND UPPER(GDR2.CONVERSION_TYPE) = 'CORPORATE'
AND GDR2.CONVERSION_DATE IN (
SELECT LAST_DAY(CONVERSION_DATE)
FROM GL_DAILY_RATES
WHERE FROM_CURRENCY = S.currency_code
AND TO_CURRENCY = 'USD'
AND UPPER(CONVERSION_TYPE) = 'CORPORATE'
AND CONVERSION_DATE <= ADD_MONTHS(LAST_DAY(S.schedule_date), -1)
)
)
), 0)
END) AS PRE_CONVERSION_RATE,
-- Average Conversion Rate (Custom Type)
(CASE
WHEN S.currency_code = 'USD' THEN 1
ELSE NVL((
SELECT GDR.CONVERSION_RATE
FROM GL_DAILY_RATES GDR
WHERE GDR.FROM_CURRENCY = S.currency_code
AND GDR.TO_CURRENCY = 'USD'
AND GDR.CONVERSION_TYPE = '300000010795017'
AND GDR.CONVERSION_DATE = (
SELECT MAX(GDR2.CONVERSION_DATE)
FROM GL_DAILY_RATES GDR2
WHERE GDR2.FROM_CURRENCY = S.currency_code
AND GDR2.TO_CURRENCY = 'USD'
AND GDR2.CONVERSION_TYPE = '300000010795017'
AND GDR2.CONVERSION_DATE <= LAST_DAY(S.schedule_date)
)
), 0)
END) AS AVG_CONVERSION_RATE
FROM fusion.fla_schedule_summary_v s
WHERE s.lease_id = :lease_id_ph
AND s.currency_code = :curr_cd_ph
GROUP BY s.period_name,
s.schedule_date,
s.currency_code
--ORDER BY s.schedule_date
UNION ALL
SELECT s.period_name prd_nm,
s.schedule_date sch_date,
SUM(s.ifrs_adjusted_liability_amount) ifrs_liab_adj_lr,
SUM(s.ifrs_opening_liability_amount) op_liab_sum_lr,
SUM(s.ifrs_interest_expense_amount) int_am_sum_lr,
SUM(s.ifrs_final_payment_amount) cash_lr, --ifrs_base_payment_amount
SUM(s.ifrs_closing_liability_amount) cls_liab_sum_lr,
SUM(s.ifrs_adjusted_rou_amount) ifrs_rou_adj_lr,
SUM(s.ifrs_opening_rou_amount) ifrs_op_fin_rou_sum_lr,
SUM(s.ifrs_amortization_amount) ifrs_fin_amor_sum_lr,
SUM(s.ifrs_closing_rou_amount) ifrs_cls_fin_rou_sum_lr,
SUM(s.asc_opening_liability_amount) asc_op_liab_sum_lr,
SUM(s.asc_final_payment_amount) asc_pay_amt_lr, --asc_base_payment_amount
SUM(s.asc_interest_expense_amount) asc_int_am_sum_lr,
SUM(s.asc_closing_liability_amount) asc_cls_liab_sum_lr,
SUM(s.asc_adjusted_liability_amount) asc_adj_amt_lr,
SUM(s.asc_opening_oper_rou_amount) asc_op_oper_rou_sum_lr,
SUM(s.asc_oper_amortization_amount) asc_oper_amor_sum_lr,
SUM(s.asc_oper_lease_expense_amount) asc_ls_exp_sum_lr,
SUM(s.asc_closing_oper_rou_amount) asc_cls_oper_rou_sum_lr,
SUM(s.asc_opening_fin_rou_amount) asc_op_fin_rou_sum_lr,
SUM(s.asc_fin_amortization_amount) asc_fin_amor_sum_lr,
SUM(s.asc_closing_fin_rou_amount) asc_cls_fin_rou_sum_lr,
SUM(s.asc_adjusted_fin_rou_amount) asc_adj_fin_rou_sum_lr,
SUM(s.asc_adjusted_oper_rou_amount) asc_adj_oper_rou_sum_lr,
SUM(s.ASC_CONTINGENT_AMOUNT) asc_cont_amt_sum_lr,
SUM(s.ifrs_reclass_stl_amount) ifrs_rec_stl_sum_lr,
SUM(s.ifrs_closing_stl_amount) ifrs_cls_stl_sum_lr,
SUM(s.ifrs_reclass_ltl_amount) ifrs_rec_ltl_sum_lr,
SUM(s.ifrs_closing_ltl_amount) ifrs_cls_ltl_sum_lr,
SUM(s.asc_reclass_stl_amount) asc_rec_stl_sum_lr,
SUM(s.asc_closing_stl_amount) asc_cls_stl_sum_lr,
SUM(s.asc_reclass_ltl_amount) asc_rec_ltl_sum_lr,
SUM(s.asc_closing_ltl_amount) asc_cls_ltl_sum_lr,
SUM(s.ifrs_oper_lease_revenue) ifrs_op_lrev_sum_lr,
SUM(s.ifrs_oper_non_lease_revenue) ifrs_op_nlrev_sum_lr,
SUM(s.asc_oper_lease_revenue) asc_op_lrev_sum_lr,
SUM(s.asc_oper_non_lease_revenue) asc_op_nlrev_sum_lr,
SUM(s.ifrs_oper_uer_amount) ifrs_op_uer_amt_sum_lr,
SUM(s.asc_oper_uer_amount) asc_op_uer_amt_sum_lr,
SUM(s.asc_present_value) ASC_PRS_VAL,
s.currency_code curr_code,
-- Current Month Last-Day Conversion Rate (CORPORATE)
(CASE
WHEN S.currency_code = 'USD' THEN 1
ELSE NVL((
SELECT GDR.CONVERSION_RATE
FROM GL_DAILY_RATES GDR
WHERE GDR.FROM_CURRENCY = S.currency_code
AND GDR.TO_CURRENCY = 'USD'
AND UPPER(GDR.CONVERSION_TYPE) = 'CORPORATE'
AND GDR.CONVERSION_DATE = (
SELECT MAX(GDR2.CONVERSION_DATE)
FROM GL_DAILY_RATES GDR2
WHERE GDR2.FROM_CURRENCY = S.currency_code
AND GDR2.TO_CURRENCY = 'USD'
AND UPPER(GDR2.CONVERSION_TYPE) = 'CORPORATE'
AND GDR2.CONVERSION_DATE IN (
SELECT LAST_DAY(CONVERSION_DATE)
FROM GL_DAILY_RATES
WHERE FROM_CURRENCY = S.currency_code
AND TO_CURRENCY = 'USD'
AND UPPER(CONVERSION_TYPE) = 'CORPORATE'
AND CONVERSION_DATE <= LAST_DAY(S.schedule_date)
)
)
), 0)
END) AS CONVERSION_RATE,
-- Previous Month Last-Day Conversion Rate (CORPORATE)
(CASE
WHEN S.currency_code = 'USD' THEN 1
ELSE NVL((
SELECT GDR.CONVERSION_RATE
FROM GL_DAILY_RATES GDR
WHERE GDR.FROM_CURRENCY = S.currency_code
AND GDR.TO_CURRENCY = 'USD'
AND UPPER(GDR.CONVERSION_TYPE) = 'CORPORATE'
AND GDR.CONVERSION_DATE = (
SELECT MAX(GDR2.CONVERSION_DATE)
FROM GL_DAILY_RATES GDR2
WHERE GDR2.FROM_CURRENCY = S.currency_code
AND GDR2.TO_CURRENCY = 'USD'
AND UPPER(GDR2.CONVERSION_TYPE) = 'CORPORATE'
AND GDR2.CONVERSION_DATE IN (
SELECT LAST_DAY(CONVERSION_DATE)
FROM GL_DAILY_RATES
WHERE FROM_CURRENCY = S.currency_code
AND TO_CURRENCY = 'USD'
AND UPPER(CONVERSION_TYPE) = 'CORPORATE'
AND CONVERSION_DATE <= ADD_MONTHS(LAST_DAY(S.schedule_date), -1)
)
)
), 0)
END) AS PRE_CONVERSION_RATE,
-- Average Conversion Rate (Custom Type)
(CASE
WHEN S.currency_code = 'USD' THEN 1
ELSE NVL((
SELECT GDR.CONVERSION_RATE
FROM GL_DAILY_RATES GDR
WHERE GDR.FROM_CURRENCY = S.currency_code
AND GDR.TO_CURRENCY = 'USD'
AND GDR.CONVERSION_TYPE = '300000010795017'
AND GDR.CONVERSION_DATE = (
SELECT MAX(GDR2.CONVERSION_DATE)
FROM GL_DAILY_RATES GDR2
WHERE GDR2.FROM_CURRENCY = S.currency_code
AND GDR2.TO_CURRENCY = 'USD'
AND GDR2.CONVERSION_TYPE = '300000010795017'
AND GDR2.CONVERSION_DATE <= LAST_DAY(S.schedule_date)
)
), 0)
END) AS AVG_CONVERSION_RATE
FROM fusion.fla_on_demand_sch_summary_v s
WHERE s.lease_id = :lease_id_ph
AND s.currency_code = :curr_cd_ph
AND s.DATA_DESC = 'ondemand_schedules'
GROUP BY s.period_name,
s.schedule_date,
s.currency_code
ORDER BY 2]]>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.
| Element | Type | Definition |
|---|---|---|
| FLA_LEASE_DETAILS | dimension | dimension |
| FLA_SCHEDULES | dimension | dimension |
| FLA_SCHEDULE_HEADERS | dimension | dimension |
| GL_DAILY_RATES | dimension | dimension |
| Amount | measure | measure |
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.
| Table | Reporting columns | Subject areas |
|---|---|---|
| FLA_LEASES_ALL | Setup / configuration table — joined for reference, not exposed for analytics | |
| FLA_LEASE_DETAILS | Setup / configuration table — joined for reference, not exposed for analytics | |
| FLA_SCHEDULES | Setup / configuration table — joined for reference, not exposed for analytics | |
| FLA_SCHEDULE_HEADERS | Setup / configuration table — joined for reference, not exposed for analytics | |
| GL_DAILY_RATES | 1 | 10 |