83 lines
2.4 KiB
SQL
83 lines
2.4 KiB
SQL
--
|
|
-- $Id$
|
|
--
|
|
-- Aanpassingen 2024.1 om leidinggevende en kostenplaats van kenmerk naar prs_perslid tabel te plaatsen.
|
|
--
|
|
DEFINE thisfile = 'BAMG#80955.SQL'
|
|
DEFINE dbuser = '*'
|
|
|
|
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 ------
|
|
|
|
-- We gaan het kenmerk 1040 waar de leidinggevende in stond niet meer gebruiken. Hiervoor wordt vanaf nu
|
|
-- het verantwoordelijke veld gebruikt.
|
|
DECLARE
|
|
CURSOR cl IS
|
|
SELECT *
|
|
FROM prs_kenmerklink kl, prs_perslid p
|
|
WHERE prs_kenmerk_key = 1040 AND fac.safe_to_number (kl.prs_kenmerklink_waarde) = p.prs_perslid_key;
|
|
BEGIN
|
|
FOR rec IN cl
|
|
LOOP
|
|
UPDATE prs_perslid
|
|
SET prs_perslid_key_verantw = rec.prs_kenmerklink_waarde
|
|
WHERE prs_perslid_key = rec.prs_link_key;
|
|
END LOOP;
|
|
END;
|
|
/
|
|
|
|
-- We gaan kenmerk 1000 waar de kostenplaats in stond niet meer gebruiken. In plaats daarvan gaan we de kostenplaats
|
|
-- bij de persoon gebruiken.
|
|
DECLARE
|
|
CURSOR ck IS
|
|
SELECT *
|
|
FROM prs_kenmerklink kl, prs_kostenplaats k
|
|
WHERE prs_kenmerk_key = 1000 AND kl.prs_kenmerklink_waarde = k.prs_kostenplaats_nr;
|
|
BEGIN
|
|
FOR rec IN ck
|
|
LOOP
|
|
UPDATE prs_perslid
|
|
SET prs_kostenplaats_key = rec.prs_kostenplaats_key
|
|
WHERE prs_perslid_key = rec.prs_link_key;
|
|
|
|
DELETE prs_perslidkostenplaats
|
|
WHERE prs_perslid_key = rec.prs_link_key AND prs_kostenplaats_key = rec.prs_kostenplaats_key;
|
|
END LOOP;
|
|
END;
|
|
/
|
|
|
|
|
|
-- Alle afdelingskosteplaatsen gaan we onder dezelfde kostenplaatsgroep plaatsen.
|
|
UPDATE prs_kostenplaats
|
|
SET prs_kostenplaatsgrp_key = 21
|
|
WHERE prs_kostenplaatsgrp_key IS NULL AND prs_kostenplaats_module = 'PRS';
|
|
|
|
-- we geven nu via de import de mensen rechten om op alle kostenplaatsen te mogen boeken
|
|
-- individuele rechten uit het verleden kunnen dus komen te vervallen
|
|
DELETE prs_perslidkostenplaats
|
|
WHERE prs_kostenplaats_key IS NULL;
|
|
|
|
------ 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
|