diff --git a/VBXX/vbxx.sql b/VBXX/vbxx.sql index 536e4800f..0c04c8c07 100644 --- a/VBXX/vbxx.sql +++ b/VBXX/vbxx.sql @@ -1601,7 +1601,7 @@ AS AND d.ins_srtdiscipline_key = k.mld_stdmelding_key AND k.mld_kenmerk_niveau = 'T' -- Vakgroeptype AND k.mld_srtkenmerk_key = sk.mld_srtkenmerk_key - AND sk.mld_srtkenmerk_code LIKE 'TOTAALEENMALIGEKOSTEN'; + AND sk.mld_srtkenmerk_code LIKE 'KG_TOTAALEENMALIGEKOSTEN'; dbms_output.put_line ('v_kenmerk_key eenmalige kosten:' || v_kenmerk_key); v_kosten := FAC.safe_to_number (FLX.getflex('MLD', v_kenmerk_key, v_melding_key, 1)); @@ -4478,6 +4478,83 @@ WITH AND mld_alg_onroerendgoed_keys = aog.alg_onroerendgoed_keys AND aog.alg_gebouw_key = g.alg_gebouw_key; +-- Notificatie naar de FM-er (behandelaar van de melding) dat alle blokken uit de melding zijn afgehandeld. +CREATE OR REPLACE VIEW vbxx_v_noti_kenm_blok_afgeh +( + SENDER, + RECEIVER, + TEXT, + CODE, + KEY, + XKEY +) +AS + WITH + ftracking + AS + ( SELECT t.fac_tracking_refkey mld_melding_key + FROM fac_tracking t + WHERE fac_tracking_oms LIKE '%Onderdeel is behandeld%' + AND NOT EXISTS + (SELECT 1 + FROM mld_kenmerkblokmelding kbm + WHERE mld_kenmerkblokmelding_afmelddatum IS NULL + AND ins_discipline_key IS NOT NULL + AND t.fac_tracking_refkey = kbm.mld_melding_key) + AND t.fac_tracking_datum BETWEEN (SELECT fac_notificatie_job_nextrun + - fac_notificatie_job_interval / 24 + FROM fac_notificatie_job + WHERE fac_notificatie_job_view = 'VBXX_V_NOTI_KENM_BLOK_AFGEH') + AND (SELECT fac_notificatie_job_nextrun + FROM fac_notificatie_job + WHERE fac_notificatie_job_view = 'VBXX_V_NOTI_KENM_BLOK_AFGEH') + GROUP BY fac_tracking_refkey) + SELECT NULL, + m.mld_melding_behandelaar2_key, + '(Klant)taken van melding ##KEY## zijn afgemeld en dienen beoordeeld te worden.', + 'CUST93', + m.mld_melding_key, + NULL + FROM mld_melding m, ftracking ft2 + WHERE m.mld_melding_key = ft2.mld_melding_key AND m.mld_melding_behandelaar2_key IS NOT NULL; + + +CREATE OR REPLACE VIEW vbxx_v_noti_kenm_blok_reminder +AS +WITH + bof_rechten + AS + (SELECT gg.prs_perslid_key, ins_discipline_key, gr.fac_gebruiker_alg_level_write alg_level_write + FROM fac_functie f, + fac_groeprechten gr, + fac_groep g, + fac_gebruikersgroep gg + WHERE f.fac_functie_code = 'WEB_MLDBOF' + AND f.fac_functie_key = gr.fac_functie_key + AND gr.fac_groep_key = g.fac_groep_key + AND g.fac_groep_key = gg.fac_groep_key) +SELECT DISTINCT + NULL sender, + COALESCE (kbm.prs_perslid_key, br.prs_perslid_key) receiver, + 'Offerte(s) m.b.t. melding ' || m.mld_melding_key || ' zijn afgemeld en dienen beoordeeld te worden' text, + 'CUST94' code, + m.mld_melding_key key, + NULL xkey + FROM mld_kenmerkblokmelding kbm, + fac_tracking t, + bof_rechten br, + fac_v_my_locations ml, + mld_melding m + WHERE kbm.mld_melding_key = t.fac_tracking_refkey + AND kbm.mld_kenmerkblokmelding_afmelddatum IS NULL + AND t.fac_tracking_oms LIKE 'Behandeling is toegewezen aan behandelteam Facility Management klant%' + AND kbm.mld_melding_key = m.mld_melding_key + AND br.alg_level_write = ml.niveau + AND ml.prs_perslid_key = br.prs_perslid_key + AND ml.alg_locatie_key = m.mld_alg_locatie_key + AND kbm.ins_discipline_key = br.ins_discipline_key + AND TRUNC (SYSDATE) - TRUNC (fac_tracking_datum) = 7; + -- -- INKOOPFACTUREN RICHTING EXACT -- @@ -5854,7 +5931,8 @@ AS IS SELECT mld_opdr_key, opdrachttype_key FROM vbxx_v_kosten_doorbelasting - WHERE mld_statusopdr_key = 9 + WHERE mld_statusopdr_key = 9 -- afgerond. + AND (UPPER(opdrachttype) like 'REVERSED%' OR factuurbedrag IS NOT NULL) -- ReversedBilling OF er is een factuur gekoppeld. AND (alg_district_key = p_district_key OR p_district_key = -1); v_errormsg VARCHAR (200); @@ -6086,6 +6164,7 @@ AS --- bit 9: Ordernummer niet aanwezig via scanning --- bit 10: 3 weg matching maar verplichting niet afgemeld --- bit 11: Bijlage niet aanwezig +--- bit 12: Kostensoort is niet ingevuld. CURSOR ccor_0 IS SELECT ordernr @@ -6131,7 +6210,7 @@ IS CURSOR cfactuur IS - SELECT i.fin_factuur_key, factuurdatum, i.kenmerk1, i.kenmerk2, i.kenmerk3, i.kenmerk6, i.kenmerk7, i.kenmerk8, i.kenmerk9, i.kenmerk10, i.kenmerk11, i.kenmerk12, i.kenmerk13, i.factuurnr, i.ordernr, i.fac_imp_file_index, f.fin_factuur_totaal, f.fin_factuur_totaal_btw, f.mld_opdr_key, f.cnt_contract_key, f.bes_bestelopdr_key + SELECT i.fin_factuur_key, factuurdatum, i.kenmerk1, i.kenmerk2, i.kenmerk3, i.kenmerk6, i.kenmerk7, i.kenmerk8, i.kenmerk9, i.kenmerk10, i.kenmerk11, i.kenmerk12, i.kenmerk13, i.factuurnr, i.ordernr, i.fac_imp_file_index, f.fin_factuur_totaal, f.fin_factuur_totaal_btw, f.mld_opdr_key, f.cnt_contract_key, f.bes_bestelopdr_key, f.prs_kostensoort_key FROM fac_imp_factuur i, fin_factuur f WHERE i.fin_factuur_key IS NOT NULL AND i.fac_import_key = p_import_key @@ -6513,6 +6592,12 @@ BEGIN END IF; END IF; + IF rec.prs_kostensoort_key IS NULL + THEN + v_aanduiding_controle := 'ERROR: Kostensoort niet ingevuld bij de factuur' ; + track_error (v_aanduiding_controle, POWER(2,12), rec.fin_factuur_key, v_perslid_key); + END IF; + -- Controle of er al een factuur ontvangen is met hetzelfde factuurnummer en referentie -- 1 Afgewezen -- 2 Ingevoerd