CSUN#90600 Verbeteringen bij het opschonen van vastgoed: alleen verwijderen indien dat mogelijk is, anders vervallen

svn path=/Customer/trunk/; revision=70839
This commit is contained in:
Sander Schepers
2025-11-06 09:49:42 +00:00
parent 00c08dd3ce
commit 3f1b6d0306

View File

@@ -3163,6 +3163,7 @@ IS
v_ongeldig NUMBER (1);
v_count_update NUMBER (10);
v_count_tot NUMBER (10);
v_count_mld NUMBER (10);
-- De importvelden:de
v_locatie_key NUMBER (10);
@@ -3229,7 +3230,14 @@ IS
CURSOR c_del
IS
SELECT alg_locatie_key, alg_locatie_code
SELECT alg_locatie_key, alg_locatie_code,
(SELECT COUNT (*)
FROM mld_melding
WHERE mld_alg_locatie_key = l.alg_locatie_key
AND mld_melding_status IN (2,
3,
4,
7)) as count_mld
FROM alg_locatie l, alg_onrgoedkenmerk aogk
WHERE alg_locatie_verwijder IS NULL
AND aogk.alg_kenmerk_key = 1160 -- vervaldatum
@@ -3245,7 +3253,8 @@ IS
AND bkm.alg_kenmerk_niveau = 'L' --Enkel wanneer er op locatieniveau kenmerken zijn toegevoegd.
AND b.fac_bijlagen_module = 'ALG' -- Enkel bijlagen komend uit deze module (geen res/mld/etc).
AND bkm.alg_kenmerk_kenmerktype IN ('M', 'F') -- Enkel kenmerksoorten obv map met bijlage of enkele bijlage
AND b.fac_bijlagen_verwijder IS NULL);
AND b.fac_bijlagen_verwijder IS NULL)
GROUP BY alg_locatie_key, alg_locatie_code;
CURSOR c_rayonl
IS
@@ -3579,36 +3588,58 @@ BEGIN
--csun_export_set_werkplek;
--csun_export_set_werkplek (p_import_key);
FOR rec_del IN c_del
LOOP
BEGIN
v_error_hint :=
'Verwijderen gebouwen - Locatie_code: '
|| rec_del.alg_locatie_code;
FOR rec_del IN c_del
LOOP
BEGIN
v_count_mld := rec_del.count_mld;
UPDATE alg_gebouw
SET alg_gebouw_verwijder = SYSDATE
WHERE alg_gebouw_verwijder IS NULL
AND alg_locatie_key = rec_del.alg_locatie_key;
IF v_count_mld = 0
THEN
v_error_hint :=
'Verwijderen gebouwen - Locatie_code: '
|| rec_del.alg_locatie_code;
v_error_hint :=
'Verwijderen locatie - Locatie_code: '
|| rec_del.alg_locatie_code;
UPDATE alg_gebouw
SET alg_gebouw_verwijder = SYSDATE
WHERE alg_gebouw_verwijder IS NULL
AND alg_locatie_key = rec_del.alg_locatie_key;
UPDATE alg_locatie
SET alg_locatie_verwijder = SYSDATE
WHERE alg_locatie_key = rec_del.alg_locatie_key;
EXCEPTION
WHEN OTHERS
THEN
oracle_err_mes := SUBSTR (SQLERRM, 1, 150);
v_errormsg := '(ORACLE error ' || oracle_err_mes || ')';
fac.imp_writelog (p_import_key,
'E',
'Verwijderen locaties:' || v_errormsg,
v_error_hint);
END;
END LOOP;
v_error_hint :=
'Verwijderen locatie - Locatie_code: '
|| rec_del.alg_locatie_code;
UPDATE alg_locatie
SET alg_locatie_verwijder = SYSDATE
WHERE alg_locatie_key = rec_del.alg_locatie_key;
ELSE
v_error_hint :=
'Vervallen gebouwen - Locatie_code: '
|| rec_del.alg_locatie_code;
UPDATE alg_gebouw
SET alg_gebouw_vervaldatum = SYSDATE
WHERE alg_gebouw_vervaldatum IS NULL
AND alg_locatie_key = rec_del.alg_locatie_key;
v_error_hint :=
'Vervallen locatie - Locatie_code: '
|| rec_del.alg_locatie_code;
UPDATE alg_locatie
SET alg_locatie_vervaldatum = SYSDATE
WHERE alg_locatie_key = rec_del.alg_locatie_key;
END IF;
EXCEPTION
WHEN OTHERS
THEN
oracle_err_mes := SUBSTR (SQLERRM, 1, 150);
v_errormsg := '(ORACLE error ' || oracle_err_mes || ')';
fac.imp_writelog (p_import_key,
'E',
'Verwijderen locaties:' || v_errormsg,
v_error_hint);
END;
END LOOP;
-- voeg de rayonleiders toe als ze nog niet bestaan
FOR rec_ray IN c_rayonl