CSUN#87104 Optimalisatie notificatiesysteem voor Rayonmanagers

In putorders zag ik vermeldingen 'Email not sent because from or to is empty.' Waarschijnlijk de from, die nu gevuld.

svn path=/Customer/trunk/; revision=71034
This commit is contained in:
Sander Schepers
2025-11-24 10:17:03 +00:00
parent d7c9cd0ab8
commit 76a554f7c3

View File

@@ -8448,136 +8448,15 @@ BEGIN
END;
/
CREATE OR REPLACE VIEW CSUN_V_NOTI_RM
(
CODE,
SENDER,
RECEIVER,
TEXT,
KEY,
XKEY
)
AS
SELECT 'CUST14' AS code,
NULL AS sender,
p.prs_perslid_key AS receiver,
'Nieuwe melding aangemaakt: '
|| sm.mld_stdmelding_omschrijving
|| ' ('
|| m.mld_melding_key
|| ')' AS text,
m.mld_melding_key AS key,
NULL AS extra_key
FROM prs_perslid p,
mld_melding m,
mld_stdmelding sm,
prs_v_werkplekperslid_gegevens pwpg,
prs_kenmerklink kl
WHERE sm.mld_stdmelding_key = 61 -- No show
AND m.mld_stdmelding_key = sm.mld_stdmelding_key
AND pwpg.alg_locatie_key = m.mld_alg_locatie_key
AND pwpg.prs_perslid_key = p.prs_perslid_key
AND p.prs_srtperslid_key IN (4041, 50) -- Objectleider en Rayonmanager
AND prs_kenmerk_key = 1100 -- notificatie enable vinkje
AND prs_kenmerklink_waarde = '1'
AND kl.prs_link_key = p.prs_perslid_key
AND p.prs_perslid_email IS NOT NULL
AND p.prs_perslid_verwijder IS NULL
AND m.mld_melding_status = 2
AND m.mld_melding_key NOT IN
(SELECT t.fac_tracking_refkey
FROM fac_tracking t, fac_srtnotificatie sn
WHERE sn.fac_srtnotificatie_key =
t.fac_srtnotificatie_key
AND sn.fac_srtnotificatie_code = 'CUST14'
AND t.fac_tracking_refkey = m.mld_melding_key
AND t.fac_tracking_oms LIKE
'%Nieuwe melding aangemaakt:%')
UNION ALL
SELECT 'CUST15' AS code,
NULL AS sender,
p.prs_perslid_key AS receiver,
'notificatie - Melding nog niet geaccepteerd na 4 uur; '
|| sm.mld_stdmelding_omschrijving
|| ' ('
|| m.mld_melding_key
|| ')' AS text,
m.mld_melding_key AS key,
NULL AS extra_key
FROM prs_perslid p,
mld_melding m,
mld_v_udr_melding mm,
mld_stdmelding sm,
prs_v_werkplekperslid_gegevens pwpg,
prs_kenmerklink kl
WHERE sm.mld_stdmelding_key = 61 -- No show
AND m.mld_stdmelding_key = sm.mld_stdmelding_key
AND mm.melding_key = m.mld_melding_key
AND pwpg.alg_locatie_key = m.mld_alg_locatie_key
AND pwpg.prs_perslid_key = p.prs_perslid_key
AND p.prs_srtperslid_key IN (4041, 50) -- Objectleider en Rayonmanager
AND prs_kenmerk_key = 1100 -- notificatie enable vinkje
AND prs_kenmerklink_waarde = '1'
AND kl.prs_link_key = p.prs_perslid_key
AND p.prs_perslid_email IS NOT NULL
AND p.prs_perslid_verwijder IS NULL
AND m.mld_melding_status = 2
AND mm.melding_acceptdatum < SYSDATE
AND m.mld_melding_key NOT IN
(SELECT t.fac_tracking_refkey
FROM fac_tracking t, fac_srtnotificatie sn
WHERE sn.fac_srtnotificatie_key =
t.fac_srtnotificatie_key
AND sn.fac_srtnotificatie_code = 'CUST15'
AND t.fac_tracking_refkey = m.mld_melding_key
AND t.fac_tracking_oms LIKE
'%notificatie - Melding nog niet geaccepteerd na 4 uur%')
UNION ALL
SELECT 'CUST16' AS code,
NULL AS sender,
p.prs_perslid_key AS receiver,
'Melding nog niet afgemeld na 24 uur na registratie; '
|| sm.mld_stdmelding_omschrijving
|| ' ('
|| m.mld_melding_key
|| ')' AS text,
m.mld_melding_key AS key,
NULL AS extra_key
FROM prs_perslid p,
mld_melding m,
mld_v_udr_melding mm,
mld_stdmelding sm,
prs_v_werkplekperslid_gegevens pwpg,
prs_kenmerklink kl
WHERE sm.mld_stdmelding_key = 61 -- No show
AND m.mld_stdmelding_key = sm.mld_stdmelding_key
AND mm.melding_key = m.mld_melding_key
AND pwpg.alg_locatie_key = m.mld_alg_locatie_key
AND pwpg.prs_perslid_key = p.prs_perslid_key
AND p.prs_srtperslid_key IN (4041, 50) -- Objectleider en Rayonmanager
AND prs_kenmerk_key = 1100 -- notificatie enable vinkje
AND prs_kenmerklink_waarde = '1'
AND kl.prs_link_key = p.prs_perslid_key
AND p.prs_perslid_email IS NOT NULL
AND p.prs_perslid_verwijder IS NULL
AND m.mld_melding_status IN (4, 7, 99)
AND m.mld_melding_datum + 1 < SYSDATE
AND m.mld_melding_key NOT IN
(SELECT t.fac_tracking_refkey
FROM fac_tracking t, fac_srtnotificatie sn
WHERE sn.fac_srtnotificatie_key =
t.fac_srtnotificatie_key
AND sn.fac_srtnotificatie_code = 'CUST16'
AND t.fac_tracking_refkey = m.mld_melding_key
AND t.fac_tracking_oms LIKE
'%Melding nog niet afgemeld na 24 uur na registratie:%');
CREATE OR REPLACE PROCEDURE csun_noti_rm_noshow
AS
v_frommailaddr VARCHAR2 (256);
CURSOR CUST14 IS
SELECT p.prs_perslid_key AS receiver,
SELECT 'CUST14' AS code,
NULL AS sender,
p.prs_perslid_key AS receiver,
p.prs_perslid_email AS receivermail,
'Nieuwe melding aangemaakt: '
|| sm.mld_stdmelding_omschrijving
|| ' ('
@@ -8614,7 +8493,10 @@ AS
'%Nieuwe melding aangemaakt:%');
CURSOR CUST15 IS
SELECT p.prs_perslid_key AS receiver,
SELECT 'CUST15' AS code,
NULL AS sender,
p.prs_perslid_key AS receiver,
p.prs_perslid_email AS receivermail,
'notificatie - Melding nog niet geaccepteerd na 4 uur; '
|| sm.mld_stdmelding_omschrijving
|| ' ('
@@ -8657,6 +8539,7 @@ AS
SELECT 'CUST16' AS code,
NULL AS sender,
p.prs_perslid_key AS receiver,
p.prs_perslid_email AS receivermail,
'Melding nog niet afgemeld na 24 uur na registratie; '
|| sm.mld_stdmelding_omschrijving
|| ' ('
@@ -8712,7 +8595,7 @@ BEGIN
prs_perslid_key_sender)
VALUES (rec.fac_srtnotificatie_key,
2,
NULL,
rec.receivermail,
rec.receiver,
v_frommailaddr,
rec.text,
@@ -8737,7 +8620,7 @@ BEGIN
prs_perslid_key_sender)
VALUES (rec.fac_srtnotificatie_key,
2,
NULL,
rec.receivermail,
rec.receiver,
v_frommailaddr,
rec.text,
@@ -8762,7 +8645,7 @@ BEGIN
prs_perslid_key_sender)
VALUES (rec.fac_srtnotificatie_key,
2,
NULL,
rec.receivermail,
rec.receiver,
v_frommailaddr,
rec.text,