1523 lines
52 KiB
SQL
1523 lines
52 KiB
SQL
--
|
|
-- $Id$
|
|
--
|
|
-- Script containing customer specific sql statements for the A-Point database
|
|
|
|
DEFINE thisfile = 'APGR.SQL'
|
|
DEFINE dbuser = '^APGR'
|
|
DEFINE custid = 'APGR'
|
|
|
|
SET ECHO ON
|
|
SET DEFINE ON
|
|
COLUMN fcltlogfile NEW_VALUE fcltlogfile NOPRINT;
|
|
WHENEVER SQLERROR EXIT;
|
|
SELECT adm.scriptspoolfile('&dbuser', '&thisfile') AS fcltlogfile FROM DUAL;
|
|
WHENEVER SQLERROR CONTINUE;
|
|
SPOOL &fcltlogfile
|
|
SET DEFINE OFF
|
|
|
|
------ payload begin ------
|
|
|
|
--
|
|
-- Personen import
|
|
--
|
|
|
|
CREATE OR REPLACE PROCEDURE apgr_import_prs (p_import_key IN NUMBER)
|
|
AS
|
|
oracle_err_num NUMBER;
|
|
oracle_err_mes VARCHAR2 (200);
|
|
v_errormsg VARCHAR2 (400);
|
|
v_errorhint VARCHAR2 (400);
|
|
v_newline FAC_IMP_FILE.FAC_IMP_FILE_LINE%TYPE;
|
|
|
|
CURSOR c1
|
|
IS
|
|
SELECT l.alg_locatie_code,
|
|
pw.alg_gebouw_code,
|
|
pw.alg_verdieping_volgnr,
|
|
pw.alg_ruimte_nr,
|
|
p.prs_perslid_oslogin
|
|
FROM prs_v_perslidwerkplek_gegevens pw,
|
|
prs_perslid p,
|
|
alg_locatie l,
|
|
fac_imp_perslid f
|
|
WHERE p.prs_perslid_key = pw.prs_perslid_key
|
|
AND pw.alg_locatie_key = l.alg_locatie_key
|
|
AND UPPER (p.prs_perslid_oslogin) =
|
|
UPPER (f.prs_perslid_oslogin)
|
|
AND p.prs_perslid_verwijder IS NULL;
|
|
|
|
BEGIN
|
|
|
|
BEGIN
|
|
SELECT fac_imp_file_line
|
|
INTO v_newline
|
|
FROM fac_imp_file
|
|
WHERE fac_import_key = p_import_key
|
|
AND fac_imp_file_index = 1;
|
|
|
|
IF v_newline LIKE
|
|
CHR (TO_NUMBER ('EF', 'xx'))
|
|
|| CHR (TO_NUMBER ('BB', 'xx'))
|
|
|| CHR (TO_NUMBER ('BF', 'xx'))
|
|
|| '%'
|
|
THEN
|
|
-- EF BB BF aangetroffen
|
|
fac.imp_writelog (p_import_key,
|
|
'W',
|
|
'Byte Order Mark aangetroffen',
|
|
'Bestand heeft onbehandeld UTF-8 formaat.'
|
|
);
|
|
v_newline := SUBSTR (v_newline, 4);
|
|
END IF;
|
|
|
|
-- Verwijder de dubbele quotes
|
|
v_newline := REPLACE (v_newline, '"');
|
|
|
|
UPDATE fac_imp_file
|
|
SET fac_imp_file_line = v_newline
|
|
WHERE fac_import_key = p_import_key
|
|
AND fac_imp_file_index = 1;
|
|
|
|
|
|
EXCEPTION WHEN OTHERS
|
|
THEN
|
|
fac.imp_writelog (p_import_key,
|
|
'E',
|
|
'Fout bij controle op Byte Order Mark',
|
|
''
|
|
);
|
|
END;
|
|
|
|
|
|
v_errorhint := 'Generieke update';
|
|
-- de sequence array staat beschreven in PRS_PAC.SRC bij de prs.import_perslid proc
|
|
prs.import_perslid (p_import_key,
|
|
'0;0;0;0;0;0;8;11;0;6;' ||
|
|
'0;0;0;0;0;10;5;4;0;0;' ||
|
|
'1;9;0;0;0;0;3;0;0;0;'||
|
|
'0;0;0;0;0;0;0;0;0;0;'||
|
|
'0;0;0;0;0;0',
|
|
'title;Type;Group;mail;telephoneNumber;givenName;company;department;sAMAccountName;ipPhone;sn%'
|
|
);
|
|
|
|
-- Handmatig ingelezen prs_perslid_nr behouden, deze staat niet in de AD export
|
|
UPDATE fac_imp_perslid
|
|
SET prs_perslid_nr =
|
|
(SELECT p.prs_perslid_nr
|
|
FROM prs_v_perslid_gegevens p
|
|
WHERE UPPER (fac_imp_perslid.prs_perslid_oslogin) =
|
|
UPPER (p.prs_perslid_oslogin));
|
|
|
|
-- De AD export kent geen plaatsgegevens, dus deze moeten behouden blijven uit de handmatige prs import
|
|
|
|
BEGIN
|
|
FOR rec in c1
|
|
LOOP
|
|
UPDATE fac_imp_perslid
|
|
SET
|
|
alg_locatie_code = rec.alg_locatie_code,
|
|
alg_gebouw_code = rec.alg_gebouw_code,
|
|
alg_verdieping_volgnr = rec.alg_verdieping_volgnr,
|
|
alg_ruimte_nr = rec.alg_ruimte_nr
|
|
WHERE UPPER (prs_perslid_oslogin) = UPPER (rec.prs_perslid_oslogin);
|
|
END LOOP;
|
|
END;
|
|
COMMIT;
|
|
EXCEPTION
|
|
WHEN OTHERS
|
|
THEN
|
|
oracle_err_num := SQLCODE;
|
|
oracle_err_mes := SUBSTR (SQLERRM, 1, 100);
|
|
v_errormsg := 'Error ' || oracle_err_num || '/' || oracle_err_mes;
|
|
fac.imp_writelog (p_import_key, 'E', v_errormsg, v_errorhint);
|
|
END apgr_import_prs;
|
|
/
|
|
|
|
CREATE OR REPLACE PROCEDURE apgr_update_prs (
|
|
p_import_key IN NUMBER
|
|
) IS
|
|
-- Alle personen verwijderen die niet meer in import bestand voorkomen.
|
|
CURSOR c_del
|
|
IS
|
|
SELECT p.prs_perslid_key, p.prs_perslid_oslogin, pf.prs_perslid_naam_full
|
|
FROM fac_imp_perslid i, prs_perslid p, prs_v_perslid_fullnames_all pf
|
|
WHERE UPPER (p.prs_perslid_oslogin) = UPPER (i.prs_perslid_oslogin(+))
|
|
AND pf.prs_perslid_key = p.prs_perslid_key
|
|
AND p.prs_perslid_oslogin IS NOT NULL
|
|
AND i.prs_perslid_oslogin IS NULL
|
|
AND p.prs_perslid_verwijder IS NULL
|
|
AND substr(p.prs_perslid_oslogin, 1, 1) != '_'
|
|
ORDER BY 2;
|
|
|
|
v_count NUMBER;
|
|
|
|
BEGIN
|
|
-- generic update
|
|
|
|
SELECT count(*)
|
|
INTO v_count
|
|
FROM fac_imp_perslid;
|
|
|
|
IF v_count < 150
|
|
THEN
|
|
fac.imp_writelog (p_import_key,
|
|
'E',
|
|
'Het aantal te importeren personen is te klein ('
|
|
|| TO_CHAR (v_count) || ')',
|
|
'Zie Specificatie'
|
|
);
|
|
RETURN;
|
|
END IF;
|
|
|
|
-- 'LOGIN' betekent dat op basis van OSLOGIN wordt gematched.
|
|
-- 'A' betekent altijd alle (andere/overige) werkplekken verwijderen
|
|
prs.update_perslid (p_import_key, 'LOGIN', NULL);
|
|
|
|
apgr_post_update_prs(p_import_key);
|
|
|
|
-- Verwijder personen die niet meer in de import voorkomen.
|
|
FOR rec IN c_del
|
|
LOOP
|
|
BEGIN
|
|
prs.delete_perslid (p_import_key, rec.prs_perslid_key);
|
|
END;
|
|
END LOOP;
|
|
|
|
END apgr_update_prs;
|
|
/
|
|
|
|
CREATE OR REPLACE PROCEDURE apgr_post_update_prs (p_import_key IN NUMBER)
|
|
AS
|
|
-- Personen die in de ADgroup "FMIS_Personeel" zitten moeten de autorisatie "Personeel"(4) krijgen (als ze dat al niet hebben).
|
|
-- Hetzelfde geldt voor de groepen "Frontend"(5), "Directie"(6), "Backoffice"(7) en "Applicatiebeheer"(8)
|
|
|
|
CURSOR c_auth_personeel
|
|
IS
|
|
SELECT DISTINCT f.prs_perslid_key, f.prs_kenmerk1, DECODE (sub.aantal, NULL, 0, sub.aantal) aantal
|
|
FROM fac_imp_perslid f,
|
|
( SELECT DISTINCT prs_perslid_key, COUNT (prs_perslid_key) aantal
|
|
FROM fac_gebruikersgroep
|
|
GROUP BY prs_perslid_key) sub
|
|
WHERE f.prs_kenmerk1 LIKE '%Personeel%'
|
|
AND f.fac_import_key = p_import_key
|
|
AND f.prs_perslid_key IS NOT NULL
|
|
AND f.prs_perslid_key = sub.prs_perslid_key(+);
|
|
|
|
CURSOR c_auth_frontend
|
|
IS
|
|
SELECT DISTINCT f.prs_perslid_key, f.prs_kenmerk1, DECODE (sub.aantal, NULL, 0, sub.aantal) aantal
|
|
FROM fac_imp_perslid f,
|
|
( SELECT DISTINCT prs_perslid_key, COUNT (prs_perslid_key) aantal
|
|
FROM fac_gebruikersgroep
|
|
GROUP BY prs_perslid_key) sub
|
|
WHERE f.prs_kenmerk1 LIKE '%Front%'
|
|
AND f.fac_import_key = p_import_key
|
|
AND f.prs_perslid_key IS NOT NULL
|
|
AND f.prs_perslid_key = sub.prs_perslid_key(+);
|
|
|
|
CURSOR c_auth_directie
|
|
IS
|
|
SELECT DISTINCT f.prs_perslid_key, f.prs_kenmerk1, DECODE (sub.aantal, NULL, 0, sub.aantal) aantal
|
|
FROM fac_imp_perslid f,
|
|
( SELECT DISTINCT prs_perslid_key, COUNT (prs_perslid_key) aantal
|
|
FROM fac_gebruikersgroep
|
|
GROUP BY prs_perslid_key) sub
|
|
WHERE f.prs_kenmerk1 LIKE '%Directie%'
|
|
AND f.fac_import_key = p_import_key
|
|
AND f.prs_perslid_key IS NOT NULL
|
|
AND f.prs_perslid_key = sub.prs_perslid_key(+);
|
|
|
|
CURSOR c_auth_fmbackoffice
|
|
IS
|
|
SELECT DISTINCT f.prs_perslid_key, f.prs_kenmerk1, DECODE (sub.aantal, NULL, 0, sub.aantal) aantal
|
|
FROM fac_imp_perslid f,
|
|
( SELECT DISTINCT prs_perslid_key, COUNT (prs_perslid_key) aantal
|
|
FROM fac_gebruikersgroep
|
|
GROUP BY prs_perslid_key) sub
|
|
WHERE f.prs_kenmerk1 LIKE '%FMBack%'
|
|
AND f.fac_import_key = p_import_key
|
|
AND f.prs_perslid_key IS NOT NULL
|
|
AND f.prs_perslid_key = sub.prs_perslid_key(+);
|
|
|
|
CURSOR c_auth_ictbackoffice
|
|
IS
|
|
SELECT DISTINCT f.prs_perslid_key, f.prs_kenmerk1, DECODE (sub.aantal, NULL, 0, sub.aantal) aantal
|
|
FROM fac_imp_perslid f,
|
|
( SELECT DISTINCT prs_perslid_key, COUNT (prs_perslid_key) aantal
|
|
FROM fac_gebruikersgroep
|
|
GROUP BY prs_perslid_key) sub
|
|
WHERE f.prs_kenmerk1 LIKE '%ICTBack%'
|
|
AND f.fac_import_key = p_import_key
|
|
AND f.prs_perslid_key IS NOT NULL
|
|
AND f.prs_perslid_key = sub.prs_perslid_key(+);
|
|
|
|
CURSOR c_auth_fmbeheer
|
|
IS
|
|
SELECT DISTINCT prs_perslid_key, prs_kenmerk1
|
|
FROM fac_imp_perslid
|
|
WHERE prs_kenmerk1 LIKE '%FMApp%'
|
|
AND fac_import_key = p_import_key
|
|
AND prs_perslid_key IS NOT NULL
|
|
AND prs_perslid_key NOT IN (SELECT prs_perslid_key
|
|
FROM fac_gebruikersgroep
|
|
WHERE fac_groep_key = 27);
|
|
|
|
CURSOR c_auth_ictbeheer
|
|
IS
|
|
SELECT DISTINCT prs_perslid_key, prs_kenmerk1
|
|
FROM fac_imp_perslid
|
|
WHERE prs_kenmerk1 LIKE '%ICTApp%'
|
|
AND fac_import_key = p_import_key
|
|
AND prs_perslid_key IS NOT NULL
|
|
AND prs_perslid_key NOT IN (SELECT prs_perslid_key
|
|
FROM fac_gebruikersgroep
|
|
WHERE fac_groep_key = 27);
|
|
|
|
BEGIN
|
|
-- plaats personen in de juiste autorisatie groepen
|
|
FOR rec IN c_auth_personeel
|
|
LOOP
|
|
BEGIN
|
|
-- Nog geen bestaand persoon? Dan record toevoegen
|
|
IF rec.aantal = 0
|
|
THEN
|
|
INSERT INTO FAC_GEBRUIKERSGROEP (prs_perslid_key, fac_groep_key)
|
|
VALUES (rec.prs_perslid_key, 23);
|
|
END IF;
|
|
|
|
-- Al wel in een groep, dan reduceren naar 1 en de laatste omhangen naar Personeel
|
|
IF rec.aantal > 1
|
|
THEN
|
|
DELETE FAC_GEBRUIKERSGROEP
|
|
WHERE prs_perslid_key = rec.prs_perslid_key
|
|
AND fac_gebruikersgroep_key <
|
|
(SELECT MAX (fac_gebruikersgroep_key)
|
|
FROM fac_gebruikersgroep
|
|
WHERE prs_perslid_key = rec.prs_perslid_key);
|
|
|
|
UPDATE FAC_GEBRUIKERSGROEP
|
|
SET fac_groep_key = 23
|
|
WHERE prs_perslid_key = rec.prs_perslid_key;
|
|
END IF;
|
|
|
|
-- Persoon heeft nu 1 autorisatiegroep? Dan wordt deze omgehangen naar Personeel
|
|
UPDATE FAC_GEBRUIKERSGROEP
|
|
SET fac_groep_key = 23
|
|
WHERE prs_perslid_key = rec.prs_perslid_key AND rec.aantal = 1;
|
|
END;
|
|
END LOOP;
|
|
|
|
FOR rec IN c_auth_frontend
|
|
LOOP
|
|
BEGIN
|
|
-- Nog geen bestaand persoon? Dan record toevoegen
|
|
IF rec.aantal = 0
|
|
THEN
|
|
INSERT INTO FAC_GEBRUIKERSGROEP (prs_perslid_key, fac_groep_key)
|
|
VALUES (rec.prs_perslid_key, 24);
|
|
END IF;
|
|
|
|
-- Persoon heeft nu 1 autorisatiegroep? Dan wordt deze vervangen door de AD import
|
|
UPDATE FAC_GEBRUIKERSGROEP
|
|
SET fac_groep_key = 24
|
|
WHERE prs_perslid_key = rec.prs_perslid_key
|
|
AND rec.aantal = 1;
|
|
END;
|
|
END LOOP;
|
|
|
|
FOR rec IN c_auth_directie
|
|
LOOP
|
|
BEGIN
|
|
-- Nog geen bestaand persoon? Dan record toevoegen
|
|
IF rec.aantal = 0
|
|
THEN
|
|
INSERT INTO FAC_GEBRUIKERSGROEP (prs_perslid_key, fac_groep_key)
|
|
VALUES (rec.prs_perslid_key, 25);
|
|
END IF;
|
|
|
|
-- Persoon heeft nu 1 autorisatiegroep? Dan wordt deze vervangen door de AD import
|
|
UPDATE FAC_GEBRUIKERSGROEP
|
|
SET fac_groep_key = 25
|
|
WHERE prs_perslid_key = rec.prs_perslid_key
|
|
AND rec.aantal = 1;
|
|
END;
|
|
END LOOP;
|
|
|
|
FOR rec IN c_auth_fmbackoffice
|
|
LOOP
|
|
BEGIN
|
|
-- Nog geen bestaand persoon? Dan record toevoegen
|
|
IF rec.aantal = 0
|
|
THEN
|
|
INSERT INTO FAC_GEBRUIKERSGROEP (prs_perslid_key, fac_groep_key)
|
|
VALUES (rec.prs_perslid_key, 26);
|
|
END IF;
|
|
|
|
-- Persoon heeft nu 1 autorisatiegroep? Dan wordt deze vervangen door de AD import
|
|
UPDATE FAC_GEBRUIKERSGROEP
|
|
SET fac_groep_key = 26
|
|
WHERE prs_perslid_key = rec.prs_perslid_key
|
|
AND rec.aantal = 1;
|
|
END;
|
|
END LOOP;
|
|
|
|
FOR rec IN c_auth_ictbackoffice
|
|
LOOP
|
|
BEGIN
|
|
-- Nog geen bestaand persoon? Dan record toevoegen
|
|
IF rec.aantal = 0
|
|
THEN
|
|
INSERT INTO FAC_GEBRUIKERSGROEP (prs_perslid_key, fac_groep_key)
|
|
VALUES (rec.prs_perslid_key, 41);
|
|
END IF;
|
|
|
|
-- Persoon heeft nu 1 autorisatiegroep? Dan wordt deze vervangen door de AD import
|
|
UPDATE FAC_GEBRUIKERSGROEP
|
|
SET fac_groep_key = 41
|
|
WHERE prs_perslid_key = rec.prs_perslid_key
|
|
AND rec.aantal = 1;
|
|
END;
|
|
END LOOP;
|
|
|
|
FOR rec IN c_auth_fmbeheer
|
|
LOOP
|
|
BEGIN
|
|
INSERT INTO FAC_GEBRUIKERSGROEP (prs_perslid_key, fac_groep_key)
|
|
VALUES (rec.prs_perslid_key, 27);
|
|
|
|
INSERT INTO FAC_GEBRUIKERSGROEP (prs_perslid_key, fac_groep_key)
|
|
VALUES (rec.prs_perslid_key, 26);
|
|
END;
|
|
END LOOP;
|
|
|
|
FOR rec IN c_auth_ictbeheer
|
|
LOOP
|
|
BEGIN
|
|
INSERT INTO FAC_GEBRUIKERSGROEP (prs_perslid_key, fac_groep_key)
|
|
VALUES (rec.prs_perslid_key, 27);
|
|
|
|
INSERT INTO FAC_GEBRUIKERSGROEP (prs_perslid_key, fac_groep_key)
|
|
VALUES (rec.prs_perslid_key, 41);
|
|
END;
|
|
END LOOP;
|
|
|
|
COMMIT;
|
|
END;
|
|
/
|
|
|
|
-- Vanaf hier rapportages
|
|
|
|
-- Deze voegt de FCLT_3D_GEBOUW_KEY toe aan de meldingen UDR
|
|
-- Zoals gerealiseerd in melding FSN#11071
|
|
CREATE OR REPLACE VIEW APGR_V_MELDING_GEBOUW
|
|
(
|
|
MELDING_KEY,
|
|
MELDINGNUMMER,
|
|
MELDING_REGIO,
|
|
MELDING_DISTRICT,
|
|
MELDING_LOCATIECODE,
|
|
MELDING_LOCATIE,
|
|
MELDING_LOCATIEPLAATS,
|
|
FCLT_3D_LOCATIE_KEY,
|
|
MELDING_GEBOUWCODE,
|
|
MELDING_GEBOUW,
|
|
FCLT_3D_GEBOUW_KEY,
|
|
MELDING_VERDIEPING,
|
|
MELDING_RUIMTENR,
|
|
MELDING_RUIMTE,
|
|
MELDING_ORDERNR,
|
|
KOSTENSOORTGROEP,
|
|
KOSTENSOORT,
|
|
KOSTENPLAATS,
|
|
KOSTENPLAATS_OMS,
|
|
MELDER,
|
|
MELDER_KEY,
|
|
AFDELING,
|
|
AFDELING_OMSCHRIJVING,
|
|
FCLT_3D_AFDELING_KEY,
|
|
BEDRIJF_KEY,
|
|
INVOERDER,
|
|
MELDBRON,
|
|
SOORTMELDING,
|
|
FCLT_3D_DISCIPLINE_KEY,
|
|
PRODUCTGROEP,
|
|
SUBPRODUCTGROEP,
|
|
BEHANDELGROEP,
|
|
BEHANDELAAR,
|
|
BEHANDELAAR_KEY,
|
|
SUBPRODUCTGROEPGROEP,
|
|
FCLT_3D_DISCIPLINE2_KEY,
|
|
ACTIEVE_BEHANDELGROEP,
|
|
ACTIEVE_BEHANDELAAR_KEY,
|
|
ACTIEVE_BEHANDELAAR,
|
|
MELDING_STATUS,
|
|
SLA_NVT,
|
|
SLA_WERKDGN,
|
|
SLA_WERKUREN,
|
|
SLA_RESPIJTDGN,
|
|
SLA_RESPIJTUREN,
|
|
SLA_ACCPTDGN,
|
|
SLA_ACCPTUREN,
|
|
PLAN_UITVOERTIJD_SLA,
|
|
MELDING_DATUM,
|
|
MELDING_EINDDATUM,
|
|
MELDING_ACCEPTDATUM,
|
|
MELDING_AFGEMELD,
|
|
MELDING_ACCEPTED,
|
|
DOORLOOPTIJD_WERKDGN,
|
|
DOORLOOPTIJD_WERKUREN,
|
|
ONDERWERP,
|
|
VOMSCHRIJVING,
|
|
MELDING_OPMERKING,
|
|
PRIORITEIT,
|
|
PRIORITEITTXT,
|
|
RATING,
|
|
RATING_OPMERKING,
|
|
BOLLETJE,
|
|
ACCEPT_SLA_DAGEN,
|
|
ACCEPT_SLA_UREN,
|
|
UITVOERING_SLA_DAGEN,
|
|
UITVOERING_SLA_UREN,
|
|
AFSPRAAK_SLA_DAGEN,
|
|
AFSPRAAK_SLA_UREN,
|
|
ACCEPT_SLA_OPTIJD,
|
|
UITVOERING_SLA_OPTIJD,
|
|
AFSPRAAK_SLA_OPTIJD,
|
|
SELFSERVICE
|
|
)
|
|
AS
|
|
SELECT mld_melding_key,
|
|
meldingnummer,
|
|
alg_regio_omschrijving,
|
|
alg_district_omschrijving,
|
|
locatie,
|
|
locatie_omschrijving,
|
|
locatie_plaats,
|
|
alg_locatie_key,
|
|
gebouw,
|
|
gebouw_naam,
|
|
gebouw_key,
|
|
verdieping,
|
|
ruimte,
|
|
ruimte_omschrijving,
|
|
melding_ordernr,
|
|
kostensoortgroep,
|
|
kostensoort,
|
|
kostenplaats,
|
|
kostenplaats_oms,
|
|
melder,
|
|
prs_perslid_key,
|
|
afdeling,
|
|
afdeling_omschrijving,
|
|
afdeling_key,
|
|
prs_bedrijf_key,
|
|
invoerder,
|
|
meldbron,
|
|
soortmelding,
|
|
stdm_ins_discipline_key,
|
|
productgroep,
|
|
subproductgroep,
|
|
behandelgroep,
|
|
behandelaar,
|
|
behandelaar_key,
|
|
subproductgroepgroep,
|
|
mld_ins_discipline_key,
|
|
actieve_behandelgroep,
|
|
actieve_behandelaar_key,
|
|
actieve_behandelaar,
|
|
status,
|
|
sla_nvt,
|
|
sla_werkdgn,
|
|
sla_werkuren,
|
|
sla_respijtdgn,
|
|
sla_respijturen,
|
|
sla_accptdgn,
|
|
sla_accpturen,
|
|
plan_uitvoertijd_sla,
|
|
datum,
|
|
einddatum,
|
|
acceptdatum,
|
|
afgemeld,
|
|
accepted,
|
|
DECODE (x.t_doorlooptijd.eenheid,
|
|
'D', x.t_doorlooptijd.tijdsduur,
|
|
NULL)
|
|
doorlooptijd_werkdgn,
|
|
DECODE (x.t_doorlooptijd.eenheid,
|
|
'U', x.t_doorlooptijd.tijdsduur,
|
|
NULL)
|
|
doorlooptijd_werkuren,
|
|
onderwerp,
|
|
omschrijving,
|
|
opmerking,
|
|
mld_melding_spoed prioriteit,
|
|
DECODE (mld_melding_spoed,
|
|
3, lcl.l ('lcl_mld_urg_normaal'),
|
|
1, lcl.l ('lcl_mld_urg_kritiek'),
|
|
2, lcl.l ('lcl_mld_urg_hoog'),
|
|
4, lcl.l ('lcl_mld_urg_laag')),
|
|
mld_melding_satisfaction,
|
|
mld_melding_satisfaction_op,
|
|
mld_melding_flag,
|
|
DECODE (x.t_doorlooptijd.eenheid,
|
|
'D', acceptdatum - COALESCE (accepted, afgemeld),
|
|
NULL)
|
|
accept_sla_dagen,
|
|
CAST (
|
|
DECODE (x.t_doorlooptijd.eenheid,
|
|
'U', (acceptdatum - COALESCE (accepted, afgemeld)) * 24,
|
|
NULL) AS NUMBER (7, 2))
|
|
accept_sla_uren,
|
|
DECODE (
|
|
x.t_doorlooptijd.eenheid,
|
|
'D',
|
|
mld.geteinddatum (mld_melding_key)
|
|
- COALESCE (afgemeld, SYSDATE)
|
|
+ COALESCE (sla_respijtdgn, 0),
|
|
NULL)
|
|
uitvoering_sla_dagen,
|
|
CAST (
|
|
DECODE (
|
|
x.t_doorlooptijd.eenheid,
|
|
'U',
|
|
( (mld.geteinddatum (mld_melding_key)
|
|
- COALESCE (afgemeld, SYSDATE))
|
|
* 24)
|
|
+ COALESCE (sla_respijturen, 0),
|
|
NULL) AS NUMBER (7, 2))
|
|
uitvoering_sla_uren,
|
|
DECODE (
|
|
x.t_doorlooptijd.eenheid,
|
|
'D',
|
|
einddatum
|
|
- COALESCE (afgemeld, SYSDATE)
|
|
+ COALESCE (sla_respijtdgn, 0),
|
|
NULL)
|
|
afspraak_sla_dagen,
|
|
CAST (
|
|
DECODE (
|
|
x.t_doorlooptijd.eenheid,
|
|
'U',
|
|
( (einddatum - COALESCE (afgemeld, SYSDATE)) * 24)
|
|
+ COALESCE (sla_respijtdgn, 0),
|
|
NULL) AS NUMBER (7, 2))
|
|
afspraak_sla_uren,
|
|
CASE
|
|
WHEN acceptdatum IS NULL
|
|
OR -- Dan is er geen acceptatietijd gedefinieerd en dus altijd op tijd.
|
|
DECODE (x.t_doorlooptijd.eenheid,
|
|
'D',
|
|
acceptdatum - COALESCE (accepted, afgemeld),
|
|
0)
|
|
+ DECODE (
|
|
x.t_doorlooptijd.eenheid,
|
|
'U',
|
|
(acceptdatum - COALESCE (accepted, afgemeld)) * 24,
|
|
0) >= 0
|
|
THEN
|
|
lcl.l ('lcl_yes')
|
|
ELSE
|
|
lcl.l ('lcl_no')
|
|
END
|
|
accept_sla_optijd,
|
|
CASE
|
|
WHEN DECODE (
|
|
x.t_doorlooptijd.eenheid,
|
|
'D',
|
|
mld.geteinddatum (mld_melding_key)
|
|
- COALESCE (afgemeld, SYSDATE)
|
|
+ COALESCE (sla_respijtdgn, 0),
|
|
0)
|
|
+ DECODE (
|
|
x.t_doorlooptijd.eenheid,
|
|
'U',
|
|
( (mld.geteinddatum (mld_melding_key)
|
|
- COALESCE (afgemeld, SYSDATE))
|
|
* 24)
|
|
+ COALESCE (sla_respijturen, 0),
|
|
0) >= 0
|
|
THEN
|
|
lcl.l ('lcl_yes')
|
|
ELSE
|
|
lcl.l ('lcl_no')
|
|
END
|
|
uitvoering_sla_optijd,
|
|
CASE
|
|
WHEN DECODE (
|
|
x.t_doorlooptijd.eenheid,
|
|
'D',
|
|
einddatum
|
|
- COALESCE (afgemeld, SYSDATE)
|
|
+ COALESCE (sla_respijtdgn, 0),
|
|
0)
|
|
+ DECODE (
|
|
x.t_doorlooptijd.eenheid,
|
|
'U',
|
|
( (einddatum - COALESCE (afgemeld, SYSDATE)) * 24)
|
|
+ COALESCE (sla_respijtdgn, 0),
|
|
0) >= 0
|
|
THEN
|
|
lcl.l ('lcl_yes')
|
|
ELSE
|
|
lcl.l ('lcl_no')
|
|
END
|
|
afspraak_sla_optijd,
|
|
DECODE (invoerder, melder, lcl.l ('lcl_yes'), lcl.l ('lcl_no'))
|
|
selfservice
|
|
FROM (SELECT m.mld_melding_key,
|
|
m.prs_perslid_key,
|
|
sd.ins_srtdiscipline_prefix || m.mld_melding_key
|
|
meldingnummer,
|
|
alg_regio_omschrijving,
|
|
alg_district_omschrijving,
|
|
alg_locatie_code locatie,
|
|
alg_locatie_omschrijving locatie_omschrijving,
|
|
alg_locatie_plaats locatie_plaats,
|
|
l.alg_locatie_key,
|
|
og.alg_gebouw_code gebouw,
|
|
og.alg_gebouw_naam gebouw_naam,
|
|
og.alg_gebouw_key gebouw_key,
|
|
og.alg_verdieping_code verdieping,
|
|
og.alg_ruimte_nr ruimte,
|
|
og.alg_ruimte_omschrijving ruimte_omschrijving,
|
|
m.mld_melding_ordernr melding_ordernr,
|
|
(SELECT ksg.prs_kostensoortgrp_oms
|
|
FROM prs_kostensoortgrp ksg, prs_kostensoort ks
|
|
WHERE ksg.prs_kostensoortgrp_key =
|
|
ks.prs_kostensoortgrp_key
|
|
AND ks.prs_kostensoort_key =
|
|
(SELECT COALESCE (sm.prs_kostensoort_key,
|
|
disc.prs_kostensoort_key)
|
|
FROM mld_stdmelding sm,
|
|
mld_discipline disc
|
|
WHERE sm.mld_ins_discipline_key =
|
|
disc.ins_discipline_key
|
|
AND sm.mld_stdmelding_key =
|
|
s.mld_stdmelding_key))
|
|
kostensoortgroep,
|
|
(SELECT ks.prs_kostensoort_oms
|
|
FROM prs_kostensoort ks
|
|
WHERE ks.prs_kostensoort_key =
|
|
(SELECT COALESCE (sm.prs_kostensoort_key,
|
|
disc.prs_kostensoort_key)
|
|
FROM mld_stdmelding sm, mld_discipline disc
|
|
WHERE sm.mld_ins_discipline_key =
|
|
disc.ins_discipline_key
|
|
AND sm.mld_stdmelding_key =
|
|
s.mld_stdmelding_key))
|
|
kostensoort,
|
|
(SELECT k.prs_kostenplaats_nr
|
|
FROM prs_kostenplaats k
|
|
WHERE k.prs_kostenplaats_key = m.prs_kostenplaats_key)
|
|
kostenplaats,
|
|
(SELECT k.prs_kostenplaats_omschrijving
|
|
FROM prs_kostenplaats k
|
|
WHERE k.prs_kostenplaats_key = m.prs_kostenplaats_key)
|
|
kostenplaats_oms,
|
|
(SELECT prs_perslid_naam_full
|
|
FROM prs_v_perslid_fullnames_all pf
|
|
WHERE pf.prs_perslid_key = m.prs_perslid_key)
|
|
melder,
|
|
(SELECT prs_afdeling_naam
|
|
FROM prs_afdeling afd, prs_perslid pp
|
|
WHERE afd.prs_afdeling_key = pp.prs_afdeling_key
|
|
AND pp.prs_perslid_key = m.prs_perslid_key)
|
|
afdeling,
|
|
(SELECT prs_afdeling_omschrijving
|
|
FROM prs_afdeling afd, prs_perslid pp
|
|
WHERE afd.prs_afdeling_key = pp.prs_afdeling_key
|
|
AND pp.prs_perslid_key = m.prs_perslid_key)
|
|
afdeling_omschrijving,
|
|
(SELECT prs_afdeling_key
|
|
FROM prs_perslid pp
|
|
WHERE pp.prs_perslid_key = m.prs_perslid_key)
|
|
afdeling_key,
|
|
(SELECT prs_bedrijf_key
|
|
FROM prs_v_afdeling pva, prs_perslid pp
|
|
WHERE pva.prs_afdeling_key = pp.prs_afdeling_key
|
|
AND pp.prs_perslid_key = m.prs_perslid_key)
|
|
prs_bedrijf_key,
|
|
(SELECT prs_perslid_naam_full
|
|
FROM prs_v_perslid_fullnames_all pf
|
|
WHERE pf.prs_perslid_key =
|
|
mld.getmeldinguser (m.mld_melding_key))
|
|
invoerder,
|
|
(SELECT mb.mld_meldbron_omschrijving
|
|
FROM mld_meldbron mb
|
|
WHERE mb.mld_meldbron_key = m.mld_meldbron_key)
|
|
meldbron,
|
|
m.mld_meldbron_key,
|
|
sd.ins_srtdiscipline_key ins_srtdiscipline_key,
|
|
sd.ins_srtdiscipline_omschrijving soortmelding,
|
|
md.ins_discipline_key stdm_ins_discipline_key,
|
|
md.ins_discipline_omschrijving productgroep,
|
|
s.mld_stdmelding_omschrijving subproductgroep,
|
|
smg.mld_stdmeldinggroep_naam subproductgroepgroep,
|
|
mbg.mld_behandelgroep_naam behandelgroep,
|
|
(SELECT prs_perslid_naam_full
|
|
FROM prs_v_perslid_fullnames_all pf
|
|
WHERE pf.prs_perslid_key = m.mld_melding_behandelaar_key)
|
|
behandelaar,
|
|
m.mld_melding_behandelaar_key behandelaar_key,
|
|
m.mld_ins_discipline_key mld_ins_discipline_key,
|
|
(SELECT md2.ins_discipline_omschrijving
|
|
FROM mld_discipline md2
|
|
WHERE md2.ins_discipline_key = m.mld_ins_discipline_key)
|
|
actieve_behandelgroep,
|
|
m.mld_melding_behandelaar2_key actieve_behandelaar_key,
|
|
(SELECT prs_perslid_naam_full
|
|
FROM prs_v_perslid_fullnames_all pf
|
|
WHERE pf.prs_perslid_key = m.mld_melding_behandelaar2_key)
|
|
actieve_behandelaar,
|
|
(SELECT mld_statuses_omschrijving
|
|
FROM mld_statuses sta
|
|
WHERE sta.mld_statuses_key = m.mld_melding_status)
|
|
status,
|
|
CASE
|
|
WHEN m.mld_melding_einddatum >
|
|
COALESCE (
|
|
fac.gettrackingdate ('MLDAFM',
|
|
m.mld_melding_key),
|
|
fac.gettrackingdate ('MLDREJ',
|
|
m.mld_melding_key),
|
|
SYSDATE)
|
|
THEN
|
|
1
|
|
ELSE
|
|
0
|
|
END
|
|
plan_uitvoertijd_sla,
|
|
CASE
|
|
WHEN m.mld_melding_indult = 1
|
|
OR s.mld_stdmelding_slabewaken = 0
|
|
THEN
|
|
1
|
|
ELSE
|
|
0
|
|
END
|
|
sla_nvt,
|
|
DECODE (m.mld_melding_t_uitvoertijd.eenheid,
|
|
'D', m.mld_melding_t_uitvoertijd.tijdsduur,
|
|
NULL)
|
|
sla_werkdgn,
|
|
DECODE (m.mld_melding_t_uitvoertijd.eenheid,
|
|
'U', m.mld_melding_t_uitvoertijd.tijdsduur,
|
|
NULL)
|
|
sla_werkuren,
|
|
DECODE (m.mld_melding_t_respijt.eenheid,
|
|
'D', m.mld_melding_t_respijt.tijdsduur,
|
|
NULL)
|
|
sla_respijtdgn,
|
|
DECODE (m.mld_melding_t_respijt.eenheid,
|
|
'U', m.mld_melding_t_respijt.tijdsduur,
|
|
NULL)
|
|
sla_respijturen,
|
|
DECODE (m.mld_melding_t_accepttijd.eenheid,
|
|
'D', m.mld_melding_t_accepttijd.tijdsduur,
|
|
NULL)
|
|
sla_accptdgn,
|
|
DECODE (m.mld_melding_t_accepttijd.eenheid,
|
|
'U', m.mld_melding_t_accepttijd.tijdsduur,
|
|
NULL)
|
|
sla_accpturen,
|
|
m.mld_melding_datum datum,
|
|
CASE
|
|
WHEN s.mld_stdmelding_planbaar = 2 THEN TO_DATE (NULL)
|
|
ELSE m.mld_melding_einddatum
|
|
END
|
|
einddatum,
|
|
mld.getacceptdatum (m.mld_melding_datum,
|
|
m.mld_stdmelding_key,
|
|
og.alg_onroerendgoed_keys)
|
|
acceptdatum,
|
|
COALESCE (mld.getmeldingstatusdate (m.mld_melding_key, 5),
|
|
mld.getmeldingstatusdate (m.mld_melding_key, 1))
|
|
afgemeld,
|
|
COALESCE (mld.getmeldingstatusdate (m.mld_melding_key, 4),
|
|
mld.getmeldingstatusdate (m.mld_melding_key, 1))
|
|
accepted,
|
|
mld.getactualuitvoer (m.mld_melding_key) t_doorlooptijd,
|
|
m.mld_melding_onderwerp onderwerp,
|
|
m.mld_melding_omschrijving omschrijving,
|
|
m.mld_melding_opmerking opmerking,
|
|
m.mld_melding_spoed,
|
|
m.mld_melding_satisfaction,
|
|
m.mld_melding_satisfaction_op,
|
|
m.mld_melding_flag
|
|
FROM mld_melding m,
|
|
mld_stdmelding s,
|
|
alg_locatie l,
|
|
alg_district d,
|
|
alg_regio r,
|
|
alg_v_allonrgoed_gegevens og,
|
|
mld_discipline md,
|
|
mld_disc_params mdp,
|
|
mld_behandelgroep mbg,
|
|
ins_srtdiscipline sd,
|
|
mld_stdmeldinggroep smg
|
|
WHERE s.mld_stdmelding_key = m.mld_stdmelding_key
|
|
AND m.mld_alg_locatie_key = l.alg_locatie_key(+)
|
|
AND sd.ins_srtdiscipline_key = md.ins_srtdiscipline_key
|
|
AND md.ins_discipline_key = s.mld_ins_discipline_key
|
|
AND md.ins_discipline_key = mdp.mld_ins_discipline_key
|
|
AND s.mld_stdmeldinggroep_key =
|
|
smg.mld_stdmeldinggroep_key(+)
|
|
AND mdp.mld_behandelgroep_key =
|
|
mbg.mld_behandelgroep_key(+)
|
|
AND l.alg_district_key = d.alg_district_key(+)
|
|
AND d.alg_regio_key = r.alg_regio_key(+)
|
|
AND m.mld_alg_onroerendgoed_keys =
|
|
og.alg_onroerendgoed_keys(+)
|
|
AND m.fac_activiteit_key IS NULL
|
|
AND m.mld_melding_datum >=
|
|
TO_DATE ('01-01-2010', 'DD-MM-YYYY')) x;
|
|
|
|
-- Ook voorzien van FCLT_3D_GEBOUW_KEY
|
|
CREATE OR REPLACE VIEW APGR_V_INS_GEBOUW
|
|
(
|
|
DEEL_KEY,
|
|
DISCIPLINE,
|
|
SOORT,
|
|
GROEP,
|
|
SOORTCODE,
|
|
OMSCHRIJVING,
|
|
PLAATSEIGENAAR,
|
|
PLAATSEIGENAARTYPE,
|
|
PLAATSAANDUIDING,
|
|
EIGENAAR,
|
|
OPMERKING,
|
|
REGIO,
|
|
DISTRICT,
|
|
LOCATIE_CODE,
|
|
LOCATIE_OMSCHRIJVING,
|
|
LOCATIE_PLAATS,
|
|
GEBOUWCODE,
|
|
GEBOUW,
|
|
TERREINSECTORCODE,
|
|
TERREINSECTOR,
|
|
VERDIEPINGCODE,
|
|
RUIMTENR,
|
|
WERKPLEKVOLGNR,
|
|
WERKPLEK,
|
|
UITLEENBAAR,
|
|
UITGELEEND,
|
|
RES_OPMERKING,
|
|
BEHEERDER,
|
|
VERVALDATUM,
|
|
ACTIEF,
|
|
AANTAL,
|
|
STATE,
|
|
STATEDATE,
|
|
FCLT_3D_DISCIPLINE_KEY,
|
|
FCLT_3D_AFDELING_KEY,
|
|
FCLT_3D_LOCATIE_KEY,
|
|
FCLT_3D_GEBOUW_KEY
|
|
)
|
|
AS
|
|
SELECT ii.ins_deel_key,
|
|
lcl.x ('ins_discipline_omschrijving',
|
|
id.ins_discipline_key,
|
|
id.ins_discipline_omschrijving),
|
|
lcl.x ('ins_srtdeel_omschrijving',
|
|
s.ins_srtdeel_key,
|
|
s.ins_srtdeel_omschrijving),
|
|
lcl.x ('ins_srtgroep_omschrijving',
|
|
sg.ins_srtgroep_key,
|
|
sg.ins_srtgroep_omschrijving),
|
|
s.ins_srtdeel_code,
|
|
ii.ins_deel_omschrijving,
|
|
COALESCE (ii.plaats, ii.eigenaar),
|
|
ii.ins_alg_ruimte_type,
|
|
ii.plaats,
|
|
ii.eigenaar,
|
|
ii.ins_deel_opmerking,
|
|
ii.regio,
|
|
ii.district,
|
|
ii.locatie_code,
|
|
ii.locatie_omschrijving,
|
|
ii.locatie_plaats,
|
|
ii.alg_gebouw_code,
|
|
ii.alg_gebouw_omschrijving,
|
|
ii.alg_terreinsector_code,
|
|
ii.alg_terreinsector_omschrijving,
|
|
ii.alg_verdieping_code,
|
|
ii.alg_ruimte_nr,
|
|
ii.prs_werkplek_volgnr,
|
|
ii.prs_werkplek_omschrijving,
|
|
DECODE (s.ins_srtdeel_uitleenbaar,
|
|
1, lcl.l ('lcl_yes'),
|
|
lcl.l ('lcl_no')),
|
|
DECODE (ii.ins_alg_ruimte_key_org,
|
|
NULL, lcl.l ('lcl_no'),
|
|
lcl.l ('lcl_yes')),
|
|
ii.res_deel_opmerking,
|
|
pf.prs_perslid_naam_full,
|
|
ii.ins_deel_vervaldatum,
|
|
DECODE (ii.ins_deel_actief, 1, lcl.l ('lcl_yes'), lcl.l ('lcl_no')),
|
|
ii.ins_deel_aantal,
|
|
ii.ins_deel_state,
|
|
ii.ins_deel_statedate,
|
|
sg.ins_discipline_key,
|
|
ii.ins_alg_ruimte_key,
|
|
ii.alg_locatie_key,
|
|
ii.alg_gebouw_key
|
|
FROM (SELECT i.ins_deel_key,
|
|
i.ins_deel_omschrijving,
|
|
i.ins_srtdeel_key,
|
|
i.prs_perslid_key_beh,
|
|
TO_CHAR (NULL) plaats,
|
|
i.ins_deel_opmerking,
|
|
i.ins_alg_ruimte_type,
|
|
NULL regio,
|
|
NULL district,
|
|
NULL locatie_code,
|
|
NULL locatie_omschrijving,
|
|
NULL locatie_plaats,
|
|
NULL alg_gebouw_code,
|
|
NULL alg_gebouw_omschrijving,
|
|
NULL alg_terreinsector_code,
|
|
NULL alg_terreinsector_omschrijving,
|
|
NULL alg_verdieping_code,
|
|
NULL alg_ruimte_nr,
|
|
NULL prs_werkplek_volgnr,
|
|
NULL prs_werkplek_omschrijving,
|
|
rd.res_deel_opmerking,
|
|
i.ins_deel_vervaldatum,
|
|
(SELECT d.prs_afdeling_omschrijving
|
|
FROM prs_v_afdeling d
|
|
WHERE prs_afdeling_key = i.ins_alg_ruimte_key)
|
|
eigenaar,
|
|
i.ins_discipline_key,
|
|
i.ins_alg_ruimte_key,
|
|
NULL alg_locatie_key,
|
|
NULL alg_gebouw_key,
|
|
i.ins_deel_actief,
|
|
i.ins_deel_aantal,
|
|
i.ins_alg_ruimte_key_org,
|
|
i.ins_deel_state,
|
|
i.ins_deel_statedate
|
|
FROM ins_deel i,
|
|
(SELECT res_deel_key,
|
|
res_ins_deel_key,
|
|
res_deel_opmerking res_deel_opmerking
|
|
FROM res_deel
|
|
WHERE res_deel_verwijder IS NULL) rd,
|
|
prs_v_afdeling_boom d,
|
|
prs_bedrijf b
|
|
WHERE i.ins_deel_verwijder IS NULL
|
|
AND i.ins_deel_key = rd.res_ins_deel_key(+)
|
|
AND i.ins_deel_module = 'INS'
|
|
AND i.ins_deel_parent_key IS NULL
|
|
AND i.ins_alg_ruimte_key = d.prs_afdeling_key
|
|
AND i.ins_alg_ruimte_type = 'A'
|
|
UNION
|
|
SELECT i.ins_deel_key,
|
|
i.ins_deel_omschrijving,
|
|
i.ins_srtdeel_key,
|
|
i.prs_perslid_key_beh,
|
|
TO_CHAR (NULL) plaats,
|
|
i.ins_deel_opmerking,
|
|
i.ins_alg_ruimte_type,
|
|
NULL regio,
|
|
NULL district,
|
|
NULL locatie_code,
|
|
NULL locatie_omschrijving,
|
|
NULL locatie_plaats,
|
|
NULL alg_gebouw_code,
|
|
NULL alg_gebouw_omschrijving,
|
|
NULL alg_terreinsector_code,
|
|
NULL alg_terreinsector_omschrijving,
|
|
NULL alg_verdieping_code,
|
|
NULL alg_ruimte_nr,
|
|
NULL prs_werkplek_volgnr,
|
|
NULL prs_werkplek_omschrijving,
|
|
rd.res_deel_opmerking,
|
|
i.ins_deel_vervaldatum,
|
|
pf.prs_perslid_naam_full eigenaar,
|
|
i.ins_discipline_key,
|
|
p.prs_afdeling_key,
|
|
NULL alg_locatie_key,
|
|
NULL alg_gebouw_key,
|
|
i.ins_deel_actief,
|
|
i.ins_deel_aantal,
|
|
i.ins_alg_ruimte_key_org,
|
|
i.ins_deel_state,
|
|
i.ins_deel_statedate
|
|
FROM ins_deel i,
|
|
(SELECT res_deel_key,
|
|
res_ins_deel_key,
|
|
res_deel_opmerking res_deel_opmerking
|
|
FROM res_deel
|
|
WHERE res_deel_verwijder IS NULL) rd,
|
|
prs_perslid p,
|
|
prs_v_perslid_fullnames_all pf,
|
|
prs_v_afdeling_boom d
|
|
WHERE i.ins_deel_verwijder IS NULL
|
|
AND i.ins_deel_key = rd.res_ins_deel_key(+)
|
|
AND i.ins_deel_module = 'INS'
|
|
AND i.ins_deel_parent_key IS NULL
|
|
AND i.ins_alg_ruimte_key = p.prs_perslid_key
|
|
AND p.prs_perslid_key = pf.prs_perslid_key
|
|
AND p.prs_afdeling_key = d.prs_afdeling_key
|
|
AND i.ins_alg_ruimte_type = 'P'
|
|
UNION
|
|
SELECT i.ins_deel_key,
|
|
i.ins_deel_omschrijving,
|
|
i.ins_srtdeel_key,
|
|
i.prs_perslid_key_beh,
|
|
TO_CHAR (NULL) plaats,
|
|
i.ins_deel_opmerking,
|
|
i.ins_alg_ruimte_type,
|
|
NULL regio,
|
|
NULL district,
|
|
NULL locatie_code,
|
|
NULL locatie_omschrijving,
|
|
NULL locatie_plaats,
|
|
NULL alg_gebouw_code,
|
|
NULL alg_gebouw_omschrijving,
|
|
NULL alg_terreinsector_code,
|
|
NULL alg_terreinsector_omschrijving,
|
|
NULL alg_verdieping_code,
|
|
NULL alg_ruimte_nr,
|
|
NULL prs_werkplek_volgnr,
|
|
NULL prs_werkplek_omschrijving,
|
|
rd.res_deel_opmerking,
|
|
i.ins_deel_vervaldatum,
|
|
c.prs_contactpersoon_naam eigenaar,
|
|
NULL discipline_key,
|
|
NULL,
|
|
NULL alg_locatie_key,
|
|
NULL alg_gebouw_key,
|
|
i.ins_deel_actief,
|
|
i.ins_deel_aantal,
|
|
i.ins_alg_ruimte_key_org,
|
|
i.ins_deel_state,
|
|
i.ins_deel_statedate
|
|
FROM ins_deel i,
|
|
(SELECT res_deel_key,
|
|
res_ins_deel_key,
|
|
res_deel_opmerking res_deel_opmerking
|
|
FROM res_deel
|
|
WHERE res_deel_verwijder IS NULL) rd,
|
|
prs_contactpersoon c
|
|
WHERE i.ins_deel_verwijder IS NULL
|
|
AND i.ins_deel_key = rd.res_ins_deel_key(+)
|
|
AND i.ins_deel_module = 'INS'
|
|
AND i.ins_deel_parent_key IS NULL
|
|
AND i.ins_alg_ruimte_key = c.prs_contactpersoon_key
|
|
AND i.ins_alg_ruimte_type = 'C'
|
|
UNION
|
|
SELECT i.ins_deel_key,
|
|
i.ins_deel_omschrijving,
|
|
i.ins_srtdeel_key,
|
|
i.prs_perslid_key_beh,
|
|
o.alg_plaatsaanduiding,
|
|
i.ins_deel_opmerking,
|
|
i.ins_alg_ruimte_type,
|
|
re.alg_regio_omschrijving,
|
|
di.alg_district_omschrijving,
|
|
l.alg_locatie_code locatie_code,
|
|
l.alg_locatie_omschrijving locatie_omschrijving,
|
|
l.alg_locatie_plaats locatie_plaats,
|
|
o.alg_gebouw_code,
|
|
o.alg_gebouw_omschrijving,
|
|
o.alg_terreinsector_code,
|
|
o.alg_terreinsector_omschrijving,
|
|
o.alg_verdieping_code,
|
|
o.alg_ruimte_nr,
|
|
o.prs_werkplek_volgnr,
|
|
o.prs_werkplek_omschrijving,
|
|
rd.res_deel_opmerking,
|
|
i.ins_deel_vervaldatum,
|
|
NULL eigenaar,
|
|
i.ins_discipline_key,
|
|
NULL,
|
|
l.alg_locatie_key,
|
|
o.alg_gebouw_key,
|
|
i.ins_deel_actief,
|
|
i.ins_deel_aantal,
|
|
i.ins_alg_ruimte_key_org,
|
|
i.ins_deel_state,
|
|
i.ins_deel_statedate
|
|
FROM ins_deel i,
|
|
ins_v_alg_overzicht o,
|
|
alg_locatie l,
|
|
alg_district di,
|
|
alg_regio re,
|
|
(SELECT res_deel_key,
|
|
res_ins_deel_key,
|
|
res_deel_opmerking res_deel_opmerking
|
|
FROM res_deel
|
|
WHERE res_deel_verwijder IS NULL) rd
|
|
WHERE i.ins_deel_verwijder IS NULL
|
|
AND i.ins_deel_module = 'INS'
|
|
AND i.ins_deel_key = rd.res_ins_deel_key(+)
|
|
AND i.ins_deel_parent_key IS NULL
|
|
AND o.alg_onroerendgoed_keys = i.ins_alg_ruimte_key
|
|
AND o.alg_onroerendgoed_type = i.ins_alg_ruimte_type
|
|
AND i.ins_alg_ruimte_type IN ('T', 'R', 'W')
|
|
AND o.alg_locatie_key = i.ins_alg_locatie_key
|
|
AND i.ins_alg_locatie_key = l.alg_locatie_key
|
|
AND l.alg_district_key = di.alg_district_key
|
|
AND di.alg_regio_key = re.alg_regio_key) ii,
|
|
ins_srtdeel s,
|
|
ins_srtgroep sg,
|
|
ins_discipline id,
|
|
prs_v_perslid_fullnames pf
|
|
WHERE sg.ins_srtgroep_key = s.ins_srtgroep_key
|
|
AND id.ins_discipline_key = sg.ins_discipline_key
|
|
AND ii.prs_perslid_key_beh = pf.prs_perslid_key(+)
|
|
AND s.ins_srtdeel_key = ii.ins_srtdeel_key;
|
|
|
|
-- Hier hetzelfde, ook FCLT_3D_GEBOUW_KEY
|
|
CREATE OR REPLACE VIEW APGR_V_INSDEELMELDING_GEBOUW
|
|
(
|
|
DEEL_KEY,
|
|
DISCIPLINE,
|
|
SOORT,
|
|
GROEP,
|
|
SOORTCODE,
|
|
OMSCHRIJVING,
|
|
PLAATSEIGENAAR,
|
|
PLAATSEIGENAARTYPE,
|
|
PLAATSAANDUIDING,
|
|
EIGENAAR,
|
|
OPMERKING,
|
|
REGIO,
|
|
DISTRICT,
|
|
LOCATIE_CODE,
|
|
LOCATIE_OMSCHRIJVING,
|
|
LOCATIE_PLAATS,
|
|
GEBOUWCODE,
|
|
GEBOUW,
|
|
TERREINSECTORCODE,
|
|
TERREINSECTOR,
|
|
VERDIEPINGCODE,
|
|
RUIMTENR,
|
|
WERKPLEKVOLGNR,
|
|
WERKPLEK,
|
|
UITLEENBAAR,
|
|
UITGELEEND,
|
|
RES_OPMERKING,
|
|
BEHEERDER,
|
|
VERVALDATUM,
|
|
ACTIEF,
|
|
AANTAL,
|
|
STATE,
|
|
STATEDATE,
|
|
FCLT_3D_DISCIPLINE_KEY,
|
|
FCLT_3D_AFDELING_KEY,
|
|
FCLT_3D_LOCATIE_KEY,
|
|
FCLT_3D_GEBOUW_KEY,
|
|
MELDING_KEY,
|
|
MELDINGNUMMER,
|
|
MELDING_DISTRICT,
|
|
MELDING_LOCATIECODE,
|
|
MELDING_LOCATIE,
|
|
MELDING_LOCATIEPLAATS,
|
|
MELDING_GEBOUWCODE,
|
|
MELDING_GEBOUW,
|
|
MELDING_VERDIEPING,
|
|
MELDING_RUIMTENR,
|
|
MELDING_RUIMTE,
|
|
MELDING_ORDERNR,
|
|
KOSTENSOORTGROEP,
|
|
KOSTENSOORT,
|
|
KOSTENPLAATS,
|
|
KOSTENPLAATS_OMS,
|
|
MELDER,
|
|
MELDER_KEY,
|
|
AFDELING,
|
|
AFDELING_OMSCHRIJVING,
|
|
BEDRIJF_KEY,
|
|
INVOERDER,
|
|
MELDBRON,
|
|
SOORTMELDING,
|
|
PRODUCTGROEP,
|
|
SUBPRODUCTGROEP,
|
|
BEHANDELGROEP,
|
|
BEHANDELAAR,
|
|
BEHANDELAAR_KEY,
|
|
SUBPRODUCTGROEPGROEP,
|
|
MELDING_STATUS,
|
|
SLA_NVT,
|
|
SLA_WERKDGN,
|
|
SLA_WERKUREN,
|
|
SLA_RESPIJTDGN,
|
|
SLA_RESPIJTUREN,
|
|
SLA_ACCPTDGN,
|
|
SLA_ACCPTUREN,
|
|
PLAN_UITVOERTIJD_SLA,
|
|
MELDING_DATUM,
|
|
MELDING_EINDDATUM,
|
|
MELDING_ACCEPTDATUM,
|
|
MELDING_AFGEMELD,
|
|
MELDING_ACCEPTED,
|
|
DOORLOOPTIJD_WERKDGN,
|
|
DOORLOOPTIJD_WERKUREN,
|
|
ONDERWERP,
|
|
VOMSCHRIJVING,
|
|
MELDING_OPMERKING,
|
|
PRIORITEIT,
|
|
PRIORITEITTXT,
|
|
RATING,
|
|
RATING_OPMERKING,
|
|
BOLLETJE,
|
|
ACCEPT_SLA_DAGEN,
|
|
ACCEPT_SLA_UREN,
|
|
UITVOERING_SLA_DAGEN,
|
|
UITVOERING_SLA_UREN,
|
|
AFSPRAAK_SLA_DAGEN,
|
|
AFSPRAAK_SLA_UREN,
|
|
ACCEPT_SLA_OPTIJD,
|
|
UITVOERING_SLA_OPTIJD,
|
|
AFSPRAAK_SLA_OPTIJD,
|
|
SELFSERVICE
|
|
)
|
|
AS
|
|
SELECT d.deel_key,
|
|
d.discipline,
|
|
d.soort,
|
|
d.groep,
|
|
d.soortcode,
|
|
d.omschrijving,
|
|
d.plaatseigenaar,
|
|
d.plaatseigenaartype,
|
|
d.plaatsaanduiding,
|
|
d.eigenaar,
|
|
d.opmerking,
|
|
d.regio,
|
|
d.district,
|
|
d.locatie_code,
|
|
d.locatie_omschrijving,
|
|
d.locatie_plaats,
|
|
d.gebouwcode,
|
|
d.gebouw,
|
|
d.terreinsectorcode,
|
|
d.terreinsector,
|
|
d.verdiepingcode,
|
|
d.ruimtenr,
|
|
d.werkplekvolgnr,
|
|
d.werkplek,
|
|
d.uitleenbaar,
|
|
d.uitgeleend,
|
|
d.res_opmerking,
|
|
d.beheerder,
|
|
d.vervaldatum,
|
|
d.actief,
|
|
d.aantal,
|
|
d.state,
|
|
d.statedate,
|
|
d.fclt_3d_discipline_key,
|
|
d.fclt_3d_afdeling_key,
|
|
d.fclt_3d_locatie_key,
|
|
d.fclt_3d_gebouw_key,
|
|
m.melding_key,
|
|
m.meldingnummer,
|
|
m.melding_district,
|
|
m.melding_locatiecode,
|
|
m.melding_locatie,
|
|
m.melding_locatieplaats,
|
|
m.melding_gebouwcode,
|
|
m.melding_gebouw,
|
|
m.melding_verdieping,
|
|
m.melding_ruimtenr,
|
|
m.melding_ruimte,
|
|
m.melding_ordernr,
|
|
m.kostensoortgroep,
|
|
m.kostensoort,
|
|
m.kostenplaats,
|
|
m.kostenplaats_oms,
|
|
m.melder,
|
|
m.melder_key,
|
|
m.afdeling,
|
|
m.afdeling_omschrijving,
|
|
m.bedrijf_key,
|
|
m.invoerder,
|
|
m.meldbron,
|
|
m.soortmelding,
|
|
m.productgroep,
|
|
m.subproductgroep,
|
|
m.behandelgroep,
|
|
m.behandelaar,
|
|
m.behandelaar_key,
|
|
m.subproductgroepgroep,
|
|
m.melding_status,
|
|
m.sla_nvt,
|
|
m.sla_werkdgn,
|
|
m.sla_werkuren,
|
|
m.sla_respijtdgn,
|
|
m.sla_respijturen,
|
|
m.sla_accptdgn,
|
|
m.sla_accpturen,
|
|
m.plan_uitvoertijd_sla,
|
|
m.melding_datum,
|
|
m.melding_einddatum,
|
|
m.melding_acceptdatum,
|
|
m.melding_afgemeld,
|
|
m.melding_accepted,
|
|
m.doorlooptijd_werkdgn,
|
|
m.doorlooptijd_werkuren,
|
|
m.onderwerp,
|
|
m.vomschrijving,
|
|
m.melding_opmerking,
|
|
m.prioriteit,
|
|
m.prioriteittxt,
|
|
m.rating,
|
|
m.rating_opmerking,
|
|
m.bolletje,
|
|
m.accept_sla_dagen,
|
|
m.accept_sla_uren,
|
|
m.uitvoering_sla_dagen,
|
|
m.uitvoering_sla_uren,
|
|
m.afspraak_sla_dagen,
|
|
m.afspraak_sla_uren,
|
|
m.accept_sla_optijd,
|
|
m.uitvoering_sla_optijd,
|
|
m.afspraak_sla_optijd,
|
|
m.selfservice
|
|
FROM apgr_v_ins_gebouw d, mld_v_udr_melding m, mld_melding_object mo
|
|
WHERE mo.mld_melding_key = m.melding_key AND mo.ins_deel_key = d.deel_key;
|
|
|
|
-- En de laatste FCLT_3D_GEBOUW_KEY
|
|
CREATE OR REPLACE VIEW APGR_V_INSKENMERK_GEBOUW
|
|
(
|
|
DEEL_KEY,
|
|
DISCIPLINE,
|
|
SOORT,
|
|
GROEP,
|
|
SOORTCODE,
|
|
OMSCHRIJVING,
|
|
PLAATSEIGENAAR,
|
|
PLAATSEIGENAARTYPE,
|
|
PLAATSAANDUIDING,
|
|
EIGENAAR,
|
|
OPMERKING,
|
|
REGIO,
|
|
DISTRICT,
|
|
LOCATIE_CODE,
|
|
LOCATIE_OMSCHRIJVING,
|
|
LOCATIE_PLAATS,
|
|
GEBOUWCODE,
|
|
GEBOUW,
|
|
TERREINSECTORCODE,
|
|
TERREINSECTOR,
|
|
VERDIEPINGCODE,
|
|
RUIMTENR,
|
|
WERKPLEKVOLGNR,
|
|
WERKPLEK,
|
|
UITLEENBAAR,
|
|
UITGELEEND,
|
|
RES_OPMERKING,
|
|
BEHEERDER,
|
|
VERVALDATUM,
|
|
ACTIEF,
|
|
AANTAL,
|
|
STATE,
|
|
STATEDATE,
|
|
FCLT_3D_DISCIPLINE_KEY,
|
|
FCLT_3D_AFDELING_KEY,
|
|
FCLT_3D_LOCATIE_KEY,
|
|
FCLT_3D_GEBOUW_KEY,
|
|
KENMERK,
|
|
WAARDE_C,
|
|
WAARDE_N,
|
|
WAARDE_D
|
|
)
|
|
AS
|
|
SELECT m."DEEL_KEY",
|
|
m."DISCIPLINE",
|
|
m."SOORT",
|
|
m."GROEP",
|
|
m."SOORTCODE",
|
|
m."OMSCHRIJVING",
|
|
m."PLAATSEIGENAAR",
|
|
m."PLAATSEIGENAARTYPE",
|
|
m."PLAATSAANDUIDING",
|
|
m."EIGENAAR",
|
|
m."OPMERKING",
|
|
m."REGIO",
|
|
m."DISTRICT",
|
|
m."LOCATIE_CODE",
|
|
m."LOCATIE_OMSCHRIJVING",
|
|
m."LOCATIE_PLAATS",
|
|
m."GEBOUWCODE",
|
|
m."GEBOUW",
|
|
m."TERREINSECTORCODE",
|
|
m."TERREINSECTOR",
|
|
m."VERDIEPINGCODE",
|
|
m."RUIMTENR",
|
|
m."WERKPLEKVOLGNR",
|
|
m."WERKPLEK",
|
|
m."UITLEENBAAR",
|
|
m."UITGELEEND",
|
|
m."RES_OPMERKING",
|
|
m."BEHEERDER",
|
|
m."VERVALDATUM",
|
|
m."ACTIEF",
|
|
m."AANTAL",
|
|
m."STATE",
|
|
m."STATEDATE",
|
|
m."FCLT_3D_DISCIPLINE_KEY",
|
|
m."FCLT_3D_AFDELING_KEY",
|
|
m."FCLT_3D_LOCATIE_KEY",
|
|
m."FCLT_3D_GEBOUW_KEY",
|
|
lcl.x ('skm.ins_srtkenmerk_omschrijving',
|
|
skm.ins_srtkenmerk_key,
|
|
ins_srtkenmerk_omschrijving)
|
|
kenmerk,
|
|
CASE
|
|
WHEN skm.ins_srtkenmerk_kenmerktype = 'R'
|
|
OR skm.ins_srtkenmerk_kenmerktype = 'S'
|
|
THEN
|
|
flx.getdomeinwaarde (skm.fac_kenmerkdomein_key,
|
|
km.ins_kenmerkdeel_waarde)
|
|
WHEN skm.ins_srtkenmerk_kenmerktype = 'C'
|
|
OR skm.ins_srtkenmerk_kenmerktype = 'F'
|
|
THEN
|
|
km.ins_kenmerkdeel_waarde
|
|
ELSE
|
|
NULL
|
|
END
|
|
waarde_c,
|
|
CASE
|
|
WHEN skm.ins_srtkenmerk_kenmerktype = 'N'
|
|
OR skm.ins_srtkenmerk_kenmerktype = 'B'
|
|
THEN
|
|
TO_NUMBER (km.ins_kenmerkdeel_waarde)
|
|
ELSE
|
|
TO_NUMBER (NULL)
|
|
END
|
|
waarde_n,
|
|
CASE
|
|
WHEN skm.ins_srtkenmerk_kenmerktype = 'D'
|
|
THEN
|
|
TO_DATE (km.ins_kenmerkdeel_waarde, 'DD-MM-YYYY')
|
|
ELSE
|
|
TO_DATE (NULL)
|
|
END
|
|
waarde_d
|
|
FROM apgr_v_ins_gebouw M,
|
|
ins_kenmerkdeel km,
|
|
ins_kenmerk K,
|
|
ins_srtkenmerk skm
|
|
WHERE km.ins_deel_key = m.deel_key
|
|
AND km.ins_kenmerkdeel_verwijder IS NULL
|
|
AND k.ins_kenmerk_verwijder IS NULL
|
|
AND skm.ins_srtkenmerk_verwijder IS NULL
|
|
AND km.ins_kenmerk_key = k.ins_kenmerk_key(+)
|
|
AND k.ins_srtkenmerk_key = skm.ins_srtkenmerk_key(+);
|
|
|
|
|
|
------ payload end ------
|
|
|
|
SET DEFINE OFF
|
|
BEGIN adm.systrackscriptId ('$Id$', 0); END;
|
|
/
|
|
|
|
COMMIT;
|
|
SET ECHO OFF
|
|
SPOOL OFF
|
|
SET DEFINE ON
|
|
PROMPT Logfile of this upgrade is: &fcltlogfile |