svn path=/Customer/trunk/; revision=12552
This commit is contained in:
217
AKZA/AKZA.SQL
Normal file
217
AKZA/AKZA.SQL
Normal file
@@ -0,0 +1,217 @@
|
||||
--
|
||||
-- AKZO.SQL
|
||||
--
|
||||
-- Facilitor 3.0 inrichting voor Akzo Nobel Arnhem
|
||||
-- (c) 1999 Dijkoraad IT bv
|
||||
--
|
||||
-- Last update 20-08-1999/BIV
|
||||
--
|
||||
SPOOL AKZO.LST
|
||||
|
||||
-- Rapportages
|
||||
CREATE OR REPLACE VIEW AKZ_GEBRUIKER_PER_RUIMTE AS
|
||||
select W.alg_gebouw_omschrijving Gebouw,
|
||||
W.alg_verdieping_volgnr Bouwlaag,
|
||||
W.alg_ruimte_nr Ruimte,
|
||||
A.prs_afdeling_naam Afdeling,
|
||||
W.prs_afd_perslid_naam Gebruiker,
|
||||
W.prs_werkplek_opp Oppervlakte,
|
||||
P.prs_perslid_telefoonnr Telefoon
|
||||
from prs_v_perslidwerkplek_gegevens W,prs_v_aanwezigafdeling A, prs_v_aanwezigperslid P
|
||||
where P.prs_afdeling_key=A.prs_afdeling_key
|
||||
and W.prs_perslid_key=P.prs_perslid_key;
|
||||
|
||||
|
||||
INSERT INTO FAC_USRRAP(FAC_USRRAP_OMSCHRIJVING,FAC_USRRAP_VIEW_NAME, FAC_USRRAP_IN_HUIDIGE_LOCATIE) VALUES
|
||||
('Ruimte:Afdeling', 'AKZ_GEBRUIKER_PER_RUIMTE',0);
|
||||
|
||||
-- De totalen aan verhuurbare ruimte(Opp) per CompanyCode,Afdeling,Soort
|
||||
CREATE OR REPLACE PACKAGE akz AS
|
||||
FUNCTION akz_f_pct_gemeensch(GebouwKey IN NUMBER) RETURN NUMBER;
|
||||
PRAGMA RESTRICT_REFERENCES (akz_f_pct_gemeensch,WNDS, WNPS);
|
||||
END akz;
|
||||
/
|
||||
|
||||
CREATE OR REPLACE PACKAGE BODY akz AS
|
||||
FUNCTION akz_f_pct_gemeensch (GebouwKey IN NUMBER) RETURN NUMBER IS
|
||||
opp_verhuurbaar NUMBER(10,2);
|
||||
opp_gemeenschappelijk NUMBER(10,2);
|
||||
BEGIN
|
||||
-- Levert het percentage van de ruimte dat van gebouw met de gegeven key gemeenschappelijk is
|
||||
-- zijnde de opp_gemeenschappelijk/opp_netto. Hiermee kan de bruto oppervlakte van een
|
||||
-- netto oppervlakte worden berekend met bruto=netto+ pct*netto = (1+pct)*netto
|
||||
SELECT NVL(SUM(alg_ruimte_bruto_vloeropp),1) -- minstens 1 tegen het delen door nul
|
||||
INTO opp_verhuurbaar
|
||||
FROM alg_v_aanwezigruimte R, alg_srtruimte SR, alg_verdieping V
|
||||
WHERE V.alg_gebouw_key = GebouwKey
|
||||
AND V.alg_verdieping_key=R.alg_verdieping_key
|
||||
AND R.alg_srtruimte_key=SR.alg_srtruimte_key
|
||||
AND SR.prs_verhuurbaar is not null
|
||||
AND SR.prs_bevat_werkplek is not null;
|
||||
SELECT NVL(SUM(alg_ruimte_bruto_vloeropp),0)
|
||||
INTO opp_gemeenschappelijk
|
||||
FROM alg_v_aanwezigruimte R, alg_srtruimte SR, alg_verdieping V
|
||||
WHERE V.alg_gebouw_key = GebouwKey
|
||||
AND V.alg_verdieping_key=R.alg_verdieping_key
|
||||
AND R.alg_srtruimte_key=SR.alg_srtruimte_key
|
||||
AND SR.prs_verhuurbaar is not null
|
||||
AND SR.prs_bevat_werkplek is null;
|
||||
RETURN opp_gemeenschappelijk/opp_verhuurbaar;
|
||||
END akz_f_pct_gemeensch;
|
||||
END akz;
|
||||
/
|
||||
|
||||
CREATE OR REPLACE VIEW AKZ_HUUR_VERHUURBAAR AS
|
||||
select A.prs_afdeling_eenheid CompanyCode,
|
||||
A.prs_afdeling_kostenplaats KostenPlaats,
|
||||
A.prs_afdeling_naam Afdeling,
|
||||
W.alg_gebouw_omschrijving Gebouw,
|
||||
SR.alg_srtruimte_omschrijving Ruimtesoort,
|
||||
to_number(to_char(SUM(NVL(W.prs_werkplek_opp,0)) ,'9999999D9')) Netto ,
|
||||
to_number(to_char(SUM(NVL(W.prs_werkplek_opp,0)*(1+akz.akz_f_pct_gemeensch(W.alg_gebouw_key))), '9999999D9')) Bruto
|
||||
from prs_v_perslidwerkplek_gegevens W, prs_v_aanwezigafdeling A, prs_v_aanwezigperslid P,
|
||||
alg_ruimte R, alg_srtruimte SR
|
||||
where W.prs_perslid_key=P.prs_perslid_key
|
||||
AND P.prs_afdeling_key=A.prs_afdeling_key
|
||||
AND W.prs_perslid_key IS NOT NULL
|
||||
and R.alg_ruimte_key=W.alg_ruimte_key
|
||||
and R.alg_srtruimte_key=SR.alg_srtruimte_key
|
||||
and SR.prs_verhuurbaar is not null
|
||||
and SR.prs_bevat_werkplek is not null
|
||||
group by A.prs_afdeling_eenheid,A.prs_afdeling_kostenplaats,A.prs_afdeling_naam,
|
||||
W.alg_gebouw_omschrijving, SR.alg_srtruimte_omschrijving
|
||||
union
|
||||
select A.prs_afdeling_eenheid CompanyCode,
|
||||
A.prs_afdeling_kostenplaats KostenPlaats,
|
||||
A.prs_afdeling_naam Afdeling,
|
||||
W.alg_gebouw_omschrijving Gebouw,
|
||||
SR.alg_srtruimte_omschrijving Ruimtesoort,
|
||||
to_number(to_char(SUM(NVL(W.prs_werkplek_opp,0)) ,'9999999D9')) Netto ,
|
||||
to_number(to_char(SUM(NVL(W.prs_werkplek_opp,0)*(1+akz.akz_f_pct_gemeensch(W.alg_gebouw_key))), '9999999D9')) Bruto
|
||||
from prs_v_perslidwerkplek_gegevens W, prs_v_aanwezigafdeling A, alg_ruimte R, alg_srtruimte SR
|
||||
where W.prs_afdeling_key=A.prs_afdeling_key
|
||||
AND W.prs_afdeling_key IS NOT NULL
|
||||
and R.alg_ruimte_key=W.alg_ruimte_key
|
||||
and R.alg_srtruimte_key=SR.alg_srtruimte_key
|
||||
and SR.prs_verhuurbaar is not null
|
||||
and SR.prs_bevat_werkplek is not null
|
||||
group by A.prs_afdeling_eenheid,A.prs_afdeling_kostenplaats,A.prs_afdeling_naam,
|
||||
W.alg_gebouw_omschrijving, SR.alg_srtruimte_omschrijving;
|
||||
|
||||
|
||||
INSERT INTO FAC_USRRAP(FAC_USRRAP_OMSCHRIJVING,FAC_USRRAP_VIEW_NAME, FAC_USRRAP_IN_HUIDIGE_LOCATIE) VALUES
|
||||
('Huurrapport-verhuurbaar', 'AKZ_HUUR_VERHUURBAAR',0);
|
||||
|
||||
|
||||
|
||||
--CREATE OR REPLACE VIEW AKZ_HUUR_GEMEENSCHAPPELIJK AS
|
||||
--select 'Nog niet gerealiseerd' Helaas from dual;
|
||||
|
||||
--INSERT INTO FAC_USRRAP(FAC_USRRAP_OMSCHRIJVING,FAC_USRRAP_VIEW_NAME, FAC_USRRAP_IN_HUIDIGE_LOCATIE) VALUES
|
||||
--('Huurrapport-gemeenschappelijk', 'AKZ_HUUR_GEMEENSCHAPPELIJK',0);
|
||||
|
||||
|
||||
CREATE OR REPLACE VIEW AKZ_SRTRUIMTE_VERHUURBAAR AS
|
||||
select alg_srtruimte_omschrijving Ruimtesoort
|
||||
from alg_srtruimte
|
||||
where prs_verhuurbaar is not null
|
||||
and prs_bevat_werkplek is not null;
|
||||
|
||||
INSERT INTO FAC_USRRAP(FAC_USRRAP_OMSCHRIJVING,FAC_USRRAP_VIEW_NAME, FAC_USRRAP_IN_HUIDIGE_LOCATIE) VALUES
|
||||
('Ruimtesoort-verhuurbaar', 'AKZ_SRTRUIMTE_VERHUURBAAR',0);
|
||||
|
||||
CREATE OR REPLACE VIEW AKZ_SRTRUIMTE_GEMEENSCHAP AS
|
||||
select alg_srtruimte_omschrijving Ruimtesoort
|
||||
from alg_srtruimte
|
||||
where prs_verhuurbaar is not null
|
||||
and prs_bevat_werkplek is null;
|
||||
|
||||
INSERT INTO FAC_USRRAP(FAC_USRRAP_OMSCHRIJVING,FAC_USRRAP_VIEW_NAME, FAC_USRRAP_IN_HUIDIGE_LOCATIE) VALUES
|
||||
('Ruimtesoort-gemeenschappelijk', 'AKZ_SRTRUIMTE_GEMEENSCHAP',0);
|
||||
|
||||
CREATE OR REPLACE VIEW AKZ_SRTRUIMTE_NIETVERH AS
|
||||
select alg_srtruimte_omschrijving Ruimtesoort
|
||||
from alg_srtruimte
|
||||
where prs_verhuurbaar is null
|
||||
and prs_bevat_werkplek is null;
|
||||
|
||||
INSERT INTO FAC_USRRAP(FAC_USRRAP_OMSCHRIJVING,FAC_USRRAP_VIEW_NAME, FAC_USRRAP_IN_HUIDIGE_LOCATIE) VALUES
|
||||
('Ruimtesoort-niet verhuurbaar', 'AKZ_SRTRUIMTE_NIETVERH',0);
|
||||
|
||||
|
||||
|
||||
|
||||
CREATE OR REPLACE VIEW AKZ_VERHRUIMTE_PER_GEBOUW AS
|
||||
select W.alg_gebouw_omschrijving Gebouw,
|
||||
SUM(NVL(W.prs_werkplek_opp,0)) Oppervlakte
|
||||
from prs_v_perslidwerkplek_gegevens W, alg_ruimte R, alg_srtruimte SR
|
||||
where R.alg_ruimte_key=W.alg_ruimte_key
|
||||
and R.alg_srtruimte_key=SR.alg_srtruimte_key
|
||||
and SR.prs_verhuurbaar is not null
|
||||
and SR.prs_bevat_werkplek is not null
|
||||
group by W.alg_gebouw_omschrijving;
|
||||
|
||||
INSERT INTO FAC_USRRAP(FAC_USRRAP_OMSCHRIJVING,FAC_USRRAP_VIEW_NAME, FAC_USRRAP_IN_HUIDIGE_LOCATIE) VALUES
|
||||
('Gebouw:Verhuurbaar', 'AKZ_VERHRUIMTE_PER_GEBOUW',0);
|
||||
|
||||
CREATE OR REPLACE VIEW AKZ_NIETVERHRUIMTE_PER_GEBOUW AS
|
||||
select W.alg_gebouw_omschrijving Gebouw,
|
||||
SUM(NVL(W.prs_werkplek_opp,0)) Oppervlakte
|
||||
from prs_v_perslidwerkplek_gegevens W, alg_ruimte R, alg_srtruimte SR
|
||||
where R.alg_ruimte_key=W.alg_ruimte_key
|
||||
and R.alg_srtruimte_key=SR.alg_srtruimte_key
|
||||
and SR.prs_verhuurbaar is not null
|
||||
and SR.prs_bevat_werkplek is not null
|
||||
group by W.alg_gebouw_omschrijving;
|
||||
|
||||
INSERT INTO FAC_USRRAP(FAC_USRRAP_OMSCHRIJVING,FAC_USRRAP_VIEW_NAME, FAC_USRRAP_IN_HUIDIGE_LOCATIE) VALUES
|
||||
('Gebouw:Niet verhuurbaar', 'AKZ_NIETVERHRUIMTE_PER_GEBOUW',0);
|
||||
|
||||
|
||||
CREATE OR REPLACE VIEW AKZ_HUURKOSTENPLAATS AS
|
||||
SELECT G.alg_gebouw_omschrijving GEBOUW, -- Werkplekken gekoppeld aan personen
|
||||
V.alg_verdieping_volgnr BOUWLAAG,
|
||||
R.alg_ruimte_nr RUIMTE,
|
||||
SR.alg_srtruimte_omschrijving RUIMTESOORT,
|
||||
R.alg_ruimte_bruto_vloeropp OPPERVLAKTE,
|
||||
AF.prs_afdeling_naam AFDELING,
|
||||
RPAD(AF.prs_afdeling_kostenplaats,15) KOSTENPLAATS
|
||||
FROM alg_v_aanweziggebouw G, alg_v_aanwezigverdieping V,
|
||||
alg_v_aanwezigruimte R, alg_v_aanwezigsrtruimte SR,
|
||||
prs_v_aanwezigwerkplek WP, prs_v_aanwezigafdeling AF,
|
||||
prs_v_aanwezigperslidwerkplek PLW, prs_v_aanwezigperslid PL
|
||||
WHERE V.alg_gebouw_key = G.alg_gebouw_key
|
||||
AND R.alg_verdieping_key = V.alg_verdieping_key
|
||||
AND R.alg_srtruimte_key = SR.alg_srtruimte_key
|
||||
AND R.alg_ruimte_key = WP.prs_alg_ruimte_key
|
||||
AND WP.prs_werkplek_key = PLW.prs_werkplek_key(+)
|
||||
AND PLW.prs_perslid_key = PL.prs_perslid_key(+)
|
||||
AND PL.prs_afdeling_key = AF.prs_afdeling_key(+)
|
||||
UNION
|
||||
SELECT G.alg_gebouw_omschrijving GEBOUW, -- Werkplekken gekoppeld aan een afdeling
|
||||
V.alg_verdieping_volgnr BOUWLAAG,
|
||||
R.alg_ruimte_nr RUIMTE,
|
||||
SR.alg_srtruimte_omschrijving RUIMTESOORT,
|
||||
R.alg_ruimte_bruto_vloeropp OPPERVLAKTE,
|
||||
AF.prs_afdeling_naam AFDELING,
|
||||
RPAD(AF.prs_afdeling_kostenplaats,15) KOSTENPLAATS
|
||||
FROM alg_v_aanweziggebouw G, alg_v_aanwezigverdieping V,
|
||||
alg_v_aanwezigruimte R, alg_v_aanwezigsrtruimte SR,
|
||||
prs_v_aanwezigwerkplek WP, prs_v_aanwezigafdeling AF,
|
||||
prs_perslidwerkplek PLW
|
||||
WHERE V.alg_gebouw_key = G.alg_gebouw_key
|
||||
AND R.alg_verdieping_key = V.alg_verdieping_key
|
||||
AND R.alg_srtruimte_key = SR.alg_srtruimte_key
|
||||
AND R.alg_ruimte_key = WP.prs_alg_ruimte_key
|
||||
AND WP.prs_werkplek_key = PLW.prs_werkplek_key
|
||||
AND PLW.prs_afdeling_key = AF.prs_afdeling_key
|
||||
GROUP BY G.alg_gebouw_omschrijving,V.alg_verdieping_volgnr,R.alg_ruimte_nr, SR.alg_srtruimte_omschrijving,
|
||||
R.alg_ruimte_bruto_vloeropp, AF.prs_afdeling_naam, AF.prs_afdeling_kostenplaats;
|
||||
|
||||
|
||||
INSERT INTO FAC_USRRAP(FAC_USRRAP_OMSCHRIJVING,FAC_USRRAP_VIEW_NAME, FAC_USRRAP_IN_HUIDIGE_LOCATIE) VALUES
|
||||
('Verhuurd - kostenplaats', 'AKZ_HUURKOSTENPLAATS',0);
|
||||
|
||||
|
||||
COMMIT;
|
||||
SPOOL OFF
|
||||
Reference in New Issue
Block a user