Files
Customer/UWVA/uwva_hv.sql
Maarten van der Heide 05ac2c1839 UWVA#81315 HV-rap/Wegvallen contractregels (als beheerder verwijderd)
svn path=/Customer/trunk/; revision=62874
2023-12-06 21:52:52 +00:00

6465 lines
329 KiB
MySQL
Raw Blame History

--
-- $Id$
--
-- Script containing customer specific sql for UWVA (UWV Amsterdam)
-- related to HV/CAD/CNT/PCS.
DEFINE thisfile = 'UWVA_HV.SQL'
DEFINE dbuser = '^UWVA'
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 ------
-- HV views en rapportages (NoFa)
-- Bevat de mogelijke waarde voor ruimtehuurders op het laagste nivo zeg maar
/* Formatted on 2008/06/06 17:04 (Formatter Plus v4.8.7) */
CREATE OR REPLACE VIEW uwva_v_hv_afdeling (prs_kostenplaats_key,
prs_kostenplaats_nr,
prs_kostenplaats_oms,
prs_kostenplaats_nr_oms
)
AS
SELECT kp.prs_kostenplaats_key, kp.prs_kostenplaats_nr,
kp.prs_kostenplaats_omschrijving,
kp.prs_kostenplaats_nr || ' ' || kp.prs_kostenplaats_omschrijving
FROM prs_kostenplaats kp
WHERE kp.prs_kostenplaats_omschrijving NOT LIKE 'INACTIEF%'
AND kp.prs_kostenplaats_verwijder IS NULL
UNION ALL -- bezetingsverlies (= een - tijdelijk - leeg kantoor)
SELECT fac.safe_to_number ('-2'), 'LEEG', 'LEEG', 'LEEG'
FROM DUAL
UNION ALL -- inrichtingsleegstand (= na oplevering of bij verbouwing)
SELECT fac.safe_to_number ('-3'), 'LEEG INRICHTING', 'LEEG INRICHTING',
'LEEG INRICHTING'
FROM DUAL
UNION ALL -- leegstand (= kan op de markt worden gebracht)
SELECT fac.safe_to_number ('-4'), 'LEEG STRUCTUREEL', 'LEEG STRUCTUREEL',
'LEEG STRUCTUREEL'
FROM DUAL
UNION ALL
SELECT fac.safe_to_number ('-5'), 'ALGEMEEN', 'ALGEMEEN', 'ALGEMEEN'
FROM DUAL
UNION ALL
SELECT fac.safe_to_number ('-6'), 'CENTRALE WI', 'CENTRALE WI',
'CENTRALE WI'
FROM DUAL
UNION ALL -- opleveringsleegstand (= vaak fase voor inrichtingsleegstand)
SELECT fac.safe_to_number ('-7'), 'LEEG OPLEVERING', 'LEEG OPLEVERING',
'LEEG OPLEVERING'
FROM DUAL
/
-- Bevat de F&I contractgeinteresseerden
/* Formatted on 2008/03/21 15:42 (Formatter Plus v4.8.7) */
CREATE OR REPLACE VIEW uwva_v_hv_receivers (prs_perslid_key)
AS
SELECT gg.prs_perslid_key
FROM fac_gebruikersgroep gg
WHERE gg.fac_groep_key = 741 -- Groep = HV_contract_admin
/
-- KLANTSPECIFIEKE trigger die wijziging van contracteinddatum van HV-contracten als CUST01 notificeert
-- naar alle personen in uwva_v_hv_receivers
-- UWVA#26787: Dezelfde notificatie ook op FDO-contracten (ins_discipline_key=358)!
CREATE OR REPLACE TRIGGER uwva_t_cnt_contract_bu
BEFORE UPDATE
ON cnt_contract
FOR EACH ROW
DECLARE
CURSOR c1
IS
SELECT prs_perslid_key
FROM uwva_v_hv_receivers;
BEGIN
IF :OLD.cnt_contract_looptijd_tot <> :NEW.cnt_contract_looptijd_tot
AND :NEW.ins_discipline_key IN (198, 358)
THEN
FOR rec1 IN c1
LOOP
fac.putnotificationsrtprio (NULL,
rec1.prs_perslid_key,
'CUST01',
:NEW.cnt_contract_key,
'Einddatum van contract '||:new.cnt_contract_nummer_intern||' is gewijzigd',
NULL,
NULL,
NULL,
NULL,
2,
NULL
);
END LOOP;
END IF;
END;
/
-- Bevat notificaties naar alle personen in uwva_v_hv_receivers bij wijziging financiele verplichting (CUST02)
-- of status (CUST03) van HV-contracten.
-- En de notificaties naar contractbeheerders als rappel-, opzeg- of einddatum is of binnenkort wordt bereikt.
-- LET OP: CUST04, CUST05 en CUST06 voor alle contractsoorten BEHALVE ABONNEMENTEN!!!
-- UWVA#26787: Dezelfde notificatie ook op FDO-contracten (ins_discipline_key=358)!
/* Formatted on 7-6-2013 15:55:56 (QP5 v5.115.810.9015) */
CREATE OR REPLACE VIEW uwva_v_noti_hv_cntmut
(
code,
sender,
receiver,
text,
KEY,
par1,
par2,
xkey
)
AS
SELECT 'CUST02',
'',
hr.prs_perslid_key,
'Financi<EFBFBD>le verplichting van '
|| a.cnt_contract_nummer_intern
|| ' is gewijzigd',
a.cnt_contract_key,
a.cnt_contract_nummer_intern,
NULL,
NULL
FROM (SELECT DISTINCT
c.cnt_contract_key,
c.cnt_contract_nummer_intern,
c.prs_perslid_key_beh
FROM cnt_v_aanwezigcontract c, cnt_kenmerkcontract kc
WHERE c.ins_discipline_key = 198
AND c.cnt_contract_key = kc.cnt_contract_key
AND kc.cnt_kenmerk_key IN
(221, -- Kosten excl. BTW 1
242, -- BTW-tarief 1
263, -- Kosten excl. BTW 2
281, -- BTW-tarief 2
392, -- Kosten excl. BTW 3
393, -- BTW-tarief 3
396, -- Kosten excl. BTW 4
421, -- BTW-tarief 4
400, -- Kosten excl. BTW 5
401 -- BTW-tarief 5
)
AND (TRUNC (kc.cnt_kenmerkcontract_aanmaak) =
TRUNC (SYSDATE)
OR TRUNC (kc.cnt_kenmerkcontract_wijzig) =
TRUNC (SYSDATE))) a
LEFT JOIN
(SELECT c.cnt_contract_key,
kc.cnt_kenmerkcontract_waarde actief
FROM cnt_v_aanwezigcontract c, cnt_kenmerkcontract kc
WHERE c.cnt_contract_key = kc.cnt_contract_key
AND kc.cnt_kenmerk_key = 184) b
ON a.cnt_contract_key = b.cnt_contract_key,
uwva_v_hv_receivers hr
WHERE b.actief = '1221'
UNION ALL
SELECT 'CUST02',
'',
hr.prs_perslid_key,
'Financi<EFBFBD>le verplichting van '
|| a.cnt_contract_nummer_intern
|| ' is gewijzigd',
a.cnt_contract_key,
a.cnt_contract_nummer_intern,
NULL,
NULL
FROM (SELECT DISTINCT
c.cnt_contract_key,
c.cnt_contract_nummer_intern,
c.prs_perslid_key_beh
FROM cnt_v_aanwezigcontract c, cnt_kenmerkcontract kc
WHERE c.ins_discipline_key = 358
AND c.cnt_contract_looptijd_tot > SYSDATE
AND c.cnt_contract_key = kc.cnt_contract_key
AND kc.cnt_kenmerk_key IN
(751, -- Schoonmaak 1
752, -- BTW-tarief 1
753, -- Catering 2
754, -- BTW-tarief 2
755, -- Beveiliging 3
760, -- BTW-tarief 3
757, -- Administratie 4
758, -- BTW-tarief 4
759, -- Overig 5
760 -- BTW-tarief 5
)
AND (TRUNC (kc.cnt_kenmerkcontract_aanmaak) =
TRUNC (SYSDATE)
OR TRUNC (kc.cnt_kenmerkcontract_wijzig) =
TRUNC (SYSDATE))) a,
uwva_v_hv_receivers hr
UNION ALL
SELECT 'CUST03',
'',
hr.prs_perslid_key,
'Contractstatus van '
|| a.cnt_contract_nummer_intern
|| ' is gewijzigd',
a.cnt_contract_key,
a.cnt_contract_nummer_intern,
NULL,
NULL
FROM (SELECT c.cnt_contract_key,
c.cnt_contract_nummer_intern,
c.prs_perslid_key_beh,
ud.fac_usrdata_omschr contractstatus,
NVL (kc.cnt_kenmerkcontract_wijzig,
kc.cnt_kenmerkcontract_aanmaak)
contractstatusdatum
FROM cnt_v_aanwezigcontract c,
cnt_kenmerkcontract kc,
fac_usrdata ud
WHERE c.ins_discipline_key = 198
AND c.cnt_contract_key = kc.cnt_contract_key
AND kc.cnt_kenmerk_key = 183
AND fac.safe_to_number (kc.cnt_kenmerkcontract_waarde) =
ud.fac_usrdata_key) a
LEFT JOIN
(SELECT c.cnt_contract_key,
kc.cnt_kenmerkcontract_waarde actief,
NVL (kc.cnt_kenmerkcontract_wijzig,
kc.cnt_kenmerkcontract_aanmaak)
actiefdatum
FROM cnt_v_aanwezigcontract c, cnt_kenmerkcontract kc
WHERE c.cnt_contract_key = kc.cnt_contract_key
AND kc.cnt_kenmerk_key = 184) b
ON a.cnt_contract_key = b.cnt_contract_key,
uwva_v_hv_receivers hr
WHERE (TRUNC (a.contractstatusdatum) = TRUNC (SYSDATE)
AND a.contractstatus IN
('Actief', 'Beeindigd', 'Opgezegd en bevestigd'))
OR TRUNC (b.actiefdatum) = TRUNC (SYSDATE)
UNION ALL
SELECT 'CUST03',
'',
hr.prs_perslid_key,
'Contractstatus van '
|| a.cnt_contract_nummer_intern
|| ' is gewijzigd',
a.cnt_contract_key,
a.cnt_contract_nummer_intern,
NULL,
NULL
FROM (SELECT c.cnt_contract_key,
c.cnt_contract_nummer_intern,
c.prs_perslid_key_beh,
ud.fac_usrdata_omschr contractstatus,
NVL (kc.cnt_kenmerkcontract_wijzig,
kc.cnt_kenmerkcontract_aanmaak)
contractstatusdatum
FROM cnt_v_aanwezigcontract c,
cnt_kenmerkcontract kc,
fac_usrdata ud
WHERE c.ins_discipline_key = 358
AND c.cnt_contract_looptijd_tot > SYSDATE
AND c.cnt_contract_key = kc.cnt_contract_key
AND kc.cnt_kenmerk_key = 183
AND fac.safe_to_number (kc.cnt_kenmerkcontract_waarde) =
ud.fac_usrdata_key) a,
uwva_v_hv_receivers hr
WHERE TRUNC (a.contractstatusdatum) = TRUNC (SYSDATE)
AND a.contractstatus IN
('Actief', 'Beeindigd', 'Opgezegd en bevestigd')
UNION ALL
SELECT 'CUST04',
'',
c.prs_perslid_key_beh,
'Rappeldatum van contract '
|| c.cnt_contract_nummer_intern
|| ' is gepasseerd',
c.cnt_contract_key,
c.cnt_contract_nummer_intern,
NULL,
NULL
FROM cnt_v_aanwezigcontract c
WHERE c.ins_discipline_key != 360 -- Abonnementen
AND TRUNC (cnt.cnt_getRappeldatum (c.cnt_contract_key)) =
TRUNC (SYSDATE)
UNION ALL
SELECT 'CUST05',
'',
c.prs_perslid_key_beh,
'4 weken voor opzegdatum contract '
|| c.cnt_contract_nummer_intern,
c.cnt_contract_key,
c.cnt_contract_nummer_intern,
NULL,
NULL
FROM cnt_v_aanwezigcontract c
WHERE c.ins_discipline_key != 360 -- Abonnementen
AND TRUNC (cnt.cnt_getOpzegdatum (c.cnt_contract_key)) =
TRUNC (SYSDATE + 28)
UNION ALL
SELECT 'CUST06',
'',
c.prs_perslid_key_beh,
'4 weken voor einddatum contract '
|| c.cnt_contract_nummer_intern,
c.cnt_contract_key,
c.cnt_contract_nummer_intern,
NULL,
NULL
FROM cnt_v_aanwezigcontract c
WHERE c.ins_discipline_key != 360 -- Abonnementen
AND TRUNC (c.cnt_contract_looptijd_tot) = TRUNC (SYSDATE + 28)
/
/* Formatted on 6-4-2011 15:54:55 (QP5 v5.115.810.9015) */
CREATE OR REPLACE VIEW uwva_v_hv_satgeg
(
district,
gebouw,
gebouw_key,
gebouw_kpn,
ruimtegebruik,
verhuurbaar,
nen2580_opp,
div_kpn,
afd_kpn,
ruimten,
werkplekken,
personen
)
AS -- db_methode PAND of RUIMTE
(SELECT x1.alg_district_omschrijving,
x1.alg_gebouw_code,
x1.alg_gebouw_key,
x1.gebouw_kpn,
y.ruimtegebruik,
y.verhuurbaar,
DECODE (
y.div_oms,
'KLANTZONE', -- over KLANTZONE opp. gaat klantzone_factor
(SELECT fac.safe_to_number (
COALESCE (ud.fac_usrdata_omschr, '0')
)
* y.geb_opp
FROM fac_usrdata ud
WHERE ud.fac_usrdata_key = 1282), -- klantzone_factor
y.geb_opp
)
geb_opp,
DECODE (y.div_oms, 'KLANTZONE', -- KLANTZONE doorb. op 600000,
'600000', -- Soc. Med. Zaken (BKF)
y.div_kpn) div_kpn,
y.afd_kpn afd_kpn,
y.geb_ruimten,
y.geb_werkplekken,
y.geb_personen
FROM (SELECT g.alg_gebouw_key,
d.alg_district_omschrijving,
g.alg_gebouw_code,
kp.prs_kostenplaats_upper gebouw_kpn
FROM alg_gebouw g,
alg_locatie l,
alg_district d,
prs_kostenplaats kp
WHERE g.alg_gebouw_verwijder IS NULL
AND g.alg_srtgebouw_key = 61 -- Satelliet
AND g.alg_locatie_key = l.alg_locatie_key
AND l.alg_district_key = d.alg_district_key
AND d.alg_regio_key NOT IN (21, 41) -- Oude geb./CWI
AND g.prs_kostenplaats_key =
kp.prs_kostenplaats_key(+)) x1
LEFT JOIN
( SELECT a.alg_gebouw_key,
f.ruimtegebruik,
a.verhuurbaar,
b.div_kpn,
b.div_oms,
b.afd_kpn,
SUM (a.ruimte) geb_ruimten,
SUM(fac.safe_to_number (
COALESCE (d.werkplekken, '0')
))
geb_werkplekken,
SUM (
fac.safe_to_number (COALESCE (e.personen, '0'))
)
geb_personen,
SUM( (COALESCE (a.opp, 0) * COALESCE (b.div_bez, 0))
/ COALESCE (c.tot_bez, 1))
geb_opp
FROM (SELECT r.alg_ruimte_key,
v.alg_gebouw_key,
sr.prs_verhuurbaar
verhuurbaar,
1 ruimte,
r.alg_ruimte_bruto_vloeropp
opp
FROM alg_v_aanwezigruimte r,
alg_verdieping v,
alg_srtruimte sr
WHERE r.alg_verdieping_key =
v.alg_verdieping_key
AND r.alg_srtruimte_key =
sr.alg_srtruimte_key(+))
a
LEFT JOIN -- divisie(s) op ruimte
(SELECT ra.alg_ruimte_key,
afd.prs_afdeling_naam
div_kpn,
afd.prs_afdeling_omschrijving
div_oms,
(SELECT a1.prs_afdeling_naam
FROM prs_afdeling a1
WHERE a1.prs_afdeling_key =
ra.prs_afdeling_key)
afd_kpn,
ra.prs_ruimteafdeling_bezetting
div_bez
FROM prs_v_aanwezigruimteafdeling ra,
prs_v_afdeling_boom ab,
prs_afdeling afd
WHERE ra.prs_afdeling_key =
ab.prs_afdeling_key
AND ab.prs_afdeling_key1 =
afd.prs_afdeling_key)
b
ON a.alg_ruimte_key = b.alg_ruimte_key
LEFT JOIN -- bezettingstotaal (NULL of >0!)
( SELECT ra.alg_ruimte_key,
SUM(ra.prs_ruimteafdeling_bezetting)
tot_bez
FROM prs_v_aanwezigruimteafdeling ra
WHERE ra.prs_ruimteafdeling_bezetting > 0
GROUP BY ra.alg_ruimte_key) c
ON a.alg_ruimte_key = c.alg_ruimte_key
LEFT JOIN -- werkplekken (1143)
(SELECT ok.alg_onrgoed_key,
ok.alg_onrgoedkenmerk_waarde
werkplekken
FROM alg_v_aanwezigonrgoedkenmerk ok
WHERE ok.alg_kenmerk_key = 1143
AND ok.alg_onrgoed_niveau = 'R')
d
ON a.alg_ruimte_key = d.alg_onrgoed_key
LEFT JOIN -- personen (1144)
(SELECT ok.alg_onrgoed_key,
ok.alg_onrgoedkenmerk_waarde
personen
FROM alg_v_aanwezigonrgoedkenmerk ok
WHERE ok.alg_kenmerk_key = 1144
AND ok.alg_onrgoed_niveau = 'R') e
ON a.alg_ruimte_key = e.alg_onrgoed_key
LEFT JOIN -- ruimtegebruik (1240)
(SELECT ok.alg_onrgoed_key,
ud.fac_usrdata_omschr ruimtegebruik
FROM alg_v_aanwezigonrgoedkenmerk ok,
fac_usrdata ud
WHERE ok.alg_kenmerk_key = 1240
AND ok.alg_onrgoed_niveau = 'R'
AND ud.fac_usrdata_key =
fac.safe_to_number (
ok.alg_onrgoedkenmerk_waarde
)) f
ON a.alg_ruimte_key = f.alg_onrgoed_key
GROUP BY a.alg_gebouw_key,
f.ruimtegebruik,
a.verhuurbaar,
b.div_kpn,
b.div_oms,
b.afd_kpn) y
ON x1.alg_gebouw_key = y.alg_gebouw_key
WHERE y.geb_opp > 0);
CREATE OR REPLACE VIEW uwva_v_rap_pandcodelijst_all
(
fclt_f_pandcode,
fclt_f_pandfunctie,
pand_kpn,
adres,
postcode,
fclt_f_plaats,
fclt_f_kavel
)
AS
SELECT a.alg_gebouw_code,
--COALESCE (e.uwv_cwi, 'Satelliet'),
--COALESCE (a.alg_srtgebouw_omschrijving, e.uwv_cwi, 'Satelliet'),
a.alg_srtgebouw_omschrijving,
a.prs_kostenplaats_upper,
COALESCE (b.mld_adres_bezoek_adres, c.alg_locatie_adres) adres,
COALESCE (b.mld_adres_bezoek_postcode, c.alg_locatie_postcode) postcode,
COALESCE (b.mld_adres_bezoek_plaats, c.alg_locatie_plaats) plaats,
d.kavel
FROM (SELECT g.alg_gebouw_key, g.alg_gebouw_code, sg.alg_srtgebouw_key, sg.alg_srtgebouw_omschrijving, kp.prs_kostenplaats_upper
FROM alg_v_aanweziggebouw g, alg_srtgebouw sg, prs_kostenplaats kp
WHERE g.alg_gebouw_vervaldatum IS NULL -- Geen vervallen gebouwen
AND g.alg_srtgebouw_key = sg.alg_srtgebouw_key(+)
AND g.prs_kostenplaats_key = kp.prs_kostenplaats_key(+)) a
LEFT JOIN -- Adres info bij gebouw
(SELECT g.alg_gebouw_key, a.mld_adres_bezoek_adres, a.mld_adres_bezoek_postcode, a.mld_adres_bezoek_plaats
FROM alg_gebouw g, mld_adres a
WHERE g.mld_adres_key = a.mld_adres_key
AND a.mld_adres_verwijder IS NULL) b
ON a.alg_gebouw_key = b.alg_gebouw_key
LEFT JOIN (SELECT g.alg_gebouw_key, l.alg_locatie_adres, l.alg_locatie_postcode, l.alg_locatie_plaats, d.alg_regio_key
FROM alg_gebouw g, alg_locatie l, alg_district d
WHERE g.alg_locatie_key = l.alg_locatie_key
AND l.alg_district_key = d.alg_district_key) c
ON a.alg_gebouw_key = c.alg_gebouw_key
LEFT JOIN (SELECT ok.alg_onrgoed_key, ud.fac_usrdata_omschr kavel
FROM alg_v_aanwezigonrgoedkenmerk ok, fac_v_aanwezigusrdata ud
WHERE ok.alg_kenmerk_key = 1420 -- Kavel
AND ok.alg_onrgoed_niveau = 'G'
--AND ud.fac_usrtab_key = 922
AND fac.safe_to_number (ok.alg_onrgoedkenmerk_waarde) = ud.fac_usrdata_key) d
ON a.alg_gebouw_key = d.alg_onrgoed_key
LEFT JOIN -- Huurcontract info bij gebouw; soms >1 per gebouw?
(SELECT DISTINCT cp.cnt_alg_plaats_key
--CASE
-- WHEN fac.safe_to_number (SUBSTR (c.cnt_contract_nummer_intern, 7, 1)) < 5
-- THEN 'Algemeen'
-- ELSE 'Werkbedrijf'
--END
-- uwv_cwi
FROM cnt_v_aanwezigcontract c, cnt_contract_plaats cp, cnt_kenmerkcontract kc
WHERE c.ins_discipline_key = 198 -- Huurcontract
AND c.cnt_contract_key = cp.cnt_contract_key
AND cp.cnt_contract_plaats_verwijder IS NULL
AND cp.cnt_alg_plaats_code = 'G'
AND c.cnt_contract_key = kc.cnt_contract_key
AND kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_kenmerk_key = 184 -- Actief
AND kc.cnt_kenmerkcontract_waarde = '1221') e
ON a.alg_gebouw_key = e.cnt_alg_plaats_key
WHERE (a.alg_srtgebouw_key = 61 AND c.alg_regio_key NOT IN (21, 41)) -- Satelliet
OR e.cnt_alg_plaats_key IS NOT NULL;
CREATE OR REPLACE VIEW uwva_v_rap_hv_pandcodelijst
AS
SELECT fclt_f_pandcode,
fclt_f_pandfunctie,
pand_kpn,
adres,
postcode,
fclt_f_plaats,
fclt_f_kavel
FROM uwva_v_rap_pandcodelijst_all
WHERE fclt_f_pandfunctie NOT IN ('HRM', 'Workshop');
CREATE OR REPLACE VIEW uwva_v_rap_hv_pandcode_lfm
(
fclt_f_pandcode,
fclt_f_pandfunctie,
pand_kpn,
adres,
postcode,
fclt_f_plaats,
fclt_f_kavel,
lfm_naam,
lfm_nr,
fsm_email,
fsm1_naam,
fsm1_nr,
fsm2_naam,
fsm2_nr,
fsm3_naam,
fsm3_nr,
fsm4_naam,
fsm4_nr,
fsm5_naam,
fsm5_nr,
beveiliging,
piket,
postkamer_nr,
postkamer_contact,
fclt_f_regio_fb,
klantzone,
postkamer,
meldkamer,
restaurant_aanwezig,
naam_cat_manager,
tel_cat_manager,
catalogi,
naam_reg_ict_coordinator,
tel_reg_ict_coordinator,
met_gemeente,
narrowcasting,
hoofdhuurder,
toegangscontrolesysteem,
regiomanager,
projectleider_fb
)
AS
SELECT a.alg_gebouw_code,
--COALESCE (e.uwv_cwi, 'Satelliet'),
--COALESCE (a.alg_srtgebouw_omschrijving, e.uwv_cwi, 'Satelliet'),
a.alg_srtgebouw_omschrijving,
a.prs_kostenplaats_upper,
COALESCE (b.mld_adres_bezoek_adres, c.alg_locatie_adres) adres,
COALESCE (b.mld_adres_bezoek_postcode, c.alg_locatie_postcode) postcode,
COALESCE (b.mld_adres_bezoek_plaats, c.alg_locatie_plaats) plaats,
d.kavel,
lfm.naam,
lfm.nr,
efsm.waarde,
fsm1.naam,
fsm1.nr,
fsm2.naam,
fsm2.nr,
fsm3.naam,
fsm3.nr,
fsm4.naam,
fsm4.nr,
fsm5.naam,
fsm5.nr,
bn.waarde,
pn.waarde,
pt.waarde,
pc.waarde,
c.alg_district_omschrijving,
DECODE (kz.waarde, 1, 'Ja', 0, 'Nee', NULL),
DECODE (pk.waarde, 1, 'Ja', 0, 'Nee', NULL),
DECODE (mk.waarde, 1, 'Ja', 0, 'Nee', NULL),
DECODE (ra.waarde, 1, 'Ja', 0, 'Nee', NULL),
nc.waarde,
tc.waarde,
dsc.disc,
ric.naam,
ric.nr,
DECODE (mgem.waarde, 1, 'Ja', 0, 'Nee', NULL) waarde,
DECODE (ncas.waarde, 1, 'Ja', 0, 'Nee', NULL) waarde,
DECODE (hh.waarde, 1, 'Ja', 0, 'Nee', NULL) waarde,
tcs.waarde,
rm.naam regiomanager,
pl.naam projectleider_fb
FROM (SELECT g.alg_locatie_key, g.alg_gebouw_key, g.alg_gebouw_code, sg.alg_srtgebouw_key, sg.alg_srtgebouw_omschrijving, kp.prs_kostenplaats_upper
FROM alg_v_aanweziggebouw g, alg_srtgebouw sg, prs_kostenplaats kp
WHERE g.alg_gebouw_vervaldatum IS NULL -- Geen vervallen gebouwen
AND g.alg_srtgebouw_key = sg.alg_srtgebouw_key(+)
AND g.prs_kostenplaats_key = kp.prs_kostenplaats_key(+)) a
LEFT JOIN -- Adres info bij gebouw
(SELECT g.alg_gebouw_key, a.mld_adres_bezoek_adres, a.mld_adres_bezoek_postcode, a.mld_adres_bezoek_plaats
FROM alg_gebouw g, mld_adres a
WHERE g.mld_adres_key = a.mld_adres_key
AND a.mld_adres_verwijder IS NULL) b
ON a.alg_gebouw_key = b.alg_gebouw_key
LEFT JOIN (SELECT g.alg_gebouw_key, l.alg_locatie_adres, l.alg_locatie_postcode, l.alg_locatie_plaats, d.alg_district_omschrijving, d.alg_regio_key, d.alg_district_key
FROM alg_gebouw g, alg_locatie l, alg_district d
WHERE g.alg_locatie_key = l.alg_locatie_key
AND l.alg_district_key = d.alg_district_key) c
ON a.alg_gebouw_key = c.alg_gebouw_key
LEFT JOIN -- 1420=Kavel
(SELECT ok.alg_onrgoed_key, ud.fac_usrdata_omschr kavel
FROM alg_v_aanwezigonrgoedkenmerk ok, fac_v_aanwezigusrdata ud
WHERE ok.alg_kenmerk_key = 1420
AND ok.alg_onrgoed_niveau = 'G'
--AND ud.fac_usrtab_key = 922
AND fac.safe_to_number (ok.alg_onrgoedkenmerk_waarde) = ud.fac_usrdata_key) d
ON a.alg_gebouw_key = d.alg_onrgoed_key
LEFT JOIN -- 1020=LFM
(SELECT ok.alg_onrgoed_key, pf.prs_perslid_naam_full naam, kl.prs_kenmerklink_waarde nr
FROM alg_v_aanwezigonrgoedkenmerk ok, prs_v_perslid_fullnames_all pf, prs_v_aanwezigkenmerklink kl
WHERE ok.alg_kenmerk_key = 1020
AND ok.alg_onrgoed_niveau = 'L'
AND fac.safe_to_number (ok.alg_onrgoedkenmerk_waarde) = pf.prs_perslid_key
AND pf.prs_perslid_key = kl.prs_link_key(+)
AND kl.prs_kenmerk_key(+) = 1353 -- Telefoonnummer FB
AND kl.prs_kenmerklink_niveau(+) = 'P') lfm
ON a.alg_locatie_key = lfm.alg_onrgoed_key
LEFT JOIN -- 1460=FSM1
(SELECT ok.alg_onrgoed_key, pf.prs_perslid_naam_full naam, kl.prs_kenmerklink_waarde nr
FROM alg_v_aanwezigonrgoedkenmerk ok, prs_v_perslid_fullnames_all pf, prs_v_aanwezigkenmerklink kl
WHERE ok.alg_kenmerk_key = 1460
AND ok.alg_onrgoed_niveau = 'L'
AND fac.safe_to_number (ok.alg_onrgoedkenmerk_waarde) = pf.prs_perslid_key
AND pf.prs_perslid_key = kl.prs_link_key(+)
AND kl.prs_kenmerk_key(+) = 1353 -- Telefoonnummer FB
AND kl.prs_kenmerklink_niveau(+) = 'P') fsm1
ON a.alg_locatie_key = fsm1.alg_onrgoed_key
LEFT JOIN -- 1461=FSM2
(SELECT ok.alg_onrgoed_key, pf.prs_perslid_naam_full naam, kl.prs_kenmerklink_waarde nr
FROM alg_v_aanwezigonrgoedkenmerk ok, prs_v_perslid_fullnames_all pf, prs_v_aanwezigkenmerklink kl
WHERE ok.alg_kenmerk_key = 1461
AND ok.alg_onrgoed_niveau = 'L'
AND fac.safe_to_number (ok.alg_onrgoedkenmerk_waarde) = pf.prs_perslid_key
AND pf.prs_perslid_key = kl.prs_link_key(+)
AND kl.prs_kenmerk_key(+) = 1353 -- Telefoonnummer FB
AND kl.prs_kenmerklink_niveau(+) = 'P') fsm2
ON a.alg_locatie_key = fsm2.alg_onrgoed_key
LEFT JOIN -- 1462=FSM3
(SELECT ok.alg_onrgoed_key, pf.prs_perslid_naam_full naam, kl.prs_kenmerklink_waarde nr
FROM alg_v_aanwezigonrgoedkenmerk ok, prs_v_perslid_fullnames_all pf, prs_v_aanwezigkenmerklink kl
WHERE ok.alg_kenmerk_key = 1462
AND ok.alg_onrgoed_niveau = 'L'
AND fac.safe_to_number (ok.alg_onrgoedkenmerk_waarde) = pf.prs_perslid_key
AND pf.prs_perslid_key = kl.prs_link_key(+)
AND kl.prs_kenmerk_key(+) = 1353 -- Telefoonnummer FB
AND kl.prs_kenmerklink_niveau(+) = 'P') fsm3
ON a.alg_locatie_key = fsm3.alg_onrgoed_key
LEFT JOIN -- 1463=FSM4
(SELECT ok.alg_onrgoed_key, pf.prs_perslid_naam_full naam, kl.prs_kenmerklink_waarde nr
FROM alg_v_aanwezigonrgoedkenmerk ok, prs_v_perslid_fullnames_all pf, prs_v_aanwezigkenmerklink kl
WHERE ok.alg_kenmerk_key = 1463
AND ok.alg_onrgoed_niveau = 'L'
AND fac.safe_to_number (ok.alg_onrgoedkenmerk_waarde) = pf.prs_perslid_key
AND pf.prs_perslid_key = kl.prs_link_key(+)
AND kl.prs_kenmerk_key(+) = 1353 -- Telefoonnummer FB
AND kl.prs_kenmerklink_niveau(+) = 'P') fsm4
ON a.alg_locatie_key = fsm4.alg_onrgoed_key
LEFT JOIN -- 1469=FSM5
(SELECT ok.alg_onrgoed_key, pf.prs_perslid_naam_full naam, kl.prs_kenmerklink_waarde nr
FROM alg_v_aanwezigonrgoedkenmerk ok, prs_v_perslid_fullnames_all pf, prs_v_aanwezigkenmerklink kl
WHERE ok.alg_kenmerk_key = 1469
AND ok.alg_onrgoed_niveau = 'L'
AND fac.safe_to_number (ok.alg_onrgoedkenmerk_waarde) = pf.prs_perslid_key
AND pf.prs_perslid_key = kl.prs_link_key(+)
AND kl.prs_kenmerk_key(+) = 1353 -- Telefoonnummer FB
AND kl.prs_kenmerklink_niveau(+) = 'P') fsm5
ON a.alg_locatie_key = fsm5.alg_onrgoed_key
LEFT JOIN -- 1471=Telefoonnr beveiliging
(SELECT ok.alg_onrgoed_key, ok.alg_onrgoedkenmerk_waarde waarde
FROM alg_v_aanwezigonrgoedkenmerk ok
WHERE ok.alg_kenmerk_key = 1471
AND ok.alg_onrgoed_niveau = 'L') bn
ON a.alg_locatie_key = bn.alg_onrgoed_key
LEFT JOIN -- 1472=Piketnr
(SELECT ok.alg_onrgoed_key, ok.alg_onrgoedkenmerk_waarde waarde
FROM alg_v_aanwezigonrgoedkenmerk ok
WHERE ok.alg_kenmerk_key = 1472
AND ok.alg_onrgoed_niveau = 'L') pn
ON a.alg_locatie_key = pn.alg_onrgoed_key
LEFT JOIN -- 1473=Klantzone aanwezig
(SELECT ok.alg_onrgoed_key, ok.alg_onrgoedkenmerk_waarde waarde
FROM alg_v_aanwezigonrgoedkenmerk ok
WHERE ok.alg_kenmerk_key = 1473
AND ok.alg_onrgoed_niveau = 'L') kz
ON a.alg_locatie_key = kz.alg_onrgoed_key
LEFT JOIN -- 1474=Postkamer aanwezig
(SELECT ok.alg_onrgoed_key, ok.alg_onrgoedkenmerk_waarde waarde
FROM alg_v_aanwezigonrgoedkenmerk ok
WHERE ok.alg_kenmerk_key = 1474
AND ok.alg_onrgoed_niveau = 'L') pk
ON a.alg_locatie_key = pk.alg_onrgoed_key
LEFT JOIN -- 1475=Meldkamer aanwezig
(SELECT ok.alg_onrgoed_key, ok.alg_onrgoedkenmerk_waarde waarde
FROM alg_v_aanwezigonrgoedkenmerk ok
WHERE ok.alg_kenmerk_key = 1475
AND ok.alg_onrgoed_niveau = 'L') mk
ON a.alg_locatie_key = mk.alg_onrgoed_key
LEFT JOIN -- 1520=Restaurant aanwezig
(SELECT ok.alg_onrgoed_key, ok.alg_onrgoedkenmerk_waarde waarde
FROM alg_v_aanwezigonrgoedkenmerk ok
WHERE ok.alg_kenmerk_key = 1520
AND ok.alg_onrgoed_niveau = 'L') ra
ON a.alg_locatie_key = ra.alg_onrgoed_key
LEFT JOIN -- 1521=Naam catering manager (verwijderd?)
(SELECT ok.alg_onrgoed_key, ok.alg_onrgoedkenmerk_waarde waarde
FROM alg_v_aanwezigonrgoedkenmerk ok
WHERE ok.alg_kenmerk_key = 1521
AND ok.alg_onrgoed_niveau = 'L') nc
ON a.alg_locatie_key = nc.alg_onrgoed_key
LEFT JOIN -- 1522=Telefoon catering manager
(SELECT ok.alg_onrgoed_key, ok.alg_onrgoedkenmerk_waarde waarde
FROM alg_v_aanwezigonrgoedkenmerk ok
WHERE ok.alg_kenmerk_key = 1522
AND ok.alg_onrgoed_niveau = 'L') tc
ON a.alg_locatie_key = tc.alg_onrgoed_key
LEFT JOIN -- 1540=Postkamer contactpersoon
(SELECT ok.alg_onrgoed_key, ok.alg_onrgoedkenmerk_waarde waarde
FROM alg_v_aanwezigonrgoedkenmerk ok
WHERE ok.alg_kenmerk_key = 1540
AND ok.alg_onrgoed_niveau = 'L') pc
ON a.alg_locatie_key = pc.alg_onrgoed_key
LEFT JOIN -- 1541=Postkamer telefoonnummer
(SELECT ok.alg_onrgoed_key, ok.alg_onrgoedkenmerk_waarde waarde
FROM alg_v_aanwezigonrgoedkenmerk ok
WHERE ok.alg_kenmerk_key = 1541
AND ok.alg_onrgoed_niveau = 'L') pt
ON a.alg_locatie_key = pt.alg_onrgoed_key
LEFT JOIN -- 1543=E-mailadres FSM
(SELECT ok.alg_onrgoed_key, ok.alg_onrgoedkenmerk_waarde waarde
FROM alg_v_aanwezigonrgoedkenmerk ok
WHERE ok.alg_kenmerk_key = 1543
AND ok.alg_onrgoed_niveau = 'L') efsm
ON a.alg_locatie_key = efsm.alg_onrgoed_key
LEFT JOIN -- Huurcontract info bij gebouw; soms >1 per gebouw?
(SELECT DISTINCT cp.cnt_alg_plaats_key
--CASE
-- WHEN fac.safe_to_number (SUBSTR (c.cnt_contract_nummer_intern, 7, 1)) < 5
-- THEN 'Algemeen'
-- ELSE 'Werkbedrijf'
--END
-- uwv_cwi
FROM cnt_v_aanwezigcontract c, cnt_contract_plaats cp, cnt_kenmerkcontract kc
WHERE c.ins_discipline_key = 198 -- Huurcontract
AND c.cnt_contract_key = cp.cnt_contract_key
AND cp.cnt_contract_plaats_verwijder IS NULL
AND cp.cnt_alg_plaats_code = 'G'
AND c.cnt_contract_key = kc.cnt_contract_key
AND kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_kenmerk_key = 184 -- Actief
AND kc.cnt_kenmerkcontract_waarde = '1221') e
ON a.alg_gebouw_key = e.cnt_alg_plaats_key
LEFT JOIN ( SELECT alg_locatie_key,
listagg (ins_discipline_omschrijving, ', ') WITHIN GROUP (ORDER BY ins_discipline_omschrijving)
AS disc
FROM (SELECT rso.alg_onrgoed_key alg_locatie_key, rd.ins_discipline_omschrijving
FROM res_srtartikel_onrgoed rso, res_discipline rd
WHERE rso.res_srtartikel_og_verwijder IS NULL
AND rso.alg_onrgoed_niveau = 'L'
AND rd.ins_discipline_verwijder IS NULL
AND rso.res_discipline_key = rd.ins_discipline_key
UNION
SELECT g.alg_locatie_key, rd.ins_discipline_omschrijving
FROM res_srtartikel_onrgoed rso, res_discipline rd, alg_gebouw g
WHERE rso.res_srtartikel_og_verwijder IS NULL
AND rso.alg_onrgoed_niveau = 'G'
AND rd.ins_discipline_verwijder IS NULL
AND rso.res_discipline_key = rd.ins_discipline_key
AND rso.alg_onrgoed_key = g.alg_gebouw_key
UNION
SELECT aog.alg_locatie_key, rd.ins_discipline_omschrijving
FROM res_srtartikel_onrgoed rso, res_discipline rd, alg_v_allonrgoed_gegevens aog
WHERE rso.res_srtartikel_og_verwijder IS NULL
AND rso.alg_onrgoed_niveau = 'R'
AND rd.ins_discipline_verwijder IS NULL
AND rso.res_discipline_key = rd.ins_discipline_key
AND rso.alg_onrgoed_key = aog.alg_onroerendgoed_keys)
GROUP BY alg_locatie_key) dsc
ON a.alg_locatie_key = dsc.alg_locatie_key
LEFT JOIN -- 1584=Regionaal ICT coordinator
(SELECT ok.alg_onrgoed_key, pf.prs_perslid_naam_full naam, kl.prs_kenmerklink_waarde nr
FROM alg_v_aanwezigonrgoedkenmerk ok, prs_v_perslid_fullnames_all pf, prs_v_aanwezigkenmerklink kl
WHERE ok.alg_kenmerk_key = 1584
AND ok.alg_onrgoed_niveau = 'L'
AND fac.safe_to_number (ok.alg_onrgoedkenmerk_waarde) = pf.prs_perslid_key
AND pf.prs_perslid_key = kl.prs_link_key(+)
AND kl.prs_kenmerk_key(+) = 1353 -- Telefoonnummer FB
AND kl.prs_kenmerklink_niveau(+) = 'P') ric
ON a.alg_locatie_key = ric.alg_onrgoed_key
LEFT JOIN -- 1583=Met gemeente
(SELECT ok.alg_onrgoed_key, ok.alg_onrgoedkenmerk_waarde waarde
FROM alg_v_aanwezigonrgoedkenmerk ok
WHERE ok.alg_kenmerk_key = 1583
AND ok.alg_onrgoed_niveau = 'L') mgem
ON a.alg_locatie_key = mgem.alg_onrgoed_key
LEFT JOIN -- 1582=Narrowcasting
(SELECT ok.alg_onrgoed_key, ok.alg_onrgoedkenmerk_waarde waarde
FROM alg_v_aanwezigonrgoedkenmerk ok
WHERE ok.alg_kenmerk_key = 1582
AND ok.alg_onrgoed_niveau = 'L') ncas
ON a.alg_locatie_key = ncas.alg_onrgoed_key
LEFT JOIN -- 1581=Hoofdhuurder
(SELECT ok.alg_onrgoed_key, ok.alg_onrgoedkenmerk_waarde waarde
FROM alg_v_aanwezigonrgoedkenmerk ok
WHERE ok.alg_kenmerk_key = 1581
AND ok.alg_onrgoed_niveau = 'L') hh
ON a.alg_locatie_key = hh.alg_onrgoed_key
LEFT JOIN -- 1580=Toegangscontrolesysteem
(SELECT ok.alg_onrgoed_key, fu.fac_usrdata_omschr waarde
FROM alg_v_aanwezigonrgoedkenmerk ok, fac_usrdata fu
WHERE ok.alg_kenmerk_key = 1580
AND ok.alg_onrgoed_niveau = 'L'
AND fu.fac_usrtab_key = 1382
AND fac.safe_to_number (ok.alg_onrgoedkenmerk_waarde) = fu.fac_usrdata_key) tcs
ON a.alg_locatie_key = tcs.alg_onrgoed_key
LEFT JOIN -- 1625=Regiomanager
(SELECT ok.alg_onrgoed_key, pf.prs_perslid_naam_full naam
FROM alg_v_aanwezigonrgoedkenmerk ok, prs_v_perslid_fullnames_all pf
WHERE ok.alg_kenmerk_key = 1625
AND ok.alg_onrgoed_niveau = 'D'
AND fac.safe_to_number (ok.alg_onrgoedkenmerk_waarde) = pf.prs_perslid_key) rm
ON c.alg_district_key = rm.alg_onrgoed_key
LEFT JOIN -- 1645=Projectleider FB
(SELECT ok.alg_onrgoed_key, pf.prs_perslid_naam_full naam
FROM alg_v_aanwezigonrgoedkenmerk ok, prs_v_perslid_fullnames_all pf
WHERE ok.alg_kenmerk_key = 1645
AND ok.alg_onrgoed_niveau = 'D'
AND fac.safe_to_number (ok.alg_onrgoedkenmerk_waarde) = pf.prs_perslid_key) pl
ON c.alg_district_key = pl.alg_onrgoed_key
WHERE (a.alg_srtgebouw_key = 61 AND c.alg_regio_key NOT IN (21, 41)) -- Satelliet
OR e.cnt_alg_plaats_key IS NOT NULL;
/* Formatted on 18-2-2015 16:18:12 (QP5 v5.136.908.31019) */
CREATE OR REPLACE VIEW uwva_v_rap_hv_contractdetails
(
nummer,
fclt_f_mantel,
fclt_f_gebouw,
fclt_f_cnt_type,
adres,
plaats,
beschrijving,
omschrijving,
ingangsdatum,
rappeldatum,
opzegdatum,
einddatum,
uwv_eigenaar,
uwv_beheerder,
uitvoerder_bedrijf,
uitvoerder_contact,
uitvoerder_telefoon,
oms_breakmoment,
breakmoment1,
opzegtermijn1,
opzegdatum1,
sanctie1,
breakmoment2,
opzegtermijn2,
opzegdatum2,
sanctie2,
kostenplaats,
fclt_f_contractrubriek,
geconditioneerd,
fclt_f_contractstatus,
actief,
btw_verlegd,
opzegtermijn,
signaaltermijn,
factuurperiode,
stilzw_verl,
optie_systematiek,
optieperiode1,
optieperiode2,
optieperiode3,
laatste_indexering,
bijdr_verhuurder,
invest_btw,
oms_terugverpl,
indeplaatsstel,
onderh_toegest,
contractregelrubriek,
aantal,
eenheid,
kosten_excl_btw,
btw,
kosten_incl_btw,
indexdatum,
indexcijfer,
aftopindex_oms,
berek_over_huur,
btwaftr_verpl,
laatste_afrekper,
perc_afhfiscus,
perc_herzdatum,
datum_afrek,
datum_bijst,
btwcmp_oms,
btwcmp_herzdatum
)
AS
SELECT basis.nummer,
basis.mantel,
pand.code,
CASE
WHEN fac.safe_to_number (SUBSTR (basis.nummer, 7, 1)) < 5
THEN
'Algemeen'
ELSE
'Werkbedrijf'
END
uwv_cwi,
pand.adres,
pand.plaats,
basis.beschrijving,
basis.omschrijving,
basis.ingangsdatum,
basis.rappeldatum,
basis.opzegdatum,
basis.einddatum,
basis.contract_eigenaar,
basis.contract_beheerder,
basis.prs_bedrijf_naam,
contact.uitv_contact,
contact.uitv_tel,
oms_breakmoment,
basis.breakmoment1,
basis.opzegtermijn1,
basis.opzegdatum1,
basis.sanctie1,
basis.breakmoment2,
basis.opzegtermijn2,
basis.opzegdatum2,
basis.sanctie2,
pand.kostenplaats,
basis.contractrubriek,
basis.geconditioneerd,
basis.contractstatus,
basis.actief,
basis.btw_verlegd,
basis.opzegtermijn,
basis.signaaltermijn,
basis.factuurperiode,
basis.verlenging,
basis.optie_systematiek,
basis.optieperiode1,
basis.optieperiode2,
basis.optieperiode3,
basis.laatste_indexering,
basis.bijdr_verhuurder,
basis.invest_btw,
basis.oms_terugverpl,
basis.indeplaatsstel,
basis.onderh_toegest,
regels.contractregelrubriek,
fac.safe_to_number (regels.aantal) aantal,
regels.eenheid,
fac.safe_to_number (regels.kostenexcl) kosten_excl_btw,
regels.btw,
(CASE
WHEN regels.btw IS NOT NULL AND UPPER (regels.btw) <> 'VRIJ' AND UPPER (regels.btw) <> 'VERLEGD'
THEN
fac.safe_to_number (
SUBSTR (regels.btw, 1, INSTR (regels.btw, '%') - 1))
* fac.safe_to_number (regels.kostenexcl)
/ 100
+ fac.safe_to_number (regels.kostenexcl)
ELSE
fac.safe_to_number (regels.kostenexcl)
END)
kosten_incl_btw,
regels.indexdatum,
regels.indexcijfer,
regels.aftopindex_oms,
regels.berek_over_huur,
regels.btwaftr_verpl,
regels.laatste_afrekper,
regels.perc_afhfiscus,
regels.perc_herzdatum,
regels.datum_afrek,
regels.datum_bijst,
regels.btwcmp_oms,
regels.btwcmp_herzdatum
FROM (SELECT c.cnt_contract_key,
c.cnt_contract_nummer_intern nummer,
m.cnt_contract_nummer_intern mantel,
c.cnt_contract_omschrijving beschrijving,
c.cnt_contract_document omschrijving,
c.cnt_contract_looptijd_van ingangsdatum,
cnt.cnt_getrappeldatum (c.cnt_contract_key) rappeldatum,
cnt.cnt_getopzegdatum (c.cnt_contract_key) opzegdatum,
c.cnt_contract_looptijd_tot einddatum,
a.prs_afdeling_upper || '-' || a.prs_afdeling_omschrijving
contract_eigenaar,
p.prs_perslid_naam_full contract_beheerder,
b.prs_bedrijf_naam,
(SELECT kc.cnt_kenmerkcontract_waarde
FROM cnt_kenmerkcontract kc
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key = c.cnt_contract_key
AND kc.cnt_kenmerk_key = 985)
oms_breakmoment,
(SELECT kc.cnt_kenmerkcontract_waarde
FROM cnt_kenmerkcontract kc
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key = c.cnt_contract_key
AND kc.cnt_kenmerk_key = 986)
breakmoment1, -- was 782 (vervangen)
(SELECT kc.cnt_kenmerkcontract_waarde
FROM cnt_kenmerkcontract kc
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key = c.cnt_contract_key
AND kc.cnt_kenmerk_key = 987)
opzegtermijn1,
(SELECT kc.cnt_kenmerkcontract_waarde
FROM cnt_kenmerkcontract kc
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key = c.cnt_contract_key
AND kc.cnt_kenmerk_key = 988)
opzegdatum1,
(SELECT kc.cnt_kenmerkcontract_waarde
FROM cnt_kenmerkcontract kc
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key = c.cnt_contract_key
AND kc.cnt_kenmerk_key = 989)
sanctie1,
(SELECT kc.cnt_kenmerkcontract_waarde
FROM cnt_kenmerkcontract kc
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key = c.cnt_contract_key
AND kc.cnt_kenmerk_key = 990)
breakmoment2,
(SELECT kc.cnt_kenmerkcontract_waarde
FROM cnt_kenmerkcontract kc
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key = c.cnt_contract_key
AND kc.cnt_kenmerk_key = 991)
opzegtermijn2,
(SELECT kc.cnt_kenmerkcontract_waarde
FROM cnt_kenmerkcontract kc
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key = c.cnt_contract_key
AND kc.cnt_kenmerk_key = 992)
opzegdatum2,
(SELECT kc.cnt_kenmerkcontract_waarde
FROM cnt_kenmerkcontract kc
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key = c.cnt_contract_key
AND kc.cnt_kenmerk_key = 993)
sanctie2,
(SELECT ud.fac_usrdata_omschr
FROM cnt_kenmerkcontract kc, fac_usrdata ud
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key = c.cnt_contract_key
AND kc.cnt_kenmerk_key = 181
AND fac.safe_to_number (kc.cnt_kenmerkcontract_waarde) =
ud.fac_usrdata_key)
contractrubriek,
(SELECT ud.fac_usrdata_omschr
FROM cnt_kenmerkcontract kc, fac_usrdata ud
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key = c.cnt_contract_key
AND kc.cnt_kenmerk_key = 981
AND fac.safe_to_number (kc.cnt_kenmerkcontract_waarde) =
ud.fac_usrdata_key)
geconditioneerd,
(SELECT ud.fac_usrdata_omschr
FROM cnt_kenmerkcontract kc, fac_usrdata ud
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key = c.cnt_contract_key
AND kc.cnt_kenmerk_key = 183
AND fac.safe_to_number (kc.cnt_kenmerkcontract_waarde) =
ud.fac_usrdata_key)
contractstatus,
(SELECT ud.fac_usrdata_omschr
FROM cnt_kenmerkcontract kc, fac_usrdata ud
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key = c.cnt_contract_key
AND kc.cnt_kenmerk_key = 184
AND fac.safe_to_number (kc.cnt_kenmerkcontract_waarde) =
ud.fac_usrdata_key)
actief,
(SELECT ud.fac_usrdata_omschr
FROM cnt_kenmerkcontract kc, fac_usrdata ud
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key = c.cnt_contract_key
AND kc.cnt_kenmerk_key = 186
AND fac.safe_to_number (kc.cnt_kenmerkcontract_waarde) =
ud.fac_usrdata_key)
btw_verlegd,
(SELECT t.cnt_termijn_omschrijving
FROM cnt_termijn t
WHERE t.cnt_termijn_key = c.cnt_contract_opzegtermijn)
opzegtermijn,
(SELECT t.cnt_termijn_omschrijving
FROM cnt_termijn t
WHERE t.cnt_termijn_key = c.cnt_contract_rappeltermijn)
signaaltermijn,
(SELECT ud.fac_usrdata_omschr
FROM cnt_kenmerkcontract kc, fac_usrdata ud
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key = c.cnt_contract_key
AND kc.cnt_kenmerk_key = 189
AND fac.safe_to_number (kc.cnt_kenmerkcontract_waarde) =
ud.fac_usrdata_key)
factuurperiode,
(SELECT ud.fac_usrdata_omschr
FROM cnt_kenmerkcontract kc, fac_usrdata ud
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key = c.cnt_contract_key
AND kc.cnt_kenmerk_key = 943
AND fac.safe_to_number (kc.cnt_kenmerkcontract_waarde) =
ud.fac_usrdata_key)
verlenging, -- was 190 (vervangen)
(SELECT kc.cnt_kenmerkcontract_waarde
FROM cnt_kenmerkcontract kc
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key = c.cnt_contract_key
AND kc.cnt_kenmerk_key = 191)
optie_systematiek,
(SELECT kc.cnt_kenmerkcontract_waarde
FROM cnt_kenmerkcontract kc
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key = c.cnt_contract_key
AND kc.cnt_kenmerk_key = 461)
optieperiode1,
(SELECT kc.cnt_kenmerkcontract_waarde
FROM cnt_kenmerkcontract kc
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key = c.cnt_contract_key
AND kc.cnt_kenmerk_key = 462)
optieperiode2,
(SELECT kc.cnt_kenmerkcontract_waarde
FROM cnt_kenmerkcontract kc
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key = c.cnt_contract_key
AND kc.cnt_kenmerk_key = 463)
optieperiode3,
(SELECT kc.cnt_kenmerkcontract_waarde
FROM cnt_kenmerkcontract kc
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key = c.cnt_contract_key
AND kc.cnt_kenmerk_key = 196)
laatste_indexering,
(SELECT kc.cnt_kenmerkcontract_waarde
FROM cnt_kenmerkcontract kc
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key = c.cnt_contract_key
AND kc.cnt_kenmerk_key = 983)
bijdr_verhuurder,
(SELECT ud.fac_usrdata_omschr
FROM cnt_kenmerkcontract kc, fac_usrdata ud
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key = c.cnt_contract_key
AND kc.cnt_kenmerk_key = 984
AND fac.safe_to_number (kc.cnt_kenmerkcontract_waarde) =
ud.fac_usrdata_key)
invest_btw,
(SELECT kc.cnt_kenmerkcontract_waarde
FROM cnt_kenmerkcontract kc
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key = c.cnt_contract_key
AND kc.cnt_kenmerk_key = 994)
oms_terugverpl,
(SELECT ud.fac_usrdata_omschr
FROM cnt_kenmerkcontract kc, fac_usrdata ud
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key = c.cnt_contract_key
AND kc.cnt_kenmerk_key = 995
AND fac.safe_to_number (kc.cnt_kenmerkcontract_waarde) =
ud.fac_usrdata_key)
indeplaatsstel,
(SELECT kc.cnt_kenmerkcontract_waarde
FROM cnt_kenmerkcontract kc
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key = c.cnt_contract_key
AND kc.cnt_kenmerk_key = 996)
onderh_toegest
FROM cnt_v_aanwezigcontract c,
cnt_v_aanwezigcontract m,
prs_afdeling a,
prs_v_perslid_fullnames p,
prs_bedrijf b
WHERE c.ins_discipline_key = 198
AND c.cnt_contract_mantel_key = m.cnt_contract_key(+)
AND c.prs_afdeling_key_eig = a.prs_afdeling_key
AND c.prs_perslid_key_beh = p.prs_perslid_key(+)
AND c.cnt_prs_bedrijf_key = b.prs_bedrijf_key) basis
LEFT JOIN (SELECT x.cnt_contract_key,
y.code,
y.kostenplaats,
COALESCE (z.mld_adres_bezoek_plaats,
y.alg_locatie_plaats)
plaats,
COALESCE (z.mld_adres_bezoek_adres,
y.alg_locatie_adres)
adres
FROM (SELECT ccp.cnt_alg_plaats_key,
cc.cnt_contract_key
FROM cnt_contract cc, cnt_contract_plaats ccp
WHERE cc.ins_discipline_key = 198 -- huurcontract
AND cc.cnt_contract_key =
ccp.cnt_contract_key
AND ccp.cnt_alg_plaats_code = 'G'
AND ccp.cnt_contract_plaats_verwijder IS NULL)
x
LEFT JOIN (SELECT g.alg_gebouw_key,
g.alg_gebouw_code code,
l.alg_locatie_adres,
l.alg_locatie_plaats,
kp.prs_kostenplaats_nr
kostenplaats
FROM alg_gebouw g,
alg_locatie l,
prs_kostenplaats kp
WHERE g.alg_locatie_key =
l.alg_locatie_key
AND g.prs_kostenplaats_key =
kp.prs_kostenplaats_key(+))
y
ON x.cnt_alg_plaats_key = y.alg_gebouw_key
LEFT JOIN -- adres info bij gebouw
(SELECT g.alg_gebouw_key,
a.mld_adres_bezoek_plaats,
a.mld_adres_bezoek_adres
FROM alg_gebouw g, mld_adres a
WHERE g.mld_adres_key =
a.mld_adres_key
AND a.mld_adres_verwijder IS NULL)
z
ON x.cnt_alg_plaats_key = z.alg_gebouw_key)
pand
ON basis.cnt_contract_key = pand.cnt_contract_key
LEFT JOIN (SELECT c.cnt_contract_key,
cp.prs_contactpersoon_naam
|| DECODE (
cp.prs_contactpersoon_voorletters,
NULL,
'',
', ' || cp.prs_contactpersoon_voorletters)
|| DECODE (cp.prs_contactpersoon_tussenv,
NULL, '',
' ' || cp.prs_contactpersoon_tussenv)
|| DECODE (
cp.prs_contactpersoon_voornaam,
NULL,
'',
' ('
|| cp.prs_contactpersoon_voornaam
|| ')')
uitv_contact,
COALESCE (cp.prs_contactpersoon_telefoon_1,
cp.prs_contactpersoon_telefoon_2)
uitv_tel
FROM cnt_contract c, prs_contactpersoon cp
WHERE c.prs_contactpersoon_key =
cp.prs_contactpersoon_key) contact
ON basis.cnt_contract_key = contact.cnt_contract_key
LEFT JOIN (SELECT cr1.cnt_contract_key cntkey,
(SELECT ud.fac_usrdata_omschr
FROM cnt_kenmerkcontract kc, fac_usrdata ud
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr1.cnt_contract_key
AND kc.cnt_kenmerk_key = 201
AND fac.safe_to_number (kc.cnt_kenmerkcontract_waarde) =
ud.fac_usrdata_key)
contractregelrubriek,
(SELECT kc.cnt_kenmerkcontract_waarde
FROM cnt_kenmerkcontract kc
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr1.cnt_contract_key
AND kc.cnt_kenmerk_key = 202)
aantal,
(SELECT ud.fac_usrdata_omschr
FROM cnt_kenmerkcontract kc, fac_usrdata ud
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr1.cnt_contract_key
AND kc.cnt_kenmerk_key = 203
AND fac.safe_to_number (kc.cnt_kenmerkcontract_waarde) =
ud.fac_usrdata_key)
eenheid,
(SELECT kc.cnt_kenmerkcontract_waarde
FROM cnt_kenmerkcontract kc
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr1.cnt_contract_key
AND kc.cnt_kenmerk_key = 221)
kostenexcl,
(SELECT ud.fac_usrdata_omschr
FROM cnt_kenmerkcontract kc, fac_usrdata ud
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr1.cnt_contract_key
AND kc.cnt_kenmerk_key = 242
AND fac.safe_to_number (kc.cnt_kenmerkcontract_waarde) =
ud.fac_usrdata_key)
btw,
(SELECT kc.cnt_kenmerkcontract_waarde
FROM cnt_kenmerkcontract kc
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr1.cnt_contract_key
AND kc.cnt_kenmerk_key = 997)
indexdatum,
(SELECT kc.cnt_kenmerkcontract_waarde
FROM cnt_kenmerkcontract kc
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr1.cnt_contract_key
AND kc.cnt_kenmerk_key = 998)
indexcijfer,
(SELECT kc.cnt_kenmerkcontract_waarde
FROM cnt_kenmerkcontract kc
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr1.cnt_contract_key
AND kc.cnt_kenmerk_key = 999)
aftopindex_oms,
NULL berek_over_huur,
NULL btwaftr_verpl,
NULL laatste_afrekper,
NULL perc_afhfiscus,
NULL perc_herzdatum,
NULL datum_afrek,
NULL datum_bijst,
NULL btwcmp_oms,
NULL btwcmp_herzdatum
FROM cnt_contract cr1
WHERE cr1.ins_discipline_key = 198 -- regel 1
UNION
SELECT cr2.cnt_contract_key cntkey,
(SELECT ud.fac_usrdata_omschr
FROM cnt_kenmerkcontract kc, fac_usrdata ud
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr2.cnt_contract_key
AND kc.cnt_kenmerk_key = 241
AND fac.safe_to_number (kc.cnt_kenmerkcontract_waarde) =
ud.fac_usrdata_key)
contractregelrubriek,
(SELECT kc.cnt_kenmerkcontract_waarde
FROM cnt_kenmerkcontract kc
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr2.cnt_contract_key
AND kc.cnt_kenmerk_key = 261)
aantal,
(SELECT ud.fac_usrdata_omschr
FROM cnt_kenmerkcontract kc, fac_usrdata ud
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr2.cnt_contract_key
AND kc.cnt_kenmerk_key = 262
AND fac.safe_to_number (kc.cnt_kenmerkcontract_waarde) =
ud.fac_usrdata_key)
eenheid,
(SELECT kc.cnt_kenmerkcontract_waarde
FROM cnt_kenmerkcontract kc
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr2.cnt_contract_key
AND kc.cnt_kenmerk_key = 263)
kostenexcl,
(SELECT ud.fac_usrdata_omschr
FROM cnt_kenmerkcontract kc, fac_usrdata ud
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr2.cnt_contract_key
AND kc.cnt_kenmerk_key = 281
AND fac.safe_to_number (kc.cnt_kenmerkcontract_waarde) =
ud.fac_usrdata_key)
btw,
NULL indexdatum,
NULL indexcijfer,
NULL aftopindex_oms,
NULL berek_over_huur,
NULL btwaftr_verpl,
NULL laatste_afrekper,
NULL perc_afhfiscus,
NULL perc_herzdatum,
NULL datum_afrek,
NULL datum_bijst,
NULL btwcmp_oms,
NULL btwcmp_herzdatum
FROM cnt_contract cr2
WHERE cr2.ins_discipline_key = 198 -- regel 2
UNION
SELECT cr3.cnt_contract_key cntkey,
(SELECT ud.fac_usrdata_omschr
FROM cnt_kenmerkcontract kc, fac_usrdata ud
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr3.cnt_contract_key
AND kc.cnt_kenmerk_key = 302
AND fac.safe_to_number (kc.cnt_kenmerkcontract_waarde) =
ud.fac_usrdata_key)
contractregelrubriek,
(SELECT kc.cnt_kenmerkcontract_waarde
FROM cnt_kenmerkcontract kc
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr3.cnt_contract_key
AND kc.cnt_kenmerk_key = 321)
aantal,
(SELECT ud.fac_usrdata_omschr
FROM cnt_kenmerkcontract kc, fac_usrdata ud
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr3.cnt_contract_key
AND kc.cnt_kenmerk_key = 322
AND fac.safe_to_number (kc.cnt_kenmerkcontract_waarde) =
ud.fac_usrdata_key)
eenheid,
(SELECT kc.cnt_kenmerkcontract_waarde
FROM cnt_kenmerkcontract kc
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr3.cnt_contract_key
AND kc.cnt_kenmerk_key = 392)
kostenexcl,
(SELECT ud.fac_usrdata_omschr
FROM cnt_kenmerkcontract kc, fac_usrdata ud
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr3.cnt_contract_key
AND kc.cnt_kenmerk_key = 393
AND fac.safe_to_number (kc.cnt_kenmerkcontract_waarde) =
ud.fac_usrdata_key)
btw,
NULL indexdatum,
NULL indexcijfer,
NULL aftopindex_oms,
NULL berek_over_huur,
NULL btwaftr_verpl,
NULL laatste_afrekper,
NULL perc_afhfiscus,
NULL perc_herzdatum,
NULL datum_afrek,
NULL datum_bijst,
NULL btwcmp_oms,
NULL btwcmp_herzdatum
FROM cnt_contract cr3
WHERE cr3.ins_discipline_key = 198 -- regel 3
UNION
SELECT cr4.cnt_contract_key cntkey,
(SELECT ud.fac_usrdata_omschr
FROM cnt_kenmerkcontract kc, fac_usrdata ud
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr4.cnt_contract_key
AND kc.cnt_kenmerk_key = 851
AND fac.safe_to_number (kc.cnt_kenmerkcontract_waarde) =
ud.fac_usrdata_key)
contractregelrubriek,
(SELECT kc.cnt_kenmerkcontract_waarde
FROM cnt_kenmerkcontract kc
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr4.cnt_contract_key
AND kc.cnt_kenmerk_key = 852)
aantal,
(SELECT ud.fac_usrdata_omschr
FROM cnt_kenmerkcontract kc, fac_usrdata ud
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr4.cnt_contract_key
AND kc.cnt_kenmerk_key = 853
AND fac.safe_to_number (kc.cnt_kenmerkcontract_waarde) =
ud.fac_usrdata_key)
eenheid,
(SELECT kc.cnt_kenmerkcontract_waarde
FROM cnt_kenmerkcontract kc
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr4.cnt_contract_key
AND kc.cnt_kenmerk_key = 854)
kostenexcl,
(SELECT ud.fac_usrdata_omschr
FROM cnt_kenmerkcontract kc, fac_usrdata ud
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr4.cnt_contract_key
AND kc.cnt_kenmerk_key = 855
AND fac.safe_to_number (kc.cnt_kenmerkcontract_waarde) =
ud.fac_usrdata_key)
btw,
NULL indexdatum,
NULL indexcijfer,
NULL aftopindex_oms,
NULL berek_over_huur,
NULL btwaftr_verpl,
NULL laatste_afrekper,
NULL perc_afhfiscus,
NULL perc_herzdatum,
NULL datum_afrek,
NULL datum_bijst,
NULL btwcmp_oms,
NULL btwcmp_herzdatum
FROM cnt_contract cr4
WHERE cr4.ins_discipline_key = 198 -- regel IV
UNION
SELECT cr4.cnt_contract_key cntkey,
(SELECT ud.fac_usrdata_omschr
FROM cnt_kenmerkcontract kc, fac_usrdata ud
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr4.cnt_contract_key
AND kc.cnt_kenmerk_key = 394
AND fac.safe_to_number (kc.cnt_kenmerkcontract_waarde) =
ud.fac_usrdata_key)
contractregelrubriek,
(SELECT kc.cnt_kenmerkcontract_waarde
FROM cnt_kenmerkcontract kc
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr4.cnt_contract_key
AND kc.cnt_kenmerk_key = 395)
aantal,
(SELECT ud.fac_usrdata_omschr
FROM cnt_kenmerkcontract kc, fac_usrdata ud
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr4.cnt_contract_key
AND kc.cnt_kenmerk_key = 396
AND fac.safe_to_number (kc.cnt_kenmerkcontract_waarde) =
ud.fac_usrdata_key)
eenheid,
(SELECT kc.cnt_kenmerkcontract_waarde
FROM cnt_kenmerkcontract kc
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr4.cnt_contract_key
AND kc.cnt_kenmerk_key = 421)
kostenexcl,
NULL btw, -- was 397
NULL indexdatum,
NULL indexcijfer,
NULL aftopindex_oms,
(SELECT kc.cnt_kenmerkcontract_waarde
FROM cnt_kenmerkcontract kc
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr4.cnt_contract_key
AND kc.cnt_kenmerk_key = 1001)
berek_over_huur,
(SELECT ud.fac_usrdata_omschr
FROM cnt_kenmerkcontract kc, fac_usrdata ud
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr4.cnt_contract_key
AND kc.cnt_kenmerk_key = 1002
AND fac.safe_to_number (kc.cnt_kenmerkcontract_waarde) =
ud.fac_usrdata_key)
btwaftr_verpl,
(SELECT kc.cnt_kenmerkcontract_waarde
FROM cnt_kenmerkcontract kc
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr4.cnt_contract_key
AND kc.cnt_kenmerk_key = 1003)
laatste_afrekper,
(SELECT ud.fac_usrdata_omschr
FROM cnt_kenmerkcontract kc, fac_usrdata ud
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr4.cnt_contract_key
AND kc.cnt_kenmerk_key = 1004
AND fac.safe_to_number (kc.cnt_kenmerkcontract_waarde) =
ud.fac_usrdata_key)
perc_afhfiscus,
(SELECT kc.cnt_kenmerkcontract_waarde
FROM cnt_kenmerkcontract kc
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr4.cnt_contract_key
AND kc.cnt_kenmerk_key = 1005)
perc_herzdatum,
NULL datum_afrek,
NULL datum_bijst,
NULL btwcmp_oms,
NULL btwcmp_herzdatum
FROM cnt_contract cr4
WHERE cr4.ins_discipline_key = 198 -- regel 4
UNION
SELECT cr5.cnt_contract_key cntkey,
(SELECT ud.fac_usrdata_omschr
FROM cnt_kenmerkcontract kc, fac_usrdata ud
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr5.cnt_contract_key
AND kc.cnt_kenmerk_key = 398
AND fac.safe_to_number (kc.cnt_kenmerkcontract_waarde) =
ud.fac_usrdata_key)
contractregelrubriek,
NULL aantal, -- was 399!
NULL eenheid, -- was 422!
(SELECT kc.cnt_kenmerkcontract_waarde
FROM cnt_kenmerkcontract kc
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr5.cnt_contract_key
AND kc.cnt_kenmerk_key = 400)
kostenexcl,
(SELECT ud.fac_usrdata_omschr
FROM cnt_kenmerkcontract kc, fac_usrdata ud
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr5.cnt_contract_key
AND kc.cnt_kenmerk_key = 401
AND fac.safe_to_number (kc.cnt_kenmerkcontract_waarde) =
ud.fac_usrdata_key)
btw,
NULL indexdatum,
NULL indexcijfer,
NULL aftopindex_oms,
NULL berek_over_huur,
NULL btwaftr_verpl,
NULL laatste_afrekper,
NULL perc_afhfiscus,
NULL perc_herzdatum,
(SELECT kc.cnt_kenmerkcontract_waarde
FROM cnt_kenmerkcontract kc
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr5.cnt_contract_key
AND kc.cnt_kenmerk_key = 1006)
datum_afrek,
(SELECT kc.cnt_kenmerkcontract_waarde
FROM cnt_kenmerkcontract kc
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr5.cnt_contract_key
AND kc.cnt_kenmerk_key = 1007)
datum_bijst,
NULL btwcmp_oms,
NULL btwcmp_herzdatum
FROM cnt_contract cr5
WHERE cr5.ins_discipline_key = 198 -- regel 5
UNION
SELECT cr6.cnt_contract_key cntkey,
(SELECT ud.fac_usrdata_omschr
FROM cnt_kenmerkcontract kc, fac_usrdata ud
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr6.cnt_contract_key
AND kc.cnt_kenmerk_key = 1009
AND fac.safe_to_number(kc.cnt_kenmerkcontract_waarde) =
ud.fac_usrdata_key)
contractregelrubriek,
(SELECT kc.cnt_kenmerkcontract_waarde
FROM cnt_kenmerkcontract kc
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr6.cnt_contract_key
AND kc.cnt_kenmerk_key = 1011)
aantal,
(SELECT ud.fac_usrdata_omschr
FROM cnt_kenmerkcontract kc, fac_usrdata ud
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr6.cnt_contract_key
AND kc.cnt_kenmerk_key = 1012
AND fac.safe_to_number (kc.cnt_kenmerkcontract_waarde) =
ud.fac_usrdata_key)
eenheid,
(SELECT kc.cnt_kenmerkcontract_waarde
FROM cnt_kenmerkcontract kc
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr6.cnt_contract_key
AND kc.cnt_kenmerk_key = 1013)
kostenexcl,
NULL btw,
NULL indexdatum,
NULL indexcijfer,
NULL aftopindex_oms,
NULL berek_over_huur,
NULL btwaftr_verpl,
NULL laatste_afrekper,
NULL perc_afhfiscus,
NULL perc_herzdatum,
NULL datum_afrek,
NULL datum_bijst,
(SELECT kc.cnt_kenmerkcontract_waarde
FROM cnt_kenmerkcontract kc
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr6.cnt_contract_key
AND kc.cnt_kenmerk_key = 1015)
btwcmp_oms,
(SELECT kc.cnt_kenmerkcontract_waarde
FROM cnt_kenmerkcontract kc
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr6.cnt_contract_key
AND kc.cnt_kenmerk_key = 1016)
btwcmp_herzdatum
FROM cnt_contract cr6
WHERE cr6.ins_discipline_key = 198) regels -- regel 6
ON basis.cnt_contract_key = regels.cntkey
WHERE regels.contractregelrubriek IS NOT NULL;
/* Formatted on 16-1-2009 14:55:55 (QP5 v5.115.810.9015) */
CREATE OR REPLACE VIEW uwva_v_rap_hv_cnt_controle
(
fclt_f_contract,
fclt_f_cnt_type,
fclt_f_huur_verhuur,
fclt_f_fout
)
AS
(SELECT x.cnt_contract_nummer_intern,
CASE
WHEN fac.safe_to_number (
SUBSTR (x.cnt_contract_nummer_intern, 7, 1)
) < 5
THEN
'Algemeen'
ELSE
'Werkbedrijf'
END
uwv_cwi,
CASE
WHEN UPPER (y2.contractrubriek) LIKE 'HUUR%' THEN 'HUUR'
ELSE 'VERHUUR'
END
huur_verhuur,
'Huurcontract niet gekoppeld aan een gebouw.' fout
FROM ( (SELECT cc.cnt_contract_key,
cc.cnt_contract_nummer_intern
FROM cnt_v_aanwezigcontract cc,
cnt_contract_plaats ccp
WHERE cc.ins_discipline_key = 198 -- huurcontract
AND cc.cnt_contract_key =
ccp.cnt_contract_key(+)
AND (ccp.cnt_alg_plaats_code = 'L'
OR ccp.cnt_contract_key IS NULL)) x
LEFT JOIN
(SELECT cc.cnt_contract_key,
kc.cnt_kenmerkcontract_waarde actief
FROM cnt_v_aanwezigcontract cc,
cnt_kenmerkcontract kc
WHERE cc.ins_discipline_key = 198 -- huurcontract
AND cc.cnt_contract_key = kc.cnt_contract_key
AND kc.cnt_kenmerk_key = 184) y1 -- actief
ON x.cnt_contract_key = y1.cnt_contract_key
LEFT JOIN
(SELECT cc.cnt_contract_key,
ud.fac_usrdata_omschr contractrubriek
FROM cnt_v_aanwezigcontract cc,
cnt_kenmerkcontract kc,
fac_usrdata ud
WHERE cc.ins_discipline_key = 198 -- huurcontract
AND cc.cnt_contract_key = kc.cnt_contract_key
AND kc.cnt_kenmerk_key = 181 -- contractrubriek
AND fac.safe_to_number (kc.cnt_kenmerkcontract_waarde) =
ud.fac_usrdata_key) y2
ON x.cnt_contract_key = y2.cnt_contract_key)
WHERE y1.actief = '1221') -- ja
UNION ALL
(SELECT x.cnt_contract_nummer_intern,
CASE
WHEN fac.safe_to_number (
SUBSTR (x.cnt_contract_nummer_intern, 7, 1)
) < 5
THEN
'Algemeen'
ELSE
'Werkbedrijf'
END
uwv_cwi,
CASE
WHEN UPPER (y2.contractrubriek) LIKE 'HUUR%' THEN 'HUUR'
ELSE 'VERHUUR'
END
huur_verhuur,
'Datum laatste indexering ligt in de toekomst.' fout
FROM ( (SELECT cc.cnt_contract_key,
cc.cnt_contract_nummer_intern
FROM cnt_v_aanwezigcontract cc,
cnt_kenmerkcontract kc
WHERE cc.ins_discipline_key = 198 -- huurcontract
AND cc.cnt_contract_key =
kc.cnt_contract_key
AND kc.cnt_kenmerk_key = 196 -- laatste indexering
AND fac.safe_to_date (
kc.cnt_kenmerkcontract_waarde,
'dd-mm-yyyy'
) > SYSDATE) x
LEFT JOIN
(SELECT cc.cnt_contract_key,
kc.cnt_kenmerkcontract_waarde actief
FROM cnt_v_aanwezigcontract cc,
cnt_kenmerkcontract kc
WHERE cc.ins_discipline_key = 198 -- huurcontract
AND cc.cnt_contract_key =
kc.cnt_contract_key
AND kc.cnt_kenmerk_key = 184) y1 -- actief
ON x.cnt_contract_key = y1.cnt_contract_key
LEFT JOIN
(SELECT cc.cnt_contract_key,
ud.fac_usrdata_omschr contractrubriek
FROM cnt_v_aanwezigcontract cc,
cnt_kenmerkcontract kc,
fac_usrdata ud
WHERE cc.ins_discipline_key = 198 -- huurcontract
AND cc.cnt_contract_key = kc.cnt_contract_key
AND kc.cnt_kenmerk_key = 181 -- contractrubriek
AND fac.safe_to_number (kc.cnt_kenmerkcontract_waarde) =
ud.fac_usrdata_key) y2
ON x.cnt_contract_key = y2.cnt_contract_key
LEFT JOIN
(SELECT cc.cnt_contract_key, al.alg_district_key
FROM cnt_v_aanwezigcontract cc,
cnt_contract_plaats ccp,
alg_v_aanweziggebouw ag,
alg_v_aanweziglocatie al
WHERE cc.ins_discipline_key = 198 -- huurcontract
AND cc.cnt_contract_key = ccp.cnt_contract_key
AND ccp.cnt_alg_plaats_code = 'G'
AND ccp.cnt_alg_plaats_key = ag.alg_gebouw_key
AND ag.alg_locatie_key = al.alg_locatie_key) z
ON x.cnt_contract_key = z.cnt_contract_key)
WHERE y1.actief = '1221') -- ja
/
/* Formatted on 15-12-2014 10:05:00 (QP5 v5.136.908.31019) */
CREATE OR REPLACE VIEW uwva_v_rap_hv_cntregels
(
fclt_f_contract,
fclt_f_mantel,
fclt_f_cnt_type,
beschrijving,
contractregelrubriek,
aantal,
eenheid,
btw,
kwartlkstn_incl,
jaarkstn_incl
)
AS
SELECT basis.nummer,
basis.mantel,
CASE
WHEN fac.safe_to_number (SUBSTR (basis.nummer, 7, 1)) < 5
THEN
'Algemeen'
ELSE
'Werkbedrijf'
END
uwv_cwi,
basis.oms,
regels.contractregelrubriek,
regels.aantal,
regels.eenheid,
regels.btw,
ROUND (
(CASE
WHEN regels.btw IS NOT NULL AND UPPER (regels.btw) <> 'VRIJ'
THEN
( (fac.safe_to_number(SUBSTR (
regels.btw,
1,
INSTR (regels.btw, '%') - 1))
* fac.safe_to_number (regels.kostenexcl)
/ 100)
+ fac.safe_to_number (regels.kostenexcl))
* (3 / basis.factuurmaanden)
ELSE
fac.safe_to_number (regels.kostenexcl)
* (3 / basis.factuurmaanden)
END),
2)
kwartkosten_incl_btw,
ROUND (
(CASE
WHEN regels.btw IS NOT NULL AND UPPER (regels.btw) <> 'VRIJ'
THEN
( (fac.safe_to_number(SUBSTR (
regels.btw,
1,
INSTR (regels.btw, '%') - 1))
* fac.safe_to_number (regels.kostenexcl)
/ 100)
+ fac.safe_to_number (regels.kostenexcl))
* (12 / basis.factuurmaanden)
ELSE
fac.safe_to_number (regels.kostenexcl)
* (12 / basis.factuurmaanden)
END),
2)
jaarkosten_incl_btw
FROM (SELECT c.cnt_contract_key,
c.cnt_contract_nummer_intern nummer,
m.cnt_contract_nummer_intern mantel,
c.cnt_contract_omschrijving oms,
(SELECT ud.fac_usrdata_omschr
FROM cnt_kenmerkcontract kc, fac_usrdata ud
WHERE kc.cnt_contract_key = c.cnt_contract_key
AND kc.cnt_kenmerk_key = 184
AND fac.safe_to_number (kc.cnt_kenmerkcontract_waarde) =
ud.fac_usrdata_key)
actief,
(SELECT fac.safe_to_number (ud.fac_usrdata_code)
FROM cnt_kenmerkcontract kc, fac_usrdata ud
WHERE kc.cnt_contract_key = c.cnt_contract_key
AND kc.cnt_kenmerk_key = 189
AND fac.safe_to_number (kc.cnt_kenmerkcontract_waarde) =
ud.fac_usrdata_key)
factuurmaanden
FROM cnt_v_aanwezigcontract c, cnt_v_aanwezigcontract m
WHERE c.ins_discipline_key = 198
AND c.cnt_contract_mantel_key = m.cnt_contract_key) basis
LEFT JOIN (SELECT x.cnt_contract_key,
y.code,
z.mld_adres_bezoek_plaats plaats,
z.mld_adres_bezoek_adres adres
FROM (SELECT ccp.cnt_alg_plaats_key,
cc.cnt_contract_key
FROM cnt_contract cc, cnt_contract_plaats ccp
WHERE cc.ins_discipline_key = 198 -- huurcontract
AND cc.cnt_contract_key =
ccp.cnt_contract_key
AND ccp.cnt_alg_plaats_code = 'G'
AND ccp.cnt_contract_plaats_verwijder IS NULL)
x
LEFT JOIN -- uwv/cwi-indicatie
(SELECT g.alg_gebouw_key,
g.alg_gebouw_code code
FROM alg_gebouw g) y
ON x.cnt_alg_plaats_key = y.alg_gebouw_key
LEFT JOIN -- adres info bij gebouw
(SELECT g.alg_gebouw_key,
a.mld_adres_bezoek_plaats,
a.mld_adres_bezoek_adres
FROM alg_gebouw g, mld_adres a
WHERE g.mld_adres_key =
a.mld_adres_key) z
ON x.cnt_alg_plaats_key = z.alg_gebouw_key)
pand
ON basis.cnt_contract_key = pand.cnt_contract_key
LEFT JOIN (SELECT cr1.cnt_contract_key cntkey,
(SELECT ud.fac_usrdata_omschr
FROM cnt_kenmerkcontract kc, fac_usrdata ud
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr1.cnt_contract_key
AND kc.cnt_kenmerk_key = 201
AND fac.safe_to_number (kc.cnt_kenmerkcontract_waarde) =
ud.fac_usrdata_key)
contractregelrubriek,
(SELECT kc.cnt_kenmerkcontract_waarde
FROM cnt_kenmerkcontract kc
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr1.cnt_contract_key
AND kc.cnt_kenmerk_key = 202)
aantal,
(SELECT ud.fac_usrdata_omschr
FROM cnt_kenmerkcontract kc, fac_usrdata ud
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr1.cnt_contract_key
AND kc.cnt_kenmerk_key = 203
AND fac.safe_to_number (kc.cnt_kenmerkcontract_waarde) =
ud.fac_usrdata_key)
eenheid,
(SELECT kc.cnt_kenmerkcontract_waarde
FROM cnt_kenmerkcontract kc
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr1.cnt_contract_key
AND kc.cnt_kenmerk_key = 221)
kostenexcl,
(SELECT ud.fac_usrdata_omschr
FROM cnt_kenmerkcontract kc, fac_usrdata ud
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr1.cnt_contract_key
AND kc.cnt_kenmerk_key = 242
AND fac.safe_to_number (kc.cnt_kenmerkcontract_waarde) =
ud.fac_usrdata_key)
btw
FROM cnt_contract cr1
WHERE cr1.ins_discipline_key = 198 -- regel 1
UNION
SELECT cr2.cnt_contract_key cntkey,
(SELECT ud.fac_usrdata_omschr
FROM cnt_kenmerkcontract kc, fac_usrdata ud
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr2.cnt_contract_key
AND kc.cnt_kenmerk_key = 241
AND fac.safe_to_number (kc.cnt_kenmerkcontract_waarde) =
ud.fac_usrdata_key)
contractregelrubriek,
(SELECT kc.cnt_kenmerkcontract_waarde
FROM cnt_kenmerkcontract kc
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr2.cnt_contract_key
AND kc.cnt_kenmerk_key = 261)
aantal,
(SELECT ud.fac_usrdata_omschr
FROM cnt_kenmerkcontract kc, fac_usrdata ud
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr2.cnt_contract_key
AND kc.cnt_kenmerk_key = 262
AND fac.safe_to_number (kc.cnt_kenmerkcontract_waarde) =
ud.fac_usrdata_key)
eenheid,
(SELECT kc.cnt_kenmerkcontract_waarde
FROM cnt_kenmerkcontract kc
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr2.cnt_contract_key
AND kc.cnt_kenmerk_key = 263)
kostenexcl,
(SELECT ud.fac_usrdata_omschr
FROM cnt_kenmerkcontract kc, fac_usrdata ud
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr2.cnt_contract_key
AND kc.cnt_kenmerk_key = 281
AND fac.safe_to_number (kc.cnt_kenmerkcontract_waarde) =
ud.fac_usrdata_key)
btw
FROM cnt_contract cr2
WHERE cr2.ins_discipline_key = 198 -- regel 2
UNION
SELECT cr3.cnt_contract_key cntkey,
(SELECT ud.fac_usrdata_omschr
FROM cnt_kenmerkcontract kc, fac_usrdata ud
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr3.cnt_contract_key
AND kc.cnt_kenmerk_key = 302
AND fac.safe_to_number (kc.cnt_kenmerkcontract_waarde) =
ud.fac_usrdata_key)
contractregelrubriek,
(SELECT kc.cnt_kenmerkcontract_waarde
FROM cnt_kenmerkcontract kc
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr3.cnt_contract_key
AND kc.cnt_kenmerk_key = 321)
aantal,
(SELECT ud.fac_usrdata_omschr
FROM cnt_kenmerkcontract kc, fac_usrdata ud
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr3.cnt_contract_key
AND kc.cnt_kenmerk_key = 322
AND fac.safe_to_number (kc.cnt_kenmerkcontract_waarde) =
ud.fac_usrdata_key)
eenheid,
(SELECT kc.cnt_kenmerkcontract_waarde
FROM cnt_kenmerkcontract kc
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr3.cnt_contract_key
AND kc.cnt_kenmerk_key = 392)
kostenexcl,
(SELECT ud.fac_usrdata_omschr
FROM cnt_kenmerkcontract kc, fac_usrdata ud
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr3.cnt_contract_key
AND kc.cnt_kenmerk_key = 393
AND fac.safe_to_number (kc.cnt_kenmerkcontract_waarde) =
ud.fac_usrdata_key)
btw
FROM cnt_contract cr3
WHERE cr3.ins_discipline_key = 198 -- regel 3
UNION
SELECT cr4.cnt_contract_key cntkey,
(SELECT ud.fac_usrdata_omschr
FROM cnt_kenmerkcontract kc, fac_usrdata ud
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr4.cnt_contract_key
AND kc.cnt_kenmerk_key = 851
AND fac.safe_to_number (kc.cnt_kenmerkcontract_waarde) =
ud.fac_usrdata_key)
contractregelrubriek,
(SELECT kc.cnt_kenmerkcontract_waarde
FROM cnt_kenmerkcontract kc
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr4.cnt_contract_key
AND kc.cnt_kenmerk_key = 852)
aantal,
(SELECT ud.fac_usrdata_omschr
FROM cnt_kenmerkcontract kc, fac_usrdata ud
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr4.cnt_contract_key
AND kc.cnt_kenmerk_key = 853
AND fac.safe_to_number (kc.cnt_kenmerkcontract_waarde) =
ud.fac_usrdata_key)
eenheid,
(SELECT kc.cnt_kenmerkcontract_waarde
FROM cnt_kenmerkcontract kc
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr4.cnt_contract_key
AND kc.cnt_kenmerk_key = 854)
kostenexcl,
(SELECT ud.fac_usrdata_omschr
FROM cnt_kenmerkcontract kc, fac_usrdata ud
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr4.cnt_contract_key
AND kc.cnt_kenmerk_key = 855
AND fac.safe_to_number (kc.cnt_kenmerkcontract_waarde) =
ud.fac_usrdata_key)
btw
FROM cnt_contract cr4
WHERE cr4.ins_discipline_key = 198 -- regel IV
UNION
SELECT cr4.cnt_contract_key cntkey,
(SELECT ud.fac_usrdata_omschr
FROM cnt_kenmerkcontract kc, fac_usrdata ud
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr4.cnt_contract_key
AND kc.cnt_kenmerk_key = 394
AND fac.safe_to_number (kc.cnt_kenmerkcontract_waarde) =
ud.fac_usrdata_key)
contractregelrubriek,
(SELECT kc.cnt_kenmerkcontract_waarde
FROM cnt_kenmerkcontract kc
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr4.cnt_contract_key
AND kc.cnt_kenmerk_key = 395)
aantal,
(SELECT ud.fac_usrdata_omschr
FROM cnt_kenmerkcontract kc, fac_usrdata ud
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr4.cnt_contract_key
AND kc.cnt_kenmerk_key = 396
AND fac.safe_to_number (kc.cnt_kenmerkcontract_waarde) =
ud.fac_usrdata_key)
eenheid,
(SELECT kc.cnt_kenmerkcontract_waarde
FROM cnt_kenmerkcontract kc
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr4.cnt_contract_key
AND kc.cnt_kenmerk_key = 421)
kostenexcl,
NULL btw -- was 397
FROM cnt_contract cr4
WHERE cr4.ins_discipline_key = 198 -- regel 4
UNION
SELECT cr5.cnt_contract_key cntkey,
(SELECT ud.fac_usrdata_omschr
FROM cnt_kenmerkcontract kc, fac_usrdata ud
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr5.cnt_contract_key
AND kc.cnt_kenmerk_key = 398
AND fac.safe_to_number (kc.cnt_kenmerkcontract_waarde) =
ud.fac_usrdata_key)
contractregelrubriek,
NULL aantal, -- was 399!
NULL eenheid, -- was 422!
(SELECT kc.cnt_kenmerkcontract_waarde
FROM cnt_kenmerkcontract kc
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr5.cnt_contract_key
AND kc.cnt_kenmerk_key = 400)
kostenexcl,
(SELECT ud.fac_usrdata_omschr
FROM cnt_kenmerkcontract kc, fac_usrdata ud
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr5.cnt_contract_key
AND kc.cnt_kenmerk_key = 401
AND fac.safe_to_number (kc.cnt_kenmerkcontract_waarde) =
ud.fac_usrdata_key)
btw
FROM cnt_contract cr5
WHERE cr5.ins_discipline_key = 198 -- regel 5
UNION
SELECT cr6.cnt_contract_key cntkey,
(SELECT ud.fac_usrdata_omschr
FROM cnt_kenmerkcontract kc, fac_usrdata ud
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr6.cnt_contract_key
AND kc.cnt_kenmerk_key = 1009
AND fac.safe_to_number (kc.cnt_kenmerkcontract_waarde) =
ud.fac_usrdata_key)
contractregelrubriek,
(SELECT kc.cnt_kenmerkcontract_waarde
FROM cnt_kenmerkcontract kc
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr6.cnt_contract_key
AND kc.cnt_kenmerk_key = 1011)
aantal,
(SELECT ud.fac_usrdata_omschr
FROM cnt_kenmerkcontract kc, fac_usrdata ud
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr6.cnt_contract_key
AND kc.cnt_kenmerk_key = 1012
AND fac.safe_to_number (kc.cnt_kenmerkcontract_waarde) =
ud.fac_usrdata_key)
eenheid,
(SELECT kc.cnt_kenmerkcontract_waarde
FROM cnt_kenmerkcontract kc
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr6.cnt_contract_key
AND kc.cnt_kenmerk_key = 1013)
kostenexcl,
NULL btw
FROM cnt_contract cr6
WHERE cr6.ins_discipline_key = 198) regels -- regel 6
ON basis.cnt_contract_key = regels.cntkey
WHERE UPPER (basis.actief) = 'JA'
AND regels.contractregelrubriek IS NOT NULL;
/* Formatted on 15-12-2014 10:10:10 (QP5 v5.136.908.31019) */
CREATE OR REPLACE VIEW uwva_v_rap_hv_cntregelsplus
(
contract,
fclt_f_mantel,
beschrijving,
contractregelrubriek,
aantal,
fclt_f_eenheid,
btw,
kwartlkstn_incl,
jaarkstn_incl,
fclt_x_regio,
fclt_f_plaats,
adres,
fclt_f_contractstatus,
fclt_f_cnt_type,
begindatum,
einddatum
)
AS
SELECT basis.nummer,
basis.mantel,
basis.oms,
regels.contractregelrubriek,
regels.aantal,
regels.eenheid,
regels.btw,
ROUND (
(CASE
WHEN regels.btw IS NOT NULL AND UPPER (regels.btw) <> 'VRIJ'
THEN
( (fac.safe_to_number(SUBSTR (
regels.btw,
1,
INSTR (regels.btw, '%') - 1))
* fac.safe_to_number (regels.kostenexcl)
/ 100)
+ fac.safe_to_number (regels.kostenexcl))
* (3 / basis.factuurmaanden)
ELSE
fac.safe_to_number (regels.kostenexcl)
* (3 / basis.factuurmaanden)
END),
2)
kwartkosten_incl_btw,
ROUND (
(CASE
WHEN regels.btw IS NOT NULL AND UPPER (regels.btw) <> 'VRIJ'
THEN
( (fac.safe_to_number(SUBSTR (
regels.btw,
1,
INSTR (regels.btw, '%') - 1))
* fac.safe_to_number (regels.kostenexcl)
/ 100)
+ fac.safe_to_number (regels.kostenexcl))
* (12 / basis.factuurmaanden)
ELSE
fac.safe_to_number (regels.kostenexcl)
* (12 / basis.factuurmaanden)
END),
2)
jaarkosten_incl_btw,
pand.regio,
pand.plaats,
pand.adres,
basis.contractstatus,
CASE
WHEN fac.safe_to_number (SUBSTR (basis.nummer, 7, 1)) < 5
THEN
'Algemeen'
ELSE
'Werkbedrijf'
END
uwv_cwi,
basis.begindatum,
basis.einddatum
FROM (SELECT c.cnt_contract_key,
c.cnt_contract_nummer_intern nummer,
m.cnt_contract_nummer_intern mantel,
c.cnt_contract_omschrijving oms,
c.cnt_contract_looptijd_van begindatum,
c.cnt_contract_looptijd_tot einddatum,
(SELECT ud.fac_usrdata_omschr
FROM cnt_kenmerkcontract kc, fac_usrdata ud
WHERE kc.cnt_contract_key = c.cnt_contract_key
AND kc.cnt_kenmerk_key = 183
AND fac.safe_to_number (kc.cnt_kenmerkcontract_waarde) =
ud.fac_usrdata_key)
contractstatus,
(SELECT ud.fac_usrdata_omschr
FROM cnt_kenmerkcontract kc, fac_usrdata ud
WHERE kc.cnt_contract_key = c.cnt_contract_key
AND kc.cnt_kenmerk_key = 184
AND fac.safe_to_number (kc.cnt_kenmerkcontract_waarde) =
ud.fac_usrdata_key)
actief,
(SELECT fac.safe_to_number (ud.fac_usrdata_code)
FROM cnt_kenmerkcontract kc, fac_usrdata ud
WHERE kc.cnt_contract_key = c.cnt_contract_key
AND kc.cnt_kenmerk_key = 189
AND fac.safe_to_number (kc.cnt_kenmerkcontract_waarde) =
ud.fac_usrdata_key)
factuurmaanden
FROM cnt_v_aanwezigcontract c, cnt_v_aanwezigcontract m
WHERE c.ins_discipline_key = 198
AND c.cnt_contract_mantel_key = m.cnt_contract_key) basis
LEFT JOIN (SELECT x.cnt_contract_key,
y.code,
y.regio,
COALESCE (z.mld_adres_bezoek_plaats,
y.alg_locatie_plaats)
plaats,
COALESCE (z.mld_adres_bezoek_adres,
y.alg_locatie_adres)
adres
FROM (SELECT ccp.cnt_alg_plaats_key,
cc.cnt_contract_key
FROM cnt_contract cc, cnt_contract_plaats ccp
WHERE cc.ins_discipline_key = 198 -- huurcontract
AND cc.cnt_contract_key =
ccp.cnt_contract_key
AND ccp.cnt_alg_plaats_code = 'G'
AND ccp.cnt_contract_plaats_verwijder IS NULL)
x
LEFT JOIN -- uwv/cwi-indicatie
(SELECT g.alg_gebouw_key,
g.alg_gebouw_code code,
l.alg_locatie_adres,
l.alg_locatie_plaats,
d.alg_district_omschrijving
regio
FROM alg_gebouw g,
alg_locatie l,
alg_district d
WHERE g.alg_locatie_key =
l.alg_locatie_key
AND l.alg_district_key =
d.alg_district_key) y
ON x.cnt_alg_plaats_key = y.alg_gebouw_key
LEFT JOIN -- adres info bij gebouw
(SELECT g.alg_gebouw_key,
a.mld_adres_bezoek_plaats,
a.mld_adres_bezoek_adres
FROM alg_gebouw g, mld_adres a
WHERE g.mld_adres_key =
a.mld_adres_key
AND a.mld_adres_verwijder IS NULL)
z
ON x.cnt_alg_plaats_key = z.alg_gebouw_key)
pand
ON basis.cnt_contract_key = pand.cnt_contract_key
LEFT JOIN (SELECT cr1.cnt_contract_key cntkey,
(SELECT ud.fac_usrdata_omschr
FROM cnt_kenmerkcontract kc, fac_usrdata ud
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr1.cnt_contract_key
AND kc.cnt_kenmerk_key = 201
AND fac.safe_to_number (kc.cnt_kenmerkcontract_waarde) =
ud.fac_usrdata_key)
contractregelrubriek,
(SELECT kc.cnt_kenmerkcontract_waarde
FROM cnt_kenmerkcontract kc
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr1.cnt_contract_key
AND kc.cnt_kenmerk_key = 202)
aantal,
(SELECT ud.fac_usrdata_omschr
FROM cnt_kenmerkcontract kc, fac_usrdata ud
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr1.cnt_contract_key
AND kc.cnt_kenmerk_key = 203
AND fac.safe_to_number (kc.cnt_kenmerkcontract_waarde) =
ud.fac_usrdata_key)
eenheid,
(SELECT kc.cnt_kenmerkcontract_waarde
FROM cnt_kenmerkcontract kc
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr1.cnt_contract_key
AND kc.cnt_kenmerk_key = 221)
kostenexcl,
(SELECT ud.fac_usrdata_omschr
FROM cnt_kenmerkcontract kc, fac_usrdata ud
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr1.cnt_contract_key
AND kc.cnt_kenmerk_key = 242
AND fac.safe_to_number (kc.cnt_kenmerkcontract_waarde) =
ud.fac_usrdata_key)
btw
FROM cnt_contract cr1
WHERE cr1.ins_discipline_key = 198 -- regel 1
UNION
SELECT cr2.cnt_contract_key cntkey,
(SELECT ud.fac_usrdata_omschr
FROM cnt_kenmerkcontract kc, fac_usrdata ud
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr2.cnt_contract_key
AND kc.cnt_kenmerk_key = 241
AND fac.safe_to_number (kc.cnt_kenmerkcontract_waarde) =
ud.fac_usrdata_key)
contractregelrubriek,
(SELECT kc.cnt_kenmerkcontract_waarde
FROM cnt_kenmerkcontract kc
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr2.cnt_contract_key
AND kc.cnt_kenmerk_key = 261)
aantal,
(SELECT ud.fac_usrdata_omschr
FROM cnt_kenmerkcontract kc, fac_usrdata ud
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr2.cnt_contract_key
AND kc.cnt_kenmerk_key = 262
AND fac.safe_to_number (kc.cnt_kenmerkcontract_waarde) =
ud.fac_usrdata_key)
eenheid,
(SELECT kc.cnt_kenmerkcontract_waarde
FROM cnt_kenmerkcontract kc
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr2.cnt_contract_key
AND kc.cnt_kenmerk_key = 263)
kostenexcl,
(SELECT ud.fac_usrdata_omschr
FROM cnt_kenmerkcontract kc, fac_usrdata ud
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr2.cnt_contract_key
AND kc.cnt_kenmerk_key = 281
AND fac.safe_to_number (kc.cnt_kenmerkcontract_waarde) =
ud.fac_usrdata_key)
btw
FROM cnt_contract cr2
WHERE cr2.ins_discipline_key = 198 -- regel 2
UNION
SELECT cr3.cnt_contract_key cntkey,
(SELECT ud.fac_usrdata_omschr
FROM cnt_kenmerkcontract kc, fac_usrdata ud
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr3.cnt_contract_key
AND kc.cnt_kenmerk_key = 302
AND fac.safe_to_number (kc.cnt_kenmerkcontract_waarde) =
ud.fac_usrdata_key)
contractregelrubriek,
(SELECT kc.cnt_kenmerkcontract_waarde
FROM cnt_kenmerkcontract kc
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr3.cnt_contract_key
AND kc.cnt_kenmerk_key = 321)
aantal,
(SELECT ud.fac_usrdata_omschr
FROM cnt_kenmerkcontract kc, fac_usrdata ud
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr3.cnt_contract_key
AND kc.cnt_kenmerk_key = 322
AND fac.safe_to_number (kc.cnt_kenmerkcontract_waarde) =
ud.fac_usrdata_key)
eenheid,
(SELECT kc.cnt_kenmerkcontract_waarde
FROM cnt_kenmerkcontract kc
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr3.cnt_contract_key
AND kc.cnt_kenmerk_key = 392)
kostenexcl,
(SELECT ud.fac_usrdata_omschr
FROM cnt_kenmerkcontract kc, fac_usrdata ud
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr3.cnt_contract_key
AND kc.cnt_kenmerk_key = 393
AND fac.safe_to_number (kc.cnt_kenmerkcontract_waarde) =
ud.fac_usrdata_key)
btw
FROM cnt_contract cr3
WHERE cr3.ins_discipline_key = 198 -- regel 3
UNION
SELECT cr4.cnt_contract_key cntkey,
(SELECT ud.fac_usrdata_omschr
FROM cnt_kenmerkcontract kc, fac_usrdata ud
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr4.cnt_contract_key
AND kc.cnt_kenmerk_key = 851
AND fac.safe_to_number (kc.cnt_kenmerkcontract_waarde) =
ud.fac_usrdata_key)
contractregelrubriek,
(SELECT kc.cnt_kenmerkcontract_waarde
FROM cnt_kenmerkcontract kc
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr4.cnt_contract_key
AND kc.cnt_kenmerk_key = 852)
aantal,
(SELECT ud.fac_usrdata_omschr
FROM cnt_kenmerkcontract kc, fac_usrdata ud
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr4.cnt_contract_key
AND kc.cnt_kenmerk_key = 853
AND fac.safe_to_number (kc.cnt_kenmerkcontract_waarde) =
ud.fac_usrdata_key)
eenheid,
(SELECT kc.cnt_kenmerkcontract_waarde
FROM cnt_kenmerkcontract kc
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr4.cnt_contract_key
AND kc.cnt_kenmerk_key = 854)
kostenexcl,
(SELECT ud.fac_usrdata_omschr
FROM cnt_kenmerkcontract kc, fac_usrdata ud
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr4.cnt_contract_key
AND kc.cnt_kenmerk_key = 855
AND fac.safe_to_number (kc.cnt_kenmerkcontract_waarde) =
ud.fac_usrdata_key)
btw
FROM cnt_contract cr4
WHERE cr4.ins_discipline_key = 198 -- regel IV
UNION
SELECT cr4.cnt_contract_key cntkey,
(SELECT ud.fac_usrdata_omschr
FROM cnt_kenmerkcontract kc, fac_usrdata ud
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr4.cnt_contract_key
AND kc.cnt_kenmerk_key = 394
AND fac.safe_to_number (kc.cnt_kenmerkcontract_waarde) =
ud.fac_usrdata_key)
contractregelrubriek,
(SELECT kc.cnt_kenmerkcontract_waarde
FROM cnt_kenmerkcontract kc
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr4.cnt_contract_key
AND kc.cnt_kenmerk_key = 395)
aantal,
(SELECT ud.fac_usrdata_omschr
FROM cnt_kenmerkcontract kc, fac_usrdata ud
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr4.cnt_contract_key
AND kc.cnt_kenmerk_key = 396
AND fac.safe_to_number (kc.cnt_kenmerkcontract_waarde) =
ud.fac_usrdata_key)
eenheid,
(SELECT kc.cnt_kenmerkcontract_waarde
FROM cnt_kenmerkcontract kc
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr4.cnt_contract_key
AND kc.cnt_kenmerk_key = 421)
kostenexcl,
NULL btw -- was 397
FROM cnt_contract cr4
WHERE cr4.ins_discipline_key = 198 -- regel 4
UNION
SELECT cr5.cnt_contract_key cntkey,
(SELECT ud.fac_usrdata_omschr
FROM cnt_kenmerkcontract kc, fac_usrdata ud
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr5.cnt_contract_key
AND kc.cnt_kenmerk_key = 398
AND fac.safe_to_number (kc.cnt_kenmerkcontract_waarde) =
ud.fac_usrdata_key)
contractregelrubriek,
NULL aantal, -- was 399!
NULL eenheid, -- was 422!
(SELECT kc.cnt_kenmerkcontract_waarde
FROM cnt_kenmerkcontract kc
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr5.cnt_contract_key
AND kc.cnt_kenmerk_key = 400)
kostenexcl,
(SELECT ud.fac_usrdata_omschr
FROM cnt_kenmerkcontract kc, fac_usrdata ud
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr5.cnt_contract_key
AND kc.cnt_kenmerk_key = 401
AND fac.safe_to_number (kc.cnt_kenmerkcontract_waarde) =
ud.fac_usrdata_key)
btw
FROM cnt_contract cr5
WHERE cr5.ins_discipline_key = 198 -- regel 5
UNION
SELECT cr6.cnt_contract_key cntkey,
(SELECT ud.fac_usrdata_omschr
FROM cnt_kenmerkcontract kc, fac_usrdata ud
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr6.cnt_contract_key
AND kc.cnt_kenmerk_key = 1009
AND fac.safe_to_number (kc.cnt_kenmerkcontract_waarde) =
ud.fac_usrdata_key)
contractregelrubriek,
(SELECT kc.cnt_kenmerkcontract_waarde
FROM cnt_kenmerkcontract kc
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr6.cnt_contract_key
AND kc.cnt_kenmerk_key = 1011)
aantal,
(SELECT ud.fac_usrdata_omschr
FROM cnt_kenmerkcontract kc, fac_usrdata ud
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr6.cnt_contract_key
AND kc.cnt_kenmerk_key = 1012
AND fac.safe_to_number (kc.cnt_kenmerkcontract_waarde) =
ud.fac_usrdata_key)
eenheid,
(SELECT kc.cnt_kenmerkcontract_waarde
FROM cnt_kenmerkcontract kc
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr6.cnt_contract_key
AND kc.cnt_kenmerk_key = 1013)
kostenexcl,
NULL btw
FROM cnt_contract cr6
WHERE cr6.ins_discipline_key = 198) regels -- regel 6
ON basis.cnt_contract_key = regels.cntkey
WHERE UPPER (basis.actief) = 'JA'
AND regels.contractregelrubriek IS NOT NULL;
/* Formatted on 16-12-2014 12:00:30 (QP5 v5.136.908.31019) */
CREATE OR REPLACE VIEW uwva_v_rap_hv_cntopeind
(
hide_f_sortdatum,
contract,
fclt_f_mantel,
fclt_f_cnt_type,
beschrijving,
fclt_x_regio,
adres,
plaats,
contractrubriek,
begindatum,
einddatum,
opzegtermijn,
opzegdatum,
fclt_f_contractstatus,
optie_systematiek,
cnt_opp,
eenheid,
meest_nabij,
fclt_3d_gebouw_key
)
AS
SELECT TO_CHAR (basis.einddatum, 'yyyy-mm-dd'),
basis.nummer,
basis.mantel,
CASE
WHEN fac.safe_to_number (SUBSTR (basis.nummer, 7, 1)) < 5
THEN
'Algemeen'
ELSE
'Werkbedrijf'
END
uwv_cwi,
basis.oms,
pand.regio,
pand.adres,
pand.plaats,
basis.contractrubriek,
basis.begindatum,
basis.einddatum,
basis.opzegtermijn,
basis.opzegdatum,
basis.contractstatus,
basis.optie_systematiek,
opp.aantal,
opp.eenheid,
meest_nabij.vlag,
pand.gebouw_key
FROM (SELECT c.cnt_contract_key,
c.cnt_contract_nummer_intern nummer,
m.cnt_contract_nummer_intern mantel,
c.cnt_contract_omschrijving oms,
c.cnt_contract_looptijd_van begindatum,
cnt.cnt_getopzegdatum (c.cnt_contract_key) opzegdatum,
c.cnt_contract_looptijd_tot einddatum,
(SELECT ud.fac_usrdata_omschr
FROM cnt_kenmerkcontract kc, fac_usrdata ud
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key = c.cnt_contract_key
AND kc.cnt_kenmerk_key = 181
AND fac.safe_to_number (kc.cnt_kenmerkcontract_waarde) =
ud.fac_usrdata_key)
contractrubriek,
(SELECT ud.fac_usrdata_omschr
FROM cnt_kenmerkcontract kc, fac_usrdata ud
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key = c.cnt_contract_key
AND kc.cnt_kenmerk_key = 183
AND fac.safe_to_number (kc.cnt_kenmerkcontract_waarde) =
ud.fac_usrdata_key)
contractstatus,
(SELECT ud.fac_usrdata_omschr
FROM cnt_kenmerkcontract kc, fac_usrdata ud
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key = c.cnt_contract_key
AND kc.cnt_kenmerk_key = 184
AND fac.safe_to_number (kc.cnt_kenmerkcontract_waarde) =
ud.fac_usrdata_key)
actief,
(SELECT t.cnt_termijn_omschrijving
FROM cnt_termijn t
WHERE t.cnt_termijn_key = c.cnt_contract_opzegtermijn)
opzegtermijn,
(SELECT kc.cnt_kenmerkcontract_waarde
FROM cnt_kenmerkcontract kc
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key = c.cnt_contract_key
AND kc.cnt_kenmerk_key = 191)
optie_systematiek
FROM cnt_v_aanwezigcontract c, cnt_v_aanwezigcontract m
WHERE c.ins_discipline_key = 198
AND c.cnt_contract_mantel_key = m.cnt_contract_key(+))
basis
LEFT JOIN (SELECT c1.cnt_contract_key, 1 vlag
FROM cnt_v_aanwezigcontract c1, cnt_kenmerkcontract kc1
WHERE c1.ins_discipline_key = 198
AND c1.cnt_contract_key = kc1.cnt_contract_key
AND kc1.cnt_kenmerk_key = 183
AND kc1.cnt_kenmerkcontract_waarde != '2421' -- Beeindigd
AND NOT EXISTS
(SELECT 1
FROM cnt_v_aanwezigcontract c2, cnt_kenmerkcontract kc2
WHERE c2.ins_discipline_key = 198
AND c2.cnt_contract_key = kc2.cnt_contract_key
AND kc2.cnt_kenmerk_key = 183
AND kc2.cnt_kenmerkcontract_waarde != '2421' -- Beeindigd
--AND COALESCE (c2.cnt_contract_mantel_key, c2.cnt_contract_key) =
-- COALESCE (c1.cnt_contract_mantel_key, c1.cnt_contract_key)
AND (c2.cnt_contract_mantel_key = c1.cnt_contract_mantel_key
OR (c1.cnt_contract_mantel_key IS NULL
AND c2.cnt_contract_key = c1.cnt_contract_key))
AND (c2.cnt_contract_looptijd_tot < c1.cnt_contract_looptijd_tot
OR (c2.cnt_contract_looptijd_tot = c1.cnt_contract_looptijd_tot
AND c2.cnt_contract_nummer_intern < c1.cnt_contract_nummer_intern))))
meest_nabij
ON basis.cnt_contract_key = meest_nabij.cnt_contract_key
LEFT JOIN (SELECT x.cnt_contract_key,
x.gebouw_key,
y.code,
y.regio,
COALESCE (z.mld_adres_bezoek_plaats,
y.alg_locatie_plaats)
plaats,
COALESCE (z.mld_adres_bezoek_adres,
y.alg_locatie_adres)
adres
FROM (SELECT ccp.cnt_alg_plaats_key gebouw_key,
cc.cnt_contract_key
FROM cnt_contract cc, cnt_contract_plaats ccp
WHERE cc.ins_discipline_key = 198 -- huurcontract
AND cc.cnt_contract_key =
ccp.cnt_contract_key
AND ccp.cnt_alg_plaats_code = 'G'
AND ccp.cnt_contract_plaats_verwijder IS NULL)
x
LEFT JOIN (SELECT g.alg_gebouw_key,
g.alg_gebouw_code code,
l.alg_locatie_adres,
l.alg_locatie_plaats,
d.alg_district_omschrijving
regio
FROM alg_gebouw G,
alg_locatie l,
alg_district d
WHERE g.alg_locatie_key =
l.alg_locatie_key
AND l.alg_district_key =
d.alg_district_key) y
ON x.gebouw_key = y.alg_gebouw_key
LEFT JOIN -- adres info bij gebouw
(SELECT g.alg_gebouw_key,
a.mld_adres_bezoek_plaats,
a.mld_adres_bezoek_adres
FROM alg_gebouw G, mld_adres A
WHERE g.mld_adres_key =
a.mld_adres_key
AND a.mld_adres_verwijder IS NULL)
z
ON x.gebouw_key = z.alg_gebouw_key) pand
ON basis.cnt_contract_key = pand.cnt_contract_key
LEFT JOIN ( SELECT regels.cntkey,
regels.eenheid eenheid,
SUM (regels.aantal) aantal
FROM (SELECT cr1.cnt_contract_key cntkey,
(SELECT fac.safe_to_number (kc.cnt_kenmerkcontract_waarde)
FROM cnt_kenmerkcontract kc
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr1.cnt_contract_key
AND kc.cnt_kenmerk_key = 202)
aantal,
(SELECT ud.fac_usrdata_omschr
FROM cnt_kenmerkcontract kc,
fac_usrdata ud
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr1.cnt_contract_key
AND kc.cnt_kenmerk_key = 203
AND fac.safe_to_number (kc.cnt_kenmerkcontract_waarde) =
ud.fac_usrdata_key)
eenheid
FROM cnt_contract cr1
WHERE cr1.ins_discipline_key = 198 -- regel 1
UNION
SELECT cr2.cnt_contract_key cntkey,
(SELECT fac.safe_to_number (kc.cnt_kenmerkcontract_waarde)
FROM cnt_kenmerkcontract kc
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr2.cnt_contract_key
AND kc.cnt_kenmerk_key = 261)
aantal,
(SELECT ud.fac_usrdata_omschr
FROM cnt_kenmerkcontract kc,
fac_usrdata ud
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr2.cnt_contract_key
AND kc.cnt_kenmerk_key = 262
AND fac.safe_to_number (kc.cnt_kenmerkcontract_waarde) =
ud.fac_usrdata_key)
eenheid
FROM cnt_contract cr2
WHERE cr2.ins_discipline_key = 198 -- regel 2
UNION
SELECT cr3.cnt_contract_key cntkey,
(SELECT fac.safe_to_number (kc.cnt_kenmerkcontract_waarde)
FROM cnt_kenmerkcontract kc
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr3.cnt_contract_key
AND kc.cnt_kenmerk_key = 321)
aantal,
(SELECT ud.fac_usrdata_omschr
FROM cnt_kenmerkcontract kc,
fac_usrdata ud
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr3.cnt_contract_key
AND kc.cnt_kenmerk_key = 322
AND fac.safe_to_number (kc.cnt_kenmerkcontract_waarde) =
ud.fac_usrdata_key)
eenheid
FROM cnt_contract cr3
WHERE cr3.ins_discipline_key = 198 -- regel 3
UNION
SELECT cr4.cnt_contract_key cntkey,
(SELECT fac.safe_to_number (kc.cnt_kenmerkcontract_waarde)
FROM cnt_kenmerkcontract kc
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr4.cnt_contract_key
AND kc.cnt_kenmerk_key = 852)
aantal,
(SELECT ud.fac_usrdata_omschr
FROM cnt_kenmerkcontract kc,
fac_usrdata ud
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr4.cnt_contract_key
AND kc.cnt_kenmerk_key = 853
AND fac.safe_to_number (kc.cnt_kenmerkcontract_waarde) =
ud.fac_usrdata_key)
eenheid
FROM cnt_contract cr4
WHERE cr4.ins_discipline_key = 198 -- regel IV
UNION
SELECT cr4.cnt_contract_key cntkey,
(SELECT fac.safe_to_number (kc.cnt_kenmerkcontract_waarde)
FROM cnt_kenmerkcontract kc
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr4.cnt_contract_key
AND kc.cnt_kenmerk_key = 395)
aantal,
(SELECT ud.fac_usrdata_omschr
FROM cnt_kenmerkcontract kc,
fac_usrdata ud
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr4.cnt_contract_key
AND kc.cnt_kenmerk_key = 396
AND fac.safe_to_number (kc.cnt_kenmerkcontract_waarde) =
ud.fac_usrdata_key)
eenheid
FROM cnt_contract cr4
WHERE cr4.ins_discipline_key = 198 -- regel 4
UNION
SELECT cr6.cnt_contract_key cntkey,
(SELECT fac.safe_to_number (kc.cnt_kenmerkcontract_waarde)
FROM cnt_kenmerkcontract kc
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr6.cnt_contract_key
AND kc.cnt_kenmerk_key = 1011)
aantal,
(SELECT ud.fac_usrdata_omschr
FROM cnt_kenmerkcontract kc,
fac_usrdata ud
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr6.cnt_contract_key
AND kc.cnt_kenmerk_key = 1012
AND fac.safe_to_number (kc.cnt_kenmerkcontract_waarde) =
ud.fac_usrdata_key)
eenheid
FROM cnt_contract cr6
WHERE cr6.ins_discipline_key = 198) regels -- regel 6
WHERE regels.eenheid LIKE 'M2%'
GROUP BY regels.cntkey, regels.eenheid) opp
ON basis.cnt_contract_key = opp.cntkey
WHERE UPPER (basis.contractstatus) <> 'BEEINDIGD';
/* Formatted on 16-12-2014 12:04:26 (QP5 v5.136.908.31019) */
CREATE OR REPLACE VIEW uwva_v_rap_hv_cntopopzeg
(
hide_f_sortdatum,
contract,
fclt_f_mantel,
fclt_f_cnt_type,
beschrijving,
fclt_x_regio,
adres,
plaats,
contractrubriek,
begindatum,
einddatum,
opzegtermijn,
opzegdatum,
fclt_f_contractstatus,
optie_systematiek,
cnt_opp,
eenheid,
meest_nabij,
fclt_3d_gebouw_key
)
AS
SELECT TO_CHAR (basis.opzegdatum, 'yyyy-mm-dd'),
basis.nummer,
basis.mantel,
CASE
WHEN fac.safe_to_number (SUBSTR (basis.nummer, 7, 1)) < 5
THEN
'Algemeen'
ELSE
'Werkbedrijf'
END
uwv_cwi,
basis.oms,
pand.regio,
pand.adres,
pand.plaats,
basis.contractrubriek,
basis.begindatum,
basis.einddatum,
basis.opzegtermijn,
basis.opzegdatum,
basis.contractstatus,
basis.optie_systematiek,
opp.aantal,
opp.eenheid,
meest_nabij.vlag,
pand.gebouw_key
FROM (SELECT c.cnt_contract_key,
c.cnt_contract_nummer_intern nummer,
m.cnt_contract_nummer_intern mantel,
c.cnt_contract_omschrijving oms,
c.cnt_contract_looptijd_van begindatum,
cnt.cnt_getopzegdatum (c.cnt_contract_key) opzegdatum,
c.cnt_contract_looptijd_tot einddatum,
(SELECT ud.fac_usrdata_omschr
FROM cnt_kenmerkcontract kc, fac_usrdata ud
WHERE kc.cnt_contract_key = c.cnt_contract_key
AND kc.cnt_kenmerk_key = 181
AND fac.safe_to_number (kc.cnt_kenmerkcontract_waarde) =
ud.fac_usrdata_key)
contractrubriek,
(SELECT ud.fac_usrdata_omschr
FROM cnt_kenmerkcontract kc, fac_usrdata ud
WHERE kc.cnt_contract_key = c.cnt_contract_key
AND kc.cnt_kenmerk_key = 183
AND fac.safe_to_number (kc.cnt_kenmerkcontract_waarde) =
ud.fac_usrdata_key)
contractstatus,
(SELECT ud.fac_usrdata_omschr
FROM cnt_kenmerkcontract kc, fac_usrdata ud
WHERE kc.cnt_contract_key = c.cnt_contract_key
AND kc.cnt_kenmerk_key = 184
AND fac.safe_to_number (kc.cnt_kenmerkcontract_waarde) =
ud.fac_usrdata_key)
actief,
(SELECT t.cnt_termijn_omschrijving
FROM cnt_termijn t
WHERE t.cnt_termijn_key = c.cnt_contract_opzegtermijn)
opzegtermijn,
(SELECT kc.cnt_kenmerkcontract_waarde
FROM cnt_kenmerkcontract kc
WHERE kc.cnt_contract_key = c.cnt_contract_key
AND kc.cnt_kenmerk_key = 191)
optie_systematiek
FROM cnt_v_aanwezigcontract c, cnt_v_aanwezigcontract m
WHERE c.ins_discipline_key = 198
AND c.cnt_contract_mantel_key = m.cnt_contract_key(+))
basis
LEFT JOIN (SELECT c1.cnt_contract_key, 1 vlag
FROM cnt_v_aanwezigcontract c1, cnt_kenmerkcontract kc1
WHERE c1.ins_discipline_key = 198
AND c1.cnt_contract_key = kc1.cnt_contract_key
AND kc1.cnt_kenmerk_key = 183
AND kc1.cnt_kenmerkcontract_waarde != '2421' -- Beeindigd
AND NOT EXISTS
(SELECT 1
FROM cnt_v_aanwezigcontract c2, cnt_kenmerkcontract kc2
WHERE c2.ins_discipline_key = 198
AND c2.cnt_contract_key =
kc2.cnt_contract_key
AND kc2.cnt_kenmerk_key = 183
AND kc2.cnt_kenmerkcontract_waarde != '2421' -- Beeindigd
--AND COALESCE (c2.cnt_contract_mantel_key, c2.cnt_contract_key) =
-- COALESCE (c1.cnt_contract_mantel_key, c1.cnt_contract_key)
AND (c2.cnt_contract_mantel_key = c1.cnt_contract_mantel_key
OR (c1.cnt_contract_mantel_key IS NULL
AND c2.cnt_contract_key = c1.cnt_contract_key))
AND (cnt.cnt_getopzegdatum (c2.cnt_contract_key) <
cnt.cnt_getopzegdatum (c1.cnt_contract_key)
OR (cnt.cnt_getopzegdatum (c2.cnt_contract_key) =
cnt.cnt_getopzegdatum (c1.cnt_contract_key)
AND c2.cnt_contract_nummer_intern <
c1.cnt_contract_nummer_intern))))
meest_nabij
ON basis.cnt_contract_key = meest_nabij.cnt_contract_key
LEFT JOIN (SELECT x.cnt_contract_key,
x.gebouw_key,
y.code,
y.regio,
COALESCE (z.mld_adres_bezoek_plaats,
y.alg_locatie_plaats)
plaats,
COALESCE (z.mld_adres_bezoek_adres,
y.alg_locatie_adres)
adres
FROM (SELECT ccp.cnt_alg_plaats_key gebouw_key,
cc.cnt_contract_key
FROM cnt_contract cc, cnt_contract_plaats ccp
WHERE cc.ins_discipline_key = 198 -- huurcontract
AND cc.cnt_contract_key =
ccp.cnt_contract_key
AND ccp.cnt_alg_plaats_code = 'G'
AND ccp.cnt_contract_plaats_verwijder IS NULL)
x
LEFT JOIN (SELECT g.alg_gebouw_key,
g.alg_gebouw_code code,
l.alg_locatie_adres,
l.alg_locatie_plaats,
d.alg_district_omschrijving
regio
FROM alg_gebouw g,
alg_locatie l,
alg_district d
WHERE g.alg_locatie_key =
l.alg_locatie_key
AND l.alg_district_key =
d.alg_district_key) y
ON x.gebouw_key = y.alg_gebouw_key
LEFT JOIN -- adres info bij gebouw
(SELECT g.alg_gebouw_key,
a.mld_adres_bezoek_plaats,
a.mld_adres_bezoek_adres
FROM alg_gebouw g, mld_adres a
WHERE g.mld_adres_key =
a.mld_adres_key
AND a.mld_adres_verwijder IS NULL)
z
ON x.gebouw_key = z.alg_gebouw_key) pand
ON basis.cnt_contract_key = pand.cnt_contract_key
LEFT JOIN ( SELECT regels.cntkey,
regels.eenheid eenheid,
SUM (regels.aantal) aantal
FROM (SELECT cr1.cnt_contract_key cntkey,
(SELECT fac.safe_to_number (kc.cnt_kenmerkcontract_waarde)
FROM cnt_kenmerkcontract kc
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr1.cnt_contract_key
AND kc.cnt_kenmerk_key = 202)
aantal,
(SELECT ud.fac_usrdata_omschr
FROM cnt_kenmerkcontract kc,
fac_usrdata ud
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr1.cnt_contract_key
AND kc.cnt_kenmerk_key = 203
AND fac.safe_to_number (kc.cnt_kenmerkcontract_waarde) =
ud.fac_usrdata_key)
eenheid
FROM cnt_contract cr1
WHERE cr1.ins_discipline_key = 198 -- regel 1
UNION
SELECT cr2.cnt_contract_key cntkey,
(SELECT fac.safe_to_number (kc.cnt_kenmerkcontract_waarde)
FROM cnt_kenmerkcontract kc
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr2.cnt_contract_key
AND kc.cnt_kenmerk_key = 261)
aantal,
(SELECT ud.fac_usrdata_omschr
FROM cnt_kenmerkcontract kc,
fac_usrdata ud
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr2.cnt_contract_key
AND kc.cnt_kenmerk_key = 262
AND fac.safe_to_number (kc.cnt_kenmerkcontract_waarde) =
ud.fac_usrdata_key)
eenheid
FROM cnt_contract cr2
WHERE cr2.ins_discipline_key = 198 -- regel 2
UNION
SELECT cr3.cnt_contract_key cntkey,
(SELECT fac.safe_to_number (kc.cnt_kenmerkcontract_waarde)
FROM cnt_kenmerkcontract kc
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr3.cnt_contract_key
AND kc.cnt_kenmerk_key = 321)
aantal,
(SELECT ud.fac_usrdata_omschr
FROM cnt_kenmerkcontract kc,
fac_usrdata ud
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr3.cnt_contract_key
AND kc.cnt_kenmerk_key = 322
AND fac.safe_to_number (kc.cnt_kenmerkcontract_waarde) =
ud.fac_usrdata_key)
eenheid
FROM cnt_contract cr3
WHERE cr3.ins_discipline_key = 198 -- regel 3
UNION
SELECT cr4.cnt_contract_key cntkey,
(SELECT fac.safe_to_number (kc.cnt_kenmerkcontract_waarde)
FROM cnt_kenmerkcontract kc
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr4.cnt_contract_key
AND kc.cnt_kenmerk_key = 852)
aantal,
(SELECT ud.fac_usrdata_omschr
FROM cnt_kenmerkcontract kc,
fac_usrdata ud
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr4.cnt_contract_key
AND kc.cnt_kenmerk_key = 853
AND fac.safe_to_number (kc.cnt_kenmerkcontract_waarde) =
ud.fac_usrdata_key)
eenheid
FROM cnt_contract cr4
WHERE cr4.ins_discipline_key = 198 -- regel IV
UNION
SELECT cr4.cnt_contract_key cntkey,
(SELECT fac.safe_to_number (kc.cnt_kenmerkcontract_waarde)
FROM cnt_kenmerkcontract kc
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr4.cnt_contract_key
AND kc.cnt_kenmerk_key = 395)
aantal,
(SELECT ud.fac_usrdata_omschr
FROM cnt_kenmerkcontract kc,
fac_usrdata ud
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr4.cnt_contract_key
AND kc.cnt_kenmerk_key = 396
AND fac.safe_to_number (kc.cnt_kenmerkcontract_waarde) =
ud.fac_usrdata_key)
eenheid
FROM cnt_contract cr4
WHERE cr4.ins_discipline_key = 198 -- regel 4
UNION
SELECT cr6.cnt_contract_key cntkey,
(SELECT fac.safe_to_number (kc.cnt_kenmerkcontract_waarde)
FROM cnt_kenmerkcontract kc
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr6.cnt_contract_key
AND kc.cnt_kenmerk_key = 1011)
aantal,
(SELECT ud.fac_usrdata_omschr
FROM cnt_kenmerkcontract kc,
fac_usrdata ud
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr6.cnt_contract_key
AND kc.cnt_kenmerk_key = 1012
AND fac.safe_to_number (kc.cnt_kenmerkcontract_waarde) =
ud.fac_usrdata_key)
eenheid
FROM cnt_contract cr6
WHERE cr6.ins_discipline_key = 198) regels -- regel 6
WHERE regels.eenheid LIKE 'M2%'
GROUP BY regels.cntkey, regels.eenheid) opp
ON basis.cnt_contract_key = opp.cntkey
WHERE UPPER (basis.contractstatus) <> 'BEEINDIGD';
/* Formatted on 20-6-2017 10:08:11 (QP5 v5.136.908.31019) */
CREATE OR REPLACE VIEW uwva_v_rap_hv_toek_verpl
(
hide_f_groepering,
fclt_d_datum,
fclt_f_mantel,
mantel_extern,
contract,
fclt_f_cnt_type,
beschrijving,
fclt_x_regio,
adres,
plaats,
contractrubriek,
leverancier,
bankrekening,
leverancier_nummer,
begindatum,
einddatum,
opzegtermijn,
opzegdatum,
fclt_f_contractstatus,
optie_systematiek,
regrubriek,
factuurmaanden,
btw,
mndkosten_excl_btw
)
AS
WITH c
AS ( SELECT basis.mantel,
basis.nummer,
basis.mantel_extern,
basis.oms,
pand.regio,
pand.adres,
pand.plaats,
basis.contractrubriek,
basis.leverancier,
basis.bankrekening,
basis.leverancier_nummer,
basis.begindatum,
basis.einddatum,
basis.opzegtermijn,
basis.opzegdatum,
basis.contractstatus,
basis.optie_systematiek,
regels.contractregelrubriek,
basis.factuurmaanden,
regels.btw,
SUM(DECODE (
basis.factuurmaanden,
NULL,
0,
0,
NULL,
ROUND (
fac.safe_to_number (regels.kostenexcl)
/ basis.factuurmaanden,
2)))
mndkosten_excl_btw
FROM (SELECT c.cnt_contract_key,
m.cnt_contract_nummer_intern mantel,
m.cnt_contract_nummer mantel_extern,
c.cnt_contract_nummer_intern nummer,
c.cnt_contract_omschrijving oms,
c.cnt_contract_looptijd_van begindatum,
cnt.cnt_getopzegdatum (c.cnt_contract_key)
opzegdatum,
c.cnt_contract_looptijd_tot einddatum,
(SELECT ud.fac_usrdata_omschr
FROM cnt_kenmerkcontract kc, fac_usrdata ud
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
c.cnt_contract_key
AND kc.cnt_kenmerk_key = 181
AND fac.safe_to_number (
kc.cnt_kenmerkcontract_waarde) =
ud.fac_usrdata_key)
contractrubriek,
(SELECT ud.fac_usrdata_omschr
FROM cnt_kenmerkcontract kc, fac_usrdata ud
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
c.cnt_contract_key
AND kc.cnt_kenmerk_key = 183
AND fac.safe_to_number (
kc.cnt_kenmerkcontract_waarde) =
ud.fac_usrdata_key)
contractstatus,
(SELECT ud.fac_usrdata_omschr
FROM cnt_kenmerkcontract kc, fac_usrdata ud
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
c.cnt_contract_key
AND kc.cnt_kenmerk_key = 184
AND fac.safe_to_number (
kc.cnt_kenmerkcontract_waarde) =
ud.fac_usrdata_key)
actief,
(SELECT fac.safe_to_number (
ud.fac_usrdata_code)
FROM cnt_kenmerkcontract kc, fac_usrdata ud
WHERE kc.cnt_contract_key =
c.cnt_contract_key
AND kc.cnt_kenmerk_key = 189
AND fac.safe_to_number (
kc.cnt_kenmerkcontract_waarde) =
ud.fac_usrdata_key)
factuurmaanden,
(SELECT t.cnt_termijn_omschrijving
FROM cnt_termijn t
WHERE t.cnt_termijn_key =
c.cnt_contract_opzegtermijn)
opzegtermijn,
(SELECT kc.cnt_kenmerkcontract_waarde
FROM cnt_kenmerkcontract kc
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
c.cnt_contract_key
AND kc.cnt_kenmerk_key = 191)
optie_systematiek,
b.prs_bedrijf_naam leverancier,
(SELECT prs_kenmerklink_waarde
FROM prs_kenmerklink
WHERE prs_kenmerklink_niveau = 'B'
AND prs_kenmerk_key = 1140
AND prs_link_key = b.prs_bedrijf_key)
bankrekening,
prs_leverancier_nr leverancier_nummer
FROM cnt_v_aanwezigcontract c,
cnt_v_aanwezigcontract m,
prs_bedrijf b
WHERE c.ins_discipline_key = 198
AND b.prs_bedrijf_key(+) =
m.cnt_prs_bedrijf_key
AND c.cnt_contract_mantel_key =
m.cnt_contract_key(+)) basis
LEFT JOIN (SELECT x.cnt_contract_key,
x.gebouw_key,
y.code,
y.regio,
COALESCE (z.mld_adres_bezoek_plaats,
y.alg_locatie_plaats)
plaats,
COALESCE (z.mld_adres_bezoek_adres,
y.alg_locatie_adres)
adres
FROM (SELECT ccp.cnt_alg_plaats_key
gebouw_key,
cc.cnt_contract_key
FROM cnt_contract cc,
cnt_contract_plaats ccp
WHERE cc.ins_discipline_key = 198 -- huurcontract
AND cc.cnt_contract_key =
ccp.cnt_contract_key
AND ccp.cnt_alg_plaats_code =
'G'
AND ccp.cnt_contract_plaats_verwijder IS NULL)
x
LEFT JOIN (SELECT g.alg_gebouw_key,
g.alg_gebouw_code
code,
l.alg_locatie_adres,
l.alg_locatie_plaats,
d.alg_district_omschrijving
regio
FROM alg_gebouw g,
alg_locatie l,
alg_district d
WHERE g.alg_locatie_key =
l.alg_locatie_key
AND l.alg_district_key =
d.alg_district_key)
y
ON x.gebouw_key = y.alg_gebouw_key
LEFT JOIN -- adres info bij gebouw
(SELECT g.alg_gebouw_key,
a.mld_adres_bezoek_plaats,
a.mld_adres_bezoek_adres
FROM alg_gebouw g,
mld_adres a
WHERE g.mld_adres_key =
a.mld_adres_key
AND a.mld_adres_verwijder IS NULL)
z
ON x.gebouw_key = z.alg_gebouw_key)
pand
ON basis.cnt_contract_key = pand.cnt_contract_key
LEFT JOIN (SELECT cr1.cnt_contract_key cntkey,
(SELECT ud.fac_usrdata_omschr
FROM cnt_kenmerkcontract kc,
fac_usrdata ud
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr1.cnt_contract_key
AND kc.cnt_kenmerk_key = 201
AND fac.safe_to_number(kc.cnt_kenmerkcontract_waarde) =
ud.fac_usrdata_key)
contractregelrubriek,
(SELECT kc.cnt_kenmerkcontract_waarde
FROM cnt_kenmerkcontract kc
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr1.cnt_contract_key
AND kc.cnt_kenmerk_key = 202)
aantal,
(SELECT ud.fac_usrdata_omschr
FROM cnt_kenmerkcontract kc,
fac_usrdata ud
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr1.cnt_contract_key
AND kc.cnt_kenmerk_key = 203
AND fac.safe_to_number(kc.cnt_kenmerkcontract_waarde) =
ud.fac_usrdata_key)
eenheid,
(SELECT kc.cnt_kenmerkcontract_waarde
FROM cnt_kenmerkcontract kc
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr1.cnt_contract_key
AND kc.cnt_kenmerk_key = 221)
kostenexcl,
(SELECT ud.fac_usrdata_omschr
FROM cnt_kenmerkcontract kc,
fac_usrdata ud
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr1.cnt_contract_key
AND kc.cnt_kenmerk_key = 242
AND fac.safe_to_number(kc.cnt_kenmerkcontract_waarde) =
ud.fac_usrdata_key)
btw
FROM cnt_contract cr1
WHERE cr1.ins_discipline_key = 198 -- regel 1
UNION
SELECT cr2.cnt_contract_key cntkey,
(SELECT ud.fac_usrdata_omschr
FROM cnt_kenmerkcontract kc,
fac_usrdata ud
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr2.cnt_contract_key
AND kc.cnt_kenmerk_key = 241
AND fac.safe_to_number(kc.cnt_kenmerkcontract_waarde) =
ud.fac_usrdata_key)
contractregelrubriek,
(SELECT kc.cnt_kenmerkcontract_waarde
FROM cnt_kenmerkcontract kc
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr2.cnt_contract_key
AND kc.cnt_kenmerk_key = 261)
aantal,
(SELECT ud.fac_usrdata_omschr
FROM cnt_kenmerkcontract kc,
fac_usrdata ud
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr2.cnt_contract_key
AND kc.cnt_kenmerk_key = 262
AND fac.safe_to_number(kc.cnt_kenmerkcontract_waarde) =
ud.fac_usrdata_key)
eenheid,
(SELECT kc.cnt_kenmerkcontract_waarde
FROM cnt_kenmerkcontract kc
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr2.cnt_contract_key
AND kc.cnt_kenmerk_key = 263)
kostenexcl,
(SELECT ud.fac_usrdata_omschr
FROM cnt_kenmerkcontract kc,
fac_usrdata ud
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr2.cnt_contract_key
AND kc.cnt_kenmerk_key = 281
AND fac.safe_to_number(kc.cnt_kenmerkcontract_waarde) =
ud.fac_usrdata_key)
btw
FROM cnt_contract cr2
WHERE cr2.ins_discipline_key = 198 -- regel 2
UNION
SELECT cr3.cnt_contract_key cntkey,
(SELECT ud.fac_usrdata_omschr
FROM cnt_kenmerkcontract kc,
fac_usrdata ud
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr3.cnt_contract_key
AND kc.cnt_kenmerk_key = 302
AND fac.safe_to_number(kc.cnt_kenmerkcontract_waarde) =
ud.fac_usrdata_key)
contractregelrubriek,
(SELECT kc.cnt_kenmerkcontract_waarde
FROM cnt_kenmerkcontract kc
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr3.cnt_contract_key
AND kc.cnt_kenmerk_key = 321)
aantal,
(SELECT ud.fac_usrdata_omschr
FROM cnt_kenmerkcontract kc,
fac_usrdata ud
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr3.cnt_contract_key
AND kc.cnt_kenmerk_key = 322
AND fac.safe_to_number(kc.cnt_kenmerkcontract_waarde) =
ud.fac_usrdata_key)
eenheid,
(SELECT kc.cnt_kenmerkcontract_waarde
FROM cnt_kenmerkcontract kc
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr3.cnt_contract_key
AND kc.cnt_kenmerk_key = 392)
kostenexcl,
(SELECT ud.fac_usrdata_omschr
FROM cnt_kenmerkcontract kc,
fac_usrdata ud
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr3.cnt_contract_key
AND kc.cnt_kenmerk_key = 393
AND fac.safe_to_number(kc.cnt_kenmerkcontract_waarde) =
ud.fac_usrdata_key)
btw
FROM cnt_contract cr3
WHERE cr3.ins_discipline_key = 198 -- regel 3
UNION
SELECT cr4.cnt_contract_key cntkey,
(SELECT ud.fac_usrdata_omschr
FROM cnt_kenmerkcontract kc,
fac_usrdata ud
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr4.cnt_contract_key
AND kc.cnt_kenmerk_key = 851
AND fac.safe_to_number(kc.cnt_kenmerkcontract_waarde) =
ud.fac_usrdata_key)
contractregelrubriek,
(SELECT kc.cnt_kenmerkcontract_waarde
FROM cnt_kenmerkcontract kc
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr4.cnt_contract_key
AND kc.cnt_kenmerk_key = 852)
aantal,
(SELECT ud.fac_usrdata_omschr
FROM cnt_kenmerkcontract kc,
fac_usrdata ud
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr4.cnt_contract_key
AND kc.cnt_kenmerk_key = 853
AND fac.safe_to_number(kc.cnt_kenmerkcontract_waarde) =
ud.fac_usrdata_key)
eenheid,
(SELECT kc.cnt_kenmerkcontract_waarde
FROM cnt_kenmerkcontract kc
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr4.cnt_contract_key
AND kc.cnt_kenmerk_key = 854)
kostenexcl,
(SELECT ud.fac_usrdata_omschr
FROM cnt_kenmerkcontract kc,
fac_usrdata ud
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr4.cnt_contract_key
AND kc.cnt_kenmerk_key = 855
AND fac.safe_to_number(kc.cnt_kenmerkcontract_waarde) =
ud.fac_usrdata_key)
btw
FROM cnt_contract cr4
WHERE cr4.ins_discipline_key = 198 -- regel IV
UNION
SELECT cr4.cnt_contract_key cntkey,
(SELECT ud.fac_usrdata_omschr
FROM cnt_kenmerkcontract kc,
fac_usrdata ud
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr4.cnt_contract_key
AND kc.cnt_kenmerk_key = 394
AND fac.safe_to_number(kc.cnt_kenmerkcontract_waarde) =
ud.fac_usrdata_key)
contractregelrubriek,
(SELECT kc.cnt_kenmerkcontract_waarde
FROM cnt_kenmerkcontract kc
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr4.cnt_contract_key
AND kc.cnt_kenmerk_key = 395)
aantal,
(SELECT ud.fac_usrdata_omschr
FROM cnt_kenmerkcontract kc,
fac_usrdata ud
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr4.cnt_contract_key
AND kc.cnt_kenmerk_key = 396
AND fac.safe_to_number(kc.cnt_kenmerkcontract_waarde) =
ud.fac_usrdata_key)
eenheid,
(SELECT kc.cnt_kenmerkcontract_waarde
FROM cnt_kenmerkcontract kc
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr4.cnt_contract_key
AND kc.cnt_kenmerk_key = 421)
kostenexcl,
NULL btw -- was 397
FROM cnt_contract cr4
WHERE cr4.ins_discipline_key = 198 -- regel 4
UNION
SELECT cr5.cnt_contract_key cntkey,
(SELECT ud.fac_usrdata_omschr
FROM cnt_kenmerkcontract kc,
fac_usrdata ud
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr5.cnt_contract_key
AND kc.cnt_kenmerk_key = 398
AND fac.safe_to_number(kc.cnt_kenmerkcontract_waarde) =
ud.fac_usrdata_key)
contractregelrubriek,
NULL aantal, -- was 399!
NULL eenheid, -- was 422!
(SELECT kc.cnt_kenmerkcontract_waarde
FROM cnt_kenmerkcontract kc
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr5.cnt_contract_key
AND kc.cnt_kenmerk_key = 400)
kostenexcl,
(SELECT ud.fac_usrdata_omschr
FROM cnt_kenmerkcontract kc,
fac_usrdata ud
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr5.cnt_contract_key
AND kc.cnt_kenmerk_key = 401
AND fac.safe_to_number(kc.cnt_kenmerkcontract_waarde) =
ud.fac_usrdata_key)
btw
FROM cnt_contract cr5
WHERE cr5.ins_discipline_key = 198 -- regel 5
UNION
SELECT cr6.cnt_contract_key cntkey,
(SELECT ud.fac_usrdata_omschr
FROM cnt_kenmerkcontract kc,
fac_usrdata ud
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr6.cnt_contract_key
AND kc.cnt_kenmerk_key = 1009
AND fac.safe_to_number(kc.cnt_kenmerkcontract_waarde) =
ud.fac_usrdata_key)
contractregelrubriek,
(SELECT kc.cnt_kenmerkcontract_waarde
FROM cnt_kenmerkcontract kc
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr6.cnt_contract_key
AND kc.cnt_kenmerk_key = 1011)
aantal,
(SELECT ud.fac_usrdata_omschr
FROM cnt_kenmerkcontract kc,
fac_usrdata ud
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr6.cnt_contract_key
AND kc.cnt_kenmerk_key = 1012
AND fac.safe_to_number(kc.cnt_kenmerkcontract_waarde) =
ud.fac_usrdata_key)
eenheid,
(SELECT kc.cnt_kenmerkcontract_waarde
FROM cnt_kenmerkcontract kc
WHERE kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_contract_key =
cr6.cnt_contract_key
AND kc.cnt_kenmerk_key = 1013)
kostenexcl,
NULL btw
FROM cnt_contract cr6
WHERE cr6.ins_discipline_key = 198) regels -- regel 6
ON basis.cnt_contract_key = regels.cntkey
WHERE UPPER (basis.contractstatus) <> 'BEEINDIGD'
AND (regels.contractregelrubriek IS NOT NULL
OR regels.kostenexcl IS NOT NULL)
GROUP BY basis.nummer,
basis.mantel,
basis.mantel_extern,
basis.oms,
pand.regio,
pand.adres,
pand.plaats,
basis.leverancier,
basis.bankrekening,
basis.leverancier_nummer,
basis.contractrubriek,
basis.begindatum,
basis.einddatum,
basis.opzegtermijn,
basis.opzegdatum,
basis.contractstatus,
basis.optie_systematiek,
regels.contractregelrubriek,
basis.factuurmaanden,
regels.btw)
SELECT COALESCE (c.mantel, c.nummer) groepering,
TO_CHAR (x.maand, 'dd-mm-yyyy') vantot,
c.mantel,
c.mantel_extern,
c.nummer,
CASE
WHEN fac.safe_to_number (SUBSTR (c.nummer, 7, 1)) < 5
THEN
'Algemeen'
ELSE
'Werkbedrijf'
END
uwv_cwi,
c.oms,
c.regio,
c.adres,
c.plaats,
c.contractrubriek,
c.leverancier,
c.bankrekening,
c.leverancier_nummer,
c.begindatum,
c.einddatum,
c.opzegtermijn,
c.opzegdatum,
c.contractstatus,
c.optie_systematiek,
c.contractregelrubriek,
c.factuurmaanden,
c.btw,
c.mndkosten_excl_btw
FROM ( SELECT ADD_MONTHS (TRUNC (SYSDATE, 'YYYY'), -1 + ROWNUM) maand
FROM DUAL
CONNECT BY LEVEL <= 120) x, c
WHERE x.maand BETWEEN c.begindatum AND c.einddatum;
/* Formatted on 17-11-2016 12:28:32 (QP5 v5.136.908.31019) */
CREATE OR REPLACE VIEW uwva_v_rap_hv_ruimtedetails
(
fclt_f_regio, -- Was fclt_f_kavel!
fclt_f_district,
fclt_f_gebouw,
gemeente,
adres,
fclt_f_verdieping,
ruimte,
fclt_f_divisie,
fclt_f_afdeling,
fclt_f_ruimtesoort,
fclt_f_ruimtegebruik,
nen2580,
vloer,
bezetting,
wp,
pers,
fclt_3d_gebouw_key
)
AS
SELECT a.regio,
a.district,
a.gebouw,
COALESCE (y.gemeente, a.plaats),
COALESCE (y.adres, a.adres),
a.verdieping,
a.ruimtenr,
b.divisie,
b.afdeling,
a.ruimtesoort,
f.ruimtegebruik,
DECODE (
a.nen2580_opp,
NULL, NULL,
REPLACE (TO_CHAR(ROUND ((a.nen2580_opp * COALESCE (b.afd_bez, 1)) / COALESCE (g.tot_bez, 1), 2)), '.', ',')),
DECODE (
a.vloer_opp,
NULL, NULL,
REPLACE (TO_CHAR(ROUND ((a.vloer_opp * COALESCE (b.afd_bez, 1)) / COALESCE (g.tot_bez, 1), 2)), '.', ',')),
TO_CHAR(100 * ROUND (COALESCE (b.afd_bez, 0) / COALESCE (g.tot_bez, 1), 2)) || '%',
d.werkplekken,
e.personen,
a.gebouw_key
FROM (SELECT r.alg_ruimte_key,
r.alg_ruimte_nr ruimtenr,
v.alg_verdieping_code verdieping,
g.alg_gebouw_key gebouw_key,
g.alg_gebouw_code gebouw,
l.alg_locatie_adres adres,
l.alg_locatie_plaats plaats,
d.alg_district_omschrijving district,
reg.alg_regio_omschrijving regio,
sr.alg_srtruimte_omschrijving ruimtesoort,
r.alg_ruimte_bruto_vloeropp nen2580_opp,
r.alg_ruimte_opp_alt1 vloer_opp
FROM alg_v_aanwezigruimte r,
alg_verdieping v,
alg_gebouw g,
alg_locatie l,
alg_district d,
alg_regio reg,
alg_srtruimte sr
WHERE r.alg_verdieping_key = v.alg_verdieping_key
AND v.alg_gebouw_key = g.alg_gebouw_key
AND COALESCE (g.alg_gebouw_vervaldatum, SYSDATE) > TRUNC (SYSDATE)
AND g.alg_locatie_key = l.alg_locatie_key
AND l.alg_district_key = d.alg_district_key
AND d.alg_regio_key = reg.alg_regio_key
AND r.alg_srtruimte_key = sr.alg_srtruimte_key(+)) a
LEFT JOIN -- divisie(s) op ruimte
(SELECT ra.alg_ruimte_key,
a1.prs_afdeling_omschrijving || ' [' || a1.prs_afdeling_naam || ']'
divisie,
ax.prs_afdeling_omschrijving || ' [' || ax.prs_afdeling_naam || ']'
afdeling,
ra.prs_ruimteafdeling_bezetting afd_bez
FROM prs_v_aanwezigruimteafdeling ra,
prs_v_afdeling_boom ab,
prs_afdeling a1,
prs_afdeling ax
WHERE ra.prs_afdeling_key = ab.prs_afdeling_key
AND ab.prs_afdeling_key1 = a1.prs_afdeling_key
AND ab.prs_afdeling_key = ax.prs_afdeling_key) b
ON a.alg_ruimte_key = b.alg_ruimte_key
LEFT JOIN -- werkplekken (1143)
(SELECT ok.alg_onrgoed_key, ok.alg_onrgoedkenmerk_waarde werkplekken
FROM alg_v_aanwezigonrgoedkenmerk ok
WHERE ok.alg_kenmerk_key = 1143 AND ok.alg_onrgoed_niveau = 'R') d
ON a.alg_ruimte_key = d.alg_onrgoed_key
LEFT JOIN -- personen (1144)
(SELECT ok.alg_onrgoed_key, ok.alg_onrgoedkenmerk_waarde personen
FROM alg_v_aanwezigonrgoedkenmerk ok
WHERE ok.alg_kenmerk_key = 1144 AND ok.alg_onrgoed_niveau = 'R') e
ON a.alg_ruimte_key = e.alg_onrgoed_key
LEFT JOIN -- ruimtegebruik (1240)
(SELECT ok.alg_onrgoed_key, ud.fac_usrdata_omschr ruimtegebruik
FROM alg_v_aanwezigonrgoedkenmerk ok, fac_v_aanwezigusrdata ud
WHERE ok.alg_kenmerk_key = 1240 AND ok.alg_onrgoed_niveau = 'R'
AND ok.alg_onrgoedkenmerk_waarde = TO_CHAR (ud.fac_usrdata_key)) f
ON a.alg_ruimte_key = f.alg_onrgoed_key
LEFT JOIN -- bezettingstotaal (NULL of >0!)
( SELECT ra.alg_ruimte_key, SUM (ra.prs_ruimteafdeling_bezetting) tot_bez
FROM prs_v_aanwezigruimteafdeling ra
WHERE ra.prs_ruimteafdeling_bezetting > 0
GROUP BY ra.alg_ruimte_key) g
ON a.alg_ruimte_key = g.alg_ruimte_key
LEFT JOIN -- adres info bij gebouw
(SELECT g.alg_gebouw_key, a.mld_adres_bezoek_plaats gemeente, a.mld_adres_bezoek_adres adres
FROM alg_gebouw g, mld_adres a
WHERE g.mld_adres_key = a.mld_adres_key AND a.mld_adres_verwijder IS NULL) y
ON a.gebouw_key = y.alg_gebouw_key;
-- UWVA#22204: Per UWVA66 HV-export/doorbelasting ontmanteld; alleen HV_DUMP-
-- export (voorheen bijeffect) blijft nu nog gewenst!
/* Formatted on 31-8-2015 9:48:12 (QP5 v5.136.908.31019) */
CREATE OR REPLACE VIEW uwva_v_export_hv_dump
(
result,
result_order
)
AS
SELECT '"District";'
|| '"Gebouw";'
|| '"Gemeente";'
|| '"Adres";'
|| '"Verdieping";'
|| '"Ruimtenr";'
|| '"Divisie";'
|| '"Afdeling";'
|| '"Ruimtesoort";'
|| '"Ruimtegebruik";'
|| '"NEN2580_opp";'
|| '"Vloer_opp";'
|| '"Bezetting";'
|| '"Werkplekken";'
|| '"Personen"',
TO_CHAR (0, 'FM00000009')
FROM DUAL
UNION ALL
SELECT '"'
|| x.district
|| '";"'
|| x.gebouw
|| '";"'
|| COALESCE (x.plaats2, x.plaats1)
|| '";"'
|| COALESCE (x.adres2, x.adres1)
|| '";"'
|| x.verdieping
|| '";"'
|| x.ruimtenr
|| '";"'
|| x.divisie
|| '";"'
|| x.afdeling
|| '";"'
|| x.ruimtesoort
|| '";"'
|| x.ruimtegebruik
|| '";"'
|| REPLACE (TO_CHAR (ROUND (x.nen2580_opp, 2)), '.', ',')
|| '";"'
|| REPLACE (TO_CHAR (ROUND (x.vloer_opp, 2)), '.', ',')
|| '";"'
|| TO_CHAR (100 * ROUND (x.bezetting, 2))
|| '%'
|| '";"'
|| x.werkplekken
|| '";"'
|| x.personen
|| '"',
TO_CHAR (x.alg_ruimte_key, 'FM00000009')
FROM (SELECT a.alg_regio_key,
a.alg_locatie_key,
a.alg_gebouw_key,
a.alg_ruimte_key,
a.district,
a.gebouw,
a.verdieping,
a.ruimtenr,
a.alg_locatie_adres adres1,
a.alg_locatie_plaats plaats1,
b.divisie,
b.afdeling,
a.alg_srtgebouw_key,
a.ruimtesoort,
f.ruimtegebruik,
DECODE (
a.nen2580_opp,
NULL, NULL,
(a.nen2580_opp * COALESCE (b.afd_bez, 1)) / COALESCE (g.tot_bez, 1))
nen2580_opp,
DECODE (
a.vloer_opp,
NULL, NULL,
(a.vloer_opp * COALESCE (b.afd_bez, 1)) / COALESCE (g.tot_bez, 1))
vloer_opp,
COALESCE (b.afd_bez, 0) / COALESCE (g.tot_bez, 1)
bezetting,
d.alg_onrgoedkenmerk_waarde werkplekken,
e.alg_onrgoedkenmerk_waarde personen,
h.mld_adres_bezoek_plaats plaats2,
h.mld_adres_bezoek_adres adres2
FROM (SELECT r.alg_ruimte_key,
r.alg_ruimte_nr ruimtenr,
v.alg_verdieping_code verdieping,
g.alg_gebouw_key,
g.mld_adres_key,
g.alg_gebouw_code gebouw,
g.alg_srtgebouw_key,
l.alg_locatie_key,
l.alg_locatie_adres,
l.alg_locatie_plaats,
d.alg_district_omschrijving district,
d.alg_regio_key,
sr.alg_srtruimte_omschrijving ruimtesoort,
r.alg_ruimte_bruto_vloeropp nen2580_opp,
r.alg_ruimte_opp_alt1 vloer_opp
FROM alg_v_aanwezigruimte r,
alg_verdieping v,
alg_gebouw g,
alg_locatie l,
alg_district d,
alg_srtruimte sr
WHERE r.alg_verdieping_key = v.alg_verdieping_key
AND v.alg_gebouw_key = g.alg_gebouw_key
AND g.alg_locatie_key = l.alg_locatie_key
AND l.alg_district_key = d.alg_district_key
AND r.alg_srtruimte_key = sr.alg_srtruimte_key(+)) a
LEFT JOIN -- divisie(s) op ruimte
(SELECT ra.alg_ruimte_key,
a1.prs_afdeling_omschrijving || ' [' || a1.prs_afdeling_naam || ']'
divisie,
afd.prs_afdeling_omschrijving || ' [' || afd.prs_afdeling_naam || ']'
afdeling,
ra.prs_ruimteafdeling_bezetting afd_bez
FROM prs_v_aanwezigruimteafdeling ra, prs_v_afdeling_boom ab, prs_afdeling afd, prs_afdeling a1
WHERE ra.prs_afdeling_key = ab.prs_afdeling_key
AND ab.prs_afdeling_key = afd.prs_afdeling_key
AND ab.prs_afdeling_key1 = a1.prs_afdeling_key) b
ON a.alg_ruimte_key = b.alg_ruimte_key
LEFT JOIN -- werkplekken (1143)
alg_v_aanwezigonrgoedkenmerk d
ON a.alg_ruimte_key = d.alg_onrgoed_key
AND d.alg_kenmerk_key = 1143
AND d.alg_onrgoed_niveau = 'R'
LEFT JOIN -- personen (1144)
alg_v_aanwezigonrgoedkenmerk e
ON a.alg_ruimte_key = e.alg_onrgoed_key
AND e.alg_kenmerk_key = 1144
AND e.alg_onrgoed_niveau = 'R'
LEFT JOIN -- ruimtegebruik (1240)
(SELECT ok.alg_onrgoed_key, ud.fac_usrdata_omschr ruimtegebruik
FROM alg_v_aanwezigonrgoedkenmerk ok, fac_v_aanwezigusrdata ud
WHERE ok.alg_kenmerk_key = 1240
AND ok.alg_onrgoed_niveau = 'R'
AND fac.safe_to_number (ok.alg_onrgoedkenmerk_waarde) = ud.fac_usrdata_key) f
ON a.alg_ruimte_key = f.alg_onrgoed_key
LEFT JOIN -- bezettingstotaal (NULL of >0!)
( SELECT ra.alg_ruimte_key, SUM (ra.prs_ruimteafdeling_bezetting) tot_bez
FROM prs_v_aanwezigruimteafdeling ra
WHERE ra.prs_ruimteafdeling_bezetting > 0
GROUP BY ra.alg_ruimte_key) g
ON a.alg_ruimte_key = g.alg_ruimte_key
LEFT JOIN -- adres info bij gebouw
mld_adres h
ON a.mld_adres_key = h.mld_adres_key) x
WHERE (x.alg_srtgebouw_key = 61 AND x.alg_regio_key NOT IN (21, 41)) -- Satelliet
OR (EXISTS -- actief huurcontract bij gebouw; soms >1 per gebouw!
(SELECT 1
FROM cnt_v_aanwezigcontract cc,
cnt_contract_plaats ccp,
alg_gebouw g,
cnt_kenmerkcontract kc
WHERE cc.ins_discipline_key = 198 -- huurcontract
AND cc.cnt_contract_key = ccp.cnt_contract_key
AND ccp.cnt_contract_plaats_verwijder IS NULL
AND ccp.cnt_alg_plaats_code = 'G'
AND ccp.cnt_alg_plaats_key = g.alg_gebouw_key
AND cc.cnt_contract_key = kc.cnt_contract_key
AND kc.cnt_kenmerkcontract_verwijder IS NULL
AND kc.cnt_kenmerk_key = 184 -- actief
AND kc.cnt_kenmerkcontract_waarde = '1221' -- ja
AND ((g.alg_locatie_key = 79 AND g.alg_locatie_key = x.alg_locatie_key) -- UWVA#32037: uitzondering voor gebouwen onder AMSD2!
OR g.alg_gebouw_key = x.alg_gebouw_key))
AND x.ruimtenr <> '000');
-- UWVA#77134: HV_DUMP_PB tbv. JSON-pakbon!
CREATE OR REPLACE VIEW uwva_v_export_hv_dump_pb
(
result,
result_order
)
AS
SELECT '{ "interface_naam": "facilitor",'
|| ' "bron": "facilitor",'
|| ' "versienr_applicatie": "' || (SELECT fac_version_schema FROM fac_version) || '",'
|| ' "versienr_extractie_logica": "1.22.09",' -- Hard in export of via Eigen tabel?
|| ' "volgnr_levering": "' || (SELECT TO_CHAR (fac_version_custnr) FROM fac_version) || '",'
|| ' "herlevering": "N",' -- Altijd N?
|| ' "run_id_extractie": "8791",' -- Hard in export of p_applrun via UWVA_SELECT_HV_DUMP_PB?
|| ' "extractiemoment": "' || TO_CHAR (SYSDATE, 'yyyy-mm-dd hh24:mi:ss') || '",' -- Vandaag met tijd=hh24:mi:ss?
|| ' "peildatum": "' || TO_CHAR (TRUNC (SYSDATE), 'yyyy-mm-dd hh24:mi:ss') || '",' -- Vandaag met tijd=00:00:00?
|| ' "bestanden":'
|| ' ['
|| ' { "bestandsnaam": "facilitor_v_' || TO_CHAR (SYSDATE, 'yyyymmdd') || '_' || TO_CHAR (SYSDATE, 'yyyymmdd') || '.csv",'
|| ' "records":'
|| ' ['
|| ' { "object": "HUISVESTING",'
|| ' "attributenlijst": "DISTRICT|GEBOUW|GEMEENTE|ADRES|VERDIEPING|RUIMTENR|DIVISIE|AFDELING|RUIMTESOORT|RUIMTEGEBRUIK|NEN2580_OPP|VLOER_OPP|BEZETTING|WERKPLEKKEN|PERSONEN"'
|| ' }'
|| ' ],'
|| ' "aantal_records": "' || (SELECT TO_CHAR (COUNT (*)) FROM uwva_v_export_hv_dump WHERE result_order != '00000000') || '"' -- Exclusief header!
|| ' }'
|| ' ]'
|| '}',
TO_CHAR (0, 'FM00000009')
FROM DUAL;
---------------------------------------------------------------------------
-- CAD SYNCHRONISATIE views
-- Er worden per gebouw verschillende ruimtenummeringsconventies gebruikt
-- Per conventie is er een sync-view, die afhankelijk van een gebouwkenmerk
-- (key=1040) wordt toegepast.
--
-- Als in de database het ruimtenummer Rn is en het verdiepingsvolgnr Vn,
-- dan herkennen we deze labels in de tekening
1 [0]Vn.Rn als 0<Vn<10 (dus niet Vn=-1), dan prefix met 0
2 Vc.Rn
3 Rn
--
CREATE OR REPLACE VIEW uwva_v_sync_alg_ruimte_cols (alg_ruimte_key,
alg_verdieping_key,
cadlabel1,
cadlabel2,
cadlabel3
)
AS
SELECT r.alg_ruimte_key, r.alg_verdieping_key,
SUBSTR ('0' || v.alg_verdieping_volgnr, -2)
|| '.'
|| r.alg_ruimte_nr n1, -- in tekening vv.<rnr>
v.alg_verdieping_code || '.' || r.alg_ruimte_nr n2, -- <vc>.<rnr>
r.alg_ruimte_nr n3 -- <rnr>
FROM alg_v_aanwezigruimte r, alg_verdieping v
WHERE r.alg_verdieping_key = v.alg_verdieping_key
/
CREATE OR REPLACE VIEW uwva_v_sync_alg_ruimte (alg_ruimte_key,
alg_verdieping_key,
cadlabel
)
AS
SELECT s.alg_ruimte_key, s.alg_verdieping_key,
DECODE (k.alg_onrgoedkenmerk_waarde,
1, s.cadlabel1,
2, s.cadlabel2,
3, s.cadlabel3,
s.cadlabel1
) cadlabel
FROM uwva_v_sync_alg_ruimte_cols s,
alg_verdieping v,
alg_onrgoedkenmerk k
WHERE s.alg_verdieping_key = v.alg_verdieping_key
AND v.alg_gebouw_key = k.alg_onrgoed_key
AND k.alg_kenmerk_key = 1040
/
CREATE OR REPLACE view uwva_v_locaties AS
SELECT cnt_contract_key, l.alg_locatie_code locatie
FROM CNT_CONTRACT_PLAATS, ALG_LOCATIE l
WHERE cnt_alg_plaats_key = l.alg_locatie_key
AND cnt_alg_plaats_code = 'L'
AND cnt_contract_plaats_verwijder IS NULL
UNION ALL
SELECT cnt_contract_key, g.alg_gebouw_code
FROM CNT_CONTRACT_PLAATS, ALG_LOCATIE l, ALG_GEBOUW g
WHERE cnt_alg_plaats_code = 'G'
AND cnt_alg_plaats_key = g.alg_gebouw_key
AND g.alg_locatie_key = l.alg_locatie_key
AND cnt_contract_plaats_verwijder IS NULL;
/
create or replace view uwva_v_rap_contract as
SELECT fac.safe_to_number(cnt_contract_nummer) HIDE_F_externnr, cc.ins_discipline_key FCLT_3D_DISCIPLINE_KEY,
cnt_contract_nummer nr,
cc.cnt_contract_key HIDE_F_contract_key,
cnt_contract_omschrijving beschrijving,
cs.ins_discipline_omschrijving FCLT_F_contractsoort,
'verlopen' FCLT_F_status,
TO_CHAR (COALESCE (cnt_contract_looptijd_van, SYSDATE),
'DD-MM-YYYY'
) ingangsdatum,
TO_CHAR (COALESCE (cnt.cnt_getRappeldatum(cc.cnt_contract_key),
COALESCE (cnt_contract_looptijd_tot, SYSDATE)
),
'DD-MM-YYYY'
) rappeldatum,
TO_CHAR (COALESCE (cnt.cnt_getOpzegdatum(cc.cnt_contract_key),
COALESCE (cnt_contract_looptijd_tot, SYSDATE)
),
'DD-MM-YYYY'
) opzegdatum,
TO_CHAR (COALESCE (cnt_contract_looptijd_tot, SYSDATE),
'DD-MM-YYYY'
) einddatum,
(SELECT d.prs_afdeling_naam6
FROM prs_v_aanwezigafdeling d
WHERE d.prs_afdeling_key = cc.PRS_AFDELING_KEY_EIG) eigenaar,
(SELECT p.prs_perslid_naam
|| DECODE (NVL (p.prs_perslid_voorletters, ''),
'', '',
', ' || p.prs_perslid_voorletters
)
|| DECODE (NVL (p.prs_perslid_tussenvoegsel, ''),
'', '',
' ' || p.prs_perslid_tussenvoegsel
)
|| DECODE (NVL (p.prs_perslid_voornaam, ''),
'', '',
' (' || p.prs_perslid_voornaam || ')'
)
FROM PRS_PERSLID p
WHERE p.prs_perslid_key = cc.prs_perslid_key_beh) beheerder,
(SELECT prs_bedrijf_naam FROM PRS_BEDRIJF WHERE prs_bedrijf_key = cnt_prs_bedrijf_key) FCLT_F_uitvoerder,
(SELECT c.prs_contactpersoon_naam
|| DECODE (NVL (c.prs_contactpersoon_voorletters, ''),
'', '',
', ' || c.prs_contactpersoon_voorletters
)
|| DECODE (NVL (c.prs_contactpersoon_tussenv, ''),
'', '',
' ' || c.prs_contactpersoon_tussenv
)
|| DECODE (NVL (c.prs_contactpersoon_voornaam, ''),
'', '',
' (' || c.prs_contactpersoon_voornaam || ')'
)
prs_contactpersoon_naam
FROM PRS_CONTACTPERSOON c
WHERE c.PRS_CONTACTPERSOON_KEY = cc.PRS_CONTACTPERSOON_KEY) Contactpersoon,
(SELECT k.prs_kostenplaats_nr||' '||k.prs_kostenplaats_omschrijving
FROM PRS_KOSTENPLAATS k
WHERE k.prs_kostenplaats_key = cc.prs_kostenplaats_key) Kostenplaats,
cc.CNT_CONTRACT_TERMIJNKOSTEN Termijnbedrag,
cc.CNT_CONTRACT_KOSTEN Contractbedrag,
cl.locatie,
(select cnt_kenmerkcontract_waarde
from uwva_v_kenmerkwaarden k
where k.cnt_contract_key = cc.cnt_contract_key
and k.ins_discipline_key = cc.ins_discipline_key -- voor de zekerheid
and k.cnt_srtkenmerk_upper = 'CONTRACTDOCUMENT') Contractdocument,
(select cnt_kenmerkcontract_waarde
from uwva_v_kenmerkwaarden k
where k.cnt_contract_key = cc.cnt_contract_key
and k.ins_discipline_key = cc.ins_discipline_key -- voor de zekerheid
and k.cnt_srtkenmerk_upper = 'QRC') QRC,
(select cnt_kenmerkcontract_waarde
from uwva_v_kenmerkwaarden k
where k.cnt_contract_key = cc.cnt_contract_key
and k.ins_discipline_key = cc.ins_discipline_key -- voor de zekerheid
and k.cnt_srtkenmerk_upper = 'OPMERKING') Opmerking,
NVL ((SELECT ' '
FROM prs_kostenplaats k
WHERE k.prs_kostenplaats_key = cc.prs_kostenplaats_key
AND k.prs_kostenplaats_nr LIKE '%' || locatie),
'kostenplaats != locatie'
)
|| ' ' ||
NVL ((SELECT ' '
FROM prs_afdeling a,
fac_usrdata fud,
fac_usrtab fut,
alg_locatie l,
alg_district d
WHERE a.prs_afdeling_key = cc.prs_afdeling_key_eig
AND fud.fac_usrtab_key = fut.fac_usrtab_key
AND fut.fac_usrtab_naam = 'servicepunt_kpn'
AND a.prs_afdeling_naam = fud.fac_usrdata_code
AND locatie LIKE l.alg_locatie_code || '%'
AND l.alg_district_key = d.alg_district_key
AND d.alg_district_omschrijving = fud.fac_usrdata_omschr),
'eigenaar != locatie'
) controle
FROM CNT_CONTRACT cc, cnt_discipline cs,
(SELECT cnt_contract_key, MAX(locatie) locatie FROM uwva_v_locaties GROUP BY cnt_contract_key) cl
WHERE cc.ins_discipline_key = cs.ins_discipline_key
AND cnt_contract_verwijder IS NULL
-- AND cc.cnt_contract_key = 441 -- for debug only
AND cc.cnt_contract_key = cl.cnt_contract_key(+)
AND cc.cnt_contract_looptijd_tot < SYSDATE
UNION ALL
SELECT fac.safe_to_number(cnt_contract_nummer) HIDE_F_externnr, cc.ins_discipline_key FCLT_3D_DISCIPLINE_KEY,
cnt_contract_nummer nr,
cc.cnt_contract_key HIDE_F_contract_key,
cnt_contract_omschrijving beschrijving,
cs.ins_discipline_omschrijving FCLT_F_contractsoort,
'open' FCLT_F_status,
TO_CHAR (COALESCE (cnt_contract_looptijd_van, SYSDATE),
'DD-MM-YYYY'
) ingangsdatum,
TO_CHAR (COALESCE (cnt.cnt_getRappeldatum(cc.cnt_contract_key),
COALESCE (cnt_contract_looptijd_tot, SYSDATE)
),
'DD-MM-YYYY'
) rappeldatum,
TO_CHAR (COALESCE (cnt.cnt_getOpzegdatum(cc.cnt_contract_key),
COALESCE (cnt_contract_looptijd_tot, SYSDATE)
),
'DD-MM-YYYY'
) opzegdatum,
TO_CHAR (COALESCE (cnt_contract_looptijd_tot, SYSDATE),
'DD-MM-YYYY'
) einddatum,
(SELECT d.prs_afdeling_naam6
FROM prs_v_aanwezigafdeling d
WHERE d.prs_afdeling_key = cc.PRS_AFDELING_KEY_EIG) eigenaar,
(SELECT p.prs_perslid_naam
|| DECODE (NVL (p.prs_perslid_voorletters, ''),
'', '',
', ' || p.prs_perslid_voorletters
)
|| DECODE (NVL (p.prs_perslid_tussenvoegsel, ''),
'', '',
' ' || p.prs_perslid_tussenvoegsel
)
|| DECODE (NVL (p.prs_perslid_voornaam, ''),
'', '',
' (' || p.prs_perslid_voornaam || ')'
)
FROM PRS_PERSLID p
WHERE p.prs_perslid_key = cc.prs_perslid_key_beh) beheerder,
(SELECT prs_bedrijf_naam FROM PRS_BEDRIJF WHERE prs_bedrijf_key = cnt_prs_bedrijf_key) FCLT_F_uitvoerder,
(SELECT c.prs_contactpersoon_naam
|| DECODE (NVL (c.prs_contactpersoon_voorletters, ''),
'', '',
', ' || c.prs_contactpersoon_voorletters
)
|| DECODE (NVL (c.prs_contactpersoon_tussenv, ''),
'', '',
' ' || c.prs_contactpersoon_tussenv
)
|| DECODE (NVL (c.prs_contactpersoon_voornaam, ''),
'', '',
' (' || c.prs_contactpersoon_voornaam || ')'
)
prs_contactpersoon_naam
FROM PRS_CONTACTPERSOON c
WHERE c.PRS_CONTACTPERSOON_KEY = cc.PRS_CONTACTPERSOON_KEY) Contactpersoon,
(SELECT k.prs_kostenplaats_nr||' '||k.prs_kostenplaats_omschrijving
FROM PRS_KOSTENPLAATS k
WHERE k.prs_kostenplaats_key = cc.prs_kostenplaats_key) Kostenplaats,
cc.CNT_CONTRACT_TERMIJNKOSTEN Termijnbedrag,
cc.CNT_CONTRACT_KOSTEN Contractbedrag,
cl.locatie,
(select cnt_kenmerkcontract_waarde
from uwva_v_kenmerkwaarden k
where k.cnt_contract_key = cc.cnt_contract_key
and k.ins_discipline_key = cc.ins_discipline_key -- voor de zekerheid
and k.cnt_srtkenmerk_upper = 'CONTRACTDOCUMENT') Contractdocument,
(select cnt_kenmerkcontract_waarde
from uwva_v_kenmerkwaarden k
where k.cnt_contract_key = cc.cnt_contract_key
and k.ins_discipline_key = cc.ins_discipline_key -- voor de zekerheid
and k.cnt_srtkenmerk_upper = 'QRC') QRC,
(select cnt_kenmerkcontract_waarde
from uwva_v_kenmerkwaarden k
where k.cnt_contract_key = cc.cnt_contract_key
and k.ins_discipline_key = cc.ins_discipline_key -- voor de zekerheid
and k.cnt_srtkenmerk_upper = 'OPMERKING') Opmerking,
NVL ((SELECT ' '
FROM prs_kostenplaats k
WHERE k.prs_kostenplaats_key = cc.prs_kostenplaats_key
AND k.prs_kostenplaats_nr LIKE '%' || locatie),
'kostenplaats != locatie'
)
|| ' ' ||
NVL ((SELECT ' '
FROM prs_afdeling a,
fac_usrdata fud,
fac_usrtab fut,
alg_locatie l,
alg_district d
WHERE a.prs_afdeling_key = cc.prs_afdeling_key_eig
AND fud.fac_usrtab_key = fut.fac_usrtab_key
AND fut.fac_usrtab_naam = 'servicepunt_kpn'
AND a.prs_afdeling_naam = fud.fac_usrdata_code
AND locatie LIKE l.alg_locatie_code || '%'
AND l.alg_district_key = d.alg_district_key
AND d.alg_district_omschrijving = fud.fac_usrdata_omschr),
'eigenaar != locatie'
) controle
FROM CNT_CONTRACT cc, cnt_discipline cs,
(SELECT cnt_contract_key, MAX(locatie) locatie FROM uwva_v_locaties GROUP BY cnt_contract_key) cl
WHERE cc.ins_discipline_key = cs.ins_discipline_key
AND cnt_contract_verwijder IS NULL
-- AND cc.cnt_contract_key = 441 -- for debug only
AND cc.cnt_contract_key = cl.cnt_contract_key(+)
AND cc.cnt_contract_looptijd_tot >= SYSDATE;
/
CREATE OR REPLACE VIEW uwva_v_rap_contractdoc (hide_f_contractkey,
nr,
fclt_f_contractsoort,
externnr,
beschrijving,
eigenaar,
uitvoerder,
contractdocument,
fclt_3d_discipline_key
)
AS
SELECT c.cnt_contract_key hide_f_contractkey,
c.cnt_contract_nummer_intern nr,
(SELECT ins_discipline_omschrijving
FROM cnt_discipline cd
WHERE c.ins_discipline_key =
cd.ins_discipline_key)
fclt_f_contractsoort,
c.cnt_contract_nummer externnr,
c.cnt_contract_omschrijving beschrijving,
afd.prs_afdeling_naam eigenaar,
COALESCE (b.prs_bedrijf_naam, afd2.prs_afdeling_naam) uitvoerder,
(SELECT ckc.cnt_kenmerkcontract_waarde
FROM cnt_contract c1,
cnt_kenmerkcontract ckc,
cnt_kenmerk ck
WHERE c1.cnt_contract_key = ckc.cnt_contract_key
AND ckc.cnt_kenmerk_key = ck.cnt_kenmerk_key
AND ck.cnt_srtkenmerk_key = 2
AND c1.cnt_contract_key = c.cnt_contract_key)
contractdocument,
c.ins_discipline_key
FROM cnt_v_aanwezigcontract c,
prs_v_aanwezigbedrijf b,
prs_v_aanwezigafdeling afd,
prs_v_aanwezigafdeling afd2
WHERE b.prs_bedrijf_key(+) = c.cnt_prs_bedrijf_key
AND c.cnt_prs_afdeling_key = afd2.prs_afdeling_key(+)
AND afd.prs_afdeling_key = c.prs_afdeling_key_eig;
-- UWVA#14362
/* Formatted on 2008/08/11 14:56 (Formatter Plus v4.8.7) */
CREATE OR REPLACE VIEW uwva_v_rap_contractanten (fclt_f_bedrijf,
post_adres,
telefoon,
email,
alg_contactpers,
loc,
loc_contactpers,
lev_nr,
overeenkmst,
fclt_f_div,
fclt_f_fac,
fclt_f_hv
)
AS
(SELECT x.prs_bedrijf_naam,
DECODE (x.prs_bedrijf_post_adres,
NULL, x.prs_bedrijf_post_adres,
x.prs_bedrijf_post_adres
|| ', '
|| x.prs_bedrijf_post_postcode
|| ', '
|| x.prs_bedrijf_post_plaats
),
x.prs_bedrijf_telefoon, x.prs_bedrijf_email,
x.prs_bedrijf_contact_persoon bedrijf_cp,
DECODE (z.alg_locatie_key,
NULL, '-',
(SELECT l.alg_locatie_code
FROM alg_locatie l
WHERE l.alg_locatie_key = z.alg_locatie_key)
) locatie,
COALESCE (z.aantal, '-') aantal_locatie_cp, x.prs_leverancier_nr,
TO_CHAR (x.prs_overeenkomst_datum, 'dd-mm-yyyy'),
COALESCE (y1.div, 'N') div, COALESCE (y2.f, 'N') f,
COALESCE (y3.hv, 'N') hv
FROM (SELECT b.prs_bedrijf_key, b.prs_bedrijf_naam,
b.prs_bedrijf_post_adres, b.prs_bedrijf_post_postcode,
b.prs_bedrijf_post_plaats, b.prs_bedrijf_telefoon,
b.prs_bedrijf_email, b.prs_bedrijf_contact_persoon,
b.prs_leverancier_nr, b.prs_overeenkomst_datum
FROM prs_bedrijf b
WHERE b.prs_bedrijf_contract = 1 -- Alleen contractanten!!!
AND b.prs_bedrijf_verwijder IS NULL) x
LEFT JOIN
(SELECT DISTINCT c.cnt_prs_bedrijf_key, 'J' div
FROM cnt_contract c
WHERE c.cnt_contract_looptijd_tot > SYSDATE
AND c.ins_discipline_key = 184
AND c.cnt_contract_verwijder IS NULL) y1
ON x.prs_bedrijf_key = y1.cnt_prs_bedrijf_key
LEFT JOIN
(SELECT DISTINCT c.cnt_prs_bedrijf_key, 'J' f
FROM cnt_contract c
WHERE c.cnt_contract_looptijd_tot > SYSDATE
AND c.ins_discipline_key <> 184
AND c.ins_discipline_key <> 198
AND c.cnt_contract_verwijder IS NULL) y2
ON x.prs_bedrijf_key = y2.cnt_prs_bedrijf_key
LEFT JOIN
(SELECT DISTINCT c.cnt_prs_bedrijf_key, 'J' hv
FROM cnt_contract c
WHERE c.cnt_contract_looptijd_tot > SYSDATE
AND c.ins_discipline_key = 198
AND c.cnt_contract_verwijder IS NULL) y3
ON x.prs_bedrijf_key = y3.cnt_prs_bedrijf_key
LEFT JOIN
(SELECT cp.prs_bedrijf_key, cpl.alg_locatie_key,
cp.prs_contactpersoon_naam aantal
FROM prs_contactpersoon cp, prs_contactpersoon_locatie cpl
WHERE cp.prs_contactpersoon_key = cpl.prs_contactpersoon_key(+)) z
ON x.prs_bedrijf_key = z.prs_bedrijf_key
)
/
// PRJ SYNC views
CREATE OR REPLACE FORCE VIEW uwva_v_sync_prj_ruimte_cols (prj_ruimte_key,
alg_verdieping_key,
prj_scenario_key,
cadlabel1,
cadlabel2,
cadlabel3
)
AS
SELECT r.prj_ruimte_key, r.alg_verdieping_key, prj_scenario_key,
SUBSTR ('0' || v.alg_verdieping_volgnr, -2)
|| '.'
|| r.prj_ruimte_nr n1, -- in tekening vv.<rnr>
v.alg_verdieping_code || '.' || r.prj_ruimte_nr n2, -- <vc>.<rnr>
r.prj_ruimte_nr n3 -- <rnr>
FROM PRJ_RUIMTE r, ALG_VERDIEPING v
WHERE r.alg_verdieping_key = v.alg_verdieping_key
AND prj_ruimte_verwijder IS NULL
/
CREATE OR REPLACE FORCE VIEW uwva_v_sync_prj_ruimte (prj_ruimte_key,
alg_verdieping_key,
prj_scenario_key,
cadlabel
)
AS
SELECT s.prj_ruimte_key, s.alg_verdieping_key, prj_scenario_key,
DECODE (k.alg_onrgoedkenmerk_waarde,
1, s.cadlabel1,
2, s.cadlabel2,
3, s.cadlabel3,
s.cadlabel1
) cadlabel
FROM uwva_v_sync_prj_ruimte_cols s,
ALG_VERDIEPING v,
ALG_ONRGOEDKENMERK k
WHERE s.alg_verdieping_key = v.alg_verdieping_key
AND v.alg_gebouw_key = k.alg_onrgoed_key
AND k.alg_kenmerk_key = 1040
/
-------------- HV - Huisvesting -------------------------
-------------- Stap 5: Definitie van thema HV-divisie -------------------------
-- Stap 5a: Thema HV divisie voor de LFM-ers
/* Formatted on 23-11-2010 17:46:56 (QP5 v5.115.810.9015) */
CREATE OR REPLACE FORCE VIEW uwva_v_thema_ruimte_div
(
alg_ruimte_key,
waarde,
waarde_key
)
AS
SELECT x.alg_ruimte_key,
DECODE (
y.aantal,
NULL,
DECODE (x.verhuur, 0, '[Niet toegewezen]', '[TOE TE WIJZEN!]'),
1,
SUBSTR (y.sp, 1, 60),
'[Meerdere divisies!]'
),
DECODE (y.aantal, NULL, -1, 1, y.sp_key, NULL)
FROM (SELECT r.alg_ruimte_key,
COALESCE (sr.prs_verhuurbaar, 0) verhuur,
COALESCE (sr.prs_bevat_werkplek, 0) werkplek
FROM alg_v_aanwezigruimte r, alg_srtruimte sr
WHERE r.alg_srtruimte_key = sr.alg_srtruimte_key(+)) x
LEFT JOIN
( SELECT ra.alg_ruimte_key,
MIN (a.prs_afdeling_naam6) sp,
MIN (a.prs_afdeling_key) sp_key,
COUNT (ra.prs_afdeling_key) aantal
FROM prs_v_aanwezigruimteafdeling ra,
prs_v_afdeling_boom b,
prs_v_aanwezigafdeling a
WHERE ra.prs_afdeling_key = b.prs_afdeling_key
AND b.prs_afdeling_key1 = a.prs_afdeling_key
GROUP BY ra.alg_ruimte_key) y
ON x.alg_ruimte_key = y.alg_ruimte_key
UNION ALL
SELECT NULL, a.prs_afdeling_naam6, a.prs_afdeling_key
FROM prs_v_aanwezigafdeling a
WHERE a.prs_afdeling_parentkey IS NULL
AND NOT EXISTS
(SELECT 1
FROM prs_v_aanwezigruimteafdeling ra,
prs_v_afdeling_boom b
WHERE ra.prs_afdeling_key = b.prs_afdeling_key
AND b.prs_afdeling_key1 = a.prs_afdeling_key)
UNION ALL
SELECT DISTINCT
NULL, a.prs_afdeling_naam6 waarde, a.prs_afdeling_key waarde_key
FROM (SELECT DISTINCT ra.prs_afdeling_key
FROM prs_v_aanwezigruimteafdeling ra
MINUS
SELECT DISTINCT ra.prs_afdeling_key
FROM prs_v_aanwezigruimteafdeling ra, alg_v_aanwezigruimte r
WHERE ra.alg_ruimte_key IN
(SELECT alg_ruimte_key
FROM ( SELECT alg_ruimte_key,
COUNT ( * ) aantal
FROM prs_v_aanwezigruimteafdeling
GROUP BY alg_ruimte_key)
WHERE aantal = 1)
AND ra.alg_ruimte_key = r.alg_ruimte_key) x,
prs_v_afdeling_boom b,
prs_v_aanwezigafdeling a
WHERE x.prs_afdeling_key = b.prs_afdeling_key
AND b.prs_afdeling_key1 = a.prs_afdeling_key;
-- Stap 5a: Bijbehorend Labelthema HV-divisie voor de LFM-ers
CREATE OR REPLACE FORCE VIEW uwva_v_label_ruimte_div(alg_ruimte_key,waarde)
AS SELECT alg_ruimte_key, waarde FROM uwva_v_thema_ruimte_div;
/
-- Stap 5b: Actie/trigger bij sleur+pleur van thema HV-divisie
CREATE OR REPLACE TRIGGER uwva_t_thema_ruimte_div_i_iu
INSTEAD OF INSERT OR UPDATE
ON uwva_v_thema_ruimte_div
DECLARE
v_prs_afdeling_key PRS_AFDELING.prs_afdeling_key%TYPE;
v_verhuurbaar ALG_SRTRUIMTE.prs_verhuurbaar%TYPE;
BEGIN
v_prs_afdeling_key := -1;
IF UPDATING -- oude hard weggooien; dus DELETE (lekker opruimen)!
THEN
BEGIN
-- Is de ruimte al gekoppeld aan een afdeling EN die afdeling valt onder de nieuwe divisie, dan niets doen!
-- Is die gekoppeld aan een andere divisie of aan een afdeling van een andere divisie of oude=nieuwe divisie,
-- dan deleten!
SELECT b.prs_afdeling_key1
INTO v_prs_afdeling_key
FROM prs_v_aanwezigruimteafdeling ra, prs_v_afdeling_boom b
WHERE ra.alg_ruimte_key = :new.alg_ruimte_key
AND ra.prs_afdeling_key = b.prs_afdeling_key
AND b.prs_afdeling_key1 = :new.waarde_key
AND b.prs_afdeling_key <> b.prs_afdeling_key1;
EXCEPTION
-- Hier is de nieuwe divisie: of gelijk aan de oude divisie,
-- of ongelijk aan de oude divisie,
-- of gelijk aan de divisie waar nu een afdeling onder hangt
WHEN OTHERS
THEN DELETE FROM prs_ruimteafdeling
WHERE alg_ruimte_key = :new.alg_ruimte_key AND prs_afdeling_key <> :new.waarde_key;
END;
END IF;
BEGIN
-- Indien nieuwe waarde <> -1 (dit is een dummy divisie zoals [Niet toegewezen] en [TOE TE WIJZEN] en [Meedere divisies]
-- Of indien nieuwe waarde (nieuwe divisie) is ongelijk aan de divisie van de oude afdeling
IF :new.waarde_key <> v_prs_afdeling_key
THEN
SELECT COALESCE(sr.prs_verhuurbaar, 0)
INTO v_verhuurbaar
FROM alg_v_aanwezigruimte r, alg_srtruimte sr
WHERE r.alg_ruimte_key = :new.alg_ruimte_key
AND r.alg_srtruimte_key = sr.alg_srtruimte_key (+);
-- Alleen indien ruimte verhuurbaar is, dan mag (pseudo)divisie eraan worden toegekend.
IF v_verhuurbaar = 1
THEN
INSERT INTO prs_ruimteafdeling (alg_ruimte_key, prs_afdeling_key)
VALUES (:new.alg_ruimte_key, :new.waarde_key);
END IF;
END IF;
EXCEPTION
WHEN NO_DATA_FOUND
THEN NULL;
WHEN DUP_VAL_ON_INDEX -- was al aanwezig
THEN NULL;
END;
-- ALGCAD tracking gebeurt in legenda_create.asp
END;
/
-------------- Stap 6: Definitie van thema HV-afdeling -------------------------
-- Stap 6a: Thema HV afdeling (voor de controllers)
/* Formatted on 23-11-2010 17:58:38 (QP5 v5.115.810.9015) */
CREATE OR REPLACE FORCE VIEW uwva_v_thema_ruimte_afd
(
alg_ruimte_key,
waarde,
waarde_key
)
AS
SELECT x.alg_ruimte_key,
DECODE (
y.aantal,
NULL,
DECODE (x.verhuur, 0, '[Niet verhuurbaar]', '[GEEN DIVISIE!]'),
1,
DECODE (y.afd,
0, '[Geen afdeling toegewezen]',
SUBSTR (y.sp, 1, 60)),
'[Meerdere afdelingen!]'
),
DECODE (y.aantal,
NULL, DECODE (x.verhuur, 0, -1, NULL),
1, DECODE (y.afd, 0, -1, y.sp_key),
NULL)
FROM (SELECT r.alg_ruimte_key,
COALESCE (sr.prs_verhuurbaar, 0) verhuur,
COALESCE (sr.prs_bevat_werkplek, 0) werkplek
FROM alg_v_aanwezigruimte r, alg_srtruimte sr
WHERE r.alg_srtruimte_key = sr.alg_srtruimte_key(+)) x
LEFT JOIN
( SELECT ra.alg_ruimte_key,
MIN (a.prs_afdeling_naam6) sp,
MIN (a.prs_afdeling_key) sp_key,
COUNT (ra.prs_afdeling_key) aantal,
MAX (NVL (a.prs_afdeling_parentkey, 0)) afd
FROM prs_v_aanwezigruimteafdeling ra,
prs_v_aanwezigafdeling a
WHERE ra.prs_afdeling_key = a.prs_afdeling_key
GROUP BY ra.alg_ruimte_key) y
ON x.alg_ruimte_key = y.alg_ruimte_key
UNION ALL
SELECT NULL, a.prs_afdeling_naam6, a.prs_afdeling_key
FROM prs_v_aanwezigafdeling a
WHERE a.prs_afdeling_parentkey IS NOT NULL
AND NOT EXISTS
(SELECT ra.prs_afdeling_key
FROM prs_v_aanwezigruimteafdeling ra
WHERE ra.prs_afdeling_key = a.prs_afdeling_key)
UNION ALL
SELECT DISTINCT
NULL, a.prs_afdeling_naam6 waarde, a.prs_afdeling_key waarde_key
FROM (SELECT DISTINCT ra.prs_afdeling_key
FROM prs_v_aanwezigruimteafdeling ra
MINUS
SELECT DISTINCT ra.prs_afdeling_key
FROM prs_v_aanwezigruimteafdeling ra, alg_v_aanwezigruimte r
WHERE ra.alg_ruimte_key IN
(SELECT alg_ruimte_key
FROM ( SELECT alg_ruimte_key,
COUNT ( * ) aantal
FROM prs_v_aanwezigruimteafdeling
GROUP BY alg_ruimte_key)
WHERE aantal = 1)
AND ra.alg_ruimte_key = r.alg_ruimte_key) x,
prs_v_aanwezigafdeling a
WHERE x.prs_afdeling_key = a.prs_afdeling_key;
-- Stap 6a: Bijbehorend LabelThema HV afdeling (voor de controllers)
CREATE OR REPLACE FORCE VIEW uwva_v_label_ruimte_afd (alg_ruimte_key,waarde)
AS SELECT alg_ruimte_key, waarde FROM uwva_v_thema_ruimte_afd;
/
-- Stap 6b: Actie/trigger bij sleur+pleur van thema HV-afdeling
CREATE OR REPLACE TRIGGER uwva_t_thema_ruimte_afd_i_iu
INSTEAD OF INSERT OR UPDATE
ON uwva_v_thema_ruimte_afd
DECLARE
v_prs_afdeling_key PRS_AFDELING.prs_afdeling_key%TYPE;
v_bezetting PRS_RUIMTEAFDELING.prs_ruimteafdeling_bezetting%TYPE;
BEGIN
v_prs_afdeling_key := -1;
IF UPDATING -- oude hard weggooien; dus DELETE (lekker opruimen)!
THEN
BEGIN
-- Is de ruimte nog niet gekoppeld, dan mag de afdeling niet worden gekoppeld (eerst moet LFM de divisie bepalen)
-- Is de ruimte wel gekoppeld, aan een divisie, dan alleen afdeling geoorloofd die onder die divisie valt
-- Is de ruimte wel gekoppeld, aan een afdeling, dan alleen een afdeling geoorloofd die onder dezelfde divisie valt
-- Is de ruimte wel gekoppeld, en de afdeling wordt geleegd ([Niet toegewezen] of zo), dan valt de ruimte terug op divisie
-- Is de ruimte al gekoppeld aan een afdeling EN die afdeling valt onder de nieuwe divisie, dan niets doen!
-- Is die gekoppeld aan een andere divisie of aan een afdeling van een andere divisie of oude=nieuwe divisie,
-- dan deleten!
-- Selecteer de oude divisie/afdeling key en bijbehorende bezettingspercentage van de nieuwe afdeling
SELECT ra.prs_afdeling_key, ra.prs_ruimteafdeling_bezetting
INTO v_prs_afdeling_key, v_bezetting
FROM prs_v_aanwezigruimteafdeling ra, prs_v_afdeling_boom b
WHERE ra.alg_ruimte_key = :new.alg_ruimte_key
AND b.prs_afdeling_key = :new.waarde_key
AND b.prs_afdeling_key1 = (select b2.prs_afdeling_key1 from prs_v_afdeling_boom b2 where b2.prs_afdeling_key = ra.prs_afdeling_key)
AND b.prs_afdeling_key <> ra.prs_afdeling_key;
-- Verwijder de koppeling naar het "broertje-afdeling" of de koppeling naar de divisie van de nieuwe afdeling.
UPDATE prs_ruimteafdeling
SET prs_afdeling_key = :new.waarde_key
WHERE alg_ruimte_key = :new.alg_ruimte_key
AND prs_afdeling_key = v_prs_afdeling_key;
EXCEPTION
-- Hier is de nieuwe afdeling niet geoorloofd: of geen divisie, of geen afdeling, of dezelfde afdeling
WHEN OTHERS
THEN NULL;
END;
END IF;
BEGIN
IF :new.waarde_key = -1
THEN
UPDATE prs_ruimteafdeling ra
SET ra.prs_afdeling_key = ( SELECT b.prs_afdeling_key1
FROM prs_v_afdeling_boom b
WHERE b.prs_afdeling_key = ra.prs_afdeling_key
)
WHERE ra.alg_ruimte_key = :new.alg_ruimte_key;
-- INSERT INTO prs_ruimteafdeling (alg_ruimte_key, prs_afdeling_key)
-- VALUES (:new.alg_ruimte_key, :new.waarde_key);
END IF;
EXCEPTION
WHEN OTHERS -- was al aanwezig
THEN
NULL;
END;
-- ALGCAD tracking gebeurt in legenda_create.asp
END;
/
-------------- Stap 9: HERdefinitie van bestaande UWV-views en gegevens -------------------------
-- UWVA.SQL: Stap 9a: Thema's ruimtegebruik en ruimtsoort ook wisselene
CREATE OR REPLACE VIEW uwva_v_thema_hvruimtesoort (alg_ruimte_key, waarde, waarde_key)
AS
SELECT r.alg_ruimte_key,
COALESCE (sr.alg_srtruimte_omschrijving, 'ONGEDEFINIEERD'),
r.alg_srtruimte_key
FROM alg_v_aanwezigruimte r, alg_srtruimte sr
WHERE r.alg_srtruimte_key = sr.alg_srtruimte_key(+);
/
-- mbmb
-- Stap 9a: Actie/trigger bij sleur+pleur van thema HV-ruimtesoort
CREATE OR REPLACE TRIGGER uwva_t_thema_hvruimtesoort_iu
INSTEAD OF INSERT OR UPDATE
ON uwva_v_thema_hvruimtesoort
DECLARE
BEGIN
UPDATE alg_ruimte r
SET r.alg_srtruimte_key = :new.waarde_key
WHERE r.alg_ruimte_key = :new.alg_ruimte_key;
EXCEPTION
WHEN OTHERS
THEN NULL;
END;
/
-- UWVA.SQL: Stap 9d: Thema ruimtegebruik is nu flexprop (was voorheen ruimtesoort)
/* Formatted on 17-11-2009 16:22:42 (QP5 v5.115.810.9015) */
CREATE OR REPLACE VIEW uwva_v_thema_hvruimtegebruik
(
alg_ruimte_key,
waarde,
waarde_key
)
AS
SELECT x.alg_ruimte_key,
COALESCE (y.fac_usrdata_omschr, 'ONGEDEFINIEERD'),
y.fac_usrdata_key
FROM (SELECT r.alg_ruimte_key
FROM alg_v_aanwezigruimte r) x
LEFT JOIN
(SELECT ok.alg_onrgoed_key,
ud.fac_usrdata_omschr,
ud.fac_usrdata_key
FROM alg_kenmerk k, alg_onrgoedkenmerk ok, fac_usrdata ud
WHERE k.alg_kenmerk_omschrijving = 'Ruimtegebruik'
AND k.alg_kenmerk_key = ok.alg_kenmerk_key
AND ud.fac_usrdata_verwijder IS NULL
AND fac.safe_to_number (
ok.alg_onrgoedkenmerk_waarde
) = ud.fac_usrdata_key) y
ON x.alg_ruimte_key = y.alg_onrgoed_key;
/
-- UWVA#18099 aangepast
-- Stap 9d: Actie/trigger bij sleur+pleur van thema HV-ruimtegebruik
/* Formatted on 17-11-2009 16:24:10 (QP5 v5.115.810.9015) */
CREATE OR REPLACE TRIGGER uwva_t_thema_hvruimtegebr_iu
INSTEAD OF INSERT OR UPDATE
ON uwva_v_thema_hvruimtegebruik
DECLARE
v_ruimte_omschr alg_ruimte.alg_ruimte_omschrijving%TYPE;
BEGIN
DELETE FROM alg_onrgoedkenmerk ok
WHERE ok.alg_kenmerk_key = (SELECT alg_kenmerk_key
FROM alg_kenmerk
WHERE alg_kenmerk_omschrijving = 'Ruimtegebruik')
AND ok.alg_onrgoed_key = :new.alg_ruimte_key;
IF :new.waarde_key IS NOT NULL
THEN
INSERT INTO alg_onrgoedkenmerk ok (ok.alg_kenmerk_key, ok.alg_onrgoed_niveau, ok.alg_onrgoed_key, ok.alg_onrgoedkenmerk_waarde
)
SELECT alg_kenmerk_key, 'R', :new.alg_ruimte_key, :new.waarde_key
FROM alg_kenmerk
WHERE alg_kenmerk_omschrijving = 'Ruimtegebruik';
SELECT SUBSTR (ud.fac_usrdata_omschr, 1, 30)
INTO v_ruimte_omschr
FROM alg_kenmerk k, alg_onrgoedkenmerk ok, fac_usrdata ud
WHERE ok.alg_onrgoed_key = :new.alg_ruimte_key
AND ok.alg_onrgoed_niveau = 'R'
AND k.alg_kenmerk_omschrijving = 'Ruimtegebruik'
AND k.alg_kenmerk_key = ok.alg_kenmerk_key
AND fac.safe_to_number (ok.alg_onrgoedkenmerk_waarde) = ud.fac_usrdata_key;
UPDATE alg_ruimte
SET alg_ruimte_omschrijving = v_ruimte_omschr
WHERE alg_ruimte_key = :new.alg_ruimte_key;
-- Ruimtefunctie auto aanpassen a.d.h.v gekozen ruimtegebruik (:new.waarde_key)
UPDATE alg_ruimte
SET alg_srtruimte_key =
COALESCE (
(SELECT fac.safe_to_number (fac_usrdata_omschr)
FROM fac_usrdata ud
WHERE fac_usrtab_key = 551 -- HVRUIMTEGEBRUIK
AND fac_usrdata_code = fac.safe_to_number (:new.waarde_key)
AND fac_usrdata_verwijder IS NULL),
alg_srtruimte_key
)
WHERE alg_ruimte_key = :new.alg_ruimte_key;
END IF;
EXCEPTION
WHEN OTHERS
THEN
raise_application_error (-20000, 'uwva_m18099 Deze ruimtegebruik/-soort aanpassing is niet geldig.');
END;
/
-------------- Stap 10: Definities van nieuwe rapportages -------------------------
/* Formatted on 1-10-2010 13:40:44 (QP5 v5.136.908.31019) */
-- Presenteert de mismatch tussen ruimtegeruik en ruimtesoort,die via usertabel 551
-- aan elkaar gerelateerd zijn (UWVA#18099)
/* Formatted on 1-10-2010 13:58:31 (QP5 v5.136.908.31019) */
CREATE OR REPLACE FORCE VIEW uwva_v_rap_hv_rsoortmismatch
(
ruimte,
ruimteomschrijving,
ruimtegebruik,
fclt_f_is,
fclt_f_moet_zijn,
vvo,
fclt_f_impact,
fclt_3d_locatie_key
)
AS
SELECT p.alg_plaatsaanduiding ruimte,
alg_ruimte_omschrijving ruimteomschrijving,
ud.fac_usrdata_omschr ruimtegebruik,
sr.alg_srtruimte_omschrijving isruimtesoort,
sr2.alg_srtruimte_omschrijving moetzijnruimtesoort,
r.alg_ruimte_opp_alt1,
DECODE (COALESCE (sr.prs_bevat_werkplek, 0) + COALESCE (sr2.prs_bevat_werkplek, 0), 1, 'x', '')
fclt_f_impact,
g.alg_locatie_key fclt_3d_locatie_key
FROM alg_v_aanwezigruimte r,
alg_onrgoedkenmerk k,
fac_usrdata ud,
alg_srtruimte sr,
alg_srtruimte sr2,
alg_v_plaatsaanduiding p,
alg_verdieping v,
alg_gebouw g
WHERE k.alg_kenmerk_key = 1240 -- ruimtegebruik
AND k.alg_onrgoed_niveau = 'R'
AND k.alg_onrgoed_key = r.alg_ruimte_key
AND fac.safe_to_number (k.alg_onrgoedkenmerk_waarde) = ud.fac_usrdata_key
AND p.alg_onroerendgoed_keys = r.alg_ruimte_key
AND p.alg_onroerendgoed_type = 'R'
AND sr.alg_srtruimte_key = r.alg_srtruimte_key
AND r.alg_verdieping_key = v.alg_verdieping_key
AND v.alg_gebouw_key = g.alg_gebouw_key
AND r.alg_srtruimte_key NOT IN
(SELECT fac.safe_to_number (udd.fac_usrdata_omschr)
FROM fac_usrdata udd
WHERE udd.fac_usrtab_key = 551 -- Rmgebruikfunctie
AND udd.fac_usrdata_code = fac.safe_to_number (k.alg_onrgoedkenmerk_waarde)
AND udd.fac_usrdata_verwijder IS NULL)
AND sr2.alg_srtruimte_key =
(SELECT fac.safe_to_number (udd.fac_usrdata_omschr)
FROM fac_usrdata udd
WHERE udd.fac_usrtab_key = 551 -- Rmgebruikfunctie
AND udd.fac_usrdata_code = fac.safe_to_number (k.alg_onrgoedkenmerk_waarde)
AND udd.fac_usrdata_verwijder IS NULL);
-- Stap 10a: Definieer de rapportage voor track & tracing van HV mutaties.
CREATE OR REPLACE FORCE VIEW UWVA_V_RAP_HV_FGMUTATIES_AFD
(
FCLT_F_MAAND,
FCLT_3D_LOCATIE_KEY,
FCLT_F_LOCATIE,
FCLT_F_GEBOUW,
FCLT_F_VERDIEPING,
RUIMTE,
OMSCHRIJVING,
WANNEER,
MUTATIE,
FCLT_F_WIE
)
AS
SELECT DISTINCT TO_CHAR (fac_tracking_datum, 'YYMM'),
r.alg_locatie_key,
r.alg_locatie_code,
r.alg_gebouw_upper,
r.alg_verdieping_code,
r.alg_ruimte_nr,
r.alg_ruimte_omschrijving,
TO_CHAR (ft.fac_tracking_datum, 'dd-mm-yyyy hh24:mi:ss'),
fac_tracking_oms,
PP.PRS_PERSLID_NAAM_FULL
FROM fac_tracking ft,
fac_srtnotificatie fs,
alg_v_ruimte_gegevens r,
prs_v_perslid_fullnames_all pp
WHERE ft.fac_srtnotificatie_key = fs.fac_srtnotificatie_key
AND fac_tracking_refkey = r.alg_ruimte_key
AND fac_srtnotificatie_code = 'ALGCAD'
AND ft.prs_perslid_key = pp.prs_perslid_key(+);
-- Stap 10b: Definieer de rapportage voor niet toegewezen ruimtem (terwijl de ruimtesoort aangeeft dat dat moet)
CREATE OR REPLACE FORCE VIEW uwva_v_rap_ruimte_controle_h
AS
SELECT l.alg_locatie_key as fclt_3d_locatie_key,
g.alg_gebouw_code as fclt_f_gebouw,
v.alg_verdieping_code as fclt_f_verdieping,
r.alg_ruimte_nr as ruimtenr,
x.alg_srtruimte_omschrijving as fclt_f_ruimtesoort,
ud.fac_usrdata_omschr as ruimtegebruik,
DECODE (y.aantal, NULL, DECODE(x.verhuur, 1,'[GEEN DIVISIE!]'),
1, DECODE(y.afd, 0, '[AFDELING ONTBREEKT!]'),
DECODE(y.afd2, 0, '[AFDELING ONTBREEKT!]')
) AS fclt_f_probleem
FROM alg_ruimte r, alg_verdieping v, alg_gebouw g, alg_locatie l,
alg_onrgoedkenmerk ok, fac_usrdata ud,
(SELECT r.alg_ruimte_key, sr.alg_srtruimte_omschrijving, COALESCE(sr.prs_verhuurbaar, 0) verhuur, COALESCE(sr.prs_bevat_werkplek, 0) werkplek
FROM alg_v_aanwezigruimte r, alg_srtruimte sr
WHERE r.alg_srtruimte_key = sr.alg_srtruimte_key (+)
AND sr.prs_verhuurbaar = 1 ) x
LEFT JOIN ( SELECT ra.alg_ruimte_key,
MIN (a.prs_afdeling_omschrijving) sp,
MIN (a.prs_afdeling_key) sp_key,
COUNT (ra.prs_afdeling_key) aantal,
MAX(NVL(a.prs_afdeling_parentkey, 0)) afd,
MIN(NVL(a.prs_afdeling_parentkey, 0)) afd2
FROM prs_v_aanwezigruimteafdeling ra, prs_v_aanwezigafdeling a
WHERE ra.prs_afdeling_key = a.prs_afdeling_key
GROUP BY ra.alg_ruimte_key) y
ON x.alg_ruimte_key = y.alg_ruimte_key
WHERE r.alg_ruimte_key = x.alg_ruimte_key
AND r.ALG_VERDIEPING_KEY = v.ALG_VERDIEPING_KEY
AND v.alg_gebouw_key = g.alg_gebouw_key
AND COALESCE (g.alg_gebouw_vervaldatum, SYSDATE) > TRUNC (SYSDATE)
AND g.alg_locatie_key = l.alg_locatie_key
AND r.alg_ruimte_key = ok.alg_onrgoed_key
AND ok.alg_kenmerk_key = (select alg_kenmerk_key from alg_kenmerk where alg_kenmerk_omschrijving = 'Ruimtegebruik')
AND ud.fac_usrdata_key = ok.alg_onrgoedkenmerk_waarde;
/
CREATE OR REPLACE FORCE VIEW uwva_v_rap_ruimte_controle
AS SELECT * from uwva_v_rap_ruimte_controle_h
WHERE fclt_f_probleem is not null;
-- UWVA#17591
-- zet de huidige opp af tegen de laatstgescande waarden
-- beschouwt bewust de primaire oppervlakte als maatgevend
CREATE OR REPLACE FORCE VIEW UWVA_V_THEMA_OPPMUTATIE
(
ALG_RUIMTE_KEY,
WAARDE,
HOEVEELDAN,
DIFFTXT
)
AS
WITH match_ruimte
AS (SELECT r.alg_ruimte_key,
COALESCE (c.cad_imp_contour_opp, 0)
- COALESCE (r.alg_ruimte_bruto_vloeropp, 0)
diff,
TO_CHAR (COALESCE (r.alg_ruimte_bruto_vloeropp, 0))
|| '->'
|| TO_CHAR (COALESCE (c.cad_imp_contour_opp, 0))
difftxt
FROM alg_v_aanwezigruimte r,
cad_imp_contour c,
cad_tekening ct,
uwva_v_sync_alg_ruimte s
WHERE s.alg_ruimte_key = r.alg_ruimte_key
AND s.cadlabel = c.cad_imp_contour_nr
AND ct.cad_tekening_key = c.cad_tekening_key
AND ct.alg_verdieping_key = r.alg_verdieping_key)
SELECT alg_ruimte_key,
case when diff > 0.1 then 'Meer' when diff < -0.1 then 'Minder' else 'Gelijk' end,
case when ABS (diff) > 0.1 then diff else 0 end,
case when ABS (diff) > 0.1 then difftxt else '' end
FROM match_ruimte;
CREATE OR REPLACE FORCE VIEW UWVA_V_LABEL_OPPMUTATIE
(
ALG_RUIMTE_KEY,
WAARDE
)
AS
SELECT ALG_RUIMTE_KEY, DIFFTXT FROM UWVA_V_THEMA_OPPMUTATIE;
-- UWVA#18101
/* Formatted on 1-10-2010 15:06:18 (QP5 v5.136.908.31019) */
CREATE OR REPLACE FORCE VIEW uwva_v_label_hvwpbezetting
(
alg_ruimte_key,
waarde
)
AS
WITH ap AS (SELECT alg_onrgoed_key alg_ruimte_key, alg_onrgoedkenmerk_waarde aantal_pers
FROM alg_onrgoedkenmerk
WHERE alg_onrgoed_niveau = 'R' AND alg_kenmerk_key = 1144 -- Aaantal personen
),
aw AS (SELECT alg_onrgoed_key alg_ruimte_key, alg_onrgoedkenmerk_waarde aantal_wp
FROM alg_onrgoedkenmerk
WHERE alg_onrgoed_niveau = 'R' AND alg_kenmerk_key = 1143 -- Aantal werkplekken
)
SELECT ar.alg_ruimte_key,
CASE
WHEN aantal_pers > 0
THEN
'Werkplek: ' || TO_CHAR (TRUNC (alg_ruimte_opp_alt1 * 10 / aw.aantal_wp + 0.5) / 10) || 'm2'
ELSE
''
END
|| '~Werkplekken: '
|| TO_CHAR (aw.aantal_wp)
|| ' ['
|| TO_CHAR (TRUNC (alg_ruimte_opp_alt1 / 10))
|| ']'
|| '~Personen: '
|| TO_CHAR (ap.aantal_pers)
waarde
FROM aw, ap, alg_ruimte ar
WHERE ar.alg_ruimte_key = ap.alg_ruimte_key(+)
AND ar.alg_ruimte_key = aw.alg_ruimte_key(+)
AND (ap.aantal_pers > 0 OR aw.aantal_wp > 0);
-- Thema met de gemiddelde oppervlakte per werkplek, legenda bevat typisch intervallen
-- Kan niet slepen
/* Formatted on 1-10-2010 15:15:11 (QP5 v5.136.908.31019) */
CREATE OR REPLACE FORCE VIEW uwva_v_thema_hvwpbezetting (alg_ruimte_key, waarde, waarde_key)
AS
WITH aw AS (SELECT alg_onrgoed_key alg_ruimte_key, alg_onrgoedkenmerk_waarde aantal_wp
FROM alg_onrgoedkenmerk
WHERE alg_onrgoed_niveau = 'R' AND alg_kenmerk_key = 1143 -- Aantal werkplekken
)
SELECT ar.alg_ruimte_key, (TRUNC (alg_ruimte_opp_alt1 * 10 / aw.aantal_wp + 0.5) / 10) waarde, aw.aantal_wp waarde_key
FROM aw, alg_ruimte ar
WHERE ar.alg_ruimte_key = aw.alg_ruimte_key(+) AND aw.aantal_wp > 0;
-- Het platte aantal werkplekken, kunnen we lekker slepen
/* Formatted on 22-9-2011 12:28:48 (QP5 v5.115.810.9015) */
CREATE OR REPLACE FORCE VIEW uwva_v_thema_hvwpaantal
(
alg_ruimte_key,
waarde,
waarde_key
)
AS
SELECT x.alg_ruimte_key,
COALESCE (y.alg_onrgoedkenmerk_waarde, 'ONGEDEFINIEERD'),
y.alg_onrgoedkenmerk_waarde -- NULL als ONGEDEFINIEERD
FROM (SELECT r.alg_ruimte_key
FROM alg_v_aanwezigruimte r) x
LEFT JOIN
(SELECT ok.alg_onrgoed_key, ok.alg_onrgoedkenmerk_waarde
FROM alg_onrgoedkenmerk ok
WHERE ok.alg_kenmerk_key = 1143) y -- Aantal werkplekken
ON x.alg_ruimte_key = y.alg_onrgoed_key;
-- De update past het aantal werkplekken aan
CREATE OR REPLACE TRIGGER uwva_t_thema_hvwpaantal
INSTEAD OF INSERT OR UPDATE
ON uwva_v_thema_hvwpaantal
DECLARE
BEGIN
DELETE FROM alg_onrgoedkenmerk ok
WHERE ok.alg_kenmerk_key = 1143 -- Aantal werkplekken
AND ok.alg_onrgoed_key = :new.alg_ruimte_key;
IF :new.waarde_key IS NOT NULL
THEN
BEGIN
INSERT INTO alg_onrgoedkenmerk ok (
ok.alg_kenmerk_key,
ok.alg_onrgoed_niveau,
ok.alg_onrgoed_key,
ok.alg_onrgoedkenmerk_waarde
)
VALUES (1143, 'R', :new.alg_ruimte_key, :new.waarde_key
);
EXCEPTION
WHEN OTHERS
THEN
raise_application_error (-20000, 'uwva_m18101 Aantal werkplekken kan kennelijk niet aangepast worden.');
END;
END IF;
END;
/
-- Het platte aantal personen, kunnen we lekker slepen
/* Formatted on 22-9-2011 12:34:56 (QP5 v5.115.810.9015) */
CREATE OR REPLACE FORCE VIEW uwva_v_thema_hvpersaantal
(
alg_ruimte_key,
waarde,
waarde_key
)
AS
SELECT x.alg_ruimte_key,
COALESCE (y.alg_onrgoedkenmerk_waarde, 'ONGEDEFINIEERD'),
y.alg_onrgoedkenmerk_waarde -- NULL als ONGEDEFINIEERD
FROM (SELECT r.alg_ruimte_key
FROM alg_v_aanwezigruimte r) x
LEFT JOIN
(SELECT ok.alg_onrgoed_key, ok.alg_onrgoedkenmerk_waarde
FROM alg_onrgoedkenmerk ok
WHERE ok.alg_kenmerk_key = 1144) y -- Aantal personen
ON x.alg_ruimte_key = y.alg_onrgoed_key;
-- De update past het aantal werkplekken aan
CREATE OR REPLACE TRIGGER uwva_t_thema_hvpersaantal
INSTEAD OF INSERT OR UPDATE
ON uwva_v_thema_hvpersaantal
DECLARE
BEGIN
DELETE FROM alg_onrgoedkenmerk ok
WHERE ok.alg_kenmerk_key = 1144 -- Aantal personen
AND ok.alg_onrgoed_key = :new.alg_ruimte_key;
IF :new.waarde_key IS NOT NULL
THEN
BEGIN
INSERT INTO alg_onrgoedkenmerk ok (
ok.alg_kenmerk_key,
ok.alg_onrgoed_niveau,
ok.alg_onrgoed_key,
ok.alg_onrgoedkenmerk_waarde
)
VALUES (1144, 'R', :new.alg_ruimte_key, :new.waarde_key
);
EXCEPTION
WHEN OTHERS
THEN
raise_application_error (-20000, 'uwva_m18101 Aantal personen kan kennelijk niet aangepast worden.');
END;
END IF;
END;
/
-- mbmbmb
CREATE OR REPLACE PROCEDURE uwva_import_ruimtegebruik (
p_import_key IN NUMBER
)
IS
c_fielddelimitor VARCHAR2 (1) := ';';
v_newline VARCHAR2 (1000); -- Input line
v_aanduiding VARCHAR2 (200);
v_errorhint VARCHAR2 (1000);
v_errormsg VARCHAR2 (1000);
oracle_err_num NUMBER;
oracle_err_mes VARCHAR2 (200);
header_is_valid NUMBER := 0;
v_ongeldig NUMBER (1);
v_count_tot NUMBER (10);
v_count_import NUMBER (10);
v_count NUMBER;
-- De importvelden:
v_alg_gebouw_code VARCHAR2 (256);
v_alg_verdieping_nr VARCHAR2 (256);
v_alg_ruimte_nr VARCHAR2 (256);
v_prs_afdeling_naam VARCHAR2 (256);
v_prs_ruimteafdeling_bezetting VARCHAR2 (256);
CURSOR c1
IS
SELECT *
FROM fac_imp_file
WHERE fac_import_key = p_import_key
ORDER BY fac_imp_file_index;
BEGIN
-- Eerst opruiming
DELETE FROM uwva_imp_ruimtegebruik;
COMMIT;
v_count_tot := 0;
v_count_import := 0;
FOR rec1 IN c1
LOOP
BEGIN
v_newline := rec1.fac_imp_file_line;
v_aanduiding := '';
v_errorhint := 'Fout bij opvragen te importeren rij';
v_ongeldig := 0;
-- Lees alle veldwaarden
-- 01
fac.imp_getfield (v_newline, c_fielddelimitor, v_alg_gebouw_code);
-- 02
fac.imp_getfield (v_newline, c_fielddelimitor, v_alg_verdieping_nr);
-- 03
fac.imp_getfield (v_newline, c_fielddelimitor, v_alg_ruimte_nr);
-- 04
fac.imp_getfield (v_newline, c_fielddelimitor, v_prs_afdeling_naam);
-- 05
fac.imp_getfield (v_newline, c_fielddelimitor, v_prs_ruimteafdeling_bezetting);
--
v_aanduiding :=
'['
|| v_alg_gebouw_code
|| '|'
|| v_alg_verdieping_nr
|| '|'
|| v_alg_ruimte_nr
|| '|'
|| v_prs_afdeling_naam
|| '] ';
-- Ik controleer of ik een geldige header heb, dat is: in de juiste kolommen
-- de juiste kolomkop. Ik controleer daarbij ALLE kolommen!
-- Ik negeer alles totdat ik een geldige header ben gepasseerd.
IF (header_is_valid = 0)
THEN
IF UPPER (v_alg_gebouw_code) = 'GEBOUW'
AND UPPER (v_alg_verdieping_nr) = 'VERDIEPING'
AND UPPER (v_alg_ruimte_nr) = 'RUIMTENR'
AND UPPER (v_prs_afdeling_naam) = 'AFDELING'
AND UPPER (v_prs_ruimteafdeling_bezetting) = 'BEZETTING'
THEN
header_is_valid := 1;
END IF;
ELSE
v_count_tot := v_count_tot + 1;
-- Controleer alle veldwaarden
v_errorhint := 'Ongeldige gebouwcode';
v_alg_gebouw_code := TRIM (v_alg_gebouw_code);
IF (LENGTH (v_alg_gebouw_code) > 10 OR v_alg_gebouw_code IS NULL)
THEN
v_ongeldig := 1;
fac.imp_writelog
(p_import_key,
'E',
v_aanduiding || 'Gebouwcode onbekend',
'Gebouwcode is te lang of niet ingevuld; regel wordt overgeslagen!'
);
END IF;
IF (LENGTH (v_alg_verdieping_nr) > 3 OR v_alg_verdieping_nr IS NULL)
THEN
v_ongeldig := 1;
fac.imp_writelog
(p_import_key,
'E',
v_aanduiding || 'Verdieping onbekend',
'Verdieping is te lang of niet ingevuld; regel wordt overgeslagen!'
);
END IF;
IF (LENGTH (v_alg_ruimte_nr) > 10 OR v_alg_ruimte_nr IS NULL)
THEN
v_ongeldig := 1;
fac.imp_writelog
(p_import_key,
'E',
v_aanduiding || 'Ruimte onbekend',
'Ruimtenummer is te lang of niet ingevuld; regel wordt overgeslagen!'
);
END IF;
IF (LENGTH (v_prs_afdeling_naam) > 10 OR v_prs_afdeling_naam IS NULL)
THEN
v_ongeldig := 1;
fac.imp_writelog
(p_import_key,
'E',
v_aanduiding || 'Afdeling onbekend',
'Afdeling is te lang of niet ingevuld; regel wordt overgeslagen!'
);
END IF;
IF (LENGTH (v_prs_ruimteafdeling_bezetting) > 3)
THEN
v_ongeldig := 1;
fac.imp_writelog
(p_import_key,
'E',
v_aanduiding || 'Bezetting fout',
'De bezetting is te lang, maximaal 3 cijfers/posities zijn toegestaan; regel wordt overgeslagen!'
);
END IF;
-- Insert geformatteerde import record
IF v_ongeldig = 0
THEN
BEGIN
v_errorhint := 'Fout bij toevoegen regel aan importtabel uwva_imp_ruimtegebruik';
INSERT INTO uwva_imp_ruimtegebruik
(alg_gebouw_code, alg_verdieping_nr,alg_ruimte_nr, prs_afdeling_naam, prs_ruimteafdeling_bezetting)
VALUES (v_alg_gebouw_code, v_alg_verdieping_nr, v_alg_ruimte_nr, v_prs_afdeling_naam, v_prs_ruimteafdeling_bezetting);
COMMIT;
v_count_import := v_count_import + 1;
EXCEPTION
WHEN OTHERS
THEN
oracle_err_num := SQLCODE;
oracle_err_mes := SUBSTR (SQLERRM, 1, 100);
v_errormsg :=
v_errorhint
|| ' ORACLE (error '
|| oracle_err_num
|| '/'
|| oracle_err_mes
|| ')';
fac.imp_writelog
(p_import_key,
'E',
v_aanduiding || v_errormsg,
'Ingelezen regel kan niet worden weggeschreven!'
);
COMMIT;
END;
END IF;
END IF;
END;
END LOOP;
IF (header_is_valid = 0)
THEN
fac.imp_writelog (p_import_key,
'E',
'Ongeldig importbestand',
'Geen header of header niet volgens specificatie!'
);
ELSE
fac.imp_writelog (p_import_key,
'S',
'Ruimtegebruik: aantal verwerkte regels: '
|| TO_CHAR (v_count_tot),
''
);
fac.imp_writelog (p_import_key,
'S',
'Ruimtegebruik: aantal ongeldige importregels: '
|| TO_CHAR (v_count_tot - v_count_import),
''
);
END IF;
COMMIT;
EXCEPTION
WHEN OTHERS
THEN
oracle_err_num := SQLCODE;
oracle_err_mes := SUBSTR (SQLERRM, 1, 100);
v_errormsg :=
'OTHERS (error ' || oracle_err_num || '/' || oracle_err_mes || ')';
fac.imp_writelog (p_import_key,
'E',
v_aanduiding || v_errormsg,
v_errorhint
);
COMMIT;
END uwva_import_ruimtegebruik;
/
CREATE OR REPLACE PROCEDURE uwva_update_ruimtegebruik (
p_import_key IN NUMBER
)
IS
v_aanduiding VARCHAR2 (200);
v_errorhint VARCHAR2 (1000);
v_errormsg VARCHAR2 (1000);
oracle_err_num NUMBER;
oracle_err_mes VARCHAR2 (200);
v_count_tot NUMBER (10);
v_count_error NUMBER (10);
v_count NUMBER (10);
--
v_locatie_key NUMBER (10);
v_alg_gebouw_key NUMBER (10);
v_alg_verdieping_key NUMBER (10);
v_alg_ruimte_key NUMBER (10);
v_prs_afdeling_key NUMBER (10);
v_prs_ruimteafdeling_bezetting NUMBER (3);
-- Alle verschillende ruimten (group by)
CURSOR cruimte
IS
SELECT alg_gebouw_code, alg_verdieping_nr, alg_ruimte_nr
FROM uwva_imp_ruimtegebruik
GROUP BY alg_gebouw_code, alg_verdieping_nr, alg_ruimte_nr;
-- Alle ruimten (ook dubbelen) met hun afdelingen en bezettingspercentage
CURSOR cruimtegebruik
IS
SELECT *
FROM uwva_imp_ruimtegebruik;
BEGIN
-- Prefix van de functie:
-- Eerst van alle ruimten de afdelingen ontkoppelen...
FOR recruimte IN cruimte
LOOP
BEGIN
SELECT alg_gebouw_key
INTO v_alg_gebouw_key
FROM alg_gebouw
WHERE alg_gebouw_verwijder IS NULL
AND alg_gebouw_upper = UPPER (recruimte.alg_gebouw_code);
SELECT alg_verdieping_key
INTO v_alg_verdieping_key
FROM alg_verdieping
WHERE alg_verdieping_verwijder IS NULL
AND alg_gebouw_key = v_alg_gebouw_key
AND alg_verdieping_volgnr = to_number(recruimte.alg_verdieping_nr);
SELECT alg_ruimte_key
INTO v_alg_ruimte_key
FROM alg_ruimte
WHERE alg_ruimte_verwijder IS NULL
AND alg_verdieping_key = v_alg_verdieping_key
AND alg_ruimte_upper_nr = UPPER (recruimte.alg_ruimte_nr);
DELETE FROM prs_ruimteafdeling WHERE alg_ruimte_key = v_alg_ruimte_key;
EXCEPTION
WHEN OTHERS
THEN
NULL;
END;
END LOOP;
v_count_tot := 0;
v_count_error := 0;
-- Alle ruimten (ook dubbelen) de afdelingen met bezettingspercentage koppelen.
FOR recruimtegebruik IN cruimtegebruik
LOOP
BEGIN
v_count_tot := v_count_tot + 1;
v_aanduiding :=
recruimtegebruik.alg_gebouw_code
|| '|'
|| recruimtegebruik.alg_verdieping_nr
|| '|'
|| recruimtegebruik.alg_ruimte_nr
|| ' - ';
v_errorhint :=
'Fout bij bepalen gebouw ['
|| recruimtegebruik.alg_gebouw_code
|| ']';
SELECT alg_gebouw_key
INTO v_alg_gebouw_key
FROM alg_gebouw
WHERE alg_gebouw_verwijder IS NULL
AND alg_gebouw_upper = UPPER (recruimtegebruik.alg_gebouw_code);
v_errorhint :=
'Fout bij bepalen verdieping ['
|| recruimtegebruik.alg_verdieping_nr
|| ']';
SELECT alg_verdieping_key
INTO v_alg_verdieping_key
FROM alg_verdieping
WHERE alg_verdieping_verwijder IS NULL
AND alg_gebouw_key = v_alg_gebouw_key
AND alg_verdieping_volgnr = to_number(recruimtegebruik.alg_verdieping_nr);
v_errorhint :=
'Fout bij bepalen ruimte ['
|| recruimtegebruik.alg_ruimte_nr
|| ']';
SELECT alg_ruimte_key
INTO v_alg_ruimte_key
FROM alg_ruimte
WHERE alg_ruimte_verwijder IS NULL
AND alg_verdieping_key = v_alg_verdieping_key
AND alg_ruimte_upper_nr = UPPER (recruimtegebruik.alg_ruimte_nr);
v_errorhint :=
'Fout bij bepalen afdeling ['
|| recruimtegebruik.prs_afdeling_naam
|| ']';
SELECT prs_afdeling_key
INTO v_prs_afdeling_key
FROM prs_afdeling
WHERE prs_afdeling_verwijder IS NULL
AND prs_afdeling_upper = UPPER (recruimtegebruik.prs_afdeling_naam);
v_errorhint :=
'Fout in de ruimtebezetting: getal moet groter dan 0 en kleiner dan 999 zijn ['
|| recruimtegebruik.prs_ruimteafdeling_bezetting
|| ']';
SELECT COALESCE(to_number(recruimtegebruik.prs_ruimteafdeling_bezetting), 100)
INTO v_prs_ruimteafdeling_bezetting
FROM dual
WHERE COALESCE(to_number (recruimtegebruik.prs_ruimteafdeling_bezetting),100) >= 0
AND COALESCE(to_number (recruimtegebruik.prs_ruimteafdeling_bezetting),100) <= 999;
INSERT INTO prs_ruimteafdeling (alg_ruimte_key, prs_afdeling_key, prs_ruimteafdeling_bezetting)
VALUES (v_alg_ruimte_key,v_prs_afdeling_key,v_prs_ruimteafdeling_bezetting);
EXCEPTION
WHEN OTHERS
THEN
v_count_error := v_count_error + 1;
oracle_err_num := SQLCODE;
oracle_err_mes := SUBSTR (SQLERRM, 1, 200);
v_errormsg :=
'OTHERS (error '
|| oracle_err_num
|| '/'
|| oracle_err_mes
|| ')';
fac.imp_writelog (p_import_key,
'E',
v_aanduiding || v_errormsg,
v_errorhint
);
COMMIT;
END;
END LOOP;
fac.imp_writelog (p_import_key,
'S',
'Ruimtebezetting: verwerkte regels zonder foutmelding: '
|| TO_CHAR (v_count_tot - v_count_error),
''
);
fac.imp_writelog (p_import_key,
'S',
'Ruimtebezetting: verwerkte regels met foutmelding: '
|| TO_CHAR (v_count_error),
''
);
COMMIT;
EXCEPTION
WHEN OTHERS
THEN
oracle_err_num := SQLCODE;
oracle_err_mes := SUBSTR (SQLERRM, 1, 100);
v_errormsg :=
'OTHERS (error ' || oracle_err_num || '/' || oracle_err_mes || ')';
fac.imp_writelog (p_import_key,
'E',
v_aanduiding || v_errormsg,
v_errorhint
);
COMMIT;
END uwva_update_ruimtegebruik;
/
-- CAD welke ruimtes zijn wel getekend maar niet de database aanwezig (UWVA#16750)
-- Kolom hide_f_alg_regio_key en hide_f_alg_district_key is toegevoegd nav UWVA#29320
CREATE OR REPLACE FORCE VIEW uwva_v_rap_cad_notindb
(
fclt_f_locatie,
hide_f_alg_regio_key,
hide_f_alg_district_key,
fclt_f_gebouw,
fclt_f_verdieping,
cadlabel,
hide_f_nen2580_getekend
)
AS
SELECT l.alg_locatie_code,
d.alg_regio_key,
d.alg_district_key,
g.alg_gebouw_code,
v.alg_verdieping_omschrijving,
r.alg_ruimte_nr cad_ruimte_nr,
r.cad_imp_contour_opp
FROM alg_locatie l,
alg_district d,
alg_gebouw g,
alg_verdieping v,
(SELECT TO_NUMBER (NULL) alg_ruimte_key,
ir.alg_verdieping_key,
ir.cad_imp_contour_nr alg_ruimte_nr,
ir.cad_imp_contour_opp,
ir.cad_imp_contour_opp_alt1,
ir.cad_imp_contour_opp_alt2,
ir.aantal
FROM uwva_v_sync_alg_ruimte sync,
( SELECT c.CAD_IMP_CONTOUR_NR,
SUM (c.CAD_IMP_CONTOUR_OPP) CAD_IMP_CONTOUR_OPP,
SUM (c.CAD_IMP_CONTOUR_OPP_ALT1)
CAD_IMP_CONTOUR_OPP_ALT1,
SUM (c.CAD_IMP_CONTOUR_OPP_ALT2)
CAD_IMP_CONTOUR_OPP_ALT2,
t.alg_locatie_key,
t.alg_verdieping_key,
COUNT ( * ) aantal
FROM cad_imp_contour c, cad_tekening t
WHERE c.cad_tekening_key = t.cad_tekening_key
GROUP BY c.CAD_IMP_CONTOUR_NR,
t.alg_locatie_key,
t.alg_verdieping_key) ir
WHERE ir.ALG_VERDIEPING_KEY = sync.ALG_VERDIEPING_KEY(+)
AND ir.cad_imp_contour_nr = sync.cadlabel(+)
AND sync.ALG_VERDIEPING_KEY IS NULL
UNION ALL
SELECT sync.alg_ruimte_key,
sync.alg_verdieping_key,
sync.cadlabel,
ir.cad_imp_contour_opp,
ir.cad_imp_contour_opp_alt1,
ir.cad_imp_contour_opp_alt2,
ir.aantal
FROM uwva_v_sync_alg_ruimte sync,
( SELECT c.CAD_IMP_CONTOUR_NR,
SUM (c.CAD_IMP_CONTOUR_OPP) CAD_IMP_CONTOUR_OPP,
SUM (c.CAD_IMP_CONTOUR_OPP_ALT1)
CAD_IMP_CONTOUR_OPP_ALT1,
SUM (c.CAD_IMP_CONTOUR_OPP_ALT2)
CAD_IMP_CONTOUR_OPP_ALT2,
t.alg_locatie_key,
t.alg_verdieping_key,
COUNT ( * ) aantal
FROM cad_imp_contour c, cad_tekening t
WHERE c.cad_tekening_key = t.cad_tekening_key
GROUP BY c.CAD_IMP_CONTOUR_NR,
t.alg_locatie_key,
t.alg_verdieping_key) ir
WHERE ir.ALG_VERDIEPING_KEY(+) = sync.ALG_VERDIEPING_KEY
AND ir.cad_imp_contour_nr(+) = sync.cadlabel) r,
alg_v_aanwezigruimte a,
alg_srtruimte s
WHERE v.alg_verdieping_key = r.alg_verdieping_key
AND g.alg_gebouw_key = v.alg_gebouw_key
AND COALESCE (g.alg_gebouw_vervaldatum, SYSDATE) > TRUNC (SYSDATE)
AND l.alg_locatie_key = g.alg_locatie_key
AND d.alg_district_key = l.alg_district_key
AND a.alg_ruimte_key(+) = r.alg_ruimte_key
AND s.alg_srtruimte_key(+) = a.alg_srtruimte_key
AND r.alg_ruimte_key is null
ORDER BY 1,2,3,4;
-- CAD welke ruimtes zijn wel in de database aanwezig maar niet getekend (UWVA#16750)
-- Kolom hide_f_alg_regio_key en hide_f_alg_district_key is toegevoegd nav UWVA#29320
CREATE OR REPLACE FORCE VIEW uwva_v_rap_cad_notintek
(
fclt_f_locatie,
hide_f_alg_regio_key,
hide_f_alg_district_key,
fclt_f_gebouw,
fclt_f_verdieping,
ruimtenummer,
hide_f_ruimteomschrijving,
hide_f_nen2580_m2
)
AS
SELECT l.alg_locatie_code,
d.alg_regio_key,
d.alg_district_key,
g.alg_gebouw_code,
v.alg_verdieping_omschrijving,
a.ALG_RUIMTE_NR,
a.alg_ruimte_omschrijving,
a.alg_ruimte_bruto_vloeropp
FROM alg_locatie l,
alg_district d,
alg_gebouw g,
alg_verdieping v,
(SELECT TO_NUMBER (NULL) alg_ruimte_key,
ir.alg_verdieping_key,
ir.cad_imp_contour_nr alg_ruimte_nr,
ir.cad_imp_contour_opp,
ir.cad_imp_contour_opp_alt1,
ir.cad_imp_contour_opp_alt2,
ir.aantal
FROM uwva_v_sync_alg_ruimte sync,
( SELECT c.CAD_IMP_CONTOUR_NR,
SUM (c.CAD_IMP_CONTOUR_OPP) CAD_IMP_CONTOUR_OPP,
SUM (c.CAD_IMP_CONTOUR_OPP_ALT1)
CAD_IMP_CONTOUR_OPP_ALT1,
SUM (c.CAD_IMP_CONTOUR_OPP_ALT2)
CAD_IMP_CONTOUR_OPP_ALT2,
t.alg_locatie_key,
t.alg_verdieping_key,
COUNT ( * ) aantal
FROM cad_imp_contour c, cad_tekening t
WHERE c.cad_tekening_key = t.cad_tekening_key
GROUP BY c.CAD_IMP_CONTOUR_NR,
t.alg_locatie_key,
t.alg_verdieping_key) ir
WHERE ir.ALG_VERDIEPING_KEY = sync.ALG_VERDIEPING_KEY(+)
AND ir.cad_imp_contour_nr = sync.cadlabel(+)
AND sync.ALG_VERDIEPING_KEY IS NULL
UNION ALL
SELECT sync.alg_ruimte_key,
sync.alg_verdieping_key,
sync.cadlabel,
ir.cad_imp_contour_opp,
ir.cad_imp_contour_opp_alt1,
ir.cad_imp_contour_opp_alt2,
ir.aantal
FROM uwva_v_sync_alg_ruimte sync,
( SELECT c.CAD_IMP_CONTOUR_NR,
SUM (c.CAD_IMP_CONTOUR_OPP) CAD_IMP_CONTOUR_OPP,
SUM (c.CAD_IMP_CONTOUR_OPP_ALT1)
CAD_IMP_CONTOUR_OPP_ALT1,
SUM (c.CAD_IMP_CONTOUR_OPP_ALT2)
CAD_IMP_CONTOUR_OPP_ALT2,
t.alg_locatie_key,
t.alg_verdieping_key,
COUNT ( * ) aantal
FROM cad_imp_contour c, cad_tekening t
WHERE c.cad_tekening_key = t.cad_tekening_key
GROUP BY c.CAD_IMP_CONTOUR_NR,
t.alg_locatie_key,
t.alg_verdieping_key) ir
WHERE ir.ALG_VERDIEPING_KEY(+) = sync.ALG_VERDIEPING_KEY
AND ir.cad_imp_contour_nr(+) = sync.cadlabel) r,
alg_v_aanwezigruimte a,
alg_srtruimte s
WHERE v.alg_verdieping_key = r.alg_verdieping_key
AND g.alg_gebouw_key = v.alg_gebouw_key
AND COALESCE (g.alg_gebouw_vervaldatum, SYSDATE) > TRUNC (SYSDATE)
AND l.alg_locatie_key = g.alg_locatie_key
AND d.alg_district_key = l.alg_district_key
AND a.alg_ruimte_key(+) = r.alg_ruimte_key
AND s.alg_srtruimte_key(+) = a.alg_srtruimte_key
AND CAD_IMP_CONTOUR_OPP is null
AND a.alg_ruimte_nr not like '000%'
ORDER BY 1,2,3,4;
-- UWVA#29320:
CREATE OR REPLACE VIEW uwva_v_rap_cad_ruimte_conflict
(
fclt_f_district,
fclt_f_locatie,
fclt_f_gebouw,
fclt_f_verdieping,
ruimtenummer,
ruimteomschrijving,
nen2580_m2,
ruimtelabel,
nen2580_getekend,
fclt_f_status
)
AS
SELECT
d.alg_district_omschrijving,
fclt_f_locatie,
fclt_f_gebouw,
fclt_f_verdieping,
NULL,
NULL,
NULL,
cadlabel,
hide_f_nen2580_getekend,
'G'
FROM uwva_v_rap_cad_notindb, alg_district d
WHERE hide_f_alg_regio_key = 1
AND hide_f_alg_district_key = d.alg_district_key
UNION ALL
SELECT
d.alg_district_omschrijving,
fclt_f_locatie,
fclt_f_gebouw,
fclt_f_verdieping,
ruimtenummer,
hide_f_ruimteomschrijving,
hide_f_nen2580_m2,
NULL,
NULL,
'F'
FROM uwva_v_rap_cad_notintek, alg_district d
WHERE hide_f_alg_regio_key = 1
AND hide_f_alg_district_key = d.alg_district_key;
-- UWVA#18176 + UWVA#18491 + UWVA#22196
CREATE OR REPLACE FORCE VIEW uwva_v_noti_lfmtekening
(
CODE,
SENDER,
RECEIVER,
TEXT,
KEY,
XKEY
)
AS
SELECT NULL,
NULL,
k.alg_onrgoedkenmerk_waarde,
'Facilitor: De tekening van gebouw '
|| g.alg_gebouw_omschrijving
|| ' op verdieping '
|| v.alg_verdieping_omschrijving
|| ' is aangepast. Graag het juiste Ruimtegebruik en Divisie toekennen aan alle gewijzigde ruimtes.',
NULL,
NULL
FROM alg_gebouw g,
alg_verdieping v,
alg_onrgoedkenmerk k,
cad_tekening c
WHERE v.alg_gebouw_key = g.alg_gebouw_key
AND c.alg_verdieping_key = v.alg_verdieping_key
AND cad_tekening_geimporteerd > SYSDATE - 1
AND k.alg_onrgoed_niveau = 'L'
AND k.alg_onrgoed_key = g.alg_locatie_key
AND k.alg_kenmerk_key = 1020
AND k.alg_onrgoedkenmerk_verwijder IS NULL;
-- UWVA#18804: Uitrol PC's - Graphics labels & thema's
-- Extra info specials
CREATE OR REPLACE VIEW uwva_v_label_pcs_specials
AS
SELECT id.ins_deel_key, ikd.ins_kenmerkdeel_waarde waarde
FROM ins_deel id
,ins_kenmerkdeel ikd
WHERE id.ins_deel_key = ikd.ins_deel_key
AND ins_kenmerk_key = 28;
-- Afdeling (eigenaar/gebruiker) van PC
CREATE OR REPLACE VIEW uwva_v_label_pcs_afdeling
AS
SELECT id.ins_deel_key,
afd.prs_afdeling_omschrijving || ' (' || afd.prs_afdeling_naam || ')' waarde
FROM ins_deel id,
ins_kenmerkdeel ikd,
ins_srtdeel isd,
prs_afdeling afd,
prs_ruimteafdeling ra
WHERE id.ins_deel_verwijder IS NULL
AND id.ins_deel_parent_key IS NULL
AND id.ins_srtdeel_key = isd.ins_srtdeel_key
AND isd.ins_srtgroep_key = 1154
AND id.ins_deel_key = ikd.ins_deel_key(+)
AND ikd.ins_kenmerk_key(+) = 26
AND ra.alg_ruimte_key = id.ins_alg_ruimte_key
AND afd.prs_afdeling_key =
COALESCE (fac.safe_to_number (ikd.ins_kenmerkdeel_waarde),
ra.prs_afdeling_key);
-- PC al ge<67>nstalleerd?
CREATE OR REPLACE VIEW uwva_v_thema_pcs_installed
AS
(SELECT id.ins_deel_key, 1 waarde
FROM ins_deel id, ins_kenmerkdeel ikd
WHERE id.ins_deel_key = ikd.ins_deel_key
AND ins_kenmerk_key = 27)
UNION
(SELECT id.ins_deel_key, 2 waarde
FROM ins_deel id, ins_srtdeel isd
WHERE id.ins_srtdeel_key = isd.ins_srtdeel_key
AND isd.ins_srtgroep_key = 1154
AND id.ins_deel_key NOT IN (SELECT ins_deel_key
FROM ins_kenmerkdeel ikd
WHERE ikd.ins_kenmerk_key = 27));
-- Ruimtethema: PC's met andere afdeling dan ruimte waar ze in staan
CREATE OR REPLACE VIEW uwva_v_thema_pcs_err_afd_alg
AS
SELECT DISTINCT r.alg_ruimte_key, 1 waarde
FROM ins_deel id
,ins_kenmerkdeel ikd
,alg_ruimte r
,prs_ruimteafdeling ra
WHERE id.ins_deel_key = ikd.ins_deel_key
AND ikd.ins_kenmerk_key = 26
AND r.alg_ruimte_key = id.ins_alg_ruimte_key
AND ra.alg_ruimte_key = r.alg_ruimte_key
AND ikd.ins_kenmerkdeel_waarde != ra.prs_afdeling_key;
-- Objectthema: PC's met andere afdeling dan ruimte waar ze in staan
CREATE OR REPLACE VIEW uwva_v_thema_pcs_err_afd_ins
AS
(SELECT id.ins_deel_key, 1 waarde
FROM ins_deel id
,ins_kenmerkdeel ikd
,alg_ruimte r
,prs_ruimteafdeling ra
WHERE id.ins_deel_key = ikd.ins_deel_key
AND ikd.ins_kenmerk_key = 26
AND r.alg_ruimte_key = id.ins_alg_ruimte_key
AND ra.alg_ruimte_key = r.alg_ruimte_key
AND fac.safe_to_number(ikd.ins_kenmerkdeel_waarde) != ra.prs_afdeling_key)
UNION
(SELECT id.ins_deel_key, 2 waarde
FROM ins_deel id, ins_srtdeel isd
WHERE id.ins_srtdeel_key = isd.ins_srtdeel_key
AND isd.ins_srtgroep_key = 1154
AND id.ins_deel_key NOT IN (SELECT ins_deel_key
FROM ins_kenmerkdeel ikd
WHERE ikd.ins_kenmerk_key = 26));
-- Overzicht van PC's, met type, plaats, afdeling etc
-- (UWVA#20021: deze view maakte expliciet gebruik van de 2-laags 'platgeslagen' organisatie-
-- structuur. Voor het smoelenboek wordt de organisatiestructuur weer 'uit elkaar
-- getrokken'.)
CREATE OR REPLACE VIEW uwva_v_rap_pcs
AS
SELECT alg_locatie_code fclt_f_locatie,
dg.alg_plaatsaanduiding ruimte,
dg.ins_deel_omschrijving computer,
dg.ins_srtdeel_omschrijving fclt_f_pctype,
COALESCE (pcafdeling, ruimteafdeling) afdeling,
COALESCE (pcdivisie, ruimtedivisie) fclt_f_divisie,
installatiedatum,
ins_alg_locatie_key fclt_3d_locatie_key
FROM (SELECT ins_d.ins_discipline_key,
ins_sd.ins_srtdeel_key,
ins_sd.ins_srtdeel_code,
ins_sd.ins_srtdeel_omschrijving,
ins_de.ins_alg_locatie_key,
ins_ao.alg_ruimte_key,
ins_ao.alg_plaatsaanduiding,
ins_ao.alg_locatie_code,
ins_de.ins_deel_key,
ins_de.ins_deel_omschrijving,
DECODE (afd1.prs_afdeling_key,
NULL, NULL,
afd1.prs_afdeling_omschrijving || ' (' || afd1.prs_afdeling_naam || ')'
)
pcafdeling,
DECODE (div1.prs_afdeling_key,
NULL, NULL,
div1.prs_afdeling_omschrijving || ' (' || div1.prs_afdeling_naam || ')'
)
pcdivisie,
DECODE (afd2.prs_afdeling_key,
NULL, NULL,
afd2.prs_afdeling_omschrijving || ' (' || afd2.prs_afdeling_naam || ')'
)
ruimteafdeling,
DECODE (div2.prs_afdeling_key,
NULL, NULL,
div2.prs_afdeling_omschrijving || ' (' || div2.prs_afdeling_naam || ')'
)
ruimtedivisie,
ikd.ins_kenmerkdeel_waarde installatiedatum,
ins_de.ins_deel_opmerking,
ins_de.ins_deel_getekend
FROM ins_deel ins_de,
ins_tab_discipline ins_d,
prs_afdeling afd1,
prs_afdeling afd2,
prs_afdeling div1,
prs_afdeling div2,
prs_v_afdeling_boom bm1,
prs_v_afdeling_boom bm2,
( SELECT alg_r.alg_ruimte_key,
alg_g.alg_gebouw_code || '-' || alg_v.alg_verdieping_code || '-' || alg_r.alg_ruimte_nr
alg_plaatsaanduiding,
alg_l.alg_locatie_code,
MAX (ra.prs_afdeling_key) huurderkey
FROM alg_ruimte alg_r,
alg_verdieping alg_v,
alg_gebouw alg_g,
alg_locatie alg_l,
prs_ruimteafdeling ra
WHERE alg_r.alg_verdieping_key = alg_v.alg_verdieping_key
AND alg_v.alg_gebouw_key = alg_g.alg_gebouw_key
AND ra.alg_ruimte_key(+) = alg_r.alg_ruimte_key
AND alg_g.alg_locatie_key = alg_l.alg_locatie_key
GROUP BY alg_r.alg_ruimte_key,
alg_g.alg_gebouw_code,
alg_v.alg_verdieping_code,
alg_r.alg_ruimte_nr,
alg_l.alg_locatie_code) ins_ao,
ins_srtdeel ins_sd,
ins_srtgroep ins_sg,
ins_kenmerkdeel ikd,
ins_kenmerkdeel ikd2
WHERE ins_de.ins_deel_verwijder IS NULL
AND ikd.ins_deel_key(+) = ins_de.ins_deel_key
AND ikd.ins_kenmerk_key(+) = 27 -- Installatiedatum
AND ikd2.ins_deel_key(+) = ins_de.ins_deel_key
AND ikd2.ins_kenmerk_key(+) = 26 -- Afdeling
AND ins_de.ins_deel_parent_key IS NULL
AND afd1.prs_afdeling_key(+) = fac.safe_to_number (ikd2.ins_kenmerkdeel_waarde)
AND afd2.prs_afdeling_key(+) = ins_ao.huurderkey
AND bm1.prs_afdeling_key(+) = afd1.prs_afdeling_key
AND bm2.prs_afdeling_key(+) = afd2.prs_afdeling_key
AND div1.prs_afdeling_key(+) = bm1.prs_afdeling_key1
AND div2.prs_afdeling_key(+) = bm2.prs_afdeling_key1
AND ins_ao.alg_ruimte_key = ins_de.ins_alg_ruimte_key
AND ins_sd.ins_srtdeel_key = ins_de.ins_srtdeel_key
AND ins_sg.ins_srtgroep_key = ins_sd.ins_srtgroep_key
AND ins_d.ins_discipline_key = ins_de.ins_discipline_key
AND ins_de.ins_discipline_key = 278) dg; -- ICT Hardware
-- Aantal PC's per divisie
CREATE OR REPLACE VIEW uwva_v_rap_pcs_divisie
AS
SELECT fclt_f_divisie, COUNT(*) aantal_pcs
FROM uwva_v_rap_pcs
GROUP BY fclt_f_divisie;
-- aantal PC's per kostenplaats, per ruimte UWVA#19172
/* Formatted on 2-12-2010 13:48:06 (QP5 v5.136.908.31019) */
CREATE OR REPLACE FORCE VIEW uwva_v_rap_pcs_kostenplaats
(
fclt_f_kostenplaats,
omschrijving,
fclt_f_locatie,
fclt_f_verdieping,
ruimte,
aantal_pcs,
fclt_f_budgethouder
)
AS
SELECT COALESCE (pckostenplaats, ruimtekostenplaats) fclt_f_kostenplaats,
COALESCE (pcomschrijving, ruimteomschrijving, '*' || COALESCE (pcafdeling, '*' || ruimteafdeling))
omschrijving,
alg_locatie_code fclt_f_locatie,
alg_verdieping_code fclt_f_verdieping,
dg.alg_plaatsaanduiding ruimte,
COUNT ( * ) aantal_pcs,
COALESCE (prsnaam1, prsnaam2) fclt_f_budgethouder
FROM (SELECT kpl1.prs_kostenplaats_nr pckostenplaats,
DECODE (kpl1.prs_kostenplaats_key, NULL, NULL, kpl1.prs_kostenplaats_omschrijving) pcomschrijving,
kpl2.prs_kostenplaats_nr ruimtekostenplaats,
DECODE (kpl2.prs_kostenplaats_key, NULL, NULL, kpl2.prs_kostenplaats_omschrijving)
ruimteomschrijving,
afd1.prs_afdeling_naam pcafdeling,
afd2.prs_afdeling_naam ruimteafdeling,
prs1.prs_perslid_naam_full prsnaam1,
prs2.prs_perslid_naam_full prsnaam2,
ins_ao.alg_plaatsaanduiding,
alg_locatie_code,
alg_verdieping_code
FROM ins_deel ins_de,
prs_afdeling afd1,
prs_afdeling afd2,
prs_kostenplaats kpl1,
prs_kostenplaats kpl2,
prs_v_perslid_fullnames prs1,
prs_v_perslid_fullnames prs2,
( SELECT alg_r.alg_ruimte_key,
alg_g.alg_gebouw_code
|| '-'
|| alg_v.alg_verdieping_code
|| '-'
|| alg_r.alg_ruimte_nr
|| ' ('
|| COALESCE (alg_r.alg_ruimte_omschrijving, '??')
|| ')'
alg_plaatsaanduiding,
alg_v.alg_verdieping_code,
alg_l.alg_locatie_code,
MAX (ra.prs_afdeling_key) huurderkey
FROM alg_ruimte alg_r,
alg_verdieping alg_v,
alg_gebouw alg_g,
alg_locatie alg_l,
prs_ruimteafdeling ra
WHERE alg_r.alg_verdieping_key = alg_v.alg_verdieping_key
AND alg_v.alg_gebouw_key = alg_g.alg_gebouw_key
AND ra.alg_ruimte_key(+) = alg_r.alg_ruimte_key
AND alg_g.alg_locatie_key = alg_l.alg_locatie_key
GROUP BY alg_r.alg_ruimte_key,
alg_g.alg_gebouw_code,
alg_v.alg_verdieping_code,
alg_r.alg_ruimte_nr,
alg_r.alg_ruimte_omschrijving,
alg_l.alg_locatie_code) ins_ao,
ins_srtdeel ins_sd,
ins_kenmerkdeel ikd,
ins_kenmerkdeel ikd2
WHERE ins_de.ins_deel_verwijder IS NULL
AND ikd.ins_deel_key(+) = ins_de.ins_deel_key
AND ikd.ins_kenmerk_key(+) = 27
AND ikd2.ins_deel_key(+) = ins_de.ins_deel_key
AND ikd2.ins_kenmerk_key(+) = 26
AND ins_de.ins_deel_parent_key IS NULL
AND afd1.prs_afdeling_key(+) = fac.safe_to_number (ikd2.ins_kenmerkdeel_waarde)
AND afd2.prs_afdeling_key(+) = ins_ao.huurderkey
AND ins_ao.alg_ruimte_key = ins_de.ins_alg_ruimte_key
AND ins_sd.ins_srtdeel_key = ins_de.ins_srtdeel_key
AND ins_de.ins_discipline_key = 278
AND afd1.prs_kostenplaats_key = kpl1.prs_kostenplaats_key(+)
AND afd2.prs_kostenplaats_key = kpl2.prs_kostenplaats_key(+)
AND prs1.prs_perslid_key(+) = kpl1.prs_perslid_key
AND prs2.prs_perslid_key(+) = kpl2.prs_perslid_key) dg
GROUP BY pckostenplaats,
ruimtekostenplaats,
pcomschrijving,
ruimteomschrijving,
pcafdeling,
ruimteafdeling,
prsnaam1,
prsnaam2,
alg_locatie_code,
alg_verdieping_code,
dg.alg_plaatsaanduiding;
-- Bevat CUST10-reminder naar LFM-er verantwoordelijk voor betreffende locatie
-- bij aanmaken/uitgeven specifieke opdracht op Intern:LFM.
-- Periodiciteit: elk uur (mbt. in het voorgaande uur aangemaakte opdrachten)!
/* Formatted on 8-4-2011 12:58:24 (QP5 v5.115.810.9015) */
CREATE OR REPLACE VIEW uwva_v_noti_lfm_reminder
(
code,
sender,
receiver,
text,
KEY,
par1,
par2,
xkey
)
AS
SELECT sn.fac_srtnotificatie_code,
NULL,
fac.safe_to_number (ok.alg_onrgoedkenmerk_waarde),
REPLACE (sn.fac_srtnotificatie_oms,
'##STDM##',
sm.mld_stdmelding_omschrijving),
o.mld_opdr_key,
sm.mld_stdmelding_omschrijving,
NULL,
NULL
FROM mld_opdr o,
mld_melding m,
alg_v_aanwezigonrgoedkenmerk ok,
mld_stdmelding sm,
fac_srtnotificatie sn
WHERE o.mld_statusopdr_key IN (5, 8) -- Uitgegeven/Geaccepteerd!
AND o.mld_uitvoerende_keys = 33020 -- Intern:LFM
AND TO_NUMBER(TO_CHAR (
fac.gettrackingdate ('ORDNEW', o.mld_opdr_key),
'YYYYMMDDHH24'
))
+ 1 >= TO_NUMBER (TO_CHAR (SYSDATE+1/1440, 'YYYYMMDDHH24'))
AND o.mld_melding_key = m.mld_melding_key
AND m.mld_stdmelding_key = sm.mld_stdmelding_key
AND m.mld_alg_locatie_key = ok.alg_onrgoed_key
AND ok.alg_onrgoed_niveau = 'L'
AND ok.alg_kenmerk_key = 1020 -- LFM
AND sn.fac_srtnotificatie_code = 'CUST10';
CREATE OR REPLACE PROCEDURE uwva_import_wp (p_import_key IN NUMBER)
AS
v_errormsg VARCHAR2 (1000) := '-';
oracle_err_num NUMBER;
oracle_err_mes VARCHAR2 (200);
BEGIN
-- Generieke import.
fac_import_ins (p_import_key);
EXCEPTION
WHEN OTHERS
THEN
oracle_err_num := SQLCODE;
oracle_err_mes := SUBSTR (SQLERRM, 1, 200);
v_errormsg := 'ORACLE (error ' || oracle_err_num || '/' || oracle_err_mes || ') ';
fac.imp_writelog (p_import_key, 'E', v_errormsg, 'Inleesproces WP afgebroken!');
END uwva_import_wp;
/
CREATE OR REPLACE PROCEDURE uwva_update_wp (p_import_key IN NUMBER)
AS
v_errormsg VARCHAR2 (1000) := '-';
oracle_err_num NUMBER;
oracle_err_mes VARCHAR2 (200);
BEGIN
-- Generieke import.
fac_update_ins (p_import_key);
-- Post-bewerkingstruc om WPs op de juiste coordinaten te krijgen.
UPDATE ins_deel d
SET (ins_deel_dwgx, ins_deel_dwgy) =
(SELECT SUBSTR (ins_kenmerkdeel_waarde, 1, INSTR (ins_kenmerkdeel_waarde, ';') - 1) x,
SUBSTR (ins_kenmerkdeel_waarde, INSTR (ins_kenmerkdeel_waarde, ';') + 1) y
FROM ins_kenmerkdeel kd, ins_srtdeel sd
WHERE kd.ins_kenmerk_key = 581 -- XY ( 561 in A)
AND INSTR (ins_kenmerkdeel_waarde, ';') > 0
AND kd.ins_deel_key = d.ins_deel_key
AND d.ins_srtdeel_key = sd.ins_srtdeel_key
AND sd.ins_srtgroep_key = 1238) -- Werkplekken (1239 in A)
WHERE d.ins_deel_key IN
(SELECT kd.ins_deel_key
FROM ins_kenmerkdeel kd, ins_srtdeel sd
WHERE kd.ins_kenmerk_key = 581 -- XY ( 561 in A)
AND INSTR (kd.ins_kenmerkdeel_waarde, ';') > 0
AND kd.ins_deel_key = d.ins_deel_key
AND d.ins_srtdeel_key = sd.ins_srtdeel_key
AND sd.ins_srtgroep_key = 1238);
UPDATE ins_deel d
SET ins_deel_dwgrotatie =
(SELECT MOD (ins_kenmerkdeel_waarde, 360)
FROM ins_kenmerkdeel kd, ins_srtdeel sd
WHERE kd.ins_kenmerk_key = 582 -- Rotatie ( 562 in A)
AND kd.ins_deel_key = d.ins_deel_key
AND d.ins_srtdeel_key = sd.ins_srtdeel_key
AND sd.ins_srtgroep_key = 1238) -- Werkplekken (1239 in A)
WHERE d.ins_deel_key IN
(SELECT kd.ins_deel_key
FROM ins_kenmerkdeel kd, ins_srtdeel sd
WHERE kd.ins_kenmerk_key = 582 -- Rotatie ( 562 in A)
AND kd.ins_deel_key = d.ins_deel_key
AND d.ins_srtdeel_key = sd.ins_srtdeel_key
AND sd.ins_srtgroep_key = 1238);
EXCEPTION
WHEN OTHERS
THEN
oracle_err_num := SQLCODE;
oracle_err_mes := SUBSTR (SQLERRM, 1, 200);
v_errormsg := 'ORACLE (error ' || oracle_err_num || '/' || oracle_err_mes || ') ';
fac.imp_writelog (p_import_key, 'E', v_errormsg, 'Updateproces WP afgebroken!');
END uwva_update_wp;
/
-- UWVA#66175: Optimalisatie beheer reserveerbare werkplekken.
-- UWVA#67971: Wijziging ter ondersteuning van 2 beheer-thema's op basis van
-- dezelfde view (1e maakt reserveerbaar in RES-catalogus=475 en
-- 2e maakt reserveerbaar in RES-catalogus=484)!
CREATE OR REPLACE VIEW UWVA_V_THEMA_MAKE_DEEL_RESERV (INS_DEEL_KEY, WAARDE)
AS
SELECT ins_deel_key, --DECODE (rd.res_deel_key, NULL, 0, 1) waarde
DECODE (rd.res_deel_key, NULL, 0, DECODE (rd.res_discipline_key, 475, 1, 484, 2, 3)) waarde
FROM ins_deel d,
(SELECT * FROM res_deel WHERE res_deel_verwijder IS NULL) rd
WHERE d.ins_deel_key = rd.res_ins_deel_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