DBA Data[Home] [Help]

VIEW: APPS.LNS_AM_SCHEDS_V

Source

View Text - Preformatted

SELECT am.loan_id LOAN_ID ,am.AMORTIZATION_SCHEDULE_ID AMORTIZATION_SCHEDULE_ID ,am.PAYMENT_NUMBER PAYMENT_NUMBER ,am.DUE_DATE DUE_DATE ,am.PRINCIPAL_AMOUNT PRINCIPAL_AMOUNT ,am.INTEREST_AMOUNT INTEREST_AMOUNT ,am.FEE_AMOUNT FEE_AMOUNT ,decode(NVL(am.REVERSED_FLAG, 'N'), 'Y', 0, decode(am.principal_trx_id, null, 0, (nvl(psa_prin.AMOUNT_APPLIED, 0) - nvl(psa_prin.AMOUNT_ADJUSTED, 0) + nvl(psa_prin.AMOUNT_CREDITED, 0)))) PRINCIPAL_PAID ,decode(NVL(am.REVERSED_FLAG, 'N'), 'Y', 0, decode(am.interest_trx_id, null, 0, (nvl(psa_int.AMOUNT_APPLIED, 0) - nvl(psa_int.AMOUNT_ADJUSTED, 0) + nvl(psa_int.AMOUNT_CREDITED, 0)))) INTEREST_PAID ,decode(NVL(am.REVERSED_FLAG, 'N'), 'Y', 0, decode(am.fee_trx_id, null, 0, (nvl(psa_fee.AMOUNT_APPLIED, 0) - nvl(psa_fee.AMOUNT_ADJUSTED, 0) + nvl(psa_fee.AMOUNT_CREDITED, 0)))) FEE_PAID ,decode(loan.loan_class_code, 'DIRECT', decode(nvl(loan.BILL_ON_APPR_AMOUNT_FLAG, 'N'), 'Y', loan.requested_amount + (select nvl(sum(adj.ADJUSTMENT_AMOUNT), 0) from LNS_LOAN_AMOUNT_ADJS adj where adj.LOAN_ID = loan.loan_id and adj.STATUS = 'APPROVED' and trunc(adj.EFFECTIVE_DATE) <= trunc(am.DUE_DATE)), (select nvl(sum(disb_line.LINE_AMOUNT), 0) from lns_disb_lines disb_line, lns_disb_headers disb_hdr where disb_hdr.loan_id = loan.loan_id and disb_hdr.disb_header_id = disb_line.disb_header_id and disb_line.STATUS = 'FULLY_FUNDED' and trunc(disb_line.DISBURSEMENT_DATE) <= trunc(am.DUE_DATE))), 'ERS', (select nvl(sum(lines.REQUESTED_AMOUNT), 0) from lns_loan_lines lines where lines.loan_id = loan.loan_id and lines.STATUS = 'APPROVED' and trunc(lines.ADJUSTMENT_DATE) <= trunc(am.DUE_DATE))) - sum(decode(NVL(am.REVERSED_FLAG, 'N'), 'Y', 0, (nvl(psa_prin.AMOUNT_APPLIED, 0) - nvl(psa_prin.AMOUNT_ADJUSTED, 0) + nvl(psa_prin.AMOUNT_CREDITED, 0) - nvl(psa_prin.TAX_ORIGINAL, 0)))) over (partition by am.loan_id, nvl(am.PHASE, 'TERM'), NVL(am.REVERSED_FLAG, 'N') order by nvl(am.PHASE, 'TERM'), am.PAYMENT_NUMBER, am.AMORTIZATION_SCHEDULE_ID rows between unbounded preceding and current row) PRINCIPAL_BALANCE ,decode(loan.loan_class_code, 'DIRECT', (select nvl(sum(disb_line.LINE_AMOUNT), 0) from lns_disb_lines disb_line, lns_disb_headers disb_hdr where disb_hdr.loan_id = loan.loan_id and disb_hdr.disb_header_id = disb_line.disb_header_id and disb_line.STATUS = 'FULLY_FUNDED' and trunc(disb_line.DISBURSEMENT_DATE) <= trunc(am.DUE_DATE)), 'ERS', (select nvl(sum(lines.REQUESTED_AMOUNT), 0) from lns_loan_lines lines where lines.loan_id = loan.loan_id and lines.STATUS = 'APPROVED' and trunc(lines.ADJUSTMENT_DATE) <= trunc(am.DUE_DATE))) FUNDED_AMOUNT ,(nvl(am.PRINCIPAL_AMOUNT, 0) + nvl(am.INTEREST_AMOUNT, 0) + nvl(am.FEE_AMOUNT, 0)) TOTAL_BILLED_AMOUNT ,nvl(psa_prin.AMOUNT_DUE_ORIGINAL, 0) + nvl(psa_int.AMOUNT_DUE_ORIGINAL, 0) + nvl(psa_fee.AMOUNT_DUE_ORIGINAL, 0) TOTAL_AR_BILLED_AMOUNT ,nvl(psa_prin.AMOUNT_DUE_REMAINING, 0) + nvl(psa_int.AMOUNT_DUE_REMAINING, 0) + nvl(psa_fee.AMOUNT_DUE_REMAINING, 0) TOTAL_REMAINING_AMOUNT ,decode(NVL(am.REVERSED_FLAG, 'N'), 'Y', to_date(null), decode( greatest ( nvl((select max(apply_date) from ar_receivable_applications_all where APPLIED_CUSTOMER_TRX_ID in (am.principal_trx_id, am.interest_trx_id, am.fee_trx_id) and application_type in ('CASH', 'CM')), to_date('01-01-1900', 'dd-mm-yyyy')) ,nvl((select max(apply_date) from ar_adjustments_all where CUSTOMER_TRX_ID in (am.principal_trx_id, am.interest_trx_id, am.fee_trx_id) and postable(+) = 'Y' and status(+) = 'A'), to_date('01-01-1900', 'dd-mm-yyyy')) ), to_date('01-01-1900', 'dd-mm-yyyy'), to_date(null), greatest ( nvl((select max(apply_date) from ar_receivable_applications_all where APPLIED_CUSTOMER_TRX_ID in (am.principal_trx_id, am.interest_trx_id, am.fee_trx_id) and application_type in ('CASH', 'CM')), to_date('01-01-1900', 'dd-mm-yyyy')) ,nvl((select max(apply_date) from ar_adjustments_all where CUSTOMER_TRX_ID in (am.principal_trx_id, am.interest_trx_id, am.fee_trx_id) and postable(+) = 'Y' and status(+) = 'A'), to_date('01-01-1900', 'dd-mm-yyyy')) ) )) LAST_APPLIED_DATE ,decode(am.REVERSED_FLAG, null, 'N', am.REVERSED_FLAG) REVERSED_CODE ,lok1.MEANING REVERSED_DESC ,am.CREATION_DATE CREATION_DATE ,am.PARENT_AMORTIZATION_ID PARENT_AMORTIZATION_ID ,decode(am.PARENT_AMORTIZATION_ID, null, 'SCHEDULED', 'MANUAL') BILL_TYPE_CODE ,lok2.MEANING BILL_TYPE_DESC ,decode(nvl(am.REVERSED_FLAG, 'N'), 'Y', 'CREDIT_DISABLED', decode(decode(am.PARENT_AMORTIZATION_ID, null, 'SCHEDULED', 'MANUAL'), 'MANUAL', decode((nvl(psa_prin.AMOUNT_DUE_ORIGINAL, 0) + nvl(psa_int.AMOUNT_DUE_ORIGINAL, 0) + nvl(psa_fee.AMOUNT_DUE_ORIGINAL, 0)) - (nvl(psa_prin.AMOUNT_DUE_REMAINING, 0) + nvl(psa_int.AMOUNT_DUE_REMAINING, 0) + nvl(psa_fee.AMOUNT_DUE_REMAINING, 0)), 0, 'CREDIT_ENABLED', 'CREDIT_DISABLED' ), decode(loan.LAST_PAYMENT_NUMBER, am.PAYMENT_NUMBER, decode((nvl(psa_prin.AMOUNT_DUE_ORIGINAL, 0) + nvl(psa_int.AMOUNT_DUE_ORIGINAL, 0) + nvl(psa_fee.AMOUNT_DUE_ORIGINAL, 0)) - (nvl(psa_prin.AMOUNT_DUE_REMAINING, 0) + nvl(psa_int.AMOUNT_DUE_REMAINING, 0) + nvl(psa_fee.AMOUNT_DUE_REMAINING, 0)), 0, 'CREDIT_ENABLED', 'CREDIT_DISABLED' ), 'CREDIT_DISABLED' ) ) ) CREDIT_ENABLED_CODE ,decode(nvl(am.REVERSED_FLAG, 'N'), 'Y', 'REBILL_DISABLED', decode(decode(am.PARENT_AMORTIZATION_ID, null, 'SCHEDULED', 'MANUAL'), 'MANUAL', 'REBILL_DISABLED', decode(loan.LAST_PAYMENT_NUMBER, am.PAYMENT_NUMBER, decode((nvl(psa_prin.AMOUNT_DUE_ORIGINAL, 0) + nvl(psa_int.AMOUNT_DUE_ORIGINAL, 0) + nvl(psa_fee.AMOUNT_DUE_ORIGINAL, 0)) - (nvl(psa_prin.AMOUNT_DUE_REMAINING, 0) + nvl(psa_int.AMOUNT_DUE_REMAINING, 0) + nvl(psa_fee.AMOUNT_DUE_REMAINING, 0)), 0, 'REBILL_ENABLED', 'REBILL_DISABLED' ), 'REBILL_DISABLED' ) ) ) REBILL_ENABLED_CODE ,decode(am.principal_trx_id, null, 0, nvl(psa_prin.AMOUNT_DUE_REMAINING, 0)) PRINCIPAL_REMAINING ,decode(am.interest_trx_id, null, 0, nvl(psa_int.AMOUNT_DUE_REMAINING, 0)) INTEREST_REMAINING ,decode(am.fee_trx_id, null, 0, nvl(psa_fee.AMOUNT_DUE_REMAINING, 0)) FEE_REMAINING ,am.PRINCIPAL_TRX_ID PRINCIPAL_TRX_ID ,am.INTEREST_TRX_ID INTEREST_TRX_ID ,am.FEE_TRX_ID FEE_TRX_ID ,am.STATEMENT_XML STATEMENT_XML ,loan.LOAN_STATUS LOAN_STATUS ,loan.ORG_ID ORG_ID ,loan.LOAN_CURRENCY LOAN_CURRENCY ,loan.LEGAL_ENTITY_ID LEGAL_ENTITY_ID ,nvl(am.PHASE, 'TERM') PHASE ,nvl(psa_prin.trx_date, nvl(psa_int.trx_date, psa_fee.trx_date)) TRX_DATE ,nvl(psa_prin.gl_date, nvl(psa_int.gl_date, psa_fee.gl_date)) GL_DATE from lns_loan_headers_all loan ,LNS_AMORTIZATION_SCHEDS am ,FND_LOOKUPS lok1 ,LNS_LOOKUPS lok2 ,ar_payment_schedules_all psa_prin ,ar_payment_schedules_all psa_int ,ar_payment_schedules_all psa_fee where loan.loan_id = am.loan_id and am.REAMORTIZATION_AMOUNT is null and lok1.lookup_type = 'YES_NO' and lok1.lookup_code = nvl(am.REVERSED_FLAG, 'N') and lok2.lookup_type = 'BILL_TYPE' and lok2.lookup_code = decode(am.PARENT_AMORTIZATION_ID, null, 'SCHEDULED', 'MANUAL') and psa_prin.customer_trx_id(+) = am.principal_trx_id and psa_int.customer_trx_id(+) = am.interest_trx_id and psa_fee.customer_trx_id(+) = am.fee_trx_id
View Text - HTML Formatted

SELECT AM.LOAN_ID LOAN_ID
, AM.AMORTIZATION_SCHEDULE_ID AMORTIZATION_SCHEDULE_ID
, AM.PAYMENT_NUMBER PAYMENT_NUMBER
, AM.DUE_DATE DUE_DATE
, AM.PRINCIPAL_AMOUNT PRINCIPAL_AMOUNT
, AM.INTEREST_AMOUNT INTEREST_AMOUNT
, AM.FEE_AMOUNT FEE_AMOUNT
, DECODE(NVL(AM.REVERSED_FLAG
, 'N')
, 'Y'
, 0
, DECODE(AM.PRINCIPAL_TRX_ID
, NULL
, 0
, (NVL(PSA_PRIN.AMOUNT_APPLIED
, 0) - NVL(PSA_PRIN.AMOUNT_ADJUSTED
, 0) + NVL(PSA_PRIN.AMOUNT_CREDITED
, 0)))) PRINCIPAL_PAID
, DECODE(NVL(AM.REVERSED_FLAG
, 'N')
, 'Y'
, 0
, DECODE(AM.INTEREST_TRX_ID
, NULL
, 0
, (NVL(PSA_INT.AMOUNT_APPLIED
, 0) - NVL(PSA_INT.AMOUNT_ADJUSTED
, 0) + NVL(PSA_INT.AMOUNT_CREDITED
, 0)))) INTEREST_PAID
, DECODE(NVL(AM.REVERSED_FLAG
, 'N')
, 'Y'
, 0
, DECODE(AM.FEE_TRX_ID
, NULL
, 0
, (NVL(PSA_FEE.AMOUNT_APPLIED
, 0) - NVL(PSA_FEE.AMOUNT_ADJUSTED
, 0) + NVL(PSA_FEE.AMOUNT_CREDITED
, 0)))) FEE_PAID
, DECODE(LOAN.LOAN_CLASS_CODE
, 'DIRECT'
, DECODE(NVL(LOAN.BILL_ON_APPR_AMOUNT_FLAG
, 'N')
, 'Y'
, LOAN.REQUESTED_AMOUNT + (SELECT NVL(SUM(ADJ.ADJUSTMENT_AMOUNT)
, 0)
FROM LNS_LOAN_AMOUNT_ADJS ADJ
WHERE ADJ.LOAN_ID = LOAN.LOAN_ID
AND ADJ.STATUS = 'APPROVED'
AND TRUNC(ADJ.EFFECTIVE_DATE) <= TRUNC(AM.DUE_DATE))
, (SELECT NVL(SUM(DISB_LINE.LINE_AMOUNT)
, 0)
FROM LNS_DISB_LINES DISB_LINE
, LNS_DISB_HEADERS DISB_HDR
WHERE DISB_HDR.LOAN_ID = LOAN.LOAN_ID
AND DISB_HDR.DISB_HEADER_ID = DISB_LINE.DISB_HEADER_ID
AND DISB_LINE.STATUS = 'FULLY_FUNDED'
AND TRUNC(DISB_LINE.DISBURSEMENT_DATE) <= TRUNC(AM.DUE_DATE)))
, 'ERS'
, (SELECT NVL(SUM(LINES.REQUESTED_AMOUNT)
, 0)
FROM LNS_LOAN_LINES LINES
WHERE LINES.LOAN_ID = LOAN.LOAN_ID
AND LINES.STATUS = 'APPROVED'
AND TRUNC(LINES.ADJUSTMENT_DATE) <= TRUNC(AM.DUE_DATE))) - SUM(DECODE(NVL(AM.REVERSED_FLAG
, 'N')
, 'Y'
, 0
, (NVL(PSA_PRIN.AMOUNT_APPLIED
, 0) - NVL(PSA_PRIN.AMOUNT_ADJUSTED
, 0) + NVL(PSA_PRIN.AMOUNT_CREDITED
, 0) - NVL(PSA_PRIN.TAX_ORIGINAL
, 0)))) OVER (PARTITION BY AM.LOAN_ID
, NVL(AM.PHASE
, 'TERM')
, NVL(AM.REVERSED_FLAG
, 'N') ORDER BY NVL(AM.PHASE
, 'TERM')
, AM.PAYMENT_NUMBER
, AM.AMORTIZATION_SCHEDULE_ID ROWS BETWEEN UNBOUNDED PRECEDING
AND CURRENT ROW) PRINCIPAL_BALANCE
, DECODE(LOAN.LOAN_CLASS_CODE
, 'DIRECT'
, (SELECT NVL(SUM(DISB_LINE.LINE_AMOUNT)
, 0)
FROM LNS_DISB_LINES DISB_LINE
, LNS_DISB_HEADERS DISB_HDR
WHERE DISB_HDR.LOAN_ID = LOAN.LOAN_ID
AND DISB_HDR.DISB_HEADER_ID = DISB_LINE.DISB_HEADER_ID
AND DISB_LINE.STATUS = 'FULLY_FUNDED'
AND TRUNC(DISB_LINE.DISBURSEMENT_DATE) <= TRUNC(AM.DUE_DATE))
, 'ERS'
, (SELECT NVL(SUM(LINES.REQUESTED_AMOUNT)
, 0)
FROM LNS_LOAN_LINES LINES
WHERE LINES.LOAN_ID = LOAN.LOAN_ID
AND LINES.STATUS = 'APPROVED'
AND TRUNC(LINES.ADJUSTMENT_DATE) <= TRUNC(AM.DUE_DATE))) FUNDED_AMOUNT
, (NVL(AM.PRINCIPAL_AMOUNT
, 0) + NVL(AM.INTEREST_AMOUNT
, 0) + NVL(AM.FEE_AMOUNT
, 0)) TOTAL_BILLED_AMOUNT
, NVL(PSA_PRIN.AMOUNT_DUE_ORIGINAL
, 0) + NVL(PSA_INT.AMOUNT_DUE_ORIGINAL
, 0) + NVL(PSA_FEE.AMOUNT_DUE_ORIGINAL
, 0) TOTAL_AR_BILLED_AMOUNT
, NVL(PSA_PRIN.AMOUNT_DUE_REMAINING
, 0) + NVL(PSA_INT.AMOUNT_DUE_REMAINING
, 0) + NVL(PSA_FEE.AMOUNT_DUE_REMAINING
, 0) TOTAL_REMAINING_AMOUNT
, DECODE(NVL(AM.REVERSED_FLAG
, 'N')
, 'Y'
, TO_DATE(NULL)
, DECODE( GREATEST ( NVL((SELECT MAX(APPLY_DATE)
FROM AR_RECEIVABLE_APPLICATIONS_ALL
WHERE APPLIED_CUSTOMER_TRX_ID IN (AM.PRINCIPAL_TRX_ID
, AM.INTEREST_TRX_ID
, AM.FEE_TRX_ID)
AND APPLICATION_TYPE IN ('CASH'
, 'CM'))
, TO_DATE('01-01-1900'
, 'DD-MM-YYYY'))
, NVL((SELECT MAX(APPLY_DATE)
FROM AR_ADJUSTMENTS_ALL
WHERE CUSTOMER_TRX_ID IN (AM.PRINCIPAL_TRX_ID
, AM.INTEREST_TRX_ID
, AM.FEE_TRX_ID)
AND POSTABLE(+) = 'Y'
AND STATUS(+) = 'A')
, TO_DATE('01-01-1900'
, 'DD-MM-YYYY')) )
, TO_DATE('01-01-1900'
, 'DD-MM-YYYY')
, TO_DATE(NULL)
, GREATEST ( NVL((SELECT MAX(APPLY_DATE)
FROM AR_RECEIVABLE_APPLICATIONS_ALL
WHERE APPLIED_CUSTOMER_TRX_ID IN (AM.PRINCIPAL_TRX_ID
, AM.INTEREST_TRX_ID
, AM.FEE_TRX_ID)
AND APPLICATION_TYPE IN ('CASH'
, 'CM'))
, TO_DATE('01-01-1900'
, 'DD-MM-YYYY'))
, NVL((SELECT MAX(APPLY_DATE)
FROM AR_ADJUSTMENTS_ALL
WHERE CUSTOMER_TRX_ID IN (AM.PRINCIPAL_TRX_ID
, AM.INTEREST_TRX_ID
, AM.FEE_TRX_ID)
AND POSTABLE(+) = 'Y'
AND STATUS(+) = 'A')
, TO_DATE('01-01-1900'
, 'DD-MM-YYYY')) ) )) LAST_APPLIED_DATE
, DECODE(AM.REVERSED_FLAG
, NULL
, 'N'
, AM.REVERSED_FLAG) REVERSED_CODE
, LOK1.MEANING REVERSED_DESC
, AM.CREATION_DATE CREATION_DATE
, AM.PARENT_AMORTIZATION_ID PARENT_AMORTIZATION_ID
, DECODE(AM.PARENT_AMORTIZATION_ID
, NULL
, 'SCHEDULED'
, 'MANUAL') BILL_TYPE_CODE
, LOK2.MEANING BILL_TYPE_DESC
, DECODE(NVL(AM.REVERSED_FLAG
, 'N')
, 'Y'
, 'CREDIT_DISABLED'
, DECODE(DECODE(AM.PARENT_AMORTIZATION_ID
, NULL
, 'SCHEDULED'
, 'MANUAL')
, 'MANUAL'
, DECODE((NVL(PSA_PRIN.AMOUNT_DUE_ORIGINAL
, 0) + NVL(PSA_INT.AMOUNT_DUE_ORIGINAL
, 0) + NVL(PSA_FEE.AMOUNT_DUE_ORIGINAL
, 0)) - (NVL(PSA_PRIN.AMOUNT_DUE_REMAINING
, 0) + NVL(PSA_INT.AMOUNT_DUE_REMAINING
, 0) + NVL(PSA_FEE.AMOUNT_DUE_REMAINING
, 0))
, 0
, 'CREDIT_ENABLED'
, 'CREDIT_DISABLED' )
, DECODE(LOAN.LAST_PAYMENT_NUMBER
, AM.PAYMENT_NUMBER
, DECODE((NVL(PSA_PRIN.AMOUNT_DUE_ORIGINAL
, 0) + NVL(PSA_INT.AMOUNT_DUE_ORIGINAL
, 0) + NVL(PSA_FEE.AMOUNT_DUE_ORIGINAL
, 0)) - (NVL(PSA_PRIN.AMOUNT_DUE_REMAINING
, 0) + NVL(PSA_INT.AMOUNT_DUE_REMAINING
, 0) + NVL(PSA_FEE.AMOUNT_DUE_REMAINING
, 0))
, 0
, 'CREDIT_ENABLED'
, 'CREDIT_DISABLED' )
, 'CREDIT_DISABLED' ) ) ) CREDIT_ENABLED_CODE
, DECODE(NVL(AM.REVERSED_FLAG
, 'N')
, 'Y'
, 'REBILL_DISABLED'
, DECODE(DECODE(AM.PARENT_AMORTIZATION_ID
, NULL
, 'SCHEDULED'
, 'MANUAL')
, 'MANUAL'
, 'REBILL_DISABLED'
, DECODE(LOAN.LAST_PAYMENT_NUMBER
, AM.PAYMENT_NUMBER
, DECODE((NVL(PSA_PRIN.AMOUNT_DUE_ORIGINAL
, 0) + NVL(PSA_INT.AMOUNT_DUE_ORIGINAL
, 0) + NVL(PSA_FEE.AMOUNT_DUE_ORIGINAL
, 0)) - (NVL(PSA_PRIN.AMOUNT_DUE_REMAINING
, 0) + NVL(PSA_INT.AMOUNT_DUE_REMAINING
, 0) + NVL(PSA_FEE.AMOUNT_DUE_REMAINING
, 0))
, 0
, 'REBILL_ENABLED'
, 'REBILL_DISABLED' )
, 'REBILL_DISABLED' ) ) ) REBILL_ENABLED_CODE
, DECODE(AM.PRINCIPAL_TRX_ID
, NULL
, 0
, NVL(PSA_PRIN.AMOUNT_DUE_REMAINING
, 0)) PRINCIPAL_REMAINING
, DECODE(AM.INTEREST_TRX_ID
, NULL
, 0
, NVL(PSA_INT.AMOUNT_DUE_REMAINING
, 0)) INTEREST_REMAINING
, DECODE(AM.FEE_TRX_ID
, NULL
, 0
, NVL(PSA_FEE.AMOUNT_DUE_REMAINING
, 0)) FEE_REMAINING
, AM.PRINCIPAL_TRX_ID PRINCIPAL_TRX_ID
, AM.INTEREST_TRX_ID INTEREST_TRX_ID
, AM.FEE_TRX_ID FEE_TRX_ID
, AM.STATEMENT_XML STATEMENT_XML
, LOAN.LOAN_STATUS LOAN_STATUS
, LOAN.ORG_ID ORG_ID
, LOAN.LOAN_CURRENCY LOAN_CURRENCY
, LOAN.LEGAL_ENTITY_ID LEGAL_ENTITY_ID
, NVL(AM.PHASE
, 'TERM') PHASE
, NVL(PSA_PRIN.TRX_DATE
, NVL(PSA_INT.TRX_DATE
, PSA_FEE.TRX_DATE)) TRX_DATE
, NVL(PSA_PRIN.GL_DATE
, NVL(PSA_INT.GL_DATE
, PSA_FEE.GL_DATE)) GL_DATE
FROM LNS_LOAN_HEADERS_ALL LOAN
, LNS_AMORTIZATION_SCHEDS AM
, FND_LOOKUPS LOK1
, LNS_LOOKUPS LOK2
, AR_PAYMENT_SCHEDULES_ALL PSA_PRIN
, AR_PAYMENT_SCHEDULES_ALL PSA_INT
, AR_PAYMENT_SCHEDULES_ALL PSA_FEE
WHERE LOAN.LOAN_ID = AM.LOAN_ID
AND AM.REAMORTIZATION_AMOUNT IS NULL
AND LOK1.LOOKUP_TYPE = 'YES_NO'
AND LOK1.LOOKUP_CODE = NVL(AM.REVERSED_FLAG
, 'N')
AND LOK2.LOOKUP_TYPE = 'BILL_TYPE'
AND LOK2.LOOKUP_CODE = DECODE(AM.PARENT_AMORTIZATION_ID
, NULL
, 'SCHEDULED'
, 'MANUAL')
AND PSA_PRIN.CUSTOMER_TRX_ID(+) = AM.PRINCIPAL_TRX_ID
AND PSA_INT.CUSTOMER_TRX_ID(+) = AM.INTEREST_TRX_ID
AND PSA_FEE.CUSTOMER_TRX_ID(+) = AM.FEE_TRX_ID