CVGZ#62224 -- Realisatie personenkoppeling.

svn path=/Customer/trunk/; revision=46888
This commit is contained in:
Arthur Egberink
2020-05-20 14:47:04 +00:00
parent 0b52260309
commit 8625312bd3

View File

@@ -368,6 +368,15 @@ END cvgz_import_perslid;
CREATE OR REPLACE PROCEDURE cvgz_update_perslid (p_import_key IN NUMBER)
IS
CURSOR c_del IS
SELECT p.prs_perslid_key, p.prs_perslid_nr, pf.prs_perslid_naam_full, p.prs_perslid_oslogin
FROM fac_imp_perslid i, prs_perslid p, prs_v_perslid_fullnames_all pf
WHERE p.prs_perslid_nr = i.prs_perslid_nr(+)
AND pf.prs_perslid_key = p.prs_perslid_key
AND p.prs_perslid_nr IS NOT NULL
AND SUBSTR(p.prs_perslid_oslogin,1,1) <> '_'
AND i.prs_perslid_nr IS NULL
AND p.prs_perslid_verwijder IS NULL;
v_bedrijf_key NUMBER (10);
@@ -384,6 +393,21 @@ IS
oracle_err_mes VARCHAR2 (200);
BEGIN
SELECT COUNT(*)
INTO v_count
FROM fac_imp_perslid
WHERE fac_import_key = p_import_key;
IF v_count > 2000
THEN
FOR rec IN c_del LOOP
BEGIN
v_errorhint := 'Persoon verwijderen: ' || rec.prs_perslid_naam_full || '-' || rec.prs_perslid_nr || '-' || rec.prs_perslid_oslogin;
prs.delete_perslid (p_import_key, rec.prs_perslid_key);
END;
END LOOP;
END IF;
prs.update_perslid (p_import_key, 'NR', NULL);
COMMIT;
@@ -402,8 +426,65 @@ EXCEPTION
'E',
v_aanduiding || v_errormsg,
v_errorhint);
END cvgz_update_perslid;
/
CREATE OR REPLACE VIEW cvgz_v_noti_leider_mldnew
(
sender,
receiver,
text,
code,
key,
xkey
)
AS
SELECT NULL,
pk.prs_perslid_key,
'Registratie '
|| sm.mld_stdmelding_omschrijving
|| ' van/door '
|| pm.prs_perslid_voornaam
|| ' '
|| pm.prs_perslid_naam
|| ' (nr. '
|| m.mld_melding_key
|| ')',
'MLDNEW',
m.mld_melding_key,
NULL
FROM mld_melding m,
prs_perslid pm,
mld_stdmelding sm,
mld_kenmerkmelding km,
mld_kenmerk k,
prs_perslid pk,
( SELECT fac_tracking_refkey,
MAX (fac_tracking_datum) fac_tracking_datum
FROM fac_tracking ft, fac_srtnotificatie fsn
WHERE fsn.fac_srtnotificatie_key = ft.fac_srtnotificatie_key
AND fac_srtnotificatie_code = 'MLDNEW'
GROUP BY fac_tracking_refkey) ft
WHERE m.mld_stdmelding_key = sm.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 = 246
AND m.prs_perslid_key_voor = pm.prs_perslid_key
AND fac.safe_to_number (km.mld_kenmerkmelding_waarde) =
pk.prs_perslid_key
AND m.mld_melding_key = ft.fac_tracking_refkey
AND ft.fac_tracking_datum >
(SELECT fac_notificatie_job_nextrun
- fac_notificatie_job_interval / 24
FROM fac_notificatie_job
WHERE fac_notificatie_job_view = 'CVGZ_V_NOTI_LEIDER_MLDNEW')
AND ft.fac_tracking_datum <
(SELECT fac_notificatie_job_nextrun
FROM fac_notificatie_job
WHERE fac_notificatie_job_view = 'CVGZ_V_NOTI_LEIDER_MLDNEW') ;
------ payload end ------
SET DEFINE OFF