FCLT#56439: Secundaire behandelgroepen voor Logcentre
svn path=/Customer/; revision=40814
This commit is contained in:
158
onces/LOGC/LOGC#56439.sql
Normal file
158
onces/LOGC/LOGC#56439.sql
Normal file
@@ -0,0 +1,158 @@
|
||||
--
|
||||
-- $Id$
|
||||
--
|
||||
-- Omzetten van huidige inrichting met vakgroepen per team naar vakgroepen per product en secundaire behandelgroepen
|
||||
-- Er is handmatig al e.e.a. aangemaakt zodat we hier van bekende keys uit kunnen gaan:
|
||||
--
|
||||
-- Nieuwe disciplines Facilitor (161), Mareon (181) en Plato (182)
|
||||
-- Corresponderende meldingen:
|
||||
-- Gebrek|Verstoring (201, 241, 245)
|
||||
-- Ondersteuning (202, 242, 246)
|
||||
-- Vraag (203, 243, 247)
|
||||
-- Wens (221, 244, 248)
|
||||
|
||||
DEFINE thisfile = 'LOGC#56439.SQL'
|
||||
DEFINE dbuser = '^LOGC'
|
||||
|
||||
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;
|
||||
SET DEFINE OFF
|
||||
|
||||
------ payload begin ------
|
||||
|
||||
-- Eerst doen we alles onder FACILITOR, achteraf splitsen we nog naar Mareon en Plato
|
||||
|
||||
-- Het omzetten van Ticket/Consultants/Ticket[@Ondersteuning] naar Tickets/FACILITOR/Ondersteuning enz.
|
||||
-- De secundaire behandelaar wordt gevuld met de primaire behandelaar
|
||||
-- kenmerk 21 is het type: Gebrek, Wens, Ondersteuning en Vraag en bepaalt de nieuwe stdmelding
|
||||
|
||||
-- Waar het type bekend is, kun je 1-op-1 omzetten
|
||||
UPDATE mld_melding m
|
||||
SET
|
||||
m.mld_ins_discipline_key =
|
||||
(SELECT sm.mld_ins_discipline_key
|
||||
FROM mld_stdmelding sm
|
||||
WHERE sm.mld_stdmelding_key = m.mld_stdmelding_key),
|
||||
mld_melding_behandelaar2_key = mld_melding_behandelaar_key,
|
||||
m.mld_stdmelding_key =
|
||||
(SELECT DECODE (kmm.mld_kenmerkmelding_waarde,
|
||||
1, 201,
|
||||
2, 202,
|
||||
3, 203,
|
||||
4, 221)
|
||||
FROM mld_kenmerkmelding kmm
|
||||
WHERE kmm.mld_melding_key = m.mld_melding_key
|
||||
AND kmm.mld_kenmerk_key = 21)
|
||||
WHERE m.mld_melding_key IN
|
||||
(SELECT mld_melding_key
|
||||
FROM mld_kenmerkmelding
|
||||
WHERE mld_kenmerk_key = 21
|
||||
AND mld_kenmerkmelding_verwijder IS NULL);
|
||||
|
||||
-- Waar het type NIET bekend is, vertalen we de tickets obv de huidige primaire behandelgroep
|
||||
-- wat bepaald wordt via de stdmelding
|
||||
UPDATE mld_melding m
|
||||
SET
|
||||
m.mld_ins_discipline_key =
|
||||
(SELECT sm.mld_ins_discipline_key
|
||||
FROM mld_stdmelding sm
|
||||
WHERE sm.mld_stdmelding_key = m.mld_stdmelding_key),
|
||||
mld_melding_behandelaar2_key = mld_melding_behandelaar_key,
|
||||
m.mld_stdmelding_key =
|
||||
DECODE (m.mld_stdmelding_key,
|
||||
22, 221,
|
||||
23, 202,
|
||||
24, 221,
|
||||
101, 203,
|
||||
81, 203,
|
||||
25, 203,
|
||||
3, 203, m.mld_stdmelding_key) -- rest is geen tickets
|
||||
WHERE NOT EXISTS
|
||||
(SELECT ''
|
||||
FROM mld_kenmerkmelding km
|
||||
WHERE mld_kenmerk_key = 21
|
||||
AND mld_kenmerkmelding_verwijder IS NULL
|
||||
AND km.mld_melding_key = m.mld_melding_key);
|
||||
|
||||
-- De oude vakgroepen worden secundaire behandelgroepen, net als de nieuwe Testen en Release
|
||||
UPDATE mld_disc_params SET mld_disc_params_srtgroep = 2 WHERE mld_ins_discipline_key IN (22,42,41,81,43,21,201,202);
|
||||
|
||||
-- Meldingen met Test-balletje krijgen secundaire behandelgroep Testen
|
||||
UPDATE mld_melding SET mld_ins_discipline_key = 201 WHERE mld_melding_flag = 4;
|
||||
-- Meldingen met 2Saas-balletje krijgen secundaire behandelgroep Release
|
||||
UPDATE mld_melding SET mld_ins_discipline_key = 202 WHERE mld_melding_flag = 5;
|
||||
|
||||
--Nu gaan we MARX splitsen naar de Mareon-vakgroep:
|
||||
-- Kenmerk 25 is de fixversie/release
|
||||
UPDATE mld_melding
|
||||
SET mld_stdmelding_key =
|
||||
DECODE (mld_stdmelding_key,
|
||||
201, 241,
|
||||
202, 242,
|
||||
203, 243,
|
||||
221, 244,
|
||||
mld_stdmelding_key)
|
||||
WHERE prs_kostenplaats_key = (SELECT prs_kostenplaats_key
|
||||
FROM prs_kostenplaats
|
||||
WHERE prs_kostenplaats_upper = 'MARX');
|
||||
UPDATE mld_melding
|
||||
SET mld_stdmelding_key =
|
||||
DECODE (mld_stdmelding_key,
|
||||
201, 241,
|
||||
202, 242,
|
||||
203, 243,
|
||||
221, 244,
|
||||
mld_stdmelding_key)
|
||||
WHERE mld_melding_key IN
|
||||
(SELECT mld_melding_key
|
||||
FROM mld_kenmerkmelding kmm
|
||||
WHERE kmm.mld_kenmerkmelding_waarde LIKE 'MARX%'
|
||||
AND kmm.mld_kenmerk_key = 25);
|
||||
|
||||
--Nu gaan we PLAT splitsen naar de Plato-vakgroep:
|
||||
UPDATE mld_melding
|
||||
SET mld_stdmelding_key =
|
||||
DECODE (mld_stdmelding_key,
|
||||
201, 245,
|
||||
202, 246,
|
||||
203, 247,
|
||||
221, 248,
|
||||
mld_stdmelding_key)
|
||||
WHERE prs_kostenplaats_key = (SELECT prs_kostenplaats_key
|
||||
FROM prs_kostenplaats
|
||||
WHERE prs_kostenplaats_upper = 'PLAT');
|
||||
UPDATE mld_melding
|
||||
SET mld_stdmelding_key =
|
||||
DECODE (mld_stdmelding_key,
|
||||
201, 245,
|
||||
202, 246,
|
||||
203, 247,
|
||||
221, 248,
|
||||
mld_stdmelding_key)
|
||||
WHERE mld_melding_key IN
|
||||
(SELECT mld_melding_key
|
||||
FROM mld_kenmerkmelding kmm
|
||||
WHERE kmm.mld_kenmerkmelding_waarde LIKE 'PLAT%'
|
||||
AND kmm.mld_kenmerk_key = 25);
|
||||
|
||||
-- Nu moet er (handmatig) geautoriseerd gaan worden
|
||||
|
||||
------ 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