diff --git a/KFHT/kfht.sql b/KFHT/kfht.sql index 7aac2b339..bf8fb52ea 100644 --- a/KFHT/kfht.sql +++ b/KFHT/kfht.sql @@ -413,13 +413,16 @@ AS sd.ins_srtdiscipline_prefix || TO_CHAR (o.mld_melding_key) || '/' || TO_CHAR (o.mld_opdr_bedrijfopdr_volgnr) ticketnumber, ot.mld_typeopdr_omschrijving ordertype, - a.prs_afdeling_omschrijving department, + --a.prs_afdeling_omschrijving department, -- KFHT#60175: Verwijderen Department! b.prs_bedrijf_naam supplier, --SUBSTR (c.cnt_contract_nummer || DECODE (kl.jaarinkoopnr, NULL, '', '/' || kl.jaarinkoopnr), 1, 30) - DECODE (o.prs_kostenplaats_key, - 38, SUBSTR (COALESCE (c.cnt_contract_nummer, ko.opdrinkoopnr), 1, 30), -- HTCE (300002) - SUBSTR (c.cnt_contract_nummer || DECODE (COALESCE (ko.opdrinkoopnr, kl.jaarinkoopnr), NULL, '', '/' || COALESCE (ko.opdrinkoopnr, kl.jaarinkoopnr)), 1, 30)) - contract, + --DECODE (o.prs_kostenplaats_key, + -- 38, SUBSTR (COALESCE (c.cnt_contract_nummer, ko.opdrinkoopnr), 1, 30), -- HTCE (300002) + -- SUBSTR (c.cnt_contract_nummer || DECODE (COALESCE (ko.opdrinkoopnr, kl.jaarinkoopnr), NULL, '', '/' || COALESCE (ko.opdrinkoopnr, kl.jaarinkoopnr)), 1, 30)) + DECODE (kl.jaarinkoopnr, + NULL, SUBSTR (c.cnt_contract_nummer || '|' || ko.opdrinkoopnr, 1, 30), + kl.jaarinkoopnr) + contract, -- KFHT#60175: Anders gaan vullen Contract! td.ins_discipline_omschrijving || ' / ' || sm.mld_stdmelding_omschrijving reporttype, aog.alg_gebouw_code buildingcode, @@ -432,11 +435,15 @@ AS TO_CHAR (o.mld_opdr_datumbegin, 'dd-mm-yyyy') || 'T' || TO_CHAR (o.mld_opdr_datumbegin, 'hh24:mi:ss') issued, - TO_CHAR (fac.gettrackingdate ('ORDAFM', o.mld_opdr_key), 'dd-mm-yyyy') - || 'T' || TO_CHAR (fac.gettrackingdate ('ORDAFM', o.mld_opdr_key), 'hh24:mi:ss') - closed - FROM mld_opdr o, - fac_tracking t, + DECODE (fac.gettrackingdate ('ORDAFM', o.mld_opdr_key), + NULL, NULL, + TO_CHAR (fac.gettrackingdate ('ORDAFM', o.mld_opdr_key), 'dd-mm-yyyy') + || 'T' || TO_CHAR (fac.gettrackingdate ('ORDAFM', o.mld_opdr_key), 'hh24:mi:ss')) + closed, + os.mld_statusopdr_omschrijving orderstatus -- KFHT#60175: Toevoegen Orderstatus! + FROM fac_tracking t, + fac_srtnotificatie sn, + mld_opdr o, mld_typeopdr ot, prs_bedrijf b, cnt_contract c, @@ -455,92 +462,16 @@ AS WHERE prs_kenmerk_key = 1060) kl, -- Inkoopordernummer (SELECT mld_opdr_key, mld_kenmerkopdr_waarde opdrinkoopnr FROM mld_v_aanwezigkenmerkopdr - WHERE mld_kenmerk_key = 17) ko -- Inkooporder - WHERE o.mld_statusopdr_key IN (6, 9, 7) -- Afgemeld/Afgerond/Verwerkt - AND o.mld_opdr_key = t.fac_tracking_refkey - AND t.fac_srtnotificatie_key IN (59, 61) -- ORDAFM/ORDUPD - AND t.fac_tracking_datum > TRUNC (SYSDATE - 1) -- Export draait na middernacht! + WHERE mld_kenmerk_key = 17) ko, -- Inkooporder + mld_statusopdr os + WHERE t.fac_tracking_datum > TRUNC (SYSDATE - 1) -- Export draait na middernacht! + AND t.fac_srtnotificatie_key = sn.fac_srtnotificatie_key + AND sn.fac_srtnotificatie_xmlnode = 'opdracht' + AND t.fac_tracking_refkey = o.mld_opdr_key -- KFHT#60175: Geen restrictie meer op opdrachtstatus (daarmee bij elke wijziging van status)! AND o.mld_typeopdr_key = ot.mld_typeopdr_key - AND ot.mld_typeopdr_key != 8 -- Geen Offerteaanvraag + --AND ot.mld_typeopdr_key != 8 -- KFHT#60175: Geen restrictie meer op opdrachttype (daarmee ook Offerteaanvraag)! AND o.mld_uitvoerende_keys = b.prs_bedrijf_key -- Geen Interne opdracht, tenzij - AND b.prs_leverancier_nr IS NOT NULL -- Alleen bedrijven met leveranciernummer! - AND o.cnt_contract_key = c.cnt_contract_key(+) - AND o.prs_kostenplaats_key = kp.prs_kostenplaats_key - AND o.mld_melding_key = m.mld_melding_key - AND m.mld_stdmelding_key = sm.mld_stdmelding_key - AND sm.mld_ins_discipline_key = td.ins_discipline_key - AND td.ins_srtdiscipline_key = sd.ins_srtdiscipline_key - AND sm.prs_kostensoort_key = ksm.prs_kostensoort_key(+) - AND td.prs_kostensoort_key = ksv.prs_kostensoort_key(+) - AND m.mld_alg_onroerendgoed_keys = aog.alg_onroerendgoed_keys - AND m.prs_perslid_key = p.prs_perslid_key - AND p.prs_afdeling_key = a.prs_afdeling_key - AND a.prs_afdeling_key = kl.prs_link_key(+) - AND o.mld_opdr_key = ko.mld_opdr_key(+) - ORDER BY o.mld_melding_key, o.mld_opdr_bedrijfopdr_volgnr; -/* KFHT#60175: NIEUW??? -CREATE OR REPLACE PROCEDURE kfht_select_exact (p_applname IN VARCHAR2, - p_applrun IN VARCHAR2) -AS - CURSOR c_opdr - IS - SELECT DISTINCT - o.mld_melding_key, - o.mld_opdr_bedrijfopdr_volgnr, - sd.ins_srtdiscipline_prefix || TO_CHAR (o.mld_melding_key) || '/' || TO_CHAR (o.mld_opdr_bedrijfopdr_volgnr) - ticketnumber, - ot.mld_typeopdr_omschrijving ordertype, - a.prs_afdeling_omschrijving department, - b.prs_bedrijf_naam supplier, - --SUBSTR (c.cnt_contract_nummer || DECODE (kl.jaarinkoopnr, NULL, '', '/' || kl.jaarinkoopnr), 1, 30) - DECODE (o.prs_kostenplaats_key, - 38, SUBSTR (COALESCE (c.cnt_contract_nummer, ko.opdrinkoopnr), 1, 30), -- HTCE (300002) - SUBSTR (c.cnt_contract_nummer || DECODE (COALESCE (ko.opdrinkoopnr, kl.jaarinkoopnr), NULL, '', '/' || COALESCE (ko.opdrinkoopnr, kl.jaarinkoopnr)), 1, 30)) - contract, - td.ins_discipline_omschrijving || ' / ' || sm.mld_stdmelding_omschrijving - reporttype, - aog.alg_gebouw_code buildingcode, - kp.prs_kostenplaats_nr costcenter, - COALESCE (ksm.prs_kostensoort_oms, ksv.prs_kostensoort_oms) - costunit, - o.mld_opdr_kosten costs, - b.prs_leverancier_nr supplierreference, - --TO_CHAR (fac.gettrackingdate ('ORDNEW', o.mld_opdr_key), 'dd-mm-yyyy hh24:mi:ss') - TO_CHAR (o.mld_opdr_datumbegin, 'dd-mm-yyyy') - || 'T' || TO_CHAR (o.mld_opdr_datumbegin, 'hh24:mi:ss') - issued, - TO_CHAR (fac.gettrackingdate ('ORDAFM', o.mld_opdr_key), 'dd-mm-yyyy') - || 'T' || TO_CHAR (fac.gettrackingdate ('ORDAFM', o.mld_opdr_key), 'hh24:mi:ss') - closed - FROM mld_opdr o, - fac_tracking t, - mld_typeopdr ot, - prs_bedrijf b, - cnt_contract c, - prs_kostenplaats kp, - mld_melding m, - mld_stdmelding sm, - ins_tab_discipline td, - ins_srtdiscipline sd, - prs_kostensoort ksm, - prs_kostensoort ksv, - alg_v_allonrgoed_gegevens aog, - prs_perslid p, - prs_afdeling a, - (SELECT prs_link_key, prs_kenmerklink_waarde jaarinkoopnr - FROM prs_v_aanwezigkenmerklink - WHERE prs_kenmerk_key = 1060) kl, -- Inkoopordernummer - (SELECT mld_opdr_key, mld_kenmerkopdr_waarde opdrinkoopnr - FROM mld_v_aanwezigkenmerkopdr - WHERE mld_kenmerk_key = 17) ko -- Inkooporder - WHERE o.mld_statusopdr_key IN (1, 2, 6, 9, 7) -- KFHT#60175: Afgewezen/Niet akkoord/Afgemeld/Afgerond/Verwerkt - AND o.mld_opdr_key = t.fac_tracking_refkey - AND t.fac_srtnotificatie_key IN (59, 61, 64, 65, 70, 73, 76) -- KFHT#60175: ORDAFM/ORDUPD/ORDFNO/ORDREJ/ORDCAN/ORDGNO/ORDONO - AND t.fac_tracking_datum > TRUNC (SYSDATE - 1) -- Export draait na middernacht! - AND o.mld_typeopdr_key = ot.mld_typeopdr_key - --AND ot.mld_typeopdr_key != 8 -- KFHT#60175: Geen restrictie meer op opdrachttype anders dan Offerteaanvraag! - AND o.mld_uitvoerende_keys = b.prs_bedrijf_key -- Geen Interne opdracht, tenzij - --AND b.prs_leverancier_nr IS NOT NULL -- KFHT#60175: Geen restrictie meer op leveranciernummer! + --AND b.prs_leverancier_nr IS NOT NULL -- KFHT#60175: Geen restrictie meer op leveranciernummer (daarmee ook zonder leveranciernummer)! AND o.cnt_contract_key = c.cnt_contract_key(+) AND o.prs_kostenplaats_key = kp.prs_kostenplaats_key(+) -- KFHT#60175: Geen restrictie meer op kostenplaats (daarmee ook Contractopdracht, Garantieopdracht, Offerte aanvraag, Klacht en Interne opdracht)! AND o.mld_melding_key = m.mld_melding_key @@ -554,8 +485,9 @@ AS AND p.prs_afdeling_key = a.prs_afdeling_key AND a.prs_afdeling_key = kl.prs_link_key(+) AND o.mld_opdr_key = ko.mld_opdr_key(+) + AND o.mld_statusopdr_key = os.mld_statusopdr_key(+) ORDER BY o.mld_melding_key, o.mld_opdr_bedrijfopdr_volgnr; -*/ + v_count NUMBER; PROCEDURE add_row (p_regel IN VARCHAR2) @@ -596,9 +528,9 @@ BEGIN add_row (''); add_element ('TicketNumber', rec.ticketnumber); add_element ('OrderType', rec.ordertype); - add_element ('Department', rec.department); + --add_element ('Department', rec.department); -- KFHT#60175: Verwijderen Department! add_element ('Supplier', rec.supplier); - add_element ('Contract', rec.contract); + add_element ('Contract', rec.contract); -- KFHT#60175: Anders gaan vullen Contract! add_element ('ReportType', rec.reporttype); add_element ('BuildingCode', rec.buildingcode); add_element ('CostCenter', rec.costcenter); @@ -607,6 +539,7 @@ BEGIN add_element ('SupplierReference', rec.supplierreference); add_element ('Issued', rec.issued); add_element ('Closed', rec.closed); + add_element ('Orderstatus', rec.orderstatus); -- KFHT#60175: Toevoegen Orderstatus! add_row (''); -- Markeer als geexporteerd? @@ -790,6 +723,7 @@ AS v_mld_key NUMBER (10); v_opdr_key NUMBER (10); v_opdr_status NUMBER (10); + v_typeopdr_key NUMBER (10); BEGIN -- Loop door alle ingelezen kostenregels uit Exact en verwerk deze. v_count_tot := 0; @@ -805,11 +739,10 @@ BEGIN v_errormsg := 'Fout bepalen melding/opdracht.'; BEGIN - SELECT mld_melding_key, mld_opdr_key, mld_statusopdr_key - INTO v_mld_key, v_opdr_key, v_opdr_status + SELECT mld_melding_key, mld_opdr_key, mld_statusopdr_key, mld_typeopdr_key + INTO v_mld_key, v_opdr_key, v_opdr_status, v_typeopdr_key FROM mld_opdr - WHERE mld_typeopdr_key != 8 -- Offertaanvraag - AND mld_melding_key || '/' || mld_opdr_bedrijfopdr_volgnr = rec.opdr_id; + WHERE mld_melding_key || '/' || mld_opdr_bedrijfopdr_volgnr = rec.opdr_id; EXCEPTION WHEN OTHERS THEN @@ -847,7 +780,7 @@ BEGIN WHERE mld_opdr_key = v_opdr_key; -- Verwerken opdracht. - IF (v_opdr_status = 6 OR v_opdr_status = 9) + IF (v_opdr_status = 6 OR v_opdr_status = 9) AND v_typeopdr_key != 8 THEN v_errormsg := 'Fout verwerken opdracht.';