HPJI#90559 Updaten notificatiesysteem voor contracten en verantwoordelijkheden

svn path=/Customer/trunk/; revision=70356
This commit is contained in:
Sander Schepers
2025-09-18 08:15:49 +00:00
parent 38f9cfd27f
commit 8c3b15b341

View File

@@ -51,14 +51,14 @@ AS
v_aanduiding VARCHAR2 (100); v_aanduiding VARCHAR2 (100);
CURSOR c IS SELECT * FROM HPJI_V_NOTI_TAKEN; CURSOR c IS SELECT * FROM HPJI_V_NOTI_TAKEN;
BEGIN BEGIN
v_errorhint := 'init'; v_errorhint := 'init';
FOR rec IN c FOR rec IN c
LOOP LOOP
BEGIN BEGIN
v_aanduiding := rec.taak_omschr || ' betreffende; ' || rec.betreft; v_aanduiding :=
rec.taak_omschr || ' betreffende; ' || rec.betreft;
INSERT INTO fac_notificatie (fac_srtnotificatie_key, INSERT INTO fac_notificatie (fac_srtnotificatie_key,
fac_notificatie_status, fac_notificatie_status,
@@ -73,7 +73,10 @@ AS
2, 2,
rec.to_key, rec.to_key,
rec.to_email, rec.to_email,
rec.taak_omschr || ' betreffende; ' || rec.betreft || ' in te plannen', rec.taak_omschr
|| ' betreffende; '
|| rec.betreft
|| ' in te plannen',
rec.ins_deel_key, rec.ins_deel_key,
4, 4,
2, 2,
@@ -88,7 +91,9 @@ AS
EXCEPTION EXCEPTION
WHEN OTHERS WHEN OTHERS
THEN THEN
v_errorhint := 'Toevoegen notificatie periodieke controle ' || rec.betreft; v_errorhint :=
'Toevoegen notificatie periodieke controle '
|| rec.betreft;
oracle_err_num := SQLCODE; oracle_err_num := SQLCODE;
oracle_err_mes := SUBSTR (SQLERRM, 1, 100); oracle_err_mes := SUBSTR (SQLERRM, 1, 100);
fac.writelog ( fac.writelog (
@@ -108,7 +113,8 @@ AS
v_errorhint := 'Notificaties in te plannen periodieke taken'; v_errorhint := 'Notificaties in te plannen periodieke taken';
oracle_err_num := SQLCODE; oracle_err_num := SQLCODE;
oracle_err_mes := SUBSTR (SQLERRM, 1, 100); oracle_err_mes := SUBSTR (SQLERRM, 1, 100);
fac.writelog (p_applname, fac.writelog (
p_applname,
'E', 'E',
'Error ' || oracle_err_num || '/' || oracle_err_mes, 'Error ' || oracle_err_num || '/' || oracle_err_mes,
v_errorhint); v_errorhint);
@@ -312,7 +318,7 @@ AS
c.cnt_contract_nummer_intern, c.cnt_contract_nummer_intern,
c.cnt_contract_omschrijving, c.cnt_contract_omschrijving,
b.prs_bedrijf_naam, b.prs_bedrijf_naam,
c.prs_perslid_key_beh AS accountmanager, NULL AS accountmanager,
c.prs_perslid_key_eig AS teamleider, c.prs_perslid_key_eig AS teamleider,
NULL AS business_controller, NULL AS business_controller,
1421 AS stdmelding, 1421 AS stdmelding,
@@ -325,11 +331,13 @@ AS
AND c.cnt_contract_key = d.cnt_contract_key AND c.cnt_contract_key = d.cnt_contract_key
AND d.cnt_kenmerk_key = ck.cnt_kenmerk_key AND d.cnt_kenmerk_key = ck.cnt_kenmerk_key
AND c.cnt_prs_bedrijf_key = b.prs_bedrijf_key AND c.cnt_prs_bedrijf_key = b.prs_bedrijf_key
AND ADD_MONTHS ( AND TRUNC (
fac.safe_to_date (d.cnt_kenmerkcontract_waarde, ADD_MONTHS (
fac.safe_to_date (
d.cnt_kenmerkcontract_waarde,
'dd-mm-yyyy'), 'dd-mm-yyyy'),
-1) = -1)) =
SYSDATE TRUNC (SYSDATE)
AND ck.cnt_srtkenmerk_key = 570 --bespreek contract AND ck.cnt_srtkenmerk_key = 570 --bespreek contract
UNION ALL UNION ALL
--bespreek contract (Onderaanneming en Raamovereenkomst) --bespreek contract (Onderaanneming en Raamovereenkomst)
@@ -339,7 +347,7 @@ AS
c.cnt_contract_omschrijving, c.cnt_contract_omschrijving,
b.prs_bedrijf_naam, b.prs_bedrijf_naam,
c.prs_perslid_key_beh AS accountmanager, c.prs_perslid_key_beh AS accountmanager,
c.prs_perslid_key_eig AS teamleider, NULL AS teamleider,
NULL AS business_controller, NULL AS business_controller,
1403 AS stdmelding, 1403 AS stdmelding,
'Bespreek contract' AS taak 'Bespreek contract' AS taak
@@ -351,11 +359,13 @@ AS
AND c.cnt_contract_key = d.cnt_contract_key AND c.cnt_contract_key = d.cnt_contract_key
AND d.cnt_kenmerk_key = ck.cnt_kenmerk_key AND d.cnt_kenmerk_key = ck.cnt_kenmerk_key
AND c.cnt_prs_bedrijf_key = b.prs_bedrijf_key AND c.cnt_prs_bedrijf_key = b.prs_bedrijf_key
AND ADD_MONTHS ( AND TRUNC (
fac.safe_to_date (d.cnt_kenmerkcontract_waarde, ADD_MONTHS (
fac.safe_to_date (
d.cnt_kenmerkcontract_waarde,
'dd-mm-yyyy'), 'dd-mm-yyyy'),
-1) = -1)) =
SYSDATE TRUNC (SYSDATE)
AND ck.cnt_srtkenmerk_key = 570 --bespreek contract AND ck.cnt_srtkenmerk_key = 570 --bespreek contract
UNION ALL UNION ALL
--Indienen aanvraag --Indienen aanvraag
@@ -364,7 +374,7 @@ AS
c.cnt_contract_nummer_intern, c.cnt_contract_nummer_intern,
c.cnt_contract_omschrijving, c.cnt_contract_omschrijving,
b.prs_bedrijf_naam, b.prs_bedrijf_naam,
c.prs_perslid_key_beh AS accountmanager, NULL AS accountmanager,
c.prs_perslid_key_eig AS teamleider, c.prs_perslid_key_eig AS teamleider,
109570 AS business_controller, 109570 AS business_controller,
1404 AS stdmelding, 1404 AS stdmelding,
@@ -373,18 +383,20 @@ AS
cnt_kenmerkcontract d, cnt_kenmerkcontract d,
cnt_kenmerk ck, cnt_kenmerk ck,
prs_bedrijf b prs_bedrijf b
WHERE c.ins_discipline_key IN (1821, WHERE c.ins_discipline_key IN (1821)--, --Subsidies
1822, --1822, --Raamovereenkomst (moet deze ook?)
1842, --1842, --Detacheringen (moet deze ook?)
1901) --1901) --Onderaannemers (moet deze ook?)
AND c.cnt_contract_key = d.cnt_contract_key AND c.cnt_contract_key = d.cnt_contract_key
AND d.cnt_kenmerk_key = ck.cnt_kenmerk_key AND d.cnt_kenmerk_key = ck.cnt_kenmerk_key
AND c.cnt_prs_bedrijf_key = b.prs_bedrijf_key AND c.cnt_prs_bedrijf_key = b.prs_bedrijf_key
AND ADD_MONTHS ( AND TRUNC (
fac.safe_to_date (d.cnt_kenmerkcontract_waarde, ADD_MONTHS (
fac.safe_to_date (
d.cnt_kenmerkcontract_waarde,
'dd-mm-yyyy'), 'dd-mm-yyyy'),
-2) = -2)) =
SYSDATE TRUNC (SYSDATE)
AND ck.cnt_srtkenmerk_key = 571 --Indienen aanvraag AND ck.cnt_srtkenmerk_key = 571 --Indienen aanvraag
UNION ALL UNION ALL
-- Tussentijdse verantwoording (Subsidie) -- Tussentijdse verantwoording (Subsidie)
@@ -393,7 +405,7 @@ AS
c.cnt_contract_nummer_intern, c.cnt_contract_nummer_intern,
c.cnt_contract_omschrijving, c.cnt_contract_omschrijving,
b.prs_bedrijf_naam, b.prs_bedrijf_naam,
c.prs_perslid_key_beh AS accountmanager, NULL AS accountmanager,
c.prs_perslid_key_eig AS teamleider, c.prs_perslid_key_eig AS teamleider,
NULL AS business_controller, NULL AS business_controller,
1406 AS stdmelding, 1406 AS stdmelding,
@@ -406,11 +418,13 @@ AS
AND c.cnt_contract_key = d.cnt_contract_key AND c.cnt_contract_key = d.cnt_contract_key
AND d.cnt_kenmerk_key = ck.cnt_kenmerk_key AND d.cnt_kenmerk_key = ck.cnt_kenmerk_key
AND c.cnt_prs_bedrijf_key = b.prs_bedrijf_key AND c.cnt_prs_bedrijf_key = b.prs_bedrijf_key
AND ADD_MONTHS ( AND TRUNC (
fac.safe_to_date (d.cnt_kenmerkcontract_waarde, ADD_MONTHS (
fac.safe_to_date (
d.cnt_kenmerkcontract_waarde,
'dd-mm-yyyy'), 'dd-mm-yyyy'),
-2) = -2)) =
SYSDATE TRUNC (SYSDATE)
AND ck.cnt_srtkenmerk_key = 572 --Tussentijdse verantwoording AND ck.cnt_srtkenmerk_key = 572 --Tussentijdse verantwoording
UNION ALL UNION ALL
-- Tussentijdse verantwoording (Raamovereenkomst) -- Tussentijdse verantwoording (Raamovereenkomst)
@@ -432,11 +446,13 @@ AS
AND c.cnt_contract_key = d.cnt_contract_key AND c.cnt_contract_key = d.cnt_contract_key
AND d.cnt_kenmerk_key = ck.cnt_kenmerk_key AND d.cnt_kenmerk_key = ck.cnt_kenmerk_key
AND c.cnt_prs_bedrijf_key = b.prs_bedrijf_key AND c.cnt_prs_bedrijf_key = b.prs_bedrijf_key
AND ADD_MONTHS ( AND TRUNC (
fac.safe_to_date (d.cnt_kenmerkcontract_waarde, ADD_MONTHS (
fac.safe_to_date (
d.cnt_kenmerkcontract_waarde,
'dd-mm-yyyy'), 'dd-mm-yyyy'),
-2) = -2)) =
SYSDATE TRUNC (SYSDATE)
AND ck.cnt_srtkenmerk_key = 572 --Tussentijdse verantwoording AND ck.cnt_srtkenmerk_key = 572 --Tussentijdse verantwoording
UNION ALL UNION ALL
--Indienen vaststelling --Indienen vaststelling
@@ -445,7 +461,7 @@ AS
c.cnt_contract_nummer_intern, c.cnt_contract_nummer_intern,
c.cnt_contract_omschrijving, c.cnt_contract_omschrijving,
b.prs_bedrijf_naam, b.prs_bedrijf_naam,
c.prs_perslid_key_beh AS accountmanager, NULL AS accountmanager,
c.prs_perslid_key_eig AS teamleider, c.prs_perslid_key_eig AS teamleider,
109570 AS business_controller, 109570 AS business_controller,
1405 AS stdmelding, 1405 AS stdmelding,
@@ -454,18 +470,20 @@ AS
cnt_kenmerkcontract d, cnt_kenmerkcontract d,
cnt_kenmerk ck, cnt_kenmerk ck,
prs_bedrijf b prs_bedrijf b
WHERE c.ins_discipline_key IN (1821, WHERE c.ins_discipline_key IN (1821)--, --Subsidies
1822, --1822, --Raamovereenkomst (moet deze ook?)
1842, --1842, --Detacheringen (moet deze ook?)
1901) --1901) --Onderaannemers (moet deze ook?)
AND c.cnt_contract_key = d.cnt_contract_key AND c.cnt_contract_key = d.cnt_contract_key
AND d.cnt_kenmerk_key = ck.cnt_kenmerk_key AND d.cnt_kenmerk_key = ck.cnt_kenmerk_key
AND c.cnt_prs_bedrijf_key = b.prs_bedrijf_key AND c.cnt_prs_bedrijf_key = b.prs_bedrijf_key
AND ADD_MONTHS ( AND TRUNC (
fac.safe_to_date (d.cnt_kenmerkcontract_waarde, ADD_MONTHS (
fac.safe_to_date (
d.cnt_kenmerkcontract_waarde,
'dd-mm-yyyy'), 'dd-mm-yyyy'),
-2) = -2)) =
SYSDATE TRUNC (SYSDATE)
AND ck.cnt_srtkenmerk_key = 567 --Indienen vaststelling AND ck.cnt_srtkenmerk_key = 567 --Indienen vaststelling
UNION ALL UNION ALL
--contract loopt af (Subsidie en Detachering) --contract loopt af (Subsidie en Detachering)
@@ -474,7 +492,7 @@ AS
c.cnt_contract_nummer_intern, c.cnt_contract_nummer_intern,
c.cnt_contract_omschrijving, c.cnt_contract_omschrijving,
b.prs_bedrijf_naam, b.prs_bedrijf_naam,
c.prs_perslid_key_beh AS accountmanager, NULL AS accountmanager,
c.prs_perslid_key_eig AS teamleider, c.prs_perslid_key_eig AS teamleider,
NULL AS business_controller, NULL AS business_controller,
1402 AS stdmelding, 1402 AS stdmelding,
@@ -483,25 +501,27 @@ AS
cnt_kenmerkcontract d, cnt_kenmerkcontract d,
cnt_kenmerk ck, cnt_kenmerk ck,
prs_bedrijf b prs_bedrijf b
WHERE c.ins_discipline_key IN (1821, 1842) WHERE c.ins_discipline_key IN (1821, 1842) --Subsidies & Detacheringen
AND c.cnt_contract_key = d.cnt_contract_key AND c.cnt_contract_key = d.cnt_contract_key
AND d.cnt_kenmerk_key = ck.cnt_kenmerk_key AND d.cnt_kenmerk_key = ck.cnt_kenmerk_key
AND c.cnt_prs_bedrijf_key = b.prs_bedrijf_key AND c.cnt_prs_bedrijf_key = b.prs_bedrijf_key
AND ADD_MONTHS ( AND TRUNC (
fac.safe_to_date (d.cnt_kenmerkcontract_waarde, ADD_MONTHS (
fac.safe_to_date (
d.cnt_kenmerkcontract_waarde,
'dd-mm-yyyy'), 'dd-mm-yyyy'),
-2) = -2)) =
SYSDATE TRUNC (SYSDATE)
AND ck.cnt_srtkenmerk_key = 569 --contract loopt af AND ck.cnt_srtkenmerk_key = 569 --contract loopt af
UNION ALL UNION ALL
--contract loopt af (Raamovereenkomst) --contract loopt af (Raamovereenkomst & onderaanneming)
SELECT c.ins_discipline_key, SELECT c.ins_discipline_key,
c.cnt_contract_key, c.cnt_contract_key,
c.cnt_contract_nummer_intern, c.cnt_contract_nummer_intern,
c.cnt_contract_omschrijving, c.cnt_contract_omschrijving,
b.prs_bedrijf_naam, b.prs_bedrijf_naam,
c.prs_perslid_key_beh AS accountmanager, c.prs_perslid_key_beh AS accountmanager,
c.prs_perslid_key_eig AS teamleider, NULL AS teamleider,
NULL AS business_controller, NULL AS business_controller,
1423 AS stdmelding, 1423 AS stdmelding,
'Contract loopt af' AS taak 'Contract loopt af' AS taak
@@ -509,41 +529,17 @@ AS
cnt_kenmerkcontract d, cnt_kenmerkcontract d,
cnt_kenmerk ck, cnt_kenmerk ck,
prs_bedrijf b prs_bedrijf b
WHERE c.ins_discipline_key IN (1822) WHERE c.ins_discipline_key IN (1822, 1901) -- Raamovereenkomst & Onderaanneming
AND c.cnt_contract_key = d.cnt_contract_key AND c.cnt_contract_key = d.cnt_contract_key
AND d.cnt_kenmerk_key = ck.cnt_kenmerk_key AND d.cnt_kenmerk_key = ck.cnt_kenmerk_key
AND c.cnt_prs_bedrijf_key = b.prs_bedrijf_key AND c.cnt_prs_bedrijf_key = b.prs_bedrijf_key
AND ADD_MONTHS ( AND TRUNC (
fac.safe_to_date (d.cnt_kenmerkcontract_waarde, ADD_MONTHS (
fac.safe_to_date (
d.cnt_kenmerkcontract_waarde,
'dd-mm-yyyy'), 'dd-mm-yyyy'),
-3) = -3)) =
SYSDATE TRUNC (SYSDATE)
AND ck.cnt_srtkenmerk_key = 569 --contract loopt af
UNION ALL
--contract loopt af (Onderaanneming)
SELECT c.ins_discipline_key,
c.cnt_contract_key,
c.cnt_contract_nummer_intern,
c.cnt_contract_omschrijving,
b.prs_bedrijf_naam,
c.prs_perslid_key_beh AS accountmanager,
c.prs_perslid_key_eig AS teamleider,
NULL AS business_controller,
1423 AS stdmelding,
'Contract loopt af' AS taak
FROM cnt_contract c,
cnt_kenmerkcontract d,
cnt_kenmerk ck,
prs_bedrijf b
WHERE c.ins_discipline_key IN (1901)
AND c.cnt_contract_key = d.cnt_contract_key
AND d.cnt_kenmerk_key = ck.cnt_kenmerk_key
AND c.cnt_prs_bedrijf_key = b.prs_bedrijf_key
AND ADD_MONTHS (
fac.safe_to_date (d.cnt_kenmerkcontract_waarde,
'dd-mm-yyyy'),
-6) =
SYSDATE
AND ck.cnt_srtkenmerk_key = 569 --contract loopt af AND ck.cnt_srtkenmerk_key = 569 --contract loopt af
UNION ALL UNION ALL
--Accountantsverklaring --Accountantsverklaring
@@ -561,18 +557,20 @@ AS
cnt_kenmerkcontract d, cnt_kenmerkcontract d,
cnt_kenmerk ck, cnt_kenmerk ck,
prs_bedrijf b prs_bedrijf b
WHERE c.ins_discipline_key IN (1821, WHERE c.ins_discipline_key IN (1821)--, --Subsidies
1822, --1822, --Raamovereenkomst (moet deze ook?)
1842, --1842, --Detacheringen (moet deze ook?)
1901) --1901) --Onderaannemers (moet deze ook?)
AND c.cnt_contract_key = d.cnt_contract_key AND c.cnt_contract_key = d.cnt_contract_key
AND d.cnt_kenmerk_key = ck.cnt_kenmerk_key AND d.cnt_kenmerk_key = ck.cnt_kenmerk_key
AND c.cnt_prs_bedrijf_key = b.prs_bedrijf_key AND c.cnt_prs_bedrijf_key = b.prs_bedrijf_key
AND ADD_MONTHS ( AND TRUNC (
fac.safe_to_date (d.cnt_kenmerkcontract_waarde, ADD_MONTHS (
fac.safe_to_date (
d.cnt_kenmerkcontract_waarde,
'dd-mm-yyyy'), 'dd-mm-yyyy'),
-3) = -3)) =
SYSDATE TRUNC (SYSDATE)
AND ck.cnt_srtkenmerk_key = 568; --Accountantsverklaring AND ck.cnt_srtkenmerk_key = 568; --Accountantsverklaring
BEGIN BEGIN
v_uitvoerder := 4; --Standaard de persoon Facilitor v_uitvoerder := 4; --Standaard de persoon Facilitor
@@ -583,11 +581,14 @@ AS
BEGIN BEGIN
v_errorhint := 'init'; v_errorhint := 'init';
v_accm := NULL;
v_teaml := NULL;
v_buscontr := NULL;
-- Bepalen uitvoerder en kostenplaats -- Bepalen uitvoerder en kostenplaats
v_errorhint := 'Bepalen uitvoerder en kostenplaats'; v_errorhint := 'Bepalen uitvoerder en kostenplaats';
SELECT MIN (p.prs_perslid_key), MIN (d.prs_kostenplaats_key) SELECT NVL(MIN (p.prs_perslid_key),4), NVL(MIN (d.prs_kostenplaats_key),1910)
INTO v_uitvoerder, v_kostenplaats INTO v_uitvoerder, v_kostenplaats
FROM prs_perslid p, prs_afdeling d FROM prs_perslid p, prs_afdeling d
WHERE p.prs_afdeling_key = d.prs_afdeling_key WHERE p.prs_afdeling_key = d.prs_afdeling_key
@@ -608,7 +609,7 @@ AS
v_errorhint := 'notificatie_accountmanager'; v_errorhint := 'notificatie_accountmanager';
v_accm := rec.accountmanager; v_accm := rec.accountmanager;
IF v_accm <> NULL IF v_accm IS NOT NULL
THEN THEN
FAC.trackaction ( FAC.trackaction (
'CNTMAI', 'CNTMAI',
@@ -648,7 +649,7 @@ AS
|| ' - ' || ' - '
|| rec.cnt_contract_omschrijving || rec.cnt_contract_omschrijving
|| ')', || ')',
rec.taak, rec.cnt_contract_key,
NULL, NULL,
2); 2);
END IF; END IF;
@@ -657,7 +658,7 @@ AS
v_errorhint := 'notificatie_teamleider'; v_errorhint := 'notificatie_teamleider';
v_teaml := rec.teamleider; v_teaml := rec.teamleider;
IF v_teaml <> NULL IF v_teaml IS NOT NULL
THEN THEN
FAC.trackaction ( FAC.trackaction (
'CNTMAI', 'CNTMAI',
@@ -688,7 +689,7 @@ AS
2, -- mail 2, -- mail
NULL, NULL,
v_teaml, v_teaml,
'Notificatie naar accountmanager, taak: ' 'Notificatie naar teamleider/clustermanager, taak: '
|| rec.taak || rec.taak
|| ' bij contract ' || ' bij contract '
|| rec.cnt_contract_key || rec.cnt_contract_key
@@ -697,7 +698,7 @@ AS
|| ' - ' || ' - '
|| rec.cnt_contract_omschrijving || rec.cnt_contract_omschrijving
|| ')', || ')',
rec.taak, rec.cnt_contract_key,
NULL, NULL,
2); 2);
END IF; END IF;
@@ -706,7 +707,7 @@ AS
v_errorhint := 'notificatie_businesscontrol'; v_errorhint := 'notificatie_businesscontrol';
v_buscontr := rec.business_controller; v_buscontr := rec.business_controller;
IF v_buscontr <> NULL IF v_buscontr IS NOT NULL
THEN THEN
FAC.trackaction ( FAC.trackaction (
'CNTMAI', 'CNTMAI',
@@ -737,7 +738,7 @@ AS
2, -- mail 2, -- mail
NULL, NULL,
v_buscontr, v_buscontr,
'Notificatie naar accountmanager, taak: ' 'Notificatie naar Business Controller, taak: '
|| rec.taak || rec.taak
|| ' bij contract ' || ' bij contract '
|| rec.cnt_contract_key || rec.cnt_contract_key
@@ -746,7 +747,7 @@ AS
|| ' - ' || ' - '
|| rec.cnt_contract_omschrijving || rec.cnt_contract_omschrijving
|| ')', || ')',
rec.taak, rec.cnt_contract_key,
NULL, NULL,
2); 2);
END IF; END IF;
@@ -821,7 +822,6 @@ AS
'Proces afgebroken!', 'Proces afgebroken!',
v_errorhint); v_errorhint);
END hpji_acties_verkoopcontracten; END hpji_acties_verkoopcontracten;
END; END;
/ /