HPJI#90559 Updaten notificatiesysteem voor contracten en verantwoordelijkheden

svn path=/Customer/trunk/; revision=70429
This commit is contained in:
Sander Schepers
2025-09-26 13:59:40 +00:00
parent d8713bb48f
commit fdbfdefe3a

View File

@@ -318,7 +318,7 @@ AS
c.cnt_contract_nummer_intern,
c.cnt_contract_omschrijving,
b.prs_bedrijf_naam,
NULL AS accountmanager,
c.prs_perslid_key_beh AS accountmanager, -- was NULL
c.prs_perslid_key_eig AS teamleider,
NULL AS business_controller,
1421 AS stdmelding,
@@ -333,11 +333,8 @@ AS
AND c.cnt_prs_bedrijf_key = b.prs_bedrijf_key
AND TRUNC (
ADD_MONTHS (
fac.safe_to_date (
d.cnt_kenmerkcontract_waarde,
'dd-mm-yyyy'),
-1)) =
TRUNC (SYSDATE)
fac.safe_to_date (d.cnt_kenmerkcontract_waarde,'dd-mm-yyyy'),
-1)) = TRUNC (SYSDATE)
AND ck.cnt_srtkenmerk_key = 570 -- bespreek contract
UNION ALL
-- bespreek contract (Onderaanneming en Raamovereenkomst)
@@ -347,7 +344,7 @@ AS
c.cnt_contract_omschrijving,
b.prs_bedrijf_naam,
c.prs_perslid_key_beh AS accountmanager,
NULL AS teamleider,
c.prs_perslid_key_eig AS teamleider, -- was NULL
NULL AS business_controller,
1403 AS stdmelding,
'Bespreek contract' AS taak
@@ -361,20 +358,17 @@ AS
AND c.cnt_prs_bedrijf_key = b.prs_bedrijf_key
AND TRUNC (
ADD_MONTHS (
fac.safe_to_date (
d.cnt_kenmerkcontract_waarde,
'dd-mm-yyyy'),
-1)) =
TRUNC (SYSDATE)
fac.safe_to_date (d.cnt_kenmerkcontract_waarde,'dd-mm-yyyy'),
-1)) = TRUNC (SYSDATE)
AND ck.cnt_srtkenmerk_key = 570 -- bespreek contract
UNION ALL
--Indienen aanvraag
-- Indienen aanvraag (Subsidies)
SELECT c.ins_discipline_key,
c.cnt_contract_key,
c.cnt_contract_nummer_intern,
c.cnt_contract_omschrijving,
b.prs_bedrijf_naam,
NULL AS accountmanager,
c.prs_perslid_key_beh AS accountmanager, -- was NULL
c.prs_perslid_key_eig AS teamleider,
109570 AS business_controller,
1404 AS stdmelding,
@@ -383,20 +377,14 @@ AS
cnt_kenmerkcontract d,
cnt_kenmerk ck,
prs_bedrijf b
WHERE c.ins_discipline_key IN (1821)--, --Subsidies
--1822, --Raamovereenkomst (moet deze ook?)
--1842, --Detacheringen (moet deze ook?)
--1901) --Onderaannemers (moet deze ook?)
WHERE c.ins_discipline_key IN (1821)
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 TRUNC (
ADD_MONTHS (
fac.safe_to_date (
d.cnt_kenmerkcontract_waarde,
'dd-mm-yyyy'),
-2)) =
TRUNC (SYSDATE)
fac.safe_to_date (d.cnt_kenmerkcontract_waarde,'dd-mm-yyyy'),
-2)) = TRUNC (SYSDATE)
AND ck.cnt_srtkenmerk_key = 571 -- Indienen aanvraag
UNION ALL
-- Tussentijdse verantwoording (Subsidie)
@@ -405,26 +393,23 @@ AS
c.cnt_contract_nummer_intern,
c.cnt_contract_omschrijving,
b.prs_bedrijf_naam,
NULL AS accountmanager,
c.prs_perslid_key_beh AS accountmanager, -- was NULL
c.prs_perslid_key_eig AS teamleider,
NULL AS business_controller,
109570 AS business_controller, -- was NULL (nu JA bij subsidies)
1406 AS stdmelding,
'Tussentijdse verantwoording' AS taak
FROM cnt_contract c,
cnt_kenmerkcontract d,
cnt_kenmerk ck,
prs_bedrijf b
WHERE c.ins_discipline_key IN (1821) --Contractsoort Subsidie
WHERE c.ins_discipline_key IN (1821) -- Subsidie
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 TRUNC (
ADD_MONTHS (
fac.safe_to_date (
d.cnt_kenmerkcontract_waarde,
'dd-mm-yyyy'),
-2)) =
TRUNC (SYSDATE)
fac.safe_to_date (d.cnt_kenmerkcontract_waarde,'dd-mm-yyyy'),
-2)) = TRUNC (SYSDATE)
AND ck.cnt_srtkenmerk_key = 572 -- Tussentijdse verantwoording
UNION ALL
-- Tussentijdse verantwoording (Raamovereenkomst)
@@ -434,7 +419,7 @@ AS
c.cnt_contract_omschrijving,
b.prs_bedrijf_naam,
c.prs_perslid_key_beh AS accountmanager,
NULL AS teamleider,
c.prs_perslid_key_eig AS teamleider, -- was NULL
NULL AS business_controller,
1601 AS stdmelding,
'Tussentijdse verantwoording' AS taak
@@ -442,26 +427,23 @@ AS
cnt_kenmerkcontract d,
cnt_kenmerk ck,
prs_bedrijf b
WHERE c.ins_discipline_key IN (1822) --Contractsoort Raamovereenkomst
WHERE c.ins_discipline_key IN (1822) -- Raamovereenkomst
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 TRUNC (
ADD_MONTHS (
fac.safe_to_date (
d.cnt_kenmerkcontract_waarde,
'dd-mm-yyyy'),
-2)) =
TRUNC (SYSDATE)
fac.safe_to_date (d.cnt_kenmerkcontract_waarde,'dd-mm-yyyy'),
-2)) = TRUNC (SYSDATE)
AND ck.cnt_srtkenmerk_key = 572 -- Tussentijdse verantwoording
UNION ALL
--Indienen vaststelling
-- Indienen vaststelling (Subsidies)
SELECT c.ins_discipline_key,
c.cnt_contract_key,
c.cnt_contract_nummer_intern,
c.cnt_contract_omschrijving,
b.prs_bedrijf_naam,
NULL AS accountmanager,
c.prs_perslid_key_beh AS accountmanager, -- was NULL
c.prs_perslid_key_eig AS teamleider,
109570 AS business_controller,
1405 AS stdmelding,
@@ -470,20 +452,14 @@ AS
cnt_kenmerkcontract d,
cnt_kenmerk ck,
prs_bedrijf b
WHERE c.ins_discipline_key IN (1821)--, --Subsidies
--1822, --Raamovereenkomst (moet deze ook?)
--1842, --Detacheringen (moet deze ook?)
--1901) --Onderaannemers (moet deze ook?)
WHERE c.ins_discipline_key IN (1821)
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 TRUNC (
ADD_MONTHS (
fac.safe_to_date (
d.cnt_kenmerkcontract_waarde,
'dd-mm-yyyy'),
-2)) =
TRUNC (SYSDATE)
fac.safe_to_date (d.cnt_kenmerkcontract_waarde,'dd-mm-yyyy'),
-2)) = TRUNC (SYSDATE)
AND ck.cnt_srtkenmerk_key = 567 -- Indienen vaststelling
UNION ALL
-- contract loopt af (Subsidie en Detachering)
@@ -492,7 +468,7 @@ AS
c.cnt_contract_nummer_intern,
c.cnt_contract_omschrijving,
b.prs_bedrijf_naam,
NULL AS accountmanager,
c.prs_perslid_key_beh AS accountmanager, -- was NULL
c.prs_perslid_key_eig AS teamleider,
NULL AS business_controller,
1402 AS stdmelding,
@@ -501,27 +477,24 @@ AS
cnt_kenmerkcontract d,
cnt_kenmerk ck,
prs_bedrijf b
WHERE c.ins_discipline_key IN (1821, 1842) --Subsidies & Detacheringen
WHERE c.ins_discipline_key IN (1821, 1842)
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 TRUNC (
ADD_MONTHS (
fac.safe_to_date (
d.cnt_kenmerkcontract_waarde,
'dd-mm-yyyy'),
-2)) =
TRUNC (SYSDATE)
fac.safe_to_date (d.cnt_kenmerkcontract_waarde,'dd-mm-yyyy'),
-2)) = TRUNC (SYSDATE)
AND ck.cnt_srtkenmerk_key = 569 -- contract loopt af
UNION ALL
--contract loopt af (Raamovereenkomst & onderaanneming)
-- contract loopt af (Raamovereenkomst & 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,
NULL AS teamleider,
c.prs_perslid_key_eig AS teamleider, -- was NULL
NULL AS business_controller,
1423 AS stdmelding,
'Contract loopt af' AS taak
@@ -529,27 +502,24 @@ AS
cnt_kenmerkcontract d,
cnt_kenmerk ck,
prs_bedrijf b
WHERE c.ins_discipline_key IN (1822, 1901) -- Raamovereenkomst & Onderaanneming
WHERE c.ins_discipline_key IN (1822, 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 TRUNC (
ADD_MONTHS (
fac.safe_to_date (
d.cnt_kenmerkcontract_waarde,
'dd-mm-yyyy'),
-3)) =
TRUNC (SYSDATE)
fac.safe_to_date (d.cnt_kenmerkcontract_waarde,'dd-mm-yyyy'),
-3)) = TRUNC (SYSDATE)
AND ck.cnt_srtkenmerk_key = 569 -- contract loopt af
UNION ALL
--Accountantsverklaring
-- Accountantsverklaring (Subsidies) << TL blijft NIET aangezet
SELECT c.ins_discipline_key,
c.cnt_contract_key,
c.cnt_contract_nummer_intern,
c.cnt_contract_omschrijving,
b.prs_bedrijf_naam,
NULL AS accountmanager,
NULL AS teamleider,
c.prs_perslid_key_beh AS accountmanager, -- was NULL
NULL AS teamleider, -- blijft NULL i.v.m. uitzondering
109570 AS business_controller,
1401 AS stdmelding,
'Accountantsverklaring' AS taak
@@ -557,20 +527,14 @@ AS
cnt_kenmerkcontract d,
cnt_kenmerk ck,
prs_bedrijf b
WHERE c.ins_discipline_key IN (1821)--, --Subsidies
--1822, --Raamovereenkomst (moet deze ook?)
--1842, --Detacheringen (moet deze ook?)
--1901) --Onderaannemers (moet deze ook?)
WHERE c.ins_discipline_key IN (1821)
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 TRUNC (
ADD_MONTHS (
fac.safe_to_date (
d.cnt_kenmerkcontract_waarde,
'dd-mm-yyyy'),
-3)) =
TRUNC (SYSDATE)
fac.safe_to_date (d.cnt_kenmerkcontract_waarde,'dd-mm-yyyy'),
-3)) = TRUNC (SYSDATE)
AND ck.cnt_srtkenmerk_key = 568; -- Accountantsverklaring
BEGIN
v_uitvoerder := 4; -- Standaard de persoon Facilitor
@@ -605,12 +569,11 @@ AS
1423, rec.accountmanager,
1601, rec.accountmanager);
-- Notificaties aanmaken tbv accountmanagers
-- Notificaties accountmanager
v_errorhint := 'notificatie_accountmanager';
v_accm := rec.accountmanager;
IF v_accm IS NOT NULL
THEN
IF v_accm IS NOT NULL THEN
FAC.trackaction (
'CNTMAI',
rec.cnt_contract_key,
@@ -635,31 +598,18 @@ AS
fac_notificatie_refkey,
fac_notificatie_extrakey,
fac_notificatie_prioriteit)
VALUES (
53, -- CNTMAI
2, -- mail
NULL,
v_accm,
VALUES (53, 2, NULL, v_accm,
'Notificatie naar accountmanager, taak: '
|| rec.taak
|| ' bij contract '
|| rec.cnt_contract_key
|| '('
|| rec.prs_bedrijf_naam
|| ' - '
|| rec.cnt_contract_omschrijving
|| ')',
rec.cnt_contract_key,
NULL,
2);
|| rec.taak || ' bij contract ' || rec.cnt_contract_key
|| '(' || rec.prs_bedrijf_naam || ' - ' || rec.cnt_contract_omschrijving || ')',
rec.cnt_contract_key, NULL, 2);
END IF;
-- Notificaties aanmaken tbv teamleiders
-- Notificaties teamleider
v_errorhint := 'notificatie_teamleider';
v_teaml := rec.teamleider;
IF v_teaml IS NOT NULL
THEN
IF v_teaml IS NOT NULL THEN
FAC.trackaction (
'CNTMAI',
rec.cnt_contract_key,
@@ -684,31 +634,18 @@ AS
fac_notificatie_refkey,
fac_notificatie_extrakey,
fac_notificatie_prioriteit)
VALUES (
53, -- CNTMAI
2, -- mail
NULL,
v_teaml,
VALUES (53, 2, NULL, v_teaml,
'Notificatie naar teamleider/clustermanager, taak: '
|| rec.taak
|| ' bij contract '
|| rec.cnt_contract_key
|| '('
|| rec.prs_bedrijf_naam
|| ' - '
|| rec.cnt_contract_omschrijving
|| ')',
rec.cnt_contract_key,
NULL,
2);
|| rec.taak || ' bij contract ' || rec.cnt_contract_key
|| '(' || rec.prs_bedrijf_naam || ' - ' || rec.cnt_contract_omschrijving || ')',
rec.cnt_contract_key, NULL, 2);
END IF;
-- Notificaties aanmaken tbv de business controller
-- Notificaties business controller
v_errorhint := 'notificatie_businesscontrol';
v_buscontr := rec.business_controller;
IF v_buscontr IS NOT NULL
THEN
IF v_buscontr IS NOT NULL THEN
FAC.trackaction (
'CNTMAI',
rec.cnt_contract_key,
@@ -733,31 +670,15 @@ AS
fac_notificatie_refkey,
fac_notificatie_extrakey,
fac_notificatie_prioriteit)
VALUES (
53, -- CNTMAI
2, -- mail
NULL,
v_buscontr,
VALUES (53, 2, NULL, v_buscontr,
'Notificatie naar Business Controller, taak: '
|| rec.taak
|| ' bij contract '
|| rec.cnt_contract_key
|| '('
|| rec.prs_bedrijf_naam
|| ' - '
|| rec.cnt_contract_omschrijving
|| ')',
rec.cnt_contract_key,
NULL,
2);
|| rec.taak || ' bij contract ' || rec.cnt_contract_key
|| '(' || rec.prs_bedrijf_naam || ' - ' || rec.cnt_contract_omschrijving || ')',
rec.cnt_contract_key, NULL, 2);
END IF;
-- Melding aanmaken
v_errorhint :=
'Melding aanmaken vanuit contract '
|| rec.cnt_contract_key
|| ' met taak '
|| rec.taak;
v_errorhint := 'Melding aanmaken vanuit contract ' || rec.cnt_contract_key || ' met taak ' || rec.taak;
INSERT INTO mld_melding (mld_melding_module,
mld_meldbron_key,
@@ -780,15 +701,8 @@ AS
'MLD',
6, -- system
SYSDATE,
SUBSTR (
'Contract '
|| rec.cnt_contract_key
|| ': '
|| rec.prs_bedrijf_naam
|| ' - '
|| rec.cnt_contract_omschrijving,
1,
80),
SUBSTR('Contract ' || rec.cnt_contract_key || ': ' || rec.prs_bedrijf_naam
|| ' - ' || rec.cnt_contract_omschrijving,1,80),
NULL,
2, -- Nieuw
NULL, -- stduitvoer
@@ -802,25 +716,15 @@ AS
3,
'C',
rec.cnt_contract_key)
RETURNING mld_melding_key
INTO v_mldkey;
RETURNING mld_melding_key INTO v_mldkey;
END;
END LOOP;
EXCEPTION
WHEN OTHERS
THEN
WHEN OTHERS THEN
oracle_err_num := SQLCODE;
oracle_err_mes := SUBSTR (SQLERRM, 1, 200);
v_errorhint :=
'ORACLE (error '
|| oracle_err_num
|| '/'
|| oracle_err_mes
|| ')';
fac.writelog (p_applname,
'E',
'Proces afgebroken!',
v_errorhint);
v_errorhint := 'ORACLE (error ' || oracle_err_num || '/' || oracle_err_mes || ')';
fac.writelog (p_applname, 'E', 'Proces afgebroken!', v_errorhint);
END hpji_acties_verkoopcontracten;
END;
/