104 lines
5.1 KiB
SQL
104 lines
5.1 KiB
SQL
--
|
|
-- $Id$
|
|
--
|
|
-- Customer specific once-script FMHN#73942.sql.
|
|
DEFINE thisfile = 'FMHN#73942.sql'
|
|
DEFINE dbuser = '^FMHN'
|
|
|
|
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 ------
|
|
|
|
-- FMHN#73942: Afpakken/verwijderen WPs op PB2 (= Prinses Beatrixlaan 2) voor
|
|
-- 08-ers (= EZK) onder afdelingen 0890076628=EZK.DICTU.DO.BTR en
|
|
-- 0890076631=EZK.DICTU.DO.DI.
|
|
/*
|
|
SELECT *
|
|
FROM prs_perslidwerkplek pw
|
|
WHERE EXISTS
|
|
(SELECT 1
|
|
FROM prs_v_perslidwerkplek_gegevens
|
|
WHERE alg_locatie_key = 8 -- Prinses Beatrixlaan 2
|
|
AND prs_werkplek_key = pw.prs_werkplek_key)
|
|
AND EXISTS
|
|
(SELECT 1
|
|
FROM prs_v_aanwezigperslid p, prs_afdeling a, prs_v_afdeling_boom ab
|
|
WHERE SUBSTR (p.prs_perslid_externid, 1, 2) = '08' -- Alleen voor uit IDM geimporteerde personen!
|
|
AND p.prs_afdeling_key = a.prs_afdeling_key
|
|
AND a.prs_afdeling_key = ab.prs_afdeling_key
|
|
AND (EXISTS
|
|
(SELECT 1 -- Satellietzetel op afdeling1 van persoon!
|
|
FROM prs_afdeling
|
|
WHERE prs_afdeling_key = ab.prs_afdeling_key1
|
|
AND (prs_afdeling_externid = '0890076628' -- EZK.DICTU.DO.BTR
|
|
OR prs_afdeling_externid = '0890076631')) -- EZK.DICTU.DO.DI
|
|
OR EXISTS
|
|
(SELECT 1 -- Satellietzetel op afdeling2 van persoon!
|
|
FROM prs_afdeling
|
|
WHERE prs_afdeling_key = ab.prs_afdeling_key2
|
|
AND (prs_afdeling_externid = '0890076628' -- EZK.DICTU.DO.BTR
|
|
OR prs_afdeling_externid = '0890076631')) -- EZK.DICTU.DO.DI
|
|
OR EXISTS
|
|
(SELECT 1 -- Satellietzetel op afdeling3 van persoon!
|
|
FROM prs_afdeling
|
|
WHERE prs_afdeling_key = ab.prs_afdeling_key3
|
|
AND (prs_afdeling_externid = '0890076628' -- EZK.DICTU.DO.BTR
|
|
OR prs_afdeling_externid = '0890076631')) -- EZK.DICTU.DO.DI
|
|
OR EXISTS
|
|
(SELECT 1 -- Satellietzetel op afdeling4 van persoon!
|
|
FROM prs_afdeling
|
|
WHERE prs_afdeling_key = ab.prs_afdeling_key4
|
|
AND (prs_afdeling_externid = '0890076628' -- EZK.DICTU.DO.BTR
|
|
OR prs_afdeling_externid = '0890076631')) -- EZK.DICTU.DO.DI
|
|
OR EXISTS
|
|
(SELECT 1 -- Satellietzetel op afdeling5 van persoon!
|
|
FROM prs_afdeling
|
|
WHERE prs_afdeling_key = ab.prs_afdeling_key5
|
|
AND (prs_afdeling_externid = '0890076628' -- EZK.DICTU.DO.BTR
|
|
OR prs_afdeling_externid = '0890076631'))) -- EZK.DICTU.DO.DI
|
|
AND p.prs_perslid_key = pw.prs_perslid_key);
|
|
*/
|
|
DELETE FROM prs_perslidwerkplek pw
|
|
WHERE EXISTS
|
|
(SELECT 1
|
|
FROM prs_v_perslidwerkplek_gegevens
|
|
WHERE alg_locatie_key = 8 -- Prinses Beatrixlaan 2
|
|
AND prs_werkplek_key = pw.prs_werkplek_key)
|
|
AND EXISTS
|
|
(SELECT 1
|
|
FROM prs_v_aanwezigperslid p, prs_afdeling a, prs_v_afdeling_boom ab
|
|
WHERE SUBSTR (p.prs_perslid_externid, 1, 2) = '08' -- Alleen voor uit IDM geimporteerde personen!
|
|
AND p.prs_afdeling_key = a.prs_afdeling_key
|
|
AND a.prs_afdeling_key = ab.prs_afdeling_key
|
|
AND EXISTS
|
|
(SELECT 1 -- Satellietzetel op afdeling3 van persoon!
|
|
FROM prs_afdeling
|
|
WHERE prs_afdeling_key = ab.prs_afdeling_key3
|
|
AND (prs_afdeling_externid = '0890076628' -- EZK.DICTU.DO.BTR
|
|
OR prs_afdeling_externid = '0890076631')) -- EZK.DICTU.DO.DI
|
|
AND p.prs_perslid_key = pw.prs_perslid_key);
|
|
COMMIT;
|
|
|
|
------ 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
|