diff --git a/MDUX/mdux.sql b/MDUX/mdux.sql index b63c109ab..351b74ede 100644 --- a/MDUX/mdux.sql +++ b/MDUX/mdux.sql @@ -4827,6 +4827,125 @@ AS FROM ( SELECT rap.extra_key, rap.vm_email FROM mdux_v_rap_bedrijfshulp rap GROUP BY rap.extra_key, rap.vm_email); + +CREATE OR REPLACE VIEW mdux_v_rap_finver +( + invoicedate, + creditor_id, + creditor_name, + referencetype, + accountholder_id, + accountholder_name, + name, + order_id, + order_name, + contract_id, + contract_name, + purchaseorder_id, + purchaseorder_name, + total, + vat, + finstatus_id, + finstatus_name, + finstatus_datum, + accountingperiod, + debiteur_nr, + costtype_id, + costtype_name, + contact, + validater, + remark +) +AS +SELECT f.fin_factuur_datum, + (SELECT b.prs_bedrijf_key + FROM prs_bedrijf b + WHERE prs_bedrijf_key = + COALESCE (o.mld_uitvoerende_keys, + c.cnt_prs_bedrijf_key, + bo.prs_bedrijf_key)) + AS creditor_id, + (SELECT b.prs_bedrijf_naam + FROM prs_bedrijf b + WHERE prs_bedrijf_key = + COALESCE (o.mld_uitvoerende_keys, + c.cnt_prs_bedrijf_key, + bo.prs_bedrijf_key)) + AS creditor_name, + (CASE + WHEN f.mld_opdr_key IS NOT NULL THEN 'O' + WHEN f.cnt_contract_key IS NOT NULL THEN 'C' + WHEN f.bes_bestelopdr_key IS NOT NULL THEN 'B' + END) + AS referencetype, + (SELECT p.prs_perslid_key + FROM prs_v_perslid_fullnames_all p + WHERE prs_perslid_key = fin.getfiatteur (f.fin_factuur_key)) + AS accountholder_id, + (SELECT p.prs_perslid_naam_full + FROM prs_v_perslid_fullnames_all p + WHERE prs_perslid_key = fin.getfiatteur (f.fin_factuur_key)) + AS accountholder_name, + f.fin_factuur_nr AS name, + f.mld_opdr_key AS order_id, + (CASE + WHEN f.mld_opdr_key IS NOT NULL + THEN + (SELECT opdracht_nummer + FROM mld_v_udr_opdracht + WHERE opdracht_key = f.mld_opdr_key) + END) + AS order_name, + f.cnt_contract_key AS contract_id, + (CASE + WHEN f.cnt_contract_key IS NOT NULL + THEN + (SELECT cnt_contract_nummer + FROM cnt_contract + WHERE cnt_contract_key = f.cnt_contract_key) + END) + AS contract_name, + f.bes_bestelopdr_key AS purchaseorder_id, + (CASE + WHEN f.bes_bestelopdr_key IS NOT NULL + THEN + (SELECT 'FCC' || bes_bestelopdr_id + FROM bes_bestelopdr + WHERE bes_bestelopdr_key = f.bes_bestelopdr_key) + END) + AS purchaseorder_name, + f.fin_factuur_totaal AS total, + f.fin_factuur_totaal_btw AS vat, + f.fin_factuur_statuses_key AS finstatus_id, + (SELECT fin_factuur_statuses_omschr + FROM fin_factuur_statuses + WHERE f.fin_factuur_statuses_key = fin_factuur_statuses_key) + AS finstatus_name, + ft.fac_tracking_datum AS finstatus_datum, + f.fin_factuur_boekmaand AS accountingperiod, + f.fin_factuur_debiteur_nr AS debiteur_nr, + f.prs_kostensoort_key AS costtype_id, + (SELECT prs_kostensoort_oms + FROM prs_kostensoort + WHERE prs_kostensoort_key = f.prs_kostensoort_key) + AS costtype_name, + NULL AS contact, + NULL AS validater, + f.fin_factuur_opmerking AS remark + FROM fin_factuur f, + fin_factuurregel fr, + fac_tracking ft, + fac_srtnotificatie sn, + mld_opdr o, + cnt_contract c, + bes_bestelopdr bo + WHERE f.fin_factuur_key = fr.fin_factuur_key + AND f.fin_factuur_key = ft.fac_tracking_refkey + AND ft.fac_srtnotificatie_key = sn.fac_srtnotificatie_key + AND sn.fac_srtnotificatie_code = 'FINVER' -- Verwerkt + AND f.mld_opdr_key = o.mld_opdr_key(+) + AND f.cnt_contract_key = c.cnt_contract_key(+) + AND f.bes_bestelopdr_key = bo.bes_bestelopdr_key(+); ------ payload end ------