SELECT DISTINCT invoice.org_name, invoice.vendor_name,
invoice.vendor_number,
invoice.vendor_type_lookup_code,
invoice.vendor_site_code,
invoice.source,
invoice.invoice_num,
to_char(invoice.invoice_date, 'DD-MON-RRRR') invoice_date,
to_char(invoice.due_date, 'DD-MON-RRRR') due_date,
invoice.terms,
invoice.supplier_site_terms,
invoice.payment_method_code,
invoice.invoice_currency_code,
invoice.invoice_amount,
holds.hold,
invoice.check_date,
( to_date(invoice.check_date) - ( invoice.invoice_date ) ) days_to_pay,
:p_recipient_email_address recipient_email_address
FROM
(
SELECT
aip.org_id,
hro.name org_name,
av.vendor_name,
av.segment1 vendor_number,
av.vendor_type_lookup_code,
ass.vendor_site_code,
aip.invoice_id,
aip.invoice_num,
aip.invoice_date,
aip.source,
aps.due_date,
apt.name terms,
apts.name supplier_site_terms,
aip.payment_method_code,
aip.invoice_currency_code,
aip.invoice_amount,
--'31-MAR-16' Check_Date
:p_check_date check_date
FROM
ap.ap_invoices_all aip,
ap.ap_payment_schedules_all aps,
ap.ap_supplier_sites_all ass,
ap.ap_suppliers av,
ap.ap_terms_tl apt,
ap.ap_terms_tl apts,
hr.hr_all_organization_units hro
WHERE
aip.invoice_id = aps.invoice_id
AND ass.vendor_site_id = aip.vendor_site_id
AND ass.vendor_id = av.vendor_id
AND av.vendor_name = nvl(:p_vendor_name, av.vendor_name)
AND apts.term_id = ass.terms_id
AND aip.terms_id = apt.term_id
AND aip.org_id = hro.organization_id
AND hro.name = nvl(:p_organization, hro.name)
AND aip.payment_status_flag = 'N'
AND aip.cancelled_date IS NULL
AND apt.language = 'US'
AND aps.due_date <= :p_due_date_through
AND --'31-MAR-2016' and
aip.payment_method_code = nvl(:p_payment_method, aip.payment_method_code)
AND aip.invoice_amount <> 0
) invoice,
(
SELECT DISTINCT
ah.invoice_id,
'Invoice_on_hold' hold
FROM
ap_holds_all ah
WHERE
ah.release_reason IS NULL
) holds
WHERE
invoice.invoice_id = holds.invoice_id (+)
ORDER BY
invoice.org_name
invoice.vendor_number,
invoice.vendor_type_lookup_code,
invoice.vendor_site_code,
invoice.source,
invoice.invoice_num,
to_char(invoice.invoice_date, 'DD-MON-RRRR') invoice_date,
to_char(invoice.due_date, 'DD-MON-RRRR') due_date,
invoice.terms,
invoice.supplier_site_terms,
invoice.payment_method_code,
invoice.invoice_currency_code,
invoice.invoice_amount,
holds.hold,
invoice.check_date,
( to_date(invoice.check_date) - ( invoice.invoice_date ) ) days_to_pay,
:p_recipient_email_address recipient_email_address
FROM
(
SELECT
aip.org_id,
hro.name org_name,
av.vendor_name,
av.segment1 vendor_number,
av.vendor_type_lookup_code,
ass.vendor_site_code,
aip.invoice_id,
aip.invoice_num,
aip.invoice_date,
aip.source,
aps.due_date,
apt.name terms,
apts.name supplier_site_terms,
aip.payment_method_code,
aip.invoice_currency_code,
aip.invoice_amount,
--'31-MAR-16' Check_Date
:p_check_date check_date
FROM
ap.ap_invoices_all aip,
ap.ap_payment_schedules_all aps,
ap.ap_supplier_sites_all ass,
ap.ap_suppliers av,
ap.ap_terms_tl apt,
ap.ap_terms_tl apts,
hr.hr_all_organization_units hro
WHERE
aip.invoice_id = aps.invoice_id
AND ass.vendor_site_id = aip.vendor_site_id
AND ass.vendor_id = av.vendor_id
AND av.vendor_name = nvl(:p_vendor_name, av.vendor_name)
AND apts.term_id = ass.terms_id
AND aip.terms_id = apt.term_id
AND aip.org_id = hro.organization_id
AND hro.name = nvl(:p_organization, hro.name)
AND aip.payment_status_flag = 'N'
AND aip.cancelled_date IS NULL
AND apt.language = 'US'
AND aps.due_date <= :p_due_date_through
AND --'31-MAR-2016' and
aip.payment_method_code = nvl(:p_payment_method, aip.payment_method_code)
AND aip.invoice_amount <> 0
) invoice,
(
SELECT DISTINCT
ah.invoice_id,
'Invoice_on_hold' hold
FROM
ap_holds_all ah
WHERE
ah.release_reason IS NULL
) holds
WHERE
invoice.invoice_id = holds.invoice_id (+)
ORDER BY
invoice.org_name
No comments:
Post a Comment