MAAS#76183 Vullen garantiedatum
svn path=/Customer/; revision=58946
This commit is contained in:
154
onces/MAAS/MAAS#76183.sql
Normal file
154
onces/MAAS/MAAS#76183.sql
Normal file
@@ -0,0 +1,154 @@
|
||||
--
|
||||
-- $Id$
|
||||
--
|
||||
-- Er zijn 700+ objecten ingelezen. Achteraf wilde men eigenlijk dat er een garantiedatum gevuld wordt (afgeleiding van registratiedatum).
|
||||
-- Dat wordt met dit script alsnog aangemaakt. Dus bij meer dan 700 objecten wordt een kenmerk gevuld (en tracking aangemaakt)
|
||||
--
|
||||
|
||||
DEFINE thisfile = 'MAAS#76183.SQL'
|
||||
DEFINE dbuser = 'MAAS'
|
||||
|
||||
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_errorhint VARCHAR2 (100);
|
||||
v_count NUMBER;
|
||||
|
||||
CURSOR telefonie IS
|
||||
SELECT ins_deel_key,
|
||||
TO_CHAR (TRUNC (ADD_MONTHS (ins_deel_aanmaak, 12)),
|
||||
'DD-MM-YYYY') AS garantiedatum
|
||||
FROM ins_v_aanwezigdeel
|
||||
WHERE ins_discipline_key = 101;
|
||||
|
||||
CURSOR netwerkcomponent IS
|
||||
SELECT ins_deel_key,
|
||||
TO_CHAR (TRUNC (ADD_MONTHS (ins_deel_aanmaak, 12)),
|
||||
'DD-MM-YYYY') AS garantiedatum
|
||||
FROM ins_v_aanwezigdeel
|
||||
WHERE ins_discipline_key = 102;
|
||||
|
||||
CURSOR hardware IS
|
||||
SELECT ins_deel_key,
|
||||
TO_CHAR (TRUNC (ADD_MONTHS (ins_deel_aanmaak, 12)),
|
||||
'DD-MM-YYYY') AS garantiedatum
|
||||
FROM ins_v_aanwezigdeel
|
||||
WHERE ins_discipline_key = 104;
|
||||
BEGIN
|
||||
FOR rec IN telefonie
|
||||
LOOP
|
||||
BEGIN
|
||||
v_errorhint := 'Garantiedatum Telefonie ' || rec.ins_deel_key;
|
||||
|
||||
SELECT COUNT (*)
|
||||
INTO v_count
|
||||
FROM ins_v_aanwezigkenmerkdeel
|
||||
WHERE ins_deel_key = rec.ins_deel_key AND ins_kenmerk_key = 102; -- Kenmerk verloop garantie bij discipline Telefonie (accp102);
|
||||
|
||||
IF v_count = 0
|
||||
THEN
|
||||
v_errorhint :=
|
||||
'Fout toevoegen waarde [' || rec.garantiedatum || ']';
|
||||
|
||||
INSERT INTO ins_kenmerkdeel (ins_deel_key,
|
||||
ins_kenmerk_key,
|
||||
ins_kenmerkdeel_waarde)
|
||||
VALUES (rec.ins_deel_key, 102, rec.garantiedatum);
|
||||
|
||||
fac.trackaction (
|
||||
'INSUPD',
|
||||
rec.ins_deel_key,
|
||||
NULL,
|
||||
NULL,
|
||||
'Verloop garantie: (leeg) --> ' || rec.garantiedatum);
|
||||
END IF;
|
||||
END;
|
||||
END LOOP;
|
||||
|
||||
FOR rec IN netwerkcomponent
|
||||
LOOP
|
||||
BEGIN
|
||||
v_errorhint := 'Garantiedatum Netwerkcomponent ' || rec.ins_deel_key;
|
||||
|
||||
SELECT COUNT (*)
|
||||
INTO v_count
|
||||
FROM ins_v_aanwezigkenmerkdeel
|
||||
WHERE ins_deel_key = rec.ins_deel_key AND ins_kenmerk_key = 101; -- Kenmerk verloop garantie bij discipline Netwerkcomponent (accp101);
|
||||
|
||||
IF v_count = 0
|
||||
THEN
|
||||
v_errorhint :=
|
||||
'Fout toevoegen waarde [' || rec.garantiedatum || ']';
|
||||
|
||||
INSERT INTO ins_kenmerkdeel (ins_deel_key,
|
||||
ins_kenmerk_key,
|
||||
ins_kenmerkdeel_waarde)
|
||||
VALUES (rec.ins_deel_key, 101, rec.garantiedatum);
|
||||
|
||||
fac.trackaction (
|
||||
'INSUPD',
|
||||
rec.ins_deel_key,
|
||||
NULL,
|
||||
NULL,
|
||||
'Verloop garantie: (leeg) --> ' || rec.garantiedatum);
|
||||
END IF;
|
||||
END;
|
||||
END LOOP;
|
||||
|
||||
FOR rec IN hardware
|
||||
LOOP
|
||||
BEGIN
|
||||
v_errorhint := 'Garantiedatum Hardware ' || rec.ins_deel_key;
|
||||
|
||||
SELECT COUNT (*)
|
||||
INTO v_count
|
||||
FROM ins_v_aanwezigkenmerkdeel
|
||||
WHERE ins_deel_key = rec.ins_deel_key AND ins_kenmerk_key = 41; -- Kenmerk verloop garantie bij discipline Hardware;
|
||||
|
||||
IF v_count = 0
|
||||
THEN
|
||||
v_errorhint :=
|
||||
'Fout toevoegen waarde [' || rec.garantiedatum || ']';
|
||||
|
||||
INSERT INTO ins_kenmerkdeel (ins_deel_key,
|
||||
ins_kenmerk_key,
|
||||
ins_kenmerkdeel_waarde)
|
||||
VALUES (rec.ins_deel_key, 41, rec.garantiedatum);
|
||||
|
||||
fac.trackaction (
|
||||
'INSUPD',
|
||||
rec.ins_deel_key,
|
||||
NULL,
|
||||
NULL,
|
||||
'Verloop garantie: (leeg) --> ' || rec.garantiedatum);
|
||||
END IF;
|
||||
END;
|
||||
END LOOP;
|
||||
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
|
||||
Reference in New Issue
Block a user