112 lines
3.9 KiB
SQL
112 lines
3.9 KiB
SQL
-- $Id$
|
|
--
|
|
-- Script om voor ruitmeketen van TAYLOR op alle locaties/gebouwen op laagste verdiepingsnr een algemene ruimte aan te maken waaronder de 'werkplek-koppeling' aangemaakt wordt
|
|
--
|
|
--
|
|
DEFINE thisfile = 'TAYL#78713.SQL'
|
|
DEFINE dbuser = '^TAYL'
|
|
|
|
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;
|
|
v_alg_verdieping_key NUMBER;
|
|
|
|
CURSOR C
|
|
IS
|
|
SELECT l.alg_locatie_key, l.alg_locatie_code, g.alg_gebouw_code, g.alg_gebouw_key, MIN(v.alg_verdieping_volgnr) alg_verdieping_volgnr
|
|
FROM alg_locatie l,
|
|
alg_gebouw g,
|
|
alg_verdieping v,
|
|
alg_ruimte r
|
|
WHERE l.alg_locatie_verwijder IS NULL
|
|
AND l.alg_locatie_key = g.alg_locatie_key
|
|
AND g.alg_gebouw_key = v.alg_gebouw_key
|
|
AND v.alg_verdieping_key = r.alg_verdieping_key
|
|
AND g.alg_gebouw_verwijder IS NULL
|
|
AND v.alg_verdieping_verwijder IS NULL
|
|
AND r.alg_ruimte_verwijder IS NULL
|
|
AND COALESCE (g.alg_gebouw_vervaldatum, SYSDATE) >= SYSDATE
|
|
AND r.alg_ruimte_nr NOT IN ('_prs')
|
|
GROUP BY l.alg_locatie_key, l.alg_locatie_code, g.alg_gebouw_code, g.alg_gebouw_key;
|
|
|
|
BEGIN
|
|
FOR rec IN c
|
|
LOOP
|
|
BEGIN
|
|
v_errorhint := 'ruimte_record prs toevoegen';
|
|
|
|
-- bepaal eerst alg_verdieping_key die hoort bij laagste verdiepingsvolgnr
|
|
SELECT alg_verdieping_key
|
|
INTO v_alg_verdieping_key
|
|
FROM alg_verdieping v, alg_gebouw g
|
|
WHERE g.alg_gebouw_key = v.alg_gebouw_key
|
|
AND g.alg_gebouw_key = rec.alg_gebouw_key
|
|
AND v.alg_verdieping_volgnr = rec.alg_verdieping_volgnr ;
|
|
|
|
INSERT INTO alg_ruimte (alg_ruimte_nr,
|
|
alg_verdieping_key,
|
|
alg_srtruimte_key,
|
|
mld_dienstniveau_key,
|
|
alg_ruimte_omschrijving,
|
|
alg_ruimte_bruto_vloeropp,
|
|
alg_ruimte_opp_alt1,
|
|
alg_ruimte_opp_alt2,
|
|
alg_ruimte_omtrek,
|
|
alg_ruimte_inhoud,
|
|
alg_ruimte_opmerking,
|
|
alg_ruimte_beginuur,
|
|
alg_ruimte_einduur,
|
|
alg_ruimte_werkdagen)
|
|
VALUES ('_prs',
|
|
v_alg_verdieping_key,
|
|
1,
|
|
NULL,
|
|
'tbv wp-standplaats prs-kaart',
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
NULL);
|
|
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
|