1367 lines
61 KiB
SQL
1367 lines
61 KiB
SQL
--
|
|
-- $Id$
|
|
--
|
|
-- Script containing customer specific sql statements for the Vesteda database
|
|
|
|
DEFINE thisfile = 'VEST.SQL'
|
|
DEFINE dbuser = '^VEST'
|
|
DEFINE custid = 'VEST'
|
|
|
|
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 vest_import_perslid (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 DISTINCT p.prs_afdeling_naam afdeling, i.prs_afdeling_naam
|
|
FROM prs_afdeling p, fac_imp_perslid i
|
|
WHERE i.prs_afdeling_naam =
|
|
SUBSTR (p.prs_afdeling_omschrijving, 1, 15)
|
|
AND p.prs_afdeling_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,
|
|
'13;14;15;16;0;0;6;1;3;2;' ||
|
|
'0;0;0;0;9;10;11;5;0;12;' ||
|
|
'7;4;0;8;0;0;0;0;0;0;'||
|
|
'0;0;0;0;0;0;0;0;0;0;'||
|
|
'0;0;0;0;0;0',
|
|
'Achternaam;Voornaam;Tussenvoegsel;SamAccountName;Email;Afdeling;Functie;Titel/Aanhef;Geslacht;Telefoonnummer;Mobiel nummer;Personeelsnummer;Locatie;Gebouw;Verdieping;Ruimte%'
|
|
);
|
|
|
|
UPDATE fac_imp_perslid
|
|
SET alg_locatie_code = (
|
|
SELECT a.alg_locatie_code
|
|
FROM alg_locatie a, fac_imp_perslid i
|
|
WHERE fac_imp_perslid.alg_locatie_code = a.alg_locatie_omschrijving);
|
|
|
|
UPDATE fac_imp_perslid
|
|
SET alg_gebouw_code = '001'
|
|
WHERE fac_imp_perslid.alg_locatie_code LIKE '%AMS%';
|
|
|
|
UPDATE fac_imp_perslid
|
|
SET alg_verdieping_volgnr = '0'
|
|
WHERE fac_imp_perslid.alg_locatie_code LIKE '%AMS%';
|
|
|
|
UPDATE fac_imp_perslid
|
|
SET alg_ruimte_nr = '001'
|
|
WHERE fac_imp_perslid.alg_locatie_code LIKE '%AMS%';
|
|
|
|
FOR rec IN c1
|
|
LOOP
|
|
BEGIN
|
|
UPDATE fac_imp_perslid
|
|
SET prs_afdeling_naam = rec.afdeling
|
|
WHERE prs_afdeling_naam = rec.prs_afdeling_naam;
|
|
END;
|
|
END LOOP;
|
|
|
|
DELETE FROM fac_imp_perslid
|
|
WHERE alg_locatie_code NOT IN (SELECT alg_locatie_code FROM alg_locatie);
|
|
|
|
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 vest_import_perslid;
|
|
/
|
|
|
|
CREATE OR REPLACE PROCEDURE vest_update_perslid (
|
|
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_email
|
|
FROM prs_perslid p
|
|
WHERE p.prs_perslid_verwijder IS NULL
|
|
AND p.prs_perslid_oslogin IS NULL
|
|
AND p.prs_perslid_email IS NOT NULL
|
|
AND NOT EXISTS
|
|
(SELECT 'x'
|
|
FROM fac_imp_perslid i
|
|
WHERE UPPER(p.prs_perslid_email) = UPPER(i.prs_perslid_email));
|
|
|
|
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, 'EMAIL', NULL);
|
|
|
|
-- 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 vest_update_perslid;
|
|
/
|
|
|
|
CREATE OR REPLACE VIEW VEST_V_RAP_CATERINGDAGLIJST
|
|
(
|
|
RESKEY,
|
|
FCLT_F_DATUM,
|
|
RESNR,
|
|
VAN,
|
|
TOT,
|
|
FCLT_F_RUIMTE,
|
|
FCLT_F_CATALOGUS,
|
|
LEVERING,
|
|
VOORZIENING,
|
|
AANTAL,
|
|
OPMERKING,
|
|
AANTAL_PERS,
|
|
FCLT_F_GASTHEER_VROUW
|
|
)
|
|
AS
|
|
SELECT rr.res_rsv_ruimte_key,
|
|
rr.res_rsv_ruimte_van,
|
|
rr.res_reservering_key || '/' || rr.res_rsv_ruimte_volgnr,
|
|
TO_CHAR (rr.res_rsv_ruimte_van, 'hh24:mi'),
|
|
TO_CHAR (rr.res_rsv_ruimte_tot, 'hh24:mi'),
|
|
r.alg_ruimte_nr || ' ' || r.alg_ruimte_omschrijving,
|
|
rd.ins_discipline_omschrijving,
|
|
TO_CHAR (rra.res_rsv_artikel_levering, 'hh24:mi'),
|
|
TRIM (ra.res_artikel_omschrijving),
|
|
rra.res_rsv_artikel_aantal,
|
|
rr.res_rsv_ruimte_opmerking,
|
|
rr.res_rsv_ruimte_bezoekers,
|
|
prs_perslid_naam_full
|
|
FROM res_rsv_ruimte rr,
|
|
alg_ruimte r,
|
|
res_artikel ra,
|
|
res_rsv_artikel rra,
|
|
prs_v_perslid_fullnames ppf,
|
|
res_reservering re,
|
|
res_discipline rd
|
|
WHERE rr.alg_ruimte_key = r.alg_ruimte_key
|
|
AND rra.res_rsv_ruimte_key = rr.res_rsv_ruimte_key
|
|
AND rra.res_artikel_key = ra.res_artikel_key
|
|
AND rr.res_rsv_ruimte_contact_key = ppf.prs_perslid_key
|
|
AND rr.res_rsv_ruimte_host_key = ppf.prs_perslid_key
|
|
AND ra.res_discipline_key = rd.ins_discipline_key
|
|
AND re.res_reservering_key = rr.res_reservering_key
|
|
AND re.res_reservering_verwijder IS NULL;
|
|
|
|
CREATE OR REPLACE VIEW vest_v_rap_mahler
|
|
(
|
|
mld_key,
|
|
datum,
|
|
maand_uitgifte,
|
|
datum_uitgifte,
|
|
stempelnummer,
|
|
uitgegeven_aan, -- Afhankelijk van wel/niet extern, anders prs_perslid
|
|
bezoeker_van,
|
|
inrijdtijd,
|
|
uitrijdtijd,
|
|
toelichting
|
|
)
|
|
AS
|
|
SELECT m.mld_melding_key,
|
|
TRUNC (m.mld_melding_datum),
|
|
(SELECT TO_CHAR (TO_DATE (mld_kenmerkmelding_waarde, 'DD-MM-YYYY'),
|
|
'YYYY-MM')
|
|
FROM mld_kenmerkmelding km, mld_kenmerk k
|
|
WHERE km.mld_kenmerk_key = k.mld_kenmerk_key
|
|
AND km.mld_melding_key = m.mld_melding_key
|
|
AND k.mld_srtkenmerk_key = 21)
|
|
maand_uitgifte,
|
|
(SELECT TO_DATE (mld_kenmerkmelding_waarde, 'DD-MM-YYYY')
|
|
FROM mld_kenmerkmelding km, mld_kenmerk k
|
|
WHERE km.mld_kenmerk_key = k.mld_kenmerk_key
|
|
AND km.mld_melding_key = m.mld_melding_key
|
|
AND k.mld_srtkenmerk_key = 21)
|
|
datum_uitgifte,
|
|
(SELECT mld_kenmerkmelding_waarde
|
|
FROM mld_kenmerkmelding km, mld_kenmerk k
|
|
WHERE km.mld_kenmerk_key = k.mld_kenmerk_key
|
|
AND km.mld_melding_key = m.mld_melding_key
|
|
AND k.mld_srtkenmerk_key = 1)
|
|
stempelnummer,
|
|
COALESCE (
|
|
(SELECT mld_kenmerkmelding_waarde
|
|
FROM mld_kenmerkmelding km, mld_kenmerk k
|
|
WHERE km.mld_kenmerk_key = k.mld_kenmerk_key
|
|
AND km.mld_melding_key = m.mld_melding_key
|
|
AND k.mld_srtkenmerk_key = 22),
|
|
(SELECT p.prs_perslid_naam_friendly
|
|
FROM PRS_V_PERSLID_FULLNAMES_ALL p
|
|
WHERE p.prs_perslid_key =
|
|
(SELECT fac.safe_to_number (
|
|
mld_kenmerkmelding_waarde)
|
|
FROM mld_kenmerkmelding km, mld_kenmerk k
|
|
WHERE km.mld_kenmerk_key = k.mld_kenmerk_key
|
|
AND km.mld_melding_key = m.mld_melding_key
|
|
AND k.mld_srtkenmerk_key = 184)))
|
|
uitgegeven_aan,
|
|
COALESCE (
|
|
(SELECT mld_kenmerkmelding_waarde
|
|
FROM mld_kenmerkmelding km, mld_kenmerk k
|
|
WHERE km.mld_kenmerk_key = k.mld_kenmerk_key
|
|
AND km.mld_melding_key = m.mld_melding_key
|
|
AND k.mld_srtkenmerk_key = 23),
|
|
'Vesteda')
|
|
bezoeker_van,
|
|
(SELECT mld_kenmerkmelding_waarde
|
|
FROM mld_kenmerkmelding km, mld_kenmerk k
|
|
WHERE km.mld_kenmerk_key = k.mld_kenmerk_key
|
|
AND km.mld_melding_key = m.mld_melding_key
|
|
AND k.mld_srtkenmerk_key = 24)
|
|
inrijdtijd,
|
|
(SELECT mld_kenmerkmelding_waarde
|
|
FROM mld_kenmerkmelding km, mld_kenmerk k
|
|
WHERE km.mld_kenmerk_key = k.mld_kenmerk_key
|
|
AND km.mld_melding_key = m.mld_melding_key
|
|
AND k.mld_srtkenmerk_key = 25)
|
|
uitrijdtijd,
|
|
m.mld_melding_omschrijving toelichting
|
|
FROM mld_melding m
|
|
WHERE m.mld_stdmelding_key = 302;
|
|
|
|
CREATE OR REPLACE VIEW vest_v_rap_kluistoegang
|
|
(
|
|
datum,
|
|
bevoegd_persoon_1,
|
|
bevoegd_persoon_2,
|
|
datum_toegang,
|
|
reden_toegang,
|
|
maand
|
|
)
|
|
AS
|
|
SELECT m.mld_melding_datum,
|
|
(SELECT pf.prs_perslid_naam_friendly
|
|
FROM prs_v_perslid_fullnames pf
|
|
WHERE pf.prs_perslid_key =
|
|
(SELECT mld_kenmerkmelding_waarde
|
|
FROM mld_kenmerkmelding km, mld_kenmerk k
|
|
WHERE km.mld_kenmerk_key = k.mld_kenmerk_key
|
|
AND km.mld_melding_key = m.mld_melding_key
|
|
AND k.mld_srtkenmerk_key = 41))
|
|
bp1,
|
|
(SELECT pf.prs_perslid_naam_friendly
|
|
FROM prs_v_perslid_fullnames pf
|
|
WHERE pf.prs_perslid_key =
|
|
(SELECT mld_kenmerkmelding_waarde
|
|
FROM mld_kenmerkmelding km, mld_kenmerk k
|
|
WHERE km.mld_kenmerk_key = k.mld_kenmerk_key
|
|
AND km.mld_melding_key = m.mld_melding_key
|
|
AND k.mld_srtkenmerk_key = 42))
|
|
bp2,
|
|
(SELECT mld_kenmerkmelding_waarde
|
|
FROM mld_kenmerkmelding km, mld_kenmerk k
|
|
WHERE km.mld_kenmerk_key = k.mld_kenmerk_key
|
|
AND km.mld_melding_key = m.mld_melding_key
|
|
AND k.mld_srtkenmerk_key = 44)
|
|
datum_toegang,
|
|
(SELECT mld_kenmerkmelding_waarde
|
|
FROM mld_kenmerkmelding km, mld_kenmerk k
|
|
WHERE km.mld_kenmerk_key = k.mld_kenmerk_key
|
|
AND km.mld_melding_key = m.mld_melding_key
|
|
AND k.mld_srtkenmerk_key = 43)
|
|
reden_toegang,
|
|
TO_CHAR (m.mld_melding_datum, 'MM-YYYY') maand
|
|
FROM mld_melding m
|
|
WHERE m.mld_stdmelding_key = 101;
|
|
|
|
CREATE OR REPLACE VIEW vest_v_rap_wf_progress
|
|
(
|
|
wf,
|
|
melding_key,
|
|
melding_datum,
|
|
melding_onderwerp,
|
|
melding_status,
|
|
melding_behandelaar,
|
|
max_stap_melding_key,
|
|
max_stap_melding_datum,
|
|
max_stap_melding_onderwerp,
|
|
max_stap_melding_status,
|
|
max_stap_melding_behandelaar,
|
|
max_stap_stdmelding_key,
|
|
max_stap_stdmelding_oms,
|
|
melder,
|
|
melder_afdeling_code,
|
|
melder_afdeling_oms
|
|
)
|
|
AS
|
|
SELECT (SELECT mld_workflowstep_omschrijving FROM mld_workflowstep WHERE mld_workflowstep_key = x.mld_workflowstep_key)
|
|
wf,
|
|
x.mld_melding_key,
|
|
x.mld_melding_datum,
|
|
x.mld_melding_onderwerp,
|
|
x.mld_statuses_omschrijving melding_status,
|
|
(SELECT prs_perslid_naam_full FROM prs_v_perslid_fullnames_all WHERE prs_perslid_key = x.mld_melding_behandelaar_key)
|
|
melding_behandelaar,
|
|
stap.mld_melding_key max_stap_melding_key,
|
|
stap.mld_melding_datum max_stap_melding_datum,
|
|
stap.mld_melding_onderwerp max_stap_melding_onderwerp,
|
|
stap.mld_statuses_omschrijving max_stap_melding_status,
|
|
(SELECT prs_perslid_naam_full FROM prs_v_perslid_fullnames_all WHERE prs_perslid_key = stap.mld_melding_behandelaar_key)
|
|
max_stap_melding_behandelaar,
|
|
stap.mld_stdmelding_key max_stap_stdmelding_key,
|
|
stap.mld_stdmelding_omschrijving max_stap_stdmelding_oms,
|
|
(SELECT prs_perslid_naam_full FROM prs_v_perslid_fullnames_all WHERE prs_perslid_key = x.prs_perslid_key)
|
|
melder,
|
|
x.prs_afdeling_naam,
|
|
x.prs_afdeling_omschrijving
|
|
FROM (SELECT m.mld_melding_key,
|
|
m.mld_melding_datum,
|
|
m.mld_melding_onderwerp,
|
|
ms.mld_statuses_omschrijving,
|
|
m.mld_melding_behandelaar_key,
|
|
m.mld_workflowstep_key,
|
|
p.prs_perslid_key,
|
|
a.prs_afdeling_naam,
|
|
a.prs_afdeling_omschrijving
|
|
FROM mld_melding m, mld_statuses ms, prs_perslid p, prs_afdeling a
|
|
WHERE m.mld_melding_status = ms.mld_statuses_key
|
|
AND m.prs_perslid_key = p.prs_perslid_key
|
|
AND p.prs_afdeling_key = a.prs_afdeling_key) x
|
|
LEFT JOIN
|
|
(SELECT m.mld_melding_start_key,
|
|
m.mld_melding_key,
|
|
m.mld_melding_datum,
|
|
m.mld_melding_onderwerp,
|
|
ms.mld_statuses_omschrijving,
|
|
m.mld_melding_behandelaar_key,
|
|
sm.mld_stdmelding_key,
|
|
sm.mld_stdmelding_omschrijving
|
|
FROM mld_melding m, mld_statuses ms, mld_stdmelding sm
|
|
WHERE m.mld_workflowstep_key IS NOT NULL -- Beschouw alleen WF-stappen
|
|
AND m.mld_melding_status = ms.mld_statuses_key
|
|
AND m.mld_stdmelding_key = sm.mld_stdmelding_key) stap
|
|
ON x.mld_melding_key = stap.mld_melding_start_key;
|
|
|
|
CREATE OR REPLACE VIEW vest_v_ins_qrc_mld
|
|
AS
|
|
SELECT i.ins_deel_omschrijving hide_f_sort,
|
|
l.alg_locatie_code||' '||l.alg_locatie_omschrijving fclt_f_locatie,
|
|
o.alg_gebouw_omschrijving fclt_f_gebouw,
|
|
o.alg_plaatsaanduiding fclt_f_plaats,
|
|
d.ins_discipline_omschrijving fclt_f_discipline,
|
|
g.ins_srtgroep_omschrijving fclt_f_objectgroep,
|
|
s.ins_srtdeel_omschrijving fclt_f_objectsoort,
|
|
i.ins_deel_omschrijving fclt_f_identificatie,
|
|
d.ins_discipline_omschrijving||' / '||sm.mld_stdmelding_omschrijving fclt_f_melding,
|
|
i.ins_deel_key,
|
|
s.ins_srtdeel_key,
|
|
o.alg_gebouw_code,
|
|
o.alg_verdieping_code,
|
|
i.ins_discipline_key fclt_3d_discipline_key,
|
|
l.alg_locatie_key fclt_3d_locatie_key,
|
|
i.ins_alg_ruimte_type,
|
|
i.ins_alg_ruimte_key,
|
|
b.fac_bookmark_id hide_f_bookmark_id
|
|
FROM ins_deel i,
|
|
ins_v_alg_overzicht o,
|
|
ins_srtdeel s,
|
|
ins_srtgroep g,
|
|
ins_discipline d,
|
|
alg_locatie l,
|
|
fac_bookmark b,
|
|
mld_stdmelding sm,
|
|
mld_stdmelding_srtinst si
|
|
WHERE b.fac_bookmark_naam = 'QRC_MELDING'
|
|
AND (b.fac_bookmark_expire IS NULL OR b.fac_bookmark_expire > SYSDATE)
|
|
AND ins_deel_verwijder IS NULL
|
|
AND i.ins_deel_module = 'INS'
|
|
AND i.ins_deel_parent_key IS NULL
|
|
AND s.ins_srtdeel_key = i.ins_srtdeel_key
|
|
AND g.ins_srtgroep_key = s.ins_srtgroep_key
|
|
AND d.ins_discipline_key = g.ins_discipline_key
|
|
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 sm.mld_stdmelding_key = si.mld_stdmelding_key
|
|
AND si.ins_srtinstallatie_key = DECODE(si.ins_srtinstallatie_niveau,
|
|
'S', i.ins_srtdeel_key,
|
|
'G', s.ins_srtgroep_key,
|
|
'D', g.ins_discipline_key);
|
|
|
|
CREATE OR REPLACE VIEW vest_v_rap_uitleen
|
|
(
|
|
HIDE_F_REFKEY,
|
|
HIDE_F_FAC_TRACKING_DATUM,
|
|
INS_DEEL_KEY,
|
|
OBJECTSOORT,
|
|
OBJECT,
|
|
UITGELEEND_AAN,
|
|
IN_UIT,
|
|
TRACKING_DATUM
|
|
)
|
|
AS
|
|
SELECT t.fac_tracking_refkey sort_refkey,
|
|
t.fac_tracking_datum sort_datum,
|
|
d.ins_deel_key,
|
|
i.ins_srtdeel_omschrijving,
|
|
d.ins_deel_omschrijving,
|
|
DECODE (
|
|
t.fac_srtnotificatie_key,
|
|
108,
|
|
SUBSTR (REPLACE (fac_tracking_oms, CHR (10), ''),
|
|
( (INSTR (fac_tracking_oms, 'is uitgegeven aan')) + 18)),
|
|
NULL)
|
|
uitgeleend_aan,
|
|
DECODE (fac_srtnotificatie_key,
|
|
108, 'Uitgifte datum: ',
|
|
'Inname datum: ')
|
|
In_uit,
|
|
fac_tracking_datum
|
|
FROM fac_tracking t, ins_deel d, ins_srtdeel i
|
|
WHERE fac_srtnotificatie_key IN (108, 110)
|
|
AND t.fac_tracking_refkey = d.ins_deel_key
|
|
AND d.ins_srtdeel_key = i.ins_srtdeel_key;
|
|
|
|
CREATE OR REPLACE VIEW vest_v_rap_parkeer
|
|
(
|
|
ins_deel_key,
|
|
locatie,
|
|
identificatie,
|
|
eigenaar,
|
|
kenteken,
|
|
van,
|
|
tot,
|
|
bedrag,
|
|
factuurdatum
|
|
)
|
|
AS
|
|
SELECT i.ins_deel_key,
|
|
al.alg_locatie_omschrijving,
|
|
i.ins_deel_omschrijving,
|
|
(SELECT d.ins_kenmerkdeel_waarde
|
|
FROM ins_kenmerkdeel d, ins_kenmerk k
|
|
WHERE i.ins_deel_key = d.ins_deel_key
|
|
AND k.ins_kenmerk_key = d.ins_kenmerk_key
|
|
AND k.ins_srtkenmerk_key = 42)
|
|
eigenaar,
|
|
(SELECT d.ins_kenmerkdeel_waarde
|
|
FROM ins_kenmerkdeel d, ins_kenmerk k
|
|
WHERE i.ins_deel_key = d.ins_deel_key
|
|
AND k.ins_kenmerk_key = d.ins_kenmerk_key
|
|
AND k.ins_srtkenmerk_key = 44)
|
|
kenteken,
|
|
(SELECT d.ins_kenmerkdeel_waarde
|
|
FROM ins_kenmerkdeel d, ins_kenmerk k
|
|
WHERE i.ins_deel_key = d.ins_deel_key
|
|
AND k.ins_kenmerk_key = d.ins_kenmerk_key
|
|
AND k.ins_srtkenmerk_key = 46)
|
|
van,
|
|
(SELECT d.ins_kenmerkdeel_waarde
|
|
FROM ins_kenmerkdeel d, ins_kenmerk k
|
|
WHERE i.ins_deel_key = d.ins_deel_key
|
|
AND k.ins_kenmerk_key = d.ins_kenmerk_key
|
|
AND k.ins_srtkenmerk_key = 45)
|
|
tot,
|
|
(SELECT d.ins_kenmerkdeel_waarde
|
|
FROM ins_kenmerkdeel d, ins_kenmerk k
|
|
WHERE i.ins_deel_key = d.ins_deel_key
|
|
AND k.ins_kenmerk_key = d.ins_kenmerk_key
|
|
AND k.ins_srtkenmerk_key = 41)
|
|
bedrag,
|
|
(SELECT d.ins_kenmerkdeel_waarde
|
|
FROM ins_kenmerkdeel d, ins_kenmerk k
|
|
WHERE i.ins_deel_key = d.ins_deel_key
|
|
AND k.ins_kenmerk_key = d.ins_kenmerk_key
|
|
AND k.ins_srtkenmerk_key = 43)
|
|
factuurdatum
|
|
FROM ins_deel i,
|
|
alg_ruimte ar,
|
|
alg_verdieping av,
|
|
alg_gebouw ag,
|
|
alg_locatie al
|
|
WHERE i.ins_srtdeel_key = 41
|
|
AND i.ins_deel_verwijder IS NULL
|
|
AND i.ins_alg_ruimte_key = ar.alg_ruimte_key
|
|
AND i.ins_alg_ruimte_type = 'R'
|
|
AND ar.alg_verdieping_key = av.alg_verdieping_key
|
|
AND av.alg_gebouw_key = ag.alg_gebouw_key
|
|
AND ag.alg_locatie_key = al.alg_locatie_key;
|
|
|
|
CREATE OR REPLACE VIEW VEST_V_THEMA_VENDING
|
|
(
|
|
INS_DEEL_KEY,
|
|
ALG_RUIMTE_KEY,
|
|
WAARDE
|
|
)
|
|
AS
|
|
SELECT ins_deel_key,
|
|
ins_alg_ruimte_key,
|
|
DECODE (
|
|
(SELECT COUNT ( * )
|
|
FROM mld_melding m, mld_melding_object mo
|
|
WHERE m.mld_melding_key = mo.mld_melding_key
|
|
AND mo.ins_deel_key = d.ins_deel_key
|
|
AND mld_melding_status IN (0, 2, 3, 4, 7, 99)),
|
|
0,
|
|
'Normaal',
|
|
'Defect')
|
|
ins_status
|
|
FROM ins_deel d
|
|
WHERE ins_discipline_key = 183;
|
|
|
|
CREATE OR REPLACE VIEW VEST_V_THEMA_GEBOUW
|
|
(
|
|
INS_DEEL_KEY,
|
|
ALG_RUIMTE_KEY,
|
|
WAARDE
|
|
)
|
|
AS
|
|
SELECT ins_deel_key,
|
|
ins_alg_ruimte_key,
|
|
DECODE (
|
|
(SELECT COUNT ( * )
|
|
FROM mld_melding m, mld_melding_object mo
|
|
WHERE m.mld_melding_key = mo.mld_melding_key
|
|
AND mo.ins_deel_key = d.ins_deel_key
|
|
AND mld_melding_status IN (0, 2, 3, 4, 7, 99)),
|
|
0,
|
|
'Normaal',
|
|
'Defect')
|
|
ins_status
|
|
FROM ins_deel d
|
|
WHERE ins_discipline_key = 184;
|
|
|
|
CREATE OR REPLACE VIEW VEST_V_THEMA_ICT
|
|
(
|
|
INS_DEEL_KEY,
|
|
ALG_RUIMTE_KEY,
|
|
WAARDE
|
|
)
|
|
AS
|
|
SELECT ins_deel_key,
|
|
ins_alg_ruimte_key,
|
|
DECODE (
|
|
(SELECT COUNT ( * )
|
|
FROM mld_melding m, mld_melding_object mo
|
|
WHERE m.mld_melding_key = mo.mld_melding_key
|
|
AND mo.ins_deel_key = d.ins_deel_key
|
|
AND mld_melding_status IN (0, 2, 3, 4, 7, 99)),
|
|
0,
|
|
'Normaal',
|
|
'Defect')
|
|
ins_status
|
|
FROM ins_deel d
|
|
WHERE ins_discipline_key = 186;
|
|
|
|
CREATE OR REPLACE VIEW VEST_V_THEMA_INVENTARIS
|
|
(
|
|
INS_DEEL_KEY,
|
|
ALG_RUIMTE_KEY,
|
|
WAARDE
|
|
)
|
|
AS
|
|
SELECT ins_deel_key,
|
|
ins_alg_ruimte_key,
|
|
DECODE (
|
|
(SELECT COUNT ( * )
|
|
FROM mld_melding m, mld_melding_object mo
|
|
WHERE m.mld_melding_key = mo.mld_melding_key
|
|
AND mo.ins_deel_key = d.ins_deel_key
|
|
AND mld_melding_status IN (0, 2, 3, 4, 7, 99)),
|
|
0,
|
|
'Normaal',
|
|
'Defect')
|
|
ins_status
|
|
FROM ins_deel d
|
|
WHERE ins_discipline_key = 182;
|
|
|
|
CREATE OR REPLACE VIEW VEST_V_THEMA_VEILIGHEID
|
|
(
|
|
INS_DEEL_KEY,
|
|
ALG_RUIMTE_KEY,
|
|
WAARDE
|
|
)
|
|
AS
|
|
SELECT ins_deel_key,
|
|
ins_alg_ruimte_key,
|
|
DECODE (
|
|
(SELECT COUNT ( * )
|
|
FROM mld_melding m, mld_melding_object mo
|
|
WHERE m.mld_melding_key = mo.mld_melding_key
|
|
AND mo.ins_deel_key = d.ins_deel_key
|
|
AND mld_melding_status IN (0, 2, 3, 4, 7, 99)),
|
|
0,
|
|
'Normaal',
|
|
'Defect')
|
|
ins_status
|
|
FROM ins_deel d
|
|
WHERE ins_discipline_key = 181;
|
|
|
|
CREATE OR REPLACE VIEW vest_v_wpl_pstatus
|
|
(
|
|
perslid_key,
|
|
voornaam,
|
|
naam,
|
|
tussenvoegsel,
|
|
voorletters,
|
|
email,
|
|
telefoonnr,
|
|
mobiel,
|
|
oslogin,
|
|
kostenplaats,
|
|
afdeling,
|
|
functie,
|
|
budget,
|
|
extra_budget,
|
|
totaal_budget,
|
|
declaratie_concept,
|
|
declaratie_definitief,
|
|
h2w_concept,
|
|
h2w_definitief,
|
|
totaal_concept,
|
|
totaal_definitief,
|
|
restbudget,
|
|
budget_verval
|
|
)
|
|
AS
|
|
SELECT p.prs_perslid_key,
|
|
p.prs_perslid_voornaam,
|
|
p.prs_perslid_naam,
|
|
p.prs_perslid_tussenvoegsel,
|
|
p.prs_perslid_voorletters,
|
|
p.prs_perslid_email,
|
|
p.prs_perslid_telefoonnr,
|
|
p.prs_perslid_mobiel,
|
|
p.prs_perslid_oslogin,
|
|
k.prs_kostenplaats_omschrijving,
|
|
a.prs_afdeling_naam,
|
|
f.prs_srtperslid_omschrijving,
|
|
(SELECT fac.safe_to_number (ud.fac_usrdata_prijs)
|
|
FROM prs_kenmerklink kml,
|
|
prs_kenmerk km,
|
|
fac_kenmerkdomein kd,
|
|
fac_usrdata ud
|
|
WHERE kml.prs_link_key = p.prs_perslid_key
|
|
AND kml.prs_kenmerk_key = km.prs_kenmerk_key
|
|
AND km.fac_kenmerkdomein_key = kd.fac_kenmerkdomein_key
|
|
AND kd.fac_usrtab_key = ud.fac_usrtab_key
|
|
AND fac.safe_to_number (kml.prs_kenmerklink_waarde) =
|
|
ud.fac_usrdata_key
|
|
AND kml.prs_kenmerk_key = 1001) --Kenmerk extra_budget
|
|
budget,
|
|
(SELECT fac.safe_to_number (ud.fac_usrdata_prijs)
|
|
FROM prs_kenmerklink kml,
|
|
prs_kenmerk km,
|
|
fac_kenmerkdomein kd,
|
|
fac_usrdata ud
|
|
WHERE kml.prs_link_key = p.prs_perslid_key
|
|
AND kml.prs_kenmerk_key = km.prs_kenmerk_key
|
|
AND km.fac_kenmerkdomein_key = kd.fac_kenmerkdomein_key
|
|
AND kd.fac_usrtab_key = ud.fac_usrtab_key
|
|
AND fac.safe_to_number (kml.prs_kenmerklink_waarde) =
|
|
ud.fac_usrdata_key
|
|
AND kml.prs_kenmerk_key = 1002) --Kenmerk extra_budget
|
|
extra_budget,
|
|
COALESCE (
|
|
(SELECT fac.safe_to_number (ud.fac_usrdata_prijs)
|
|
FROM prs_kenmerklink kml,
|
|
prs_kenmerk km,
|
|
fac_kenmerkdomein kd,
|
|
fac_usrdata ud
|
|
WHERE kml.prs_link_key = p.prs_perslid_key
|
|
AND kml.prs_kenmerk_key = km.prs_kenmerk_key
|
|
AND km.fac_kenmerkdomein_key = kd.fac_kenmerkdomein_key
|
|
AND kd.fac_usrtab_key = ud.fac_usrtab_key
|
|
AND fac.safe_to_number (kml.prs_kenmerklink_waarde) =
|
|
ud.fac_usrdata_key
|
|
AND kml.prs_kenmerk_key = 1002),
|
|
0)
|
|
+ COALESCE (
|
|
(SELECT fac.safe_to_number (ud.fac_usrdata_prijs)
|
|
FROM prs_kenmerklink kml,
|
|
prs_kenmerk km,
|
|
fac_kenmerkdomein kd,
|
|
fac_usrdata ud
|
|
WHERE kml.prs_link_key = p.prs_perslid_key
|
|
AND kml.prs_kenmerk_key = km.prs_kenmerk_key
|
|
AND km.fac_kenmerkdomein_key =
|
|
kd.fac_kenmerkdomein_key
|
|
AND kd.fac_usrtab_key = ud.fac_usrtab_key
|
|
AND fac.safe_to_number (kml.prs_kenmerklink_waarde) =
|
|
ud.fac_usrdata_key
|
|
AND kml.prs_kenmerk_key = 1001),
|
|
0)
|
|
AS totaal_budget,
|
|
(SELECT COALESCE (SUM (kmm.mld_kenmerkmelding_waarde), 0)
|
|
FROM mld_kenmerkmelding kmm,
|
|
mld_kenmerk km,
|
|
mld_melding m,
|
|
mld_srtkenmerk sk
|
|
WHERE m.mld_melding_key = kmm.mld_melding_key
|
|
AND km.mld_kenmerk_key = kmm.mld_kenmerk_key
|
|
AND p.prs_perslid_key = m.prs_perslid_key_voor
|
|
AND km.mld_srtkenmerk_key = sk.mld_srtkenmerk_key
|
|
AND sk.mld_srtkenmerk_key = 252 -- Kenmerksoort totaal declaratie
|
|
AND m.mld_stdmelding_key = 342 -- Declaratieformulier
|
|
AND m.mld_melding_status IN (0, 2, 3, 4))
|
|
AS declaratie_concept,
|
|
(SELECT COALESCE (SUM (kmm.mld_kenmerkmelding_waarde), 0)
|
|
FROM mld_kenmerkmelding kmm,
|
|
mld_kenmerk km,
|
|
mld_melding m,
|
|
mld_srtkenmerk sk
|
|
WHERE m.mld_melding_key = kmm.mld_melding_key
|
|
AND km.mld_kenmerk_key = kmm.mld_kenmerk_key
|
|
AND p.prs_perslid_key = m.prs_perslid_key_voor
|
|
AND km.mld_srtkenmerk_key = sk.mld_srtkenmerk_key
|
|
AND sk.mld_srtkenmerk_key = 252 -- Kenmerksoort totaal declaratie
|
|
AND m.mld_stdmelding_key = 342 -- Declaratieformulier
|
|
AND m.mld_melding_status IN (5, 6))
|
|
AS declaratie_definitief,
|
|
(SELECT COALESCE (SUM (kmm.mld_kenmerkmelding_waarde), 0)
|
|
FROM mld_kenmerkmelding kmm,
|
|
mld_kenmerk km,
|
|
mld_melding m,
|
|
mld_srtkenmerk sk
|
|
WHERE m.mld_melding_key = kmm.mld_melding_key
|
|
AND km.mld_kenmerk_key = kmm.mld_kenmerk_key
|
|
AND p.prs_perslid_key = m.prs_perslid_key_voor
|
|
AND km.mld_srtkenmerk_key = sk.mld_srtkenmerk_key
|
|
AND sk.mld_srtkenmerk_key = 252 -- Kenmerksoort totaal declaratie
|
|
AND m.mld_stdmelding_key = 343 -- H2W
|
|
AND m.mld_melding_status IN (0, 2, 3, 4))
|
|
AS h2w_concept,
|
|
(SELECT COALESCE (SUM (kmm.mld_kenmerkmelding_waarde), 0)
|
|
FROM mld_kenmerkmelding kmm,
|
|
mld_kenmerk km,
|
|
mld_melding m,
|
|
mld_srtkenmerk sk
|
|
WHERE m.mld_melding_key = kmm.mld_melding_key
|
|
AND km.mld_kenmerk_key = kmm.mld_kenmerk_key
|
|
AND p.prs_perslid_key = m.prs_perslid_key_voor
|
|
AND km.mld_srtkenmerk_key = sk.mld_srtkenmerk_key
|
|
AND sk.mld_srtkenmerk_key = 252 -- Kenmerksoort totaal declaratie
|
|
AND m.mld_stdmelding_key = 343 -- H2W
|
|
AND m.mld_melding_status IN (5, 6))
|
|
AS h2w_definitief,
|
|
(SELECT COALESCE (SUM (kmm.mld_kenmerkmelding_waarde), 0)
|
|
FROM mld_kenmerkmelding kmm,
|
|
mld_kenmerk km,
|
|
mld_melding m,
|
|
mld_srtkenmerk sk
|
|
WHERE m.mld_melding_key = kmm.mld_melding_key
|
|
AND km.mld_kenmerk_key = kmm.mld_kenmerk_key
|
|
AND p.prs_perslid_key = m.prs_perslid_key_voor
|
|
AND km.mld_srtkenmerk_key = sk.mld_srtkenmerk_key
|
|
AND sk.mld_srtkenmerk_key = 252 -- Kenmerksoort totaal declaratie
|
|
AND m.mld_melding_status IN (0, 2, 3, 4))
|
|
AS totaal_concept,
|
|
(SELECT COALESCE (SUM (kmm.mld_kenmerkmelding_waarde), 0)
|
|
FROM mld_kenmerkmelding kmm,
|
|
mld_kenmerk km,
|
|
mld_melding m,
|
|
mld_srtkenmerk sk
|
|
WHERE m.mld_melding_key = kmm.mld_melding_key
|
|
AND km.mld_kenmerk_key = kmm.mld_kenmerk_key
|
|
AND p.prs_perslid_key = m.prs_perslid_key_voor
|
|
AND km.mld_srtkenmerk_key = sk.mld_srtkenmerk_key
|
|
AND sk.mld_srtkenmerk_key = 252 -- Kenmerksoort totaal declaratie
|
|
AND m.mld_melding_status IN (5, 6))
|
|
AS totaal_definitief,
|
|
COALESCE (
|
|
(SELECT fac.safe_to_number (ud.fac_usrdata_prijs)
|
|
FROM prs_kenmerklink kml,
|
|
prs_kenmerk km,
|
|
fac_kenmerkdomein kd,
|
|
fac_usrdata ud
|
|
WHERE kml.prs_link_key = p.prs_perslid_key
|
|
AND kml.prs_kenmerk_key = km.prs_kenmerk_key
|
|
AND km.fac_kenmerkdomein_key = kd.fac_kenmerkdomein_key
|
|
AND kd.fac_usrtab_key = ud.fac_usrtab_key
|
|
AND fac.safe_to_number (kml.prs_kenmerklink_waarde) =
|
|
ud.fac_usrdata_key
|
|
AND kml.prs_kenmerk_key = 1001),
|
|
0)
|
|
+ COALESCE (
|
|
(SELECT fac.safe_to_number (ud.fac_usrdata_prijs)
|
|
FROM prs_kenmerklink kml,
|
|
prs_kenmerk km,
|
|
fac_kenmerkdomein kd,
|
|
fac_usrdata ud
|
|
WHERE kml.prs_link_key = p.prs_perslid_key
|
|
AND kml.prs_kenmerk_key = km.prs_kenmerk_key
|
|
AND km.fac_kenmerkdomein_key =
|
|
kd.fac_kenmerkdomein_key
|
|
AND kd.fac_usrtab_key = ud.fac_usrtab_key
|
|
AND fac.safe_to_number (kml.prs_kenmerklink_waarde) =
|
|
ud.fac_usrdata_key
|
|
AND kml.prs_kenmerk_key = 1002),
|
|
0)
|
|
- (SELECT COALESCE (SUM (kmm.mld_kenmerkmelding_waarde), 0)
|
|
FROM mld_kenmerkmelding kmm,
|
|
mld_kenmerk km,
|
|
mld_melding m,
|
|
mld_srtkenmerk sk
|
|
WHERE m.mld_melding_key = kmm.mld_melding_key
|
|
AND km.mld_kenmerk_key = kmm.mld_kenmerk_key
|
|
AND p.prs_perslid_key = m.prs_perslid_key_voor
|
|
AND km.mld_srtkenmerk_key = sk.mld_srtkenmerk_key
|
|
AND sk.mld_srtkenmerk_key = 252 -- Kenmerksoort totaal declaratie
|
|
AND m.mld_melding_status IN (0, 2, 3, 4, 5, 6))
|
|
AS restbudget,
|
|
b.budget_verval
|
|
FROM ( SELECT prs_perslid_key,
|
|
budget,
|
|
extra_budget,
|
|
SUM (mld_kenmerkmelding_waarde) AS budget_verval -- Dit moet nog worden bepaald.
|
|
FROM (SELECT prs_perslid_key,
|
|
budget,
|
|
extra_budget,
|
|
mld_kenmerkmelding_waarde,
|
|
factuurdatum,
|
|
mndverval,
|
|
MONTHS_BETWEEN (
|
|
SYSDATE,
|
|
TO_DATE (factuurdatum, 'DD-MM-YYYY'))
|
|
mndtussen
|
|
FROM (SELECT pbudget.prs_perslid_key,
|
|
pbudget.budget,
|
|
pbudget.extra_budget,
|
|
kmmverv.mld_kenmerkmelding_waarde,
|
|
(SELECT MAX (fac_usrdata_volgnr)
|
|
FROM fac_usrdata
|
|
WHERE fac_usrdata_verwijder IS NULL
|
|
AND fac_usrtab_key = 141 --Eigen tabel Verval wpl (mnd)
|
|
AND fac.safe_to_number (
|
|
fac_usrdata_code) =
|
|
kmverv.mld_kenmerk_key)
|
|
mndverval,
|
|
DECODE (
|
|
kmverv.mld_kenmerk_key,
|
|
281, -- kenmerk Declaratie Beeldscherm
|
|
(SELECT DISTINCT
|
|
fkmm.mld_kenmerkmelding_waarde
|
|
FROM mld_kenmerkmelding fkmm
|
|
WHERE fkmm.mld_kenmerk_key = 301 --Kenmerk factuurdatum Beeldscherm
|
|
AND fkmm.mld_kenmerkmelding_verwijder IS NULL
|
|
AND fkmm.mld_melding_key =
|
|
mverv.mld_melding_key),
|
|
282, -- kenmerk Declaratie Beeldscherm-arm
|
|
(SELECT DISTINCT
|
|
fkmm.mld_kenmerkmelding_waarde
|
|
FROM mld_kenmerkmelding fkmm
|
|
WHERE fkmm.mld_kenmerk_key = 302 --Kenmerk factuurdatum Beeldscherm-arm
|
|
AND fkmm.mld_kenmerkmelding_verwijder IS NULL
|
|
AND fkmm.mld_melding_key =
|
|
mverv.mld_melding_key),
|
|
283, -- kenmerk Declaratie Bureau
|
|
(SELECT DISTINCT
|
|
fkmm.mld_kenmerkmelding_waarde
|
|
FROM mld_kenmerkmelding fkmm
|
|
WHERE fkmm.mld_kenmerk_key = 303 --Kenmerk factuurdatum Bureau
|
|
AND fkmm.mld_kenmerkmelding_verwijder IS NULL
|
|
AND fkmm.mld_melding_key =
|
|
mverv.mld_melding_key),
|
|
284, -- kenmerk Declaratie Bureaulamp
|
|
(SELECT DISTINCT
|
|
fkmm.mld_kenmerkmelding_waarde
|
|
FROM mld_kenmerkmelding fkmm
|
|
WHERE fkmm.mld_kenmerk_key = 304 --Kenmerk factuurdatum Bureaulamp
|
|
AND fkmm.mld_kenmerkmelding_verwijder IS NULL
|
|
AND fkmm.mld_melding_key =
|
|
mverv.mld_melding_key),
|
|
285, -- kenmerk Declaratie Bureaustoel
|
|
(SELECT DISTINCT
|
|
fkmm.mld_kenmerkmelding_waarde
|
|
FROM mld_kenmerkmelding fkmm
|
|
WHERE fkmm.mld_kenmerk_key = 305 --Kenmerk factuurdatum Bureaustoel
|
|
AND fkmm.mld_kenmerkmelding_verwijder IS NULL
|
|
AND fkmm.mld_melding_key =
|
|
mverv.mld_melding_key),
|
|
286, -- kenmerk Declaratie Laptophouder
|
|
(SELECT DISTINCT
|
|
fkmm.mld_kenmerkmelding_waarde
|
|
FROM mld_kenmerkmelding fkmm
|
|
WHERE fkmm.mld_kenmerk_key = 306 --Kenmerk factuurdatum Laptophouder
|
|
AND fkmm.mld_kenmerkmelding_verwijder IS NULL
|
|
AND fkmm.mld_melding_key =
|
|
mverv.mld_melding_key),
|
|
287, -- kenmerk Declaratie Muis
|
|
(SELECT DISTINCT
|
|
fkmm.mld_kenmerkmelding_waarde
|
|
FROM mld_kenmerkmelding fkmm
|
|
WHERE fkmm.mld_kenmerk_key = 307 --Kenmerk factuurdatum Muis
|
|
AND fkmm.mld_kenmerkmelding_verwijder IS NULL
|
|
AND fkmm.mld_melding_key =
|
|
mverv.mld_melding_key),
|
|
288, -- kenmerk Declaratie Toetsenbord
|
|
(SELECT DISTINCT
|
|
fkmm.mld_kenmerkmelding_waarde
|
|
FROM mld_kenmerkmelding fkmm
|
|
WHERE fkmm.mld_kenmerk_key = 308 --Kenmerk factuurdatum Toetsenbord
|
|
AND fkmm.mld_kenmerkmelding_verwijder IS NULL
|
|
AND fkmm.mld_melding_key =
|
|
mverv.mld_melding_key),
|
|
289, -- kenmerk Declaratie Voetensteun
|
|
(SELECT DISTINCT
|
|
fkmm.mld_kenmerkmelding_waarde
|
|
FROM mld_kenmerkmelding fkmm
|
|
WHERE fkmm.mld_kenmerk_key = 309 --Kenmerk factuurdatum Voetensteun
|
|
AND fkmm.mld_kenmerkmelding_verwijder IS NULL
|
|
AND fkmm.mld_melding_key =
|
|
mverv.mld_melding_key),
|
|
290, -- kenmerk Declaratie Webcam
|
|
(SELECT DISTINCT
|
|
fkmm.mld_kenmerkmelding_waarde
|
|
FROM mld_kenmerkmelding fkmm
|
|
WHERE fkmm.mld_kenmerk_key = 310 --Kenmerk factuurdatum Webcam
|
|
AND fkmm.mld_kenmerkmelding_verwijder IS NULL
|
|
AND fkmm.mld_melding_key =
|
|
mverv.mld_melding_key),
|
|
291, -- kenmerk Declaratie Zit-sta verhoger
|
|
(SELECT DISTINCT
|
|
fkmm.mld_kenmerkmelding_waarde
|
|
FROM mld_kenmerkmelding fkmm
|
|
WHERE fkmm.mld_kenmerk_key = 311 --Kenmerk factuurdatum Zit-sta verhoger
|
|
AND fkmm.mld_kenmerkmelding_verwijder IS NULL
|
|
AND fkmm.mld_melding_key =
|
|
mverv.mld_melding_key),
|
|
292, -- kenmerk Declaratie Overig
|
|
(SELECT DISTINCT
|
|
fkmm.mld_kenmerkmelding_waarde
|
|
FROM mld_kenmerkmelding fkmm
|
|
WHERE fkmm.mld_kenmerk_key = 312 --Kenmerk factuurdatum Overig
|
|
AND fkmm.mld_kenmerkmelding_verwijder IS NULL
|
|
AND fkmm.mld_melding_key =
|
|
mverv.mld_melding_key),
|
|
(SELECT DISTINCT
|
|
fkmm.mld_kenmerkmelding_waarde
|
|
FROM mld_kenmerkmelding fkmm
|
|
WHERE fkmm.mld_kenmerk_key = 344 --Kenmerk factuurdatum (bij stdmelding Bestelling Health2Work)
|
|
AND fkmm.mld_kenmerkmelding_verwijder IS NULL
|
|
AND fkmm.mld_melding_key =
|
|
mverv.mld_melding_key))
|
|
AS factuurdatum
|
|
FROM (SELECT pa.prs_perslid_key,
|
|
(SELECT fac.safe_to_number (
|
|
ud.fac_usrdata_prijs)
|
|
FROM prs_kenmerklink kml,
|
|
prs_kenmerk km,
|
|
fac_kenmerkdomein kd,
|
|
fac_usrdata ud
|
|
WHERE prs_link_key =
|
|
pa.prs_perslid_key
|
|
AND kml.prs_kenmerk_key =
|
|
km.prs_kenmerk_key
|
|
AND km.fac_kenmerkdomein_key =
|
|
kd.fac_kenmerkdomein_key
|
|
AND kd.fac_usrtab_key =
|
|
ud.fac_usrtab_key
|
|
AND fac.safe_to_number(kml.prs_kenmerklink_waarde) =
|
|
ud.fac_usrdata_key
|
|
AND kml.prs_kenmerk_key =
|
|
1001) --Kenmerk budget
|
|
budget,
|
|
(SELECT fac.safe_to_number (
|
|
ud.fac_usrdata_prijs)
|
|
FROM prs_kenmerklink kml,
|
|
prs_kenmerk km,
|
|
fac_kenmerkdomein kd,
|
|
fac_usrdata ud
|
|
WHERE prs_link_key =
|
|
pa.prs_perslid_key
|
|
AND kml.prs_kenmerk_key =
|
|
km.prs_kenmerk_key
|
|
AND km.fac_kenmerkdomein_key =
|
|
kd.fac_kenmerkdomein_key
|
|
AND kd.fac_usrtab_key =
|
|
ud.fac_usrtab_key
|
|
AND fac.safe_to_number(kml.prs_kenmerklink_waarde) =
|
|
ud.fac_usrdata_key
|
|
AND kml.prs_kenmerk_key =
|
|
1002) --Kenmerk extra_budget
|
|
extra_budget
|
|
FROM prs_perslid pa
|
|
WHERE pa.prs_afdeling_key > 1) pbudget,
|
|
mld_melding mverv,
|
|
mld_kenmerkmelding kmmverv,
|
|
mld_kenmerk kmverv
|
|
WHERE kmmverv.mld_melding_key =
|
|
mverv.mld_melding_key
|
|
AND kmverv.mld_kenmerk_key =
|
|
kmmverv.mld_kenmerk_key
|
|
AND kmverv.mld_srtkenmerk_key = 253 --Kenmerksoort Declaratie
|
|
AND mverv.prs_perslid_key_voor =
|
|
pbudget.prs_perslid_key))
|
|
WHERE (TO_NUMBER (mndverval) < TO_NUMBER (mndtussen))
|
|
GROUP BY prs_perslid_key, budget, extra_budget) b,
|
|
prs_perslid p,
|
|
prs_afdeling a,
|
|
prs_srtperslid f,
|
|
prs_kostenplaats k
|
|
WHERE p.prs_perslid_key = b.prs_perslid_key(+)
|
|
AND a.prs_afdeling_key = p.prs_afdeling_key
|
|
AND f.prs_srtperslid_key = p.prs_srtperslid_key
|
|
AND a.prs_kostenplaats_key = k.prs_kostenplaats_key(+)
|
|
AND p.prs_afdeling_key > 1;
|
|
|
|
CREATE OR REPLACE VIEW vest_v_wpl_declaraties
|
|
(
|
|
perslid_key,
|
|
voornaam,
|
|
naam,
|
|
tussenvoegsel,
|
|
voorletters,
|
|
email,
|
|
telefoonnr,
|
|
mobiel,
|
|
oslogin,
|
|
kostenplaats,
|
|
afdeling,
|
|
functie,
|
|
leverancier,
|
|
categorie,
|
|
bedrag,
|
|
status,
|
|
datum_definitief,
|
|
factuurdatum,
|
|
budget,
|
|
extra_budget,
|
|
totaal_budget,
|
|
decl_concept,
|
|
decl_goedgekeurd,
|
|
h2w_concept,
|
|
h2w_goedgekeurd,
|
|
totaal_concept,
|
|
totaal_goedgekeurd,
|
|
restbudget,
|
|
melding_key
|
|
)
|
|
AS
|
|
SELECT DISTINCT p.perslid_key,
|
|
p.voornaam,
|
|
p.naam,
|
|
p.tussenvoegsel,
|
|
p.voorletters,
|
|
p.email,
|
|
p.telefoonnr,
|
|
p.mobiel,
|
|
p.oslogin,
|
|
p.kostenplaats,
|
|
p.afdeling,
|
|
p.functie,
|
|
DECODE (m.mld_stdmelding_key,
|
|
342, 'Vrije bestelling',
|
|
343, 'Health2Work',
|
|
NULL),
|
|
km.mld_kenmerk_omschrijving,
|
|
fac.safe_to_number (kmm.mld_kenmerkmelding_waarde),
|
|
DECODE (m.mld_melding_status,
|
|
0, 'Ingediend',
|
|
1, 'Afgewezen',
|
|
2, x.fac_usrdata_omschr,
|
|
3, x.fac_usrdata_omschr,
|
|
4, x.fac_usrdata_omschr,
|
|
5, 'Goedgekeurd',
|
|
6, 'Goedgekeurd',
|
|
NULL), -- Er is een onderscheid tussen concept en ingediend via een kenmerk zodra de melding nog niet in behandeling is.
|
|
DECODE (
|
|
m.mld_stdmelding_key,
|
|
342, -- Als het de stdmelding Declaratie is, dan kijken naar de tracking, bij H2W is er geen tracking MLDAFM, maar de melding is meteen afgehandeld, dus gevuld kenmerk ophalen.
|
|
(SELECT MAX (fac_tracking_datum)
|
|
FROM fac_tracking t, fac_srtnotificatie sn
|
|
WHERE t.fac_srtnotificatie_key = sn.fac_srtnotificatie_key
|
|
AND sn.fac_srtnotificatie_code = 'MLDAFM'
|
|
AND t.fac_tracking_refkey = m.mld_melding_key),
|
|
(SELECT DISTINCT
|
|
fac.safe_to_date (fkmm.mld_kenmerkmelding_waarde,
|
|
'DD-MM-YYYY')
|
|
FROM mld_kenmerkmelding fkmm
|
|
WHERE fkmm.mld_kenmerk_key = 344 --Kenmerk factuurdatum bij melding Bestelling Health2Work
|
|
AND fkmm.mld_kenmerkmelding_verwijder IS NULL
|
|
AND fkmm.mld_melding_key = m.mld_melding_key))
|
|
AS datum_definitief,
|
|
(fac.safe_to_date (
|
|
DECODE (
|
|
kmm.mld_kenmerk_key,
|
|
281, -- kenmerk Declaratie Beeldscherm
|
|
(SELECT DISTINCT fkmm.mld_kenmerkmelding_waarde
|
|
FROM mld_kenmerkmelding fkmm
|
|
WHERE fkmm.mld_kenmerk_key = 301 --Kenmerk factuurdatum Beeldscherm
|
|
AND fkmm.mld_kenmerkmelding_verwijder IS NULL
|
|
AND fkmm.mld_melding_key = m.mld_melding_key),
|
|
282, -- kenmerk Declaratie Beeldscherm-arm
|
|
(SELECT DISTINCT fkmm.mld_kenmerkmelding_waarde
|
|
FROM mld_kenmerkmelding fkmm
|
|
WHERE fkmm.mld_kenmerk_key = 302 --Kenmerk factuurdatum Beeldscherm-arm
|
|
AND fkmm.mld_kenmerkmelding_verwijder IS NULL
|
|
AND fkmm.mld_melding_key = m.mld_melding_key),
|
|
283, -- kenmerk Declaratie Bureau
|
|
(SELECT DISTINCT fkmm.mld_kenmerkmelding_waarde
|
|
FROM mld_kenmerkmelding fkmm
|
|
WHERE fkmm.mld_kenmerk_key = 303 --Kenmerk factuurdatum Bureau
|
|
AND fkmm.mld_kenmerkmelding_verwijder IS NULL
|
|
AND fkmm.mld_melding_key = m.mld_melding_key),
|
|
284, -- kenmerk Declaratie Bureaulamp
|
|
(SELECT DISTINCT fkmm.mld_kenmerkmelding_waarde
|
|
FROM mld_kenmerkmelding fkmm
|
|
WHERE fkmm.mld_kenmerk_key = 304 --Kenmerk factuurdatum Bureaulamp
|
|
AND fkmm.mld_kenmerkmelding_verwijder IS NULL
|
|
AND fkmm.mld_melding_key = m.mld_melding_key),
|
|
285, -- kenmerk Declaratie Bureaustoel
|
|
(SELECT DISTINCT fkmm.mld_kenmerkmelding_waarde
|
|
FROM mld_kenmerkmelding fkmm
|
|
WHERE fkmm.mld_kenmerk_key = 305 --Kenmerk factuurdatum Bureaustoel
|
|
AND fkmm.mld_kenmerkmelding_verwijder IS NULL
|
|
AND fkmm.mld_melding_key = m.mld_melding_key),
|
|
286, -- kenmerk Declaratie Laptophouder
|
|
(SELECT DISTINCT fkmm.mld_kenmerkmelding_waarde
|
|
FROM mld_kenmerkmelding fkmm
|
|
WHERE fkmm.mld_kenmerk_key = 306 --Kenmerk factuurdatum Laptophouder
|
|
AND fkmm.mld_kenmerkmelding_verwijder IS NULL
|
|
AND fkmm.mld_melding_key = m.mld_melding_key),
|
|
287, -- kenmerk Declaratie Muis
|
|
(SELECT DISTINCT fkmm.mld_kenmerkmelding_waarde
|
|
FROM mld_kenmerkmelding fkmm
|
|
WHERE fkmm.mld_kenmerk_key = 307 --Kenmerk factuurdatum Muis
|
|
AND fkmm.mld_kenmerkmelding_verwijder IS NULL
|
|
AND fkmm.mld_melding_key = m.mld_melding_key),
|
|
288, -- kenmerk Declaratie Toetsenbord
|
|
(SELECT DISTINCT fkmm.mld_kenmerkmelding_waarde
|
|
FROM mld_kenmerkmelding fkmm
|
|
WHERE fkmm.mld_kenmerk_key = 308 --Kenmerk factuurdatum Toetsenbord
|
|
AND fkmm.mld_kenmerkmelding_verwijder IS NULL
|
|
AND fkmm.mld_melding_key = m.mld_melding_key),
|
|
289, -- kenmerk Declaratie Voetensteun
|
|
(SELECT DISTINCT fkmm.mld_kenmerkmelding_waarde
|
|
FROM mld_kenmerkmelding fkmm
|
|
WHERE fkmm.mld_kenmerk_key = 309 --Kenmerk factuurdatum Voetensteun
|
|
AND fkmm.mld_kenmerkmelding_verwijder IS NULL
|
|
AND fkmm.mld_melding_key = m.mld_melding_key),
|
|
290, -- kenmerk Declaratie Webcam
|
|
(SELECT DISTINCT fkmm.mld_kenmerkmelding_waarde
|
|
FROM mld_kenmerkmelding fkmm
|
|
WHERE fkmm.mld_kenmerk_key = 310 --Kenmerk factuurdatum Webcam
|
|
AND fkmm.mld_kenmerkmelding_verwijder IS NULL
|
|
AND fkmm.mld_melding_key = m.mld_melding_key),
|
|
291, -- kenmerk Declaratie Zit-sta verhoger
|
|
(SELECT DISTINCT fkmm.mld_kenmerkmelding_waarde
|
|
FROM mld_kenmerkmelding fkmm
|
|
WHERE fkmm.mld_kenmerk_key = 311 --Kenmerk factuurdatum Zit-sta verhoger
|
|
AND fkmm.mld_kenmerkmelding_verwijder IS NULL
|
|
AND fkmm.mld_melding_key = m.mld_melding_key),
|
|
292, -- kenmerk Declaratie Overig
|
|
(SELECT DISTINCT fkmm.mld_kenmerkmelding_waarde
|
|
FROM mld_kenmerkmelding fkmm
|
|
WHERE fkmm.mld_kenmerk_key = 312 --Kenmerk factuurdatum Overig
|
|
AND fkmm.mld_kenmerkmelding_verwijder IS NULL
|
|
AND fkmm.mld_melding_key = m.mld_melding_key),
|
|
(SELECT DISTINCT fkmm.mld_kenmerkmelding_waarde
|
|
FROM mld_kenmerkmelding fkmm
|
|
WHERE fkmm.mld_kenmerk_key = 344 --Kenmerk factuurdatum bij melding Bestelling Health2Work
|
|
AND fkmm.mld_kenmerkmelding_verwijder IS NULL
|
|
AND fkmm.mld_melding_key = m.mld_melding_key)),
|
|
'DD-MM-YYYY'))
|
|
AS factuurdatum,
|
|
p.budget,
|
|
p.extra_budget,
|
|
p.totaal_budget,
|
|
p.declaratie_concept,
|
|
p.declaratie_definitief,
|
|
p.h2w_concept,
|
|
p.h2w_definitief,
|
|
p.totaal_concept,
|
|
p.totaal_definitief,
|
|
p.restbudget,
|
|
m.mld_melding_key
|
|
FROM vest_v_wpl_pstatus p,
|
|
mld_melding m,
|
|
mld_srtkenmerk skm,
|
|
mld_kenmerk km,
|
|
mld_kenmerkmelding kmm,
|
|
(SELECT status_ud.fac_usrdata_omschr, status_kmm.mld_melding_key
|
|
FROM mld_kenmerkmelding status_kmm,
|
|
mld_srtkenmerk status_skm,
|
|
mld_kenmerk status_km,
|
|
fac_usrdata status_ud,
|
|
fac_usrtab status_ut
|
|
WHERE status_kmm.mld_kenmerkmelding_verwijder IS NULL
|
|
AND status_kmm.mld_kenmerk_key = status_km.mld_kenmerk_key
|
|
AND status_skm.mld_srtkenmerk_key =
|
|
status_km.mld_srtkenmerk_key
|
|
AND status_ut.fac_usrtab_key = 123 -- Eigen tabel 'Status declaratie'
|
|
AND status_ut.fac_usrtab_key = status_ud.fac_usrtab_key
|
|
AND status_ud.fac_usrdata_key =
|
|
fac.safe_to_number (
|
|
status_kmm.mld_kenmerkmelding_waarde)) x
|
|
WHERE m.mld_melding_key = kmm.mld_melding_key
|
|
AND kmm.mld_kenmerk_key = km.mld_kenmerk_key
|
|
AND skm.mld_srtkenmerk_key = km.mld_srtkenmerk_key
|
|
AND m.mld_stdmelding_key IN (342, 343) -- Stdmeldingen Declaratieformulier & Bestelling H2W
|
|
AND skm.mld_srtkenmerk_key = 253 --srtkenmerk declaratie (hier zijn alle categorieen een afgeleide van)
|
|
AND m.mld_melding_status IN (0, 2, 3, 4, 5, 6) --Status 1 bewust niet meegenomen, anders zou dit als bedrag ook (onterecht) mee gaan tellen
|
|
AND m.mld_melding_key = x.mld_melding_key(+)
|
|
AND m.prs_perslid_key_voor = p.perslid_key
|
|
UNION ALL
|
|
SELECT pa.perslid_key,
|
|
pa.voornaam,
|
|
pa.naam,
|
|
pa.tussenvoegsel,
|
|
pa.voorletters,
|
|
pa.email,
|
|
pa.telefoonnr,
|
|
pa.mobiel,
|
|
pa.oslogin,
|
|
pa.kostenplaats,
|
|
pa.afdeling,
|
|
pa.functie,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
(fac.safe_to_date (NULL, 'DD-MM-YYYY')),
|
|
pa.budget,
|
|
pa.extra_budget,
|
|
pa.totaal_budget,
|
|
pa.declaratie_concept,
|
|
pa.declaratie_definitief,
|
|
pa.h2w_concept,
|
|
pa.h2w_definitief,
|
|
pa.totaal_concept,
|
|
pa.totaal_definitief,
|
|
pa.restbudget,
|
|
NULL
|
|
FROM vest_v_wpl_pstatus pa
|
|
WHERE pa.perslid_key NOT IN
|
|
(SELECT p.perslid_key
|
|
FROM vest_v_wpl_pstatus p,
|
|
mld_melding m,
|
|
mld_srtkenmerk skm,
|
|
mld_kenmerk km,
|
|
mld_kenmerkmelding kmm
|
|
WHERE m.mld_melding_key = kmm.mld_melding_key
|
|
AND kmm.mld_kenmerk_key = km.mld_kenmerk_key
|
|
AND skm.mld_srtkenmerk_key = km.mld_srtkenmerk_key
|
|
AND m.mld_stdmelding_key IN (342, 343) -- Stdmeldingen Declaratieformulier & Bestelling H2W
|
|
AND skm.mld_srtkenmerk_key = 241 --srtkenmerk declaratie (hier zijn alle categorieen een afgeleide van)
|
|
AND m.mld_melding_status IN (0, 2, 3, 4, 5, 6) --Status 1 bewust niet meegenomen, anders zou dit als bedrag ook (onterecht) mee gaan tellen
|
|
AND m.prs_perslid_key_voor = p.perslid_key);
|
|
|
|
CREATE OR REPLACE VIEW vest_v_werkplekbudget
|
|
(
|
|
prs_perslid_key,
|
|
restbudget
|
|
)
|
|
AS
|
|
SELECT x.perslid_key,
|
|
DECODE (
|
|
(SELECT p.prs_kenmerklink_waarde
|
|
FROM prs_kenmerklink p
|
|
WHERE p.prs_link_key = x.perslid_key
|
|
AND prs_kenmerklink_niveau = 'P'
|
|
AND prs_kenmerk_key = 1020), --Kenmerk of er een thuiswerkovereenkomst is getekend, zonder OVK is budget altijd 0.
|
|
NULL,
|
|
0,
|
|
x.restbudget)
|
|
FROM ( SELECT perslid_key, restbudget AS restbudget
|
|
FROM vest_v_wpl_declaraties
|
|
GROUP BY perslid_key, restbudget) x;
|
|
|
|
CREATE OR REPLACE FORCE VIEW vest_v_wpl_portalh2wmobile
|
|
(
|
|
perslid_key,
|
|
link
|
|
)
|
|
AS
|
|
SELECT prs_perslid_key,
|
|
'Klik hier om het assortiment te bekijken van Health2Work en een bestelling te doen.'
|
|
FROM prs_perslid;
|
|
|
|
------ 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 |