AAIT#78878 -- gebrekskenmerken omzetten naar range groter dan 800

svn path=/Customer/; revision=64166
This commit is contained in:
Jos Migo
2024-04-04 19:54:03 +00:00
parent 5c6792d7ea
commit 23b1974d94

View File

@@ -0,0 +1,124 @@
--
-- $Id$
--
-- ONCESCRIPT om voor alle Assetmanagent-klanten van heyday de gebrekskenmerken om te zetten naar de 800-900 reeks
--- Reden is dat de externe inspecteurs met MLDFOF in Facilitor de lopende gebreken moeten kunnen aanpassen.
--- Met dit script worden de kenmerken van de conditiescore omgezet.
--- Handmatig in de omgevingen op de overige gebreks-kenmerken de volgnummering aanpassen:
------ Prioriteit 810-820
------ Overige info 860 - 870
DEFINE thisfile = 'AAXX#78878_gebrekskenmerken_800.SQL'
DEFINE dbuser = 'AAXX'
SET ECHO ON
SET DEFINE ON
COLUMN fcltlogfile NEW_VALUE fcltlogfile NOPRINT;
COLUMN fcltcusterr NEW_VALUE fcltcusterr NOPRINT;
WHENEVER SQLERROR CONTINUE;
SELECT adm.getscriptspoolfile('&thisfile') AS fcltlogfile FROM DUAL;
SPOOL &fcltlogfile
WHENEVER SQLERROR EXIT;
SELECT adm.checkscriptcust('&dbuser') AS fcltcusterr FROM DUAL;
WHENEVER SQLERROR CONTINUE;
PROMPT &fcltcusterr
SET DEFINE OFF
------ payload begin ------
DECLARE
v_errormsg VARCHAR (200);
v_errorhint VARCHAR (200);
oracle_err_num NUMBER;
oracle_err_mes VARCHAR2 (150);
currentversion fac_module.fac_module_version%TYPE;
v_aanduiding VARCHAR (100);
v_count NUMBER;
-- Per klantomgeving te vullen
v_cust_code VARCHAR2 (100) := 'xxxx';
CURSOR c IS
SELECT km.mld_kenmerk_key,
km.mld_kenmerk_volgnummer,
sk.mld_srtkenmerk_upper,
sm.mld_stdmelding_omschrijving
FROM mld_kenmerk km,
mld_srtkenmerk sk,
mld_stdmelding sm,
mld_discipline d
WHERE km.mld_srtkenmerk_key = sk.mld_srtkenmerk_key
AND km.mld_stdmelding_key = sm.mld_stdmelding_key
AND sm.mld_ins_discipline_key = d.ins_discipline_key
AND d.ins_srtdiscipline_key =
fac.getsetting ('cnd_gebreken_srtdisc_key')
AND km.mld_kenmerk_niveau = 'S'
AND ( ( sk.mld_srtkenmerk_upper IN ('ERNST')
AND km.mld_kenmerk_volgnummer = 10) -- moet worden 802
OR ( sk.mld_srtkenmerk_upper IN ('OMVANG')
AND km.mld_kenmerk_volgnummer = 20) -- moet worden 803
OR ( sk.mld_srtkenmerk_upper IN ('INTENSITEIT')
AND km.mld_kenmerk_volgnummer = 30) -- moet worden 804
)
-- uitsluiten std-melding NIEUW ASSET
AND UPPER (sm.mld_stdmelding_omschrijving) NOT IN
('NIEUWE ASSET')
-- TEST
-- AND sm.mld_stdmelding_omschrijving = 'B10EB01 Condens'
ORDER BY sm.mld_stdmelding_omschrijving, km.mld_kenmerk_volgnummer;
BEGIN
-- klantcode
SELECT UPPER (fac_version_cust) INTO v_cust_code FROM fac_version;
-- Klantomgevingen met assetmanagement zijn: 'INLO', 'RABO', 'AAGN', 'AASA', 'SMKA')
---- eerst voor INLO en AAGN aanpassen..
IF v_cust_code IN ('INLO',
'AAGN')
THEN
FOR rec IN c
LOOP
BEGIN
v_errorhint :=
'Aanpassen volgnr kenmerk_key '
|| TO_CHAR (rec.mld_kenmerk_key);
IF rec.mld_srtkenmerk_upper = 'ERNST'
THEN
UPDATE mld_kenmerk
SET mld_kenmerk_volgnummer = 802
WHERE mld_kenmerk_key = rec.mld_kenmerk_key;
END IF;
IF rec.mld_srtkenmerk_upper = 'OMVANG'
THEN
UPDATE mld_kenmerk
SET mld_kenmerk_volgnummer = 803
WHERE mld_kenmerk_key = rec.mld_kenmerk_key;
END IF;
IF rec.mld_srtkenmerk_upper = 'INTENSITEIT'
THEN
UPDATE mld_kenmerk
SET mld_kenmerk_volgnummer = 804
WHERE mld_kenmerk_key = rec.mld_kenmerk_key;
END IF;
-- logging - nvt ...
END;
END LOOP;
END IF;
END;
/
------ payload end ------
SET DEFINE OFF
BEGIN adm.systrackscriptId ('$Id$', 1); END;
/
COMMIT;
SET ECHO OFF
SPOOL OFF
SET DEFINE ON
PROMPT Logfile of this upgrade is: &fcltlogfile