KW1C#81204 implementatie FMIS (gebouwbeheer) KW1C

svn path=/Customer/trunk/; revision=64444
This commit is contained in:
Suzan Wiegerinck
2024-04-30 07:27:28 +00:00
parent 6f7dad9711
commit 144baf84ff

View File

@@ -113,7 +113,7 @@ IS
WHERE typen.fac_usrtab_key = 3 -- keuzelijst typen
AND UPPER (nieuw.omschrijving) = UPPER (typen.fac_usrdata_omschr) --- op basis van de omschrijvingen kan de juiste key bepaald worden
AND r.alg_ruimte_key = nieuw.alg_onrgoed_key
AND r.alg_ruimte_key = huidig.alg_onrgoed_key) ruimtetype,
AND r.alg_ruimte_key = huidig.alg_onrgoed_key(+)) ruimtetype,
(SELECT r.alg_ruimte_key ruimte_key,
huidig.omschrijving huidige_categorie,
nieuw.omschrijving nieuwe_categorie_omschrijving,
@@ -136,13 +136,13 @@ IS
(SELECT kw.alg_onrgoedkenmerk_key,
kw.alg_onrgoed_key,
k.alg_kenmerk_key,
categorie_new.fac_usrdata_omschr omschrijving
FROM alg_kenmerk k, alg_onrgoedkenmerk kw, fac_usrdata categorie_new
categorie.fac_usrdata_omschr omschrijving
FROM alg_kenmerk k, alg_onrgoedkenmerk kw, fac_usrdata categorie
WHERE k.alg_kenmerk_key = 1060
AND kw.alg_kenmerk_key = k.alg_kenmerk_key
AND fac.safe_to_number (kw.alg_onrgoedkenmerk_waarde) =
categorie_new.fac_usrdata_key
AND categorie_new.fac_usrtab_key = 21 -- keuzelijst categorie
categorie.fac_usrdata_key
AND categorie.fac_usrtab_key = 21 -- keuzelijst categorie
AND kw.alg_onrgoedkenmerk_verwijder IS NULL
AND kw.alg_onrgoed_niveau = 'R') huidig,
alg_ruimte r,
@@ -150,10 +150,10 @@ IS
WHERE categorie.fac_usrtab_key = 21 -- keuzelijst categorie
AND UPPER (nieuw.omschrijving) = UPPER (categorie.fac_usrdata_omschr) --- op basis van de omschrijvingen kan de juiste key bepaald worden
AND r.alg_ruimte_key = nieuw.alg_onrgoed_key
AND r.alg_ruimte_key = huidig.alg_onrgoed_key) categorie
AND r.alg_ruimte_key = huidig.alg_onrgoed_key(+)) categorie
WHERE mutatiedatum.ruimte_key = r.alg_ruimte_key
AND ruimtetype.ruimte_key = r.alg_ruimte_key
AND categorie.ruimte_key = r.alg_ruimte_key
AND ruimtetype.ruimte_key (+) = r.alg_ruimte_key
AND categorie.ruimte_key (+) = r.alg_ruimte_key
AND mutatiedatum.mutatiedatum < TRUNC (SYSDATE + 1);
-- stap 1: bepalen of er per vandaag een mutatie is voor vloer
@@ -201,29 +201,47 @@ IS
ud.fac_usrdata_key
AND kw.alg_onrgoed_niveau = 'R'
AND kw.alg_onrgoedkenmerk_verwijder IS NULL) vloer_new
WHERE r.alg_ruimte_key = vloer.ruimte_key --- (+) nu nog geen outer join, maar wat als er nog geen waarde is? dit afvangen!
WHERE r.alg_ruimte_key = vloer.ruimte_key (+) --- (+) outer join, voor als er nog geen waarde is
AND r.alg_ruimte_key = vloer_new.ruimte_key
AND r.alg_ruimte_key = mutatiedatum.ruimte_key
AND mutatiedatum.mutatiedatum < TRUNC (SYSDATE + 1);
BEGIN
FOR rec IN CAT
LOOP
-- de oude waarden (categorie en type archiveren) geven we een verwijderdatum vandaag-1
UPDATE alg_onrgoedkenmerk ok
SET ok.alg_onrgoedkenmerk_verwijder = TRUNC (SYSDATE) - 1
WHERE ok.alg_onrgoedkenmerk_key = rec.onrgoedkenmerk_to_archive_type
OR ok.alg_onrgoedkenmerk_key = rec.onrgoedkenmerk_to_archive_categorie;
IF rec.huidige_categorie IS NOT NULL
THEN
-- de oude waarden (categorie archiveren) geven we een verwijderdatum vandaag-1
UPDATE alg_onrgoedkenmerk ok
SET ok.alg_onrgoedkenmerk_verwijder = TRUNC (SYSDATE) - 1
WHERE ok.alg_onrgoedkenmerk_key = rec.onrgoedkenmerk_to_archive_categorie;
fac.trackaction (
'ALGRUP',
rec.alg_ruimte_key,
3,
SYSDATE,
'Categorie '
|| rec.huidige_categorie
|| ' en type '
|| rec.huidig_type
|| ' gearchiveerd');
fac.trackaction (
'ALGRUP',
rec.alg_ruimte_key,
3,
SYSDATE,
'Categorie '
|| rec.huidige_categorie
|| ' gearchiveerd');
END IF;
IF rec.huidig_type IS NOT NULL
THEN
-- de oude waarden (type archiveren) geven we een verwijderdatum vandaag-1
UPDATE alg_onrgoedkenmerk ok
SET ok.alg_onrgoedkenmerk_verwijder = TRUNC (SYSDATE) - 1
WHERE ok.alg_onrgoedkenmerk_key = rec.onrgoedkenmerk_to_archive_type;
fac.trackaction (
'ALGRUP',
rec.alg_ruimte_key,
3,
SYSDATE,
'Type '
|| rec.huidig_type
|| ' gearchiveerd');
END IF;
-- de nieuwe waarde voor categorie voegen we toe
INSERT INTO alg_onrgoedkenmerk (alg_onrgoed_key,
@@ -271,18 +289,21 @@ IS
FOR rec IN VLOER
LOOP
-- de oude waarden (categorie en type archiveren) geven we een verwijderdatum vandaag-1
UPDATE alg_onrgoedkenmerk ok
SET ok.alg_onrgoedkenmerk_verwijder = TRUNC (SYSDATE) - 1
WHERE ok.alg_onrgoedkenmerk_key = rec.to_archive_vloer;
fac.trackaction ('ALGRUP',
rec.alg_ruimte_key,
3,
SYSDATE,
'Vloerafwerking ' || rec.huidige_vloer || ' gearchiveerd');
IF rec.huidige_vloer IS NOT NULL
THEN
UPDATE alg_onrgoedkenmerk ok
SET ok.alg_onrgoedkenmerk_verwijder = TRUNC (SYSDATE) - 1
WHERE ok.alg_onrgoedkenmerk_key = rec.to_archive_vloer;
fac.trackaction ('ALGRUP',
rec.alg_ruimte_key,
3,
SYSDATE,
'Vloerafwerking ' || rec.huidige_vloer || ' gearchiveerd');
END IF;
-- de nieuwe waarde voor categorie voegen we toe
INSERT INTO alg_onrgoedkenmerk (alg_onrgoed_key,
alg_onrgoed_niveau,
@@ -304,7 +325,6 @@ IS
WHERE ok.alg_onrgoedkenmerk_key = rec.to_delete_vloer
OR ok.alg_onrgoedkenmerk_key = rec.onrgoedkenmerk_to_delete_mutatiedat;
fac.trackaction ('ALGRUP',
rec.alg_ruimte_key,
3,