From ebf69a14951a2f0873d504042a674fdbca1f9e42 Mon Sep 17 00:00:00 2001 From: Jos Migo Date: Thu, 22 May 2025 13:54:47 +0000 Subject: [PATCH] IMPU#87192 - BV-meldingsstroom voor GMK - De meldingen van ouders/verzorgers - NOTIFICATIEJOB svn path=/Customer/trunk/; revision=69113 --- IMPU/impu.sql | 66 ++++++++++++++++++++++++++++++++++++++++++++++++--- 1 file changed, 63 insertions(+), 3 deletions(-) diff --git a/IMPU/impu.sql b/IMPU/impu.sql index 6d1ef1fa6..7b9b16453 100644 --- a/IMPU/impu.sql +++ b/IMPU/impu.sql @@ -1267,6 +1267,66 @@ AS -- Op rappel-datum naar de Beheerder/Administrateur sturen FROM cnt_kenmerkcontract km, cnt_kenmerk k WHERE km.cnt_contract_key = c.cnt_contract_key AND km.cnt_kenmerk_key = k.cnt_kenmerk_key AND k.cnt_srtkenmerk_key = 7) ; +-- IMPULS: Notificatie ontvangstbevestiging aan externe partij (ouder, etc.) +CREATE OR REPLACE VIEW impu_v_noti_mld_bev_extern +( + code, + sender, -- hoofd-behandelaar melding + receiver, -- geen geregistreerde melder dus via xemail sturen + text, + key, + xkey, + xemail, + xmobile +) +AS + SELECT 'CUST02', + m.mld_melding_behandelaar_key, + NULL + receiver, + 'Onze ontvangstbevestiging op uw meldingnr ' || 'BV' || m.mld_melding_key, + m.mld_melding_key, + NULL + xkey, + m.mld_melding_email_ext, + NULL + xmobile + FROM mld_melding m, + mld_stdmelding sm, + (select km.mld_melding_key, + sk.mld_srtkenmerk_omschrijving, + fac.safe_to_number(km.mld_kenmerkmelding_waarde) + reactie_vinkje_sturen, + (SELECT MAX (ft.fac_tracking_datum) + FROM fac_tracking ft, fac_srtnotificatie sn + WHERE ft.fac_tracking_refkey = km.mld_melding_key + AND ft.fac_srtnotificatie_key = sn.fac_srtnotificatie_key + AND sn.fac_srtnotificatie_xmlnode = 'melding' + AND sn.fac_srtnotificatie_code = 'CUST02') + AS reactie_datum_uitgestuurd, -- Datum genotificeerd door deze noti-job + flx.getflex('MLD', COALESCE((SELECT km.mld_kenmerk_key FROM mld_kenmerk km WHERE km.mld_srtkenmerk_key = 314 AND km.mld_kenmerk_niveau = 'S' AND km.mld_stdmelding_key = m.mld_stdmelding_key), -1), km.mld_melding_key) + reactie_tekst + from mld_melding m, + mld_stdmelding sm, + mld_kenmerkmelding km, + mld_kenmerk k, + mld_srtkenmerk sk + where sm.mld_stdmelding_key = m.mld_stdmelding_key + and m.mld_melding_key = km.mld_melding_key + and km.mld_kenmerk_key = k.mld_kenmerk_key + and k.mld_srtkenmerk_key = sk.mld_srtkenmerk_key + and sk.mld_srtkenmerk_key = 304 -- bevestiging naar externe - uitsturen + ) v + WHERE m.mld_stdmelding_key = sm.mld_stdmelding_key + AND sm.mld_stdmelding_key IN (382, 462) -- voor welzijn (462) en externe klacht ouder (382) + AND m.mld_melding_status IN (2, 3, 4, 7) + AND m.mld_melding_behandelaar_key IS NOT NULL + AND m.mld_melding_key = v.mld_melding_key (+) + -- Voorwaarden voor uitsturen + ----- vinkje staat aan + is nog nooit uitgestuurd + tekst is gevuld + AND v.reactie_vinkje_sturen = 1 AND v.reactie_datum_uitgestuurd IS NULL AND v.reactie_tekst IS NOT NULL ; + + ---------------------------------- --- OVERIGE CUST-FUNCTIES ------ ---------------------------------- @@ -1291,9 +1351,9 @@ CREATE OR REPLACE PROCEDURE impu_mld_after_insert_klacht (p_key IN NUMBER) IF v_mld_stdmelding_key IN (382, 462) -- Klacht externe en Welzijns-melding THEN - SELECT flx.getflex('MLD', COALESCE((SELECT km.mld_kenmerk_key FROM mld_kenmerk km WHERE km.mld_srtkenmerk_key = 161), -1), m.mld_melding_key) ouder, - flx.getflex('MLD', COALESCE((SELECT km.mld_kenmerk_key FROM mld_kenmerk km WHERE km.mld_srtkenmerk_key = 162), -1), m.mld_melding_key) ouder_mail, - flx.getflex('MLD', COALESCE((SELECT km.mld_kenmerk_key FROM mld_kenmerk km WHERE km.mld_srtkenmerk_key = 181), -1), m.mld_melding_key) ouder_tel + SELECT flx.getflex('MLD', COALESCE((SELECT km.mld_kenmerk_key FROM mld_kenmerk km WHERE km.mld_srtkenmerk_key = 161 AND km.mld_kenmerk_niveau = 'S' AND km.mld_stdmelding_key = v_mld_stdmelding_key), -1), m.mld_melding_key) ouder, + flx.getflex('MLD', COALESCE((SELECT km.mld_kenmerk_key FROM mld_kenmerk km WHERE km.mld_srtkenmerk_key = 162 AND km.mld_kenmerk_niveau = 'S' AND km.mld_stdmelding_key = v_mld_stdmelding_key), -1), m.mld_melding_key) ouder_mail, + flx.getflex('MLD', COALESCE((SELECT km.mld_kenmerk_key FROM mld_kenmerk km WHERE km.mld_srtkenmerk_key = 181 AND km.mld_kenmerk_niveau = 'S' AND km.mld_stdmelding_key = v_mld_stdmelding_key), -1), m.mld_melding_key) ouder_tel INTO v_ouder, v_ouder_email, v_ouder_tel FROM mld_melding m WHERE mld_melding_key = p_key ;