IMPU#70628 -- Implementatie Facilitor bij Impuls Kinderopvang - diverse zaken
svn path=/Customer/trunk/; revision=55013
This commit is contained in:
235
IMPU/impu.sql
235
IMPU/impu.sql
@@ -23,6 +23,120 @@ SET DEFINE OFF
|
||||
|
||||
------ payload begin ------
|
||||
|
||||
CREATE OR REPLACE FUNCTION impu_get_kenmerkwaarde (
|
||||
p_kenmerk_type VARCHAR2,
|
||||
p_kenmerkdomein_key NUMBER,
|
||||
p_kenmerk_waarde VARCHAR2)
|
||||
RETURN VARCHAR2
|
||||
AS
|
||||
v_result VARCHAR2(4000);
|
||||
BEGIN
|
||||
IF p_kenmerk_type = 'R' OR p_kenmerk_type = 'S' THEN
|
||||
v_result := fac.getdomeinwaarde (p_kenmerkdomein_key,
|
||||
p_kenmerk_waarde);
|
||||
ELSIF p_kenmerk_type = 'D' THEN
|
||||
v_result := TO_CHAR (fac.safe_to_date (p_kenmerk_waarde, 'dd-mm-yyyy'), 'yyyy-mm-dd');
|
||||
ELSE
|
||||
v_result := p_kenmerk_waarde;
|
||||
END IF;
|
||||
return v_result;
|
||||
END;
|
||||
/
|
||||
|
||||
CREATE OR REPLACE FUNCTION impu_get_kenmerk (p_module IN VARCHAR2,
|
||||
p_kenmerk_key IN NUMBER,
|
||||
p_link_key IN NUMBER)
|
||||
RETURN VARCHAR2
|
||||
AS
|
||||
v_kenmerk_type mld_srtkenmerk.mld_srtkenmerk_kenmerktype%TYPE;
|
||||
v_kenmerk_waarde mld_kenmerkmelding.mld_kenmerkmelding_waarde%TYPE;
|
||||
v_kenmerkdomein_key fac_kenmerkdomein.fac_kenmerkdomein_key%TYPE;
|
||||
v_kenmerk_niveau ins_kenmerk.ins_kenmerk_niveau%TYPE;
|
||||
BEGIN
|
||||
CASE p_module
|
||||
WHEN 'MLD'
|
||||
THEN
|
||||
SELECT mld_srtkenmerk_kenmerktype,
|
||||
sk.fac_kenmerkdomein_key,
|
||||
km.mld_kenmerkmelding_waarde
|
||||
INTO v_kenmerk_type,
|
||||
v_kenmerkdomein_key,
|
||||
v_kenmerk_waarde
|
||||
FROM mld_v_aanwezigkenmerkmelding km,
|
||||
mld_kenmerk k,
|
||||
mld_srtkenmerk sk
|
||||
WHERE km.mld_melding_key = p_link_key
|
||||
AND km.mld_kenmerk_key = p_kenmerk_key
|
||||
AND km.mld_kenmerk_key = k.mld_kenmerk_key
|
||||
AND k.mld_srtkenmerk_key = sk.mld_srtkenmerk_key;
|
||||
WHEN 'CNT'
|
||||
THEN
|
||||
SELECT cnt_srtkenmerk_kenmerktype,
|
||||
sk.fac_kenmerkdomein_key,
|
||||
kc.cnt_kenmerkcontract_waarde
|
||||
INTO v_kenmerk_type,
|
||||
v_kenmerkdomein_key,
|
||||
v_kenmerk_waarde
|
||||
FROM cnt_kenmerkcontract kc,
|
||||
cnt_kenmerk k,
|
||||
cnt_srtkenmerk sk
|
||||
WHERE kc.cnt_contract_key = p_link_key
|
||||
AND kc.cnt_kenmerk_key = p_kenmerk_key
|
||||
AND kc.cnt_kenmerk_key = k.cnt_kenmerk_key
|
||||
AND k.cnt_srtkenmerk_key = sk.cnt_srtkenmerk_key;
|
||||
WHEN 'ALG'
|
||||
THEN
|
||||
SELECT alg_kenmerk_kenmerktype,
|
||||
k.fac_kenmerkdomein_key,
|
||||
aogk.alg_onrgoedkenmerk_waarde
|
||||
INTO v_kenmerk_type,
|
||||
v_kenmerkdomein_key,
|
||||
v_kenmerk_waarde
|
||||
FROM alg_onrgoedkenmerk aogk, alg_kenmerk k
|
||||
WHERE aogk.alg_onrgoed_key = p_link_key
|
||||
AND aogk.alg_kenmerk_key = p_kenmerk_key
|
||||
AND aogk.alg_kenmerk_key = k.alg_kenmerk_key;
|
||||
WHEN 'INS'
|
||||
THEN
|
||||
SELECT k.ins_kenmerk_niveau
|
||||
INTO v_kenmerk_niveau
|
||||
FROM ins_kenmerk k
|
||||
WHERE ins_kenmerk_key = p_kenmerk_key;
|
||||
|
||||
IF v_kenmerk_niveau = 'C' THEN
|
||||
SELECT sk.ins_srtkenmerk_kenmerktype,
|
||||
sk.fac_kenmerkdomein_key,
|
||||
ikds.ins_kmdeelsrtcontr_waarde
|
||||
INTO v_kenmerk_type,
|
||||
v_kenmerkdomein_key,
|
||||
v_kenmerk_waarde
|
||||
FROM ins_kmdeelsrtcontr ikds, ins_kenmerk k, ins_srtkenmerk sk
|
||||
WHERE ikds.ins_deelsrtcontrole_key = p_link_key
|
||||
AND ikds.ins_kmdeelsrtcontr_verwijder IS NULL
|
||||
AND ikds.ins_kenmerk_key = p_kenmerk_key
|
||||
AND ikds.ins_kenmerk_key = k.ins_kenmerk_key
|
||||
AND k.ins_srtkenmerk_key = sk.ins_srtkenmerk_key;
|
||||
ELSE
|
||||
SELECT sk.ins_srtkenmerk_kenmerktype,
|
||||
sk.fac_kenmerkdomein_key,
|
||||
ikd.ins_kenmerkdeel_waarde
|
||||
INTO v_kenmerk_type,
|
||||
v_kenmerkdomein_key,
|
||||
v_kenmerk_waarde
|
||||
FROM ins_kenmerkdeel ikd, ins_kenmerk k, ins_srtkenmerk sk
|
||||
WHERE ikd.ins_deel_key = p_link_key
|
||||
AND ikd.ins_kenmerkdeel_verwijder IS NULL
|
||||
AND ikd.ins_kenmerk_key = p_kenmerk_key
|
||||
AND ikd.ins_kenmerk_key = k.ins_kenmerk_key
|
||||
AND k.ins_srtkenmerk_key = sk.ins_srtkenmerk_key;
|
||||
END IF;
|
||||
END CASE;
|
||||
|
||||
RETURN impu_get_kenmerkwaarde (v_kenmerk_type,
|
||||
v_kenmerkdomein_key,
|
||||
v_kenmerk_waarde);
|
||||
END;
|
||||
/
|
||||
|
||||
|
||||
CREATE OR REPLACE PROCEDURE impu_import_perslid (p_import_key IN NUMBER)
|
||||
@@ -57,18 +171,7 @@ IS
|
||||
SELECT fac_imp_file_index, prs_kenmerk4
|
||||
FROM fac_imp_perslid
|
||||
WHERE fac_import_key = p_import_key ;
|
||||
|
||||
CURSOR c_mob
|
||||
IS
|
||||
SELECT fac_imp_file_index, i.prs_perslid_oslogin, p.prs_perslid_key, v.ins_deel_key, SUBSTR(v.nummer_object,1,15) nummer_object, p.prs_perslid_mobiel, p.prs_perslid_telefoonnr
|
||||
FROM fac_imp_perslid i, prs_perslid p, sinn_v_telefoonnr_klantobject v
|
||||
WHERE fac_import_key = p_import_key
|
||||
AND i.prs_perslid_oslogin = p.prs_perslid_oslogin
|
||||
AND p.prs_perslid_verwijder IS NULL
|
||||
AND p.prs_perslid_key = v.prs_perslid_key (+)
|
||||
AND (v.ins_deel_key IS NULL OR v.ins_deel_key IN (select min(ins_deel_key) from sinn_v_telefoonnr_klantobject where prs_perslid_key = p.prs_perslid_key))
|
||||
;
|
||||
|
||||
|
||||
|
||||
BEGIN
|
||||
-- Het aangeleverde bestand heeft de gegevens komma gescheiden ipv ;
|
||||
@@ -421,25 +524,29 @@ AS
|
||||
ORDER BY p.prs_perslid_naam
|
||||
;
|
||||
|
||||
/*
|
||||
-------------------------------
|
||||
--- RAPPORTAGES ---------------
|
||||
-------------------------------
|
||||
|
||||
-- Rapportage Gebouwbeheer
|
||||
CREATE OR REPLACE VIEW IMPU_V_ALG_ONROERENDGOED
|
||||
(
|
||||
KOEPEL,
|
||||
WIJK,
|
||||
LOCATIE,
|
||||
LOCATIE_CODE,
|
||||
LOCATIE_KEY,
|
||||
GEBOUW,
|
||||
-- gegevens uit gebouwkaart
|
||||
-- gegevens uit locatiekaart
|
||||
GEBRUIKSRECHT,
|
||||
EIGENAAR_VERHUURDER_1,
|
||||
EIGENAAR_VERHUURDER_2,
|
||||
EIGENAAR_VERHUURDER_3,
|
||||
DIENST_AFVAL,
|
||||
DIENST_SCHOONMAAK,
|
||||
DIENST_TELEFONIE,
|
||||
EIGENAARSCHAP_TOELICHTING,
|
||||
DOV,
|
||||
SLG,
|
||||
KDV,
|
||||
VO,
|
||||
BSO,
|
||||
DOV_LRK,
|
||||
SLG_LRK,
|
||||
KDV_LRK,
|
||||
VO_LRK,
|
||||
BSO_LRK,
|
||||
--
|
||||
VERDIEPING,
|
||||
@@ -447,29 +554,25 @@ CREATE OR REPLACE VIEW IMPU_V_ALG_ONROERENDGOED
|
||||
RUIMTE_OMSCHRIJVING,
|
||||
RUIMTEFUNCTIE,
|
||||
BVO_M2,
|
||||
GEBRUIKSRECHT_RUIMTE,
|
||||
VLOERSOORT,
|
||||
M2_BSO,
|
||||
M2_SLG,
|
||||
M2_DOV,
|
||||
M2_OVERIG
|
||||
VLOERSOORT
|
||||
)
|
||||
AS
|
||||
SELECT d.alg_district_omschrijving,
|
||||
l.alg_locatie_omschrijving,
|
||||
l.alg_locatie_code,
|
||||
l.alg_locatie_key,
|
||||
v.alg_gebouw_code || ' - ' || v.alg_gebouw_naam
|
||||
gebouw,
|
||||
km.gebruiksrecht,
|
||||
km.eigenaar_verhuurder_1,
|
||||
km.eigenaar_verhuurder_2,
|
||||
km.eigenaar_verhuurder_3,
|
||||
km.dienst_afval,
|
||||
km.dienst_schoonmaak,
|
||||
km.dienst_telefonie,
|
||||
km.eigenaarschap_toelichting,
|
||||
km.dov,
|
||||
km.slg,
|
||||
km.kdv,
|
||||
km.vo,
|
||||
km.bso,
|
||||
km.dov_lrk,
|
||||
km.slg_lrk,
|
||||
km.kdv_lrk,
|
||||
km.vo_lrk,
|
||||
km.bso_lrk,
|
||||
v.alg_verdieping_omschrijving || ' - ' || v.alg_verdieping_code
|
||||
verdieping,
|
||||
@@ -477,62 +580,34 @@ AS
|
||||
v.alg_ruimte_omschrijving,
|
||||
sr.alg_srtruimte_omschrijving,
|
||||
r.alg_ruimte_bruto_vloeropp,
|
||||
sinn_get_kenmerk('ALG',1106, r.alg_ruimte_key) gebruiksrecht_ruimte,
|
||||
sinn_get_kenmerk('ALG',1006, r.alg_ruimte_key) vloersoort,
|
||||
mm.m2_bso,
|
||||
mm.m2_slg,
|
||||
mm.m2_dov,
|
||||
mm.m2_overig
|
||||
impu_get_kenmerk('ALG',1000, r.alg_ruimte_key) vloersoort
|
||||
FROM alg_v_onroerendgoed_gegevens v,
|
||||
alg_locatie l,
|
||||
alg_district d,
|
||||
(SELECT g.alg_gebouw_key,
|
||||
sinn_get_kenmerk('ALG',1011, g.alg_gebouw_key) gebruiksrecht,
|
||||
sinn_get_kenmerk('ALG',1103, g.alg_gebouw_key) eigenaar_verhuurder_1,
|
||||
sinn_get_kenmerk('ALG',1104, g.alg_gebouw_key) eigenaar_verhuurder_2,
|
||||
sinn_get_kenmerk('ALG',1105, g.alg_gebouw_key) eigenaar_verhuurder_3,
|
||||
sinn_get_kenmerk('ALG',1012, g.alg_gebouw_key) eigenaarschap_toelichting,
|
||||
sinn_get_kenmerk('ALG',1040, g.alg_gebouw_key) DOV,
|
||||
sinn_get_kenmerk('ALG',1041, g.alg_gebouw_key) SLG,
|
||||
sinn_get_kenmerk('ALG',1042, g.alg_gebouw_key) BSO,
|
||||
sinn_get_kenmerk('ALG',1035, g.alg_gebouw_key) DOV_LRK,
|
||||
sinn_get_kenmerk('ALG',1120, g.alg_gebouw_key) SLG_LRK,
|
||||
sinn_get_kenmerk('ALG',1121, g.alg_gebouw_key) BSO_LRK
|
||||
FROM alg_gebouw g ) km,
|
||||
(SELECT l.alg_locatie_key,
|
||||
impu_get_kenmerk('ALG',1022, l.alg_locatie_key) gebruiksrecht,
|
||||
impu_get_kenmerk('ALG',1024, l.alg_locatie_key) dienst_afval,
|
||||
impu_get_kenmerk('ALG',1025, l.alg_locatie_key) dienst_schoonmaak,
|
||||
impu_get_kenmerk('ALG',1026, l.alg_locatie_key) dienst_telefonie,
|
||||
impu_get_kenmerk('ALG',1083, l.alg_locatie_key) eigenaarschap_toelichting,
|
||||
impu_get_kenmerk('ALG',1002, l.alg_locatie_key) KDV,
|
||||
impu_get_kenmerk('ALG',1003, l.alg_locatie_key) VO,
|
||||
impu_get_kenmerk('ALG',1004, l.alg_locatie_key) BSO,
|
||||
impu_get_kenmerk('ALG',1080, l.alg_locatie_key) KDV_LRK,
|
||||
impu_get_kenmerk('ALG',1081, l.alg_locatie_key) VO_LRK,
|
||||
impu_get_kenmerk('ALG',1082, l.alg_locatie_key) BSO_LRK
|
||||
FROM alg_locatie l ) km,
|
||||
alg_ruimte r,
|
||||
alg_srtruimte sr,
|
||||
(SELECT m.alg_ruimte_key, sum(m2_dov) m2_dov, sum(m2_slg) m2_slg, sum(m2_bso) m2_bso, sum(m2_overig) m2_overig
|
||||
FROM
|
||||
(SELECT r.alg_ruimte_key, r.alg_ruimte_bruto_vloeropp, a.prs_afdeling_omschrijving, ra.prs_ruimteafdeling_bezetting,
|
||||
CASE WHEN SUBSTR(a.prs_afdeling_omschrijving,1,3) = 'DOV' THEN ROUND(((ra.prs_ruimteafdeling_bezetting/100) * r.alg_ruimte_bruto_vloeropp),2)
|
||||
ELSE NULL
|
||||
END m2_dov,
|
||||
CASE WHEN SUBSTR(a.prs_afdeling_omschrijving,1,3) = 'SLG' THEN ROUND(((ra.prs_ruimteafdeling_bezetting/100) * r.alg_ruimte_bruto_vloeropp),2)
|
||||
ELSE NULL
|
||||
END m2_slg,
|
||||
CASE WHEN SUBSTR(a.prs_afdeling_omschrijving,1,3) = 'BSO' THEN ROUND(((ra.prs_ruimteafdeling_bezetting/100) * r.alg_ruimte_bruto_vloeropp),2)
|
||||
ELSE NULL
|
||||
END m2_bso,
|
||||
CASE WHEN SUBSTR(a.prs_afdeling_omschrijving,1,3) NOT IN ('DOV', 'SLG', 'BSO') THEN ROUND(((ra.prs_ruimteafdeling_bezetting/100) * r.alg_ruimte_bruto_vloeropp),2)
|
||||
ELSE NULL
|
||||
END m2_overig
|
||||
FROM alg_ruimte r, prs_ruimteafdeling ra, prs_afdeling a
|
||||
WHERE r.alg_ruimte_key = ra.alg_ruimte_key
|
||||
AND ra.prs_afdeling_key = a.prs_afdeling_key
|
||||
AND ra.prs_ruimteafdeling_verwijder IS NULL
|
||||
AND (r.alg_ruimte_bruto_vloeropp IS NOT NULL OR r.alg_ruimte_bruto_vloeropp > 0 )
|
||||
) m
|
||||
GROUP BY m.alg_ruimte_key ) mm
|
||||
alg_srtruimte sr
|
||||
WHERE v.alg_locatie_key = l.alg_locatie_key
|
||||
AND l.alg_district_key = d.alg_district_key
|
||||
AND v.alg_type IN ('R')
|
||||
AND v.alg_gebouw_key = km.alg_gebouw_key
|
||||
AND v.alg_locatie_key = km.alg_locatie_key
|
||||
AND v.alg_ruimte_key = r.alg_ruimte_key AND r.alg_ruimte_verwijder IS NULL
|
||||
AND r.alg_srtruimte_key = sr.alg_srtruimte_key (+)
|
||||
AND r.alg_ruimte_key = mm.alg_ruimte_key (+)
|
||||
ORDER BY d.alg_district_omschrijving, l.alg_locatie_code, v.alg_gebouw_code, v.alg_ruimte_nr
|
||||
;
|
||||
*/
|
||||
|
||||
|
||||
------ payload end ------
|
||||
|
||||
|
||||
Reference in New Issue
Block a user