Files
Customer/CONN/conn.sql
Arthur Egberink 369f44de4a CONN#270
svn path=/Customer/trunk/; revision=12650
2004-10-25 12:49:58 +00:00

1615 lines
66 KiB
SQL

-- *
-- * FAC_V_WEB_AUTORISATIE view
-- *
CREATE OR REPLACE VIEW FAC_V_WEB_AUTORISATIE
(BEDRIJF, FCLT_F_BUSINESS_UNIT, FCLT_F_NAAM, FCLT_F_USERID, FCLT_F_GROEP)
AS
SELECT B.prs_bedrijf_naam as BEDRIJF
, AD.prs_afdeling_omschrijving as FCLT_F_BUSINESS_UNIT
, PF.prs_perslid_naam_full as FCLT_F_NAAM
, P.PRS_PERSLID_OSLOGIN as FCLT_F_USERID
, GR.fac_groep_upper as FCLT_F_GROEP
FROM PRS_V_AANWEZIGPERSLID P
, PRS_AFDELING AD
, PRS_V_AFDELING_BOOM AB
, PRS_BEDRIJF B
, FAC_GEBRUIKERSGROEP GG
, FAC_GROEP GR
, PRS_V_PERSLID_FULLNAMES PF
WHERE GG.fac_groep_key=GR.fac_groep_key
AND P.prs_perslid_key=GG.prs_perslid_key
AND P.prs_afdeling_key = AB.prs_afdeling_key
AND AB.prs_bedrijf_key = B.prs_bedrijf_key
AND AB.prs_afdeling_key1 = AD.prs_afdeling_key
AND PF.prs_perslid_key = p.prs_perslid_key;
--delete from fac_usrrap;
CREATE OR REPLACE VIEW CONN_RUIMTEGEG ( COMPLEX,
GEBOUW, ALG_GEBOUW_KEY, VERDIEPING, ALG_RUIMTE_KEY,
RUIMTE, OMSCHRIJVING, RUIMTESOORT, TARIEFTYPE,
HUURDER, HUURDERNR, CONTRACTNR, GEINDEXEERDEHUUR,
BUDGETCODE, BUSINESSUNIT, GETEKENDOPPERVLAKTE, COMMOPPERVLAKTE,
VERDIEPINGNR ) AS SELECT
alg_locatie_code Complex,
alg_gebouw_omschrijving gebouw, ALG_GEBOUW_KEY,
alg_verdieping_upper Verdieping,
alg_ruimte_key,
alg_ruimte_nr Ruimte,
E.Omschrijving Omschrijving,
e.Ruimtesoort Ruimtesoort,
e.TariefType Tarieftype,
E.Huurder Huurder,
E.Huurdernr HuurderNr,
E.NieuwContractnr ContractNr,
E.GEINDEXEERDEHUUR,
e.Budgetcode BudgetCode,
e.Businessunit Businessunit,
TO_NUMBER(TO_CHAR(FAC.SAFE_TO_NUMBER(alg_ruimte_bruto_vloeropp) ,'99999999D')) GetekendOppervlakte,
TO_NUMBER(TO_CHAR(FAC.SAFE_TO_NUMBER(E.GebruikteOpp) ,'99999999D')) CommOppervlakte,
alg_verdieping_code Verdiepingnr
FROM
alg_v_ruimte_gegevens VG,
CONN_IMPORT_ETABEL e
WHERE
E.complex (+)= vg.alg_locatie_code AND
E.ruimte (+)= vg.alg_ruimte_nr;
CREATE OR REPLACE VIEW CONN_CAD_01 ( COMPLEX,
RUIMTE, ALG_RUIMTE_KEY, BUNIT, AANTAL
) AS SELECT
complex, ruimte, alg_ruimte_key, MIN(businessunit) bunit, COUNT(DISTINCT businessunit) aantal
FROM
CONN_RUIMTEGEG
GROUP BY complex, ruimte, alg_ruimte_key
HAVING COUNT(DISTINCT businessunit) = 1
UNION
SELECT
complex, ruimte, alg_ruimte_key, 'Meerdere' bunit, COUNT(DISTINCT businessunit) aantal
FROM
CONN_RUIMTEGEG
GROUP BY complex, ruimte, alg_ruimte_key, 'Meerdere'
HAVING COUNT(DISTINCT businessunit) > 1
CREATE OR REPLACE VIEW CONN_CAD_02 ( COMPLEX,
RUIMTE, ALG_RUIMTE_KEY, HUURDER, AANTAL
) AS SELECT
complex, ruimte, alg_ruimte_key, MIN(huurder) bunit, COUNT(DISTINCT huurder) aantal
FROM
CONN_RUIMTEGEG
GROUP BY complex, ruimte, alg_ruimte_key
HAVING COUNT(DISTINCT businessunit) = 1
UNION
SELECT
complex, ruimte, alg_ruimte_key, 'Meerdere' huurder, COUNT(DISTINCT huurder) aantal
FROM
CONN_RUIMTEGEG
GROUP BY complex, ruimte, alg_ruimte_key, 'Meerdere'
HAVING COUNT(DISTINCT huurder) > 1
--insert into fac_usrrap (fac_usrrap_omschrijving, fac_usrrap_view_name,fac_usrrap_info)
--values('PPI Overzicht','CONN_V_PPI_OVERZICHT','Overzicht van PPIs per maand (= JJMM).');
-- * Overzicht *
CREATE OR REPLACE VIEW CONN_V_PPI1
(Aanvraagnummer,FCLT_F_Maand, Besteller,Afdeling,Artikelnummer,Omschrijving,Aantal,Prijs) AS SELECT
B.bes_bestelling_key,
TO_CHAR(B.bes_bestelling_datum, 'YYMM'),
P.prs_perslid_naam || ' ' || NVL(P.prs_perslid_voorletters, '') || ' ' || NVL(P.prs_perslid_voornaam, ''),
A.prs_afdeling_naam,
S.ins_srtdeel_nr,
S.ins_srtdeel_omschrijving,
TO_CHAR(I.bes_bestelling_item_aantal, '99999990.00'),
TO_CHAR(S.ins_srtdeel_prijs, '99999990.00')
FROM BES_BESTELLING B, BES_BESTELLING_ITEM I, PRS_PERSLID P, PRS_AFDELING A,
INS_SRTDEEL S, INS_SRTGROEP G, INS_TAB_DISCIPLINE D
WHERE B.BES_BESTELLING_KEY = I.BES_BESTELLING_KEY
AND B.prs_perslid_key = P.prs_perslid_key
AND B.prs_afdeling_key = A.prs_afdeling_key
AND I.ins_srtdeel_key = S.ins_srtdeel_key
AND S.ins_srtgroep_key = G.ins_srtgroep_key
AND G.ins_discipline_key = D.ins_discipline_key
AND D.ins_discipline_key = 21;
CREATE OR REPLACE VIEW CONN_V_PPI1_TOT
(FCLT_F_Maand,Aantal,Totaalbedrag) AS
SELECT
FCLT_F_Maand
,SUM(TO_NUMBER(Aantal, '999999D99', 'nls_numeric_characters = ''.,'''))
,SUM(TO_NUMBER(Aantal, '999999D99', 'nls_numeric_characters = ''.,''') * TO_NUMBER(prijs, '999999D99', 'nls_numeric_characters = ''.,'''))
FROM CONN_V_PPI1
GROUP BY FCLT_F_Maand;
--insert into fac_usrrap (fac_usrrap_omschrijving, fac_usrrap_view_name,fac_usrrap_info)
--values('PPI1','CONN_V_PPI1','Bestelling artikelen Luxe catalogus per maand (= JJMM).');
CREATE OR REPLACE VIEW CONN_V_PPI2_ALL
(Opdrachtnummer,FCLT_F_Maand,Besteller,Afdeling, Totaalbedrag, bes_bestelopdr_datum, bes_bestelopdr_leverdatum) AS
SELECT
BO.bes_bestelopdr_key,
TO_CHAR(BO.bes_bestelopdr_datum, 'YYMM'),
PP.prs_perslid_naam || ' ' || NVL(PP.prs_perslid_voorletters, '') || ' ' || NVL(PP.prs_perslid_voornaam, ''),
AD.prs_afdeling_naam,
SD.ins_srtdeel_prijs * BI.bes_bestelling_item_aantal,
BO.BES_BESTELOPDR_DATUM,
BO.bes_bestelopdr_leverdatum
FROM BES_BESTELLING BB, BES_BESTELLING_ITEM BI, BES_BESTELOPDR BO, INS_SRTDEEL SD,
PRS_PERSLID PP, PRS_AFDELING AD
WHERE BB.bes_bestelling_key = BI.bes_bestelling_key
AND BO.bes_bestelopdr_key = BI.bes_bestelopdr_key
AND SD.ins_srtdeel_key = BI.ins_srtdeel_key
AND BO.prs_perslid_key = PP.prs_perslid_key
AND BB.prs_afdeling_key = AD.prs_afdeling_key;
CREATE OR REPLACE VIEW CONN_V_PPI2_SUBSET
(Opdrachtnummer,FCLT_F_Maand,Besteller,Afdeling,Totaalbedrag) AS
SELECT
Opdrachtnummer,
FCLT_F_Maand,
Besteller,
Afdeling,
Totaalbedrag
FROM CONN_V_PPI2_ALL
WHERE (
(BES_BESTELOPDR_LEVERDATUM > mld_p_mld_datumtijd.DatumTijdPlusUitvoerTijd(BES_BESTELOPDR_DATUM, 4,'DAGEN'))
OR
(BES_BESTELOPDR_LEVERDATUM IS NULL AND
sysdate > mld_p_mld_datumtijd.DatumTijdPlusUitvoerTijd(BES_BESTELOPDR_DATUM, 4,'DAGEN')
)
);
CREATE OR REPLACE VIEW CONN_V_PPI2
(Opdrachtnummer,FCLT_F_Maand,Besteller,Afdeling,Totaalbedrag) AS
SELECT
Opdrachtnummer,
FCLT_F_Maand,
Besteller,
Afdeling,
TO_CHAR(SUM(Totaalbedrag),'99999990.00')
FROM CONN_V_PPI2_SUBSET
GROUP BY Opdrachtnummer,FCLT_F_Maand,Besteller,Afdeling;
CREATE OR REPLACE VIEW CONN_V_PPI2_TOT AS
SELECT FCLT_F_Maand, SUM(Aantal) Aantal, SUM(Totaal) Totaal
FROM
(
SELECT FCLT_F_Maand, COUNT(Opdrachtnummer) Aantal, 0 Totaal
FROM (SELECT FCLT_F_Maand, Opdrachtnummer
FROM CONN_V_PPI2 A
GROUP BY FCLT_F_Maand, Opdrachtnummer)
GROUP BY FCLT_F_Maand
UNION
SELECT FCLT_F_Maand, 0, COUNT(Opdrachtnummer)
FROM (SELECT FCLT_F_Maand, Opdrachtnummer
FROM CONN_V_PPI2_ALL B
GROUP BY FCLT_F_Maand, Opdrachtnummer)
GROUP BY FCLT_F_Maand
)
GROUP BY FCLT_F_Maand;
--insert into fac_usrrap (fac_usrrap_omschrijving, fac_usrrap_view_name,fac_usrrap_info)
--values('PPI2','CONN_V_PPI2','Juistheid "afmelding" ontvangsten per maand (= JJMM).');
CREATE OR REPLACE VIEW CONN_V_PPI3_ALL
(Aanvraagnummer,FCLT_F_Maand, Besteller,Afdeling, Fiatteur, Status,Aantal,Prijs,Totaalbedrag,
bes_bestelling_datum,bes_bestelling_afgewezen,bes_bestelling_geaccepteerd) AS
SELECT
B.bes_bestelling_key,
TO_CHAR(B.bes_bestelling_datum, 'YYMM'),
P.prs_perslid_naam || ' ' || NVL(P.prs_perslid_voorletters, '') || ' ' || NVL(P.prs_perslid_voornaam, ''),
A.prs_afdeling_naam,
P2.prs_perslid_naam || ' ' || NVL(P2.prs_perslid_voorletters, '') || ' ' || NVL(P2.prs_perslid_voornaam, ''),
BS.bes_bestellingstatuses_omschr,
I.bes_bestelling_item_aantal,
S.ins_srtdeel_prijs,
I.bes_bestelling_item_aantal * S.ins_srtdeel_prijs,
B.bes_bestelling_datum,
B.bes_bestelling_afgewezen,
B.bes_bestelling_geaccepteerd
FROM BES_BESTELLING B, BES_BESTELLING_ITEM I, PRS_PERSLID P, PRS_AFDELING A, PRS_PERSLID P2,
INS_SRTDEEL S, BES_BESTELLINGSTATUSES BS
WHERE B.BES_BESTELLING_KEY = I.BES_BESTELLING_KEY
AND B.prs_perslid_key = P.prs_perslid_key
AND B.prs_afdeling_key = A.prs_afdeling_key
AND I.ins_srtdeel_key = S.ins_srtdeel_key
AND B.bes_bestelling_status = BS.bes_bestellingstatuses_key
AND B.bes_bestelling_fiat_user IS NOT NULL -- Dus alleen "fiatteringsbestellingen"
AND B.bes_bestelling_fiat_user = P2.prs_perslid_key;
CREATE OR REPLACE VIEW CONN_V_PPI3_SUBSET
(Aanvraagnummer,FCLT_F_Maand, Besteller,Afdeling, Fiatteur, Status,Aantal,Prijs,Totaalbedrag) AS
SELECT
Aanvraagnummer,
FCLT_F_Maand,
Besteller,
Afdeling,
Fiatteur,
Status,
Aantal,
Prijs,
Totaalbedrag
FROM CONN_V_PPI3_ALL
WHERE (
(mld_p_mld_datumtijd.DatumTijdPlusUitvoerTijd(BES_BESTELLING_DATUM, 3,'DAGEN') < bes_bestelling_afgewezen)
OR
(mld_p_mld_datumtijd.DatumTijdPlusUitvoerTijd(BES_BESTELLING_DATUM, 3,'DAGEN') < bes_bestelling_geaccepteerd)
OR
(bes_bestelling_afgewezen IS NULL AND bes_bestelling_geaccepteerd IS NULL AND
mld_p_mld_datumtijd.DatumTijdPlusUitvoerTijd(BES_BESTELLING_DATUM, 3,'DAGEN') < SYSDATE)
);
CREATE OR REPLACE VIEW CONN_V_PPI3
(Aanvraagnummer,FCLT_F_Maand, Besteller,Afdeling, Fiatteur, Status,Totaalbedrag) AS
SELECT
Aanvraagnummer,
FCLT_F_Maand,
Besteller,
Afdeling,
Fiatteur,
Status,
TO_CHAR(SUM(Totaalbedrag),'99999990.00')
FROM CONN_V_PPI3_SUBSET
GROUP BY Aanvraagnummer, FCLT_F_Maand, Besteller, Afdeling, Fiatteur, Status;
CREATE OR REPLACE VIEW CONN_V_PPI3_TOT AS
SELECT fclt_f_maand, SUM(totaal) Totaal,SUM(totaal)-SUM(optijd) Telaat
FROM
(
SELECT FCLT_F_Maand, COUNT(*) Totaal, 0 Optijd
FROM (SELECT FCLT_F_Maand, aanvraagnummer
FROM CONN_V_PPI3_ALL A
GROUP BY FCLT_F_Maand, aanvraagnummer)
GROUP BY FCLT_F_Maand
UNION
SELECT FCLT_F_Maand, 0, COUNT(*)
FROM (SELECT FCLT_F_Maand, aanvraagnummer
FROM CONN_V_PPI3_SUBSET A
GROUP BY FCLT_F_Maand, aanvraagnummer)
GROUP BY FCLT_F_Maand
)
GROUP BY FCLT_F_Maand;
--insert into fac_usrrap (fac_usrrap_omschrijving, fac_usrrap_view_name,fac_usrrap_info)
--values('PPI3','CONN_V_PPI3','Tijd tussen aanvraag en fiattering per maand (= JJMM).');
CREATE OR REPLACE VIEW CONN_V_PPI4_
(Aanvraagnummer,FCLT_F_Maand, Besteller,Afdeling,Aantal,Totaalprijs) AS SELECT
B.bes_bestelling_key,
TO_CHAR(B.bes_bestelling_datum, 'YYMM'),
P.prs_perslid_naam || ' ' || NVL(P.prs_perslid_voorletters, '') || ' ' || NVL(P.prs_perslid_voornaam, ''),
A.prs_afdeling_naam,
I.bes_bestelling_item_aantal,
I.bes_bestelling_item_aantal * S.ins_srtdeel_prijs
FROM BES_BESTELLING B, BES_BESTELLING_ITEM I, PRS_PERSLID P, PRS_AFDELING A,
INS_SRTDEEL S
WHERE B.BES_BESTELLING_KEY = I.BES_BESTELLING_KEY
AND B.prs_perslid_key = P.prs_perslid_key
AND P.prs_afdeling_key = A.prs_afdeling_key
AND I.ins_srtdeel_key = S.ins_srtdeel_key;
-- * Overzicht *
CREATE OR REPLACE VIEW CONN_V_PPI4
(Aanvraagnummer,FCLT_F_Maand, Besteller,Afdeling,Aantal,Totaalprijs) AS SELECT
Aanvraagnummer,
FCLT_F_Maand,
Besteller,
Afdeling,
TO_CHAR(SUM(Aantal),'9999999999'),
TO_CHAR(SUM(Totaalprijs),'99999990.00')
FROM CONN_V_PPI4_
GROUP BY Aanvraagnummer,FCLT_F_Maand,Besteller,Afdeling
HAVING SUM(Totaalprijs) < 50;
CREATE OR REPLACE VIEW CONN_V_PPI4_TOT AS
SELECT fclt_f_maand, SUM(Aantal) Aantal, SUM(Totaal) Totaal
FROM
(
SELECT FCLT_F_Maand, COUNT(*) Aantal, 0 Totaal
FROM (SELECT FCLT_F_Maand, aanvraagnummer
FROM CONN_V_PPI4 A
GROUP BY FCLT_F_Maand, aanvraagnummer)
GROUP BY FCLT_F_Maand
UNION
SELECT FCLT_F_Maand, 0, COUNT(*)
FROM (SELECT FCLT_F_Maand, aanvraagnummer
FROM CONN_V_PPI4_ A
GROUP BY FCLT_F_Maand, aanvraagnummer)
GROUP BY FCLT_F_Maand
)
GROUP BY FCLT_F_Maand;
--insert into fac_usrrap (fac_usrrap_omschrijving, fac_usrrap_view_name,fac_usrrap_info)
--values('PPI4','CONN_V_PPI4','Kleine bestellingen per maand (= JJMM).');
CREATE OR REPLACE VIEW CONN_V_PPI5_ALL
(Opdrachtnummer,FCLT_F_Maand,Opmerking) AS
SELECT
BO.bes_bestelopdr_key,
TO_CHAR(BO.bes_bestelopdr_datum, 'YYMM'),
BO.BES_BESTELOPDR_DELIVERY_OPMERK
FROM BES_BESTELOPDR BO;
CREATE OR REPLACE VIEW CONN_V_PPI5
(Opdrachtnummer,FCLT_F_Maand,Opmerking) AS
SELECT
BO.bes_bestelopdr_key,
TO_CHAR(BO.bes_bestelopdr_datum, 'YYMM'),
BO.BES_BESTELOPDR_DELIVERY_OPMERK
FROM BES_BESTELOPDR BO
WHERE BES_BESTELOPDR_DELIVERY_OPMERK is not null;
CREATE OR REPLACE VIEW CONN_V_PPI5_TOT AS
SELECT fclt_f_maand, SUM(Aantal) Aantal, SUM(Totaal) Totaal
FROM
(
SELECT FCLT_F_Maand, COUNT(*) Aantal, 0 Totaal
FROM (SELECT FCLT_F_Maand, opdrachtnummer
FROM CONN_V_PPI5 A
GROUP BY FCLT_F_Maand, opdrachtnummer)
GROUP BY FCLT_F_Maand
UNION
SELECT FCLT_F_Maand, 0, COUNT(*)
FROM (SELECT FCLT_F_Maand, opdrachtnummer
FROM CONN_V_PPI5_ALL A
GROUP BY FCLT_F_Maand, opdrachtnummer)
GROUP BY FCLT_F_Maand
)
GROUP BY FCLT_F_Maand;
--insert into fac_usrrap (fac_usrrap_omschrijving, fac_usrrap_view_name,fac_usrrap_info)
--values('PPI5','CONN_V_PPI5','Niet tevreden ontvangers per maand (= JJMM).');
CREATE OR REPLACE VIEW CONN_V_PPI_OVERZICHT (PPI,FCLT_F_Maand, Aantal, Totaal) AS
SELECT 'PPI1 - Bestelling artikelen Luxe catalogus per maand',FCLT_F_Maand,TO_CHAR(Aantal),TO_CHAR(Totaalbedrag,'99999990.00')
FROM CONN_V_PPI1_TOT
UNION
SELECT 'PPI2 - Juistheid "afmelding" ontvangsten per maand',FCLT_F_Maand,TO_CHAR(Aantal),TO_CHAR(Totaal)
FROM CONN_V_PPI2_TOT
UNION
SELECT 'PPI3 - Tijd tussen aanvraag en fiattering per maand',FCLT_F_Maand,TO_CHAR(Telaat),TO_CHAR(Totaal)
FROM CONN_V_PPI3_TOT
UNION
SELECT 'PPI4 - Kleine bestellingen per maand',FCLT_F_Maand,TO_CHAR(Aantal),TO_CHAR(Totaal)
FROM CONN_V_PPI4_TOT
UNION
SELECT 'PPI5 - Niet tevreden ontvangers per maand',FCLT_F_Maand,TO_CHAR(Aantal),TO_CHAR(Totaal)
FROM CONN_V_PPI5_TOT;
create or replace view conn_fiattering AS
SELECT p.prs_perslid_naam||DECODE(p.prs_perslid_voorletters,null,'',', '||p.prs_perslid_voorletters)||DECODE(p.prs_perslid_voornaam,null,'',' ('||p.prs_perslid_voornaam||')') Besteller,
RTRIM(K2.prs_kenmerklink_waarde) Limiet1,
F1.prs_perslid_naam||DECODE(F1.prs_perslid_voorletters,null,'',', '||F1.prs_perslid_voorletters)||DECODE(F1.prs_perslid_voornaam,null,'',' ('||F1.prs_perslid_voornaam||')') Fiatteur1,
RTRIM(K4.prs_kenmerklink_waarde) Limiet2,
F2.prs_perslid_naam||DECODE(F2.prs_perslid_voorletters,null,'',', '||F2.prs_perslid_voorletters)||DECODE(F2.prs_perslid_voornaam,null,'',' ('||F2.prs_perslid_voornaam||')') Fiatteur2,
RTRIM(K5.prs_kenmerklink_waarde) Limiet3
FROM prs_v_aanwezigperslid P, prs_kenmerklink K1, prs_kenmerklink K2, prs_v_aanwezigperslid F1, prs_kenmerklink K3, prs_kenmerklink K4, prs_kenmerklink K5, prs_v_aanwezigperslid F2
WHERE K1.prs_kenmerk_key(+)=1000 -- Fiatteur
AND K1.prs_link_key(+)=P.prs_perslid_key
AND K2.prs_kenmerk_key(+)=1001 -- Limiet
AND K2.prs_link_key(+)=P.prs_perslid_key
AND F1.prs_perslid_key(+) = K1.prs_kenmerklink_waarde
AND K3.prs_kenmerk_key(+)=1000 -- Fiatteur
AND K3.prs_link_key(+)=F1.prs_perslid_key
AND F2.prs_perslid_key(+) = K3.prs_kenmerklink_waarde
AND K4.prs_kenmerk_key(+)=1001 -- Limiet
AND K4.prs_link_key(+)=F1.prs_perslid_key
AND K5.prs_kenmerk_key(+)=1001 -- Limiet
AND K5.prs_link_key(+)=K3.prs_kenmerklink_waarde
ORDER BY 1
--insert into fac_usrrap (fac_usrrap_omschrijving, fac_usrrap_view_name,fac_usrrap_info)
--values('Overzicht fiattering','conn_fiattering','Overzicht van de medewerkers en bestellimiet en bijbehorende fiatteur');
--CREATE TABLE FIP_CATALOG
--(
-- ins_discipline_key NUMBER(10) NOT NULL REFERENCES INS_TAB_DISCIPLINE,
-- prs_bedrijf_key NUMBER(10) NOT NULL REFERENCES PRS_BEDRIJF,
-- fip_catalog_datum DATE,
-- fip_catalog_id VARCHAR2(32),
-- ins_srtdeel_nr VARCHAR2(32),
-- ins_srtgroep_omschrijving VARCHAR2(60),
-- ins_srtdeel_omschrijving VARCHAR2(60),
-- ins_srtdeel_prijs NUMBER(8,2),
-- ins_srtdeel_eenheid VARCHAR2(15),
-- ins_srtdeel_image VARCHAR2(255),
-- ins_srtdeel_veelvoud NUMBER(6),
-- ins_srtdeel_btw NUMBER(3),
-- ins_srtdeel_vervaldatum DATE
--);
--
--
--CREATE TABLE FIP_ERROR (
-- RECNO NUMBER (10),
-- REC_TABLE VARCHAR2 (32),
-- DESCRIPT VARCHAR2 (1024)
--);
--
--CREATE INDEX FIP_I_FIP_CATALOG1 ON
-- FIP_CATALOG(INS_DISCIPLINE_KEY);
--
--CREATE INDEX FIP_I_FIP_CATALOG2 ON
-- FIP_CATALOG(FIP_CATALOG_ID);
--
--CREATE INDEX FIP_I_FIP_CATALOG3 ON
-- FIP_CATALOG(INS_SRTDEEL_NR);
--
--CREATE INDEX INS_I_INS_SRTDEEL4 ON
-- INS_SRTDEEL(INS_SRTDEEL_NR);
--
CREATE OR REPLACE VIEW CONN_FIATTERING
(BESTELLER, LIMIET1, FIATTEUR1, LIMIET2, FIATTEUR2,
LIMIET3)
AS
SELECT p.prs_perslid_naam||DECODE(p.prs_perslid_voorletters,null,'',', '||p.prs_perslid_voorletters)||DECODE(p.prs_perslid_voornaam,null,'',' ('||p.prs_perslid_voornaam||')') Besteller,
RTRIM(K2.prs_kenmerklink_waarde) Limiet1,
F1.prs_perslid_naam||DECODE(F1.prs_perslid_voorletters,null,'',', '||F1.prs_perslid_voorletters)||DECODE(F1.prs_perslid_voornaam,null,'',' ('||F1.prs_perslid_voornaam||')') Fiatteur1,
RTRIM(K4.prs_kenmerklink_waarde) Limiet2,
F2.prs_perslid_naam||DECODE(F2.prs_perslid_voorletters,null,'',', '||F2.prs_perslid_voorletters)||DECODE(F2.prs_perslid_voornaam,null,'',' ('||F2.prs_perslid_voornaam||')') Fiatteur2,
RTRIM(K5.prs_kenmerklink_waarde) Limiet3
FROM prs_v_aanwezigperslid P, prs_kenmerklink K1, prs_kenmerklink K2, prs_v_aanwezigperslid F1, prs_kenmerklink K3, prs_kenmerklink K4, prs_kenmerklink K5, prs_v_aanwezigperslid F2
WHERE K1.prs_kenmerk_key(+)=1000 -- Fiatteur
AND K1.prs_link_key(+)=P.prs_perslid_key
AND K2.prs_kenmerk_key(+)=1001 -- Limiet
AND K2.prs_link_key(+)=P.prs_perslid_key
AND F1.prs_perslid_key(+) = K1.prs_kenmerklink_waarde
AND K3.prs_kenmerk_key(+)=1000 -- Fiatteur
AND K3.prs_link_key(+)=F1.prs_perslid_key
AND F2.prs_perslid_key(+) = K3.prs_kenmerklink_waarde
AND K4.prs_kenmerk_key(+)=1001 -- Limiet
AND K4.prs_link_key(+)=F1.prs_perslid_key
AND K5.prs_kenmerk_key(+)=1001 -- Limiet
AND K5.prs_link_key(+)=K3.prs_kenmerklink_waarde
ORDER BY 1;
CREATE OR REPLACE VIEW CONN_MI_RAPPORT_VEST_MAN
(NR, FCLT_F_MAAND, NAAM, FCLT_F_BUSINESS_UNIT, FCLT_F_AFDELING,
KOSTENPLAATS, AANTAL, FCLT_F_CATALOGUS, PRIJS, FCLT_3D_AFDELING_KEY)
AS
SELECT
TO_CHAR(b.bes_bestelling_key) c1,
TO_CHAR(bes_bestelling_datum, 'YYMM') C3,
prs_perslid_naam||DECODE(prs_perslid_voorletters,NULL,'',', '||prs_perslid_voorletters) c6,
bu.prs_afdeling_omschrijving c5,
fu.prs_afdeling_naam || '/' || a.prs_afdeling_omschrijving c7 ,
b.BES_BESTELLING_ORDERNR kp,
SUM( bi.bes_bestelling_item_aantal) c9,
d.INS_DISCIPLINE_OMSCHRIJVING d1,
SUM( bi.bes_bestelling_item_aantal * pr.PRIJS) c10,
fu.prs_afdeling_key
FROM
BES_BESTELLING_ITEM bi,
INS_SRTDEEL srt,
BES_BESTELLING b,
BES_BESTELLINGSTATUSES s,
PRS_PERSLID p,
PRS_AFDELING a,
PRS_AFDELING bu,
PRS_V_AFDELING_BOOM bo,
PRS_V_AFDELING_FULLNAMES fu,
INS_SRTGROEP g,
INS_TAB_DISCIPLINE d,
BES_ITEM_PRIJS pr
WHERE
b.bes_bestelling_status = s.BES_BESTELLINGSTATUSES_KEY AND
bi.INS_SRTDEEL_key = srt.INS_SRTDEEL_key AND
bi.BES_bestelling_item_key = pr.bes_bestelling_item_key AND
bi.BES_bestelling_KEY = b.BES_bestelling_KEY AND
p.prs_perslid_key = b.prs_perslid_key AND
bo.prs_afdeling_key(+) = a.prs_afdeling_key AND
fu.prs_afdeling_key = a.prs_afdeling_key AND
bu.prs_afdeling_key = bo.prs_afdeling_key1 AND
b.prs_afdeling_key = a.prs_afdeling_key AND
srt.INS_SRTGROEP_KEY = g.INS_SRTGROEP_KEY AND
g.INS_DISCIPLINE_KEY = d.INS_DISCIPLINE_KEY AND
(b.bes_bestelling_status = 6 OR b.bes_bestelling_status = 7) AND
b.BES_BESTELLING_ORDERNR LIKE '%'
GROUP BY
b.bes_bestelling_key,
TO_CHAR(bes_bestelling_datum, 'YYMM'),
prs_perslid_naam||DECODE(prs_perslid_voorletters,NULL,'',', '||prs_perslid_voorletters),
bu.PRS_AFDELING_omschrijving,
fu.prs_afdeling_naam || '/' || a.prs_afdeling_omschrijving,
d.INS_DISCIPLINE_OMSCHRIJVING,
b.BES_BESTELLING_ORDERNR,
fu.prs_afdeling_key;
CREATE OR REPLACE VIEW CONN_RUIMTEGEG
(COMPLEX, GEBOUW, ALG_GEBOUW_KEY, VERDIEPING, ALG_RUIMTE_KEY,
RUIMTE, OMSCHRIJVING, RUIMTESOORT, TARIEFTYPE, HUURDER,
HUURDERNR, CONTRACTNR, GEINDEXEERDEHUUR, BUDGETCODE, BUSINESSUNIT,
GETEKENDOPPERVLAKTE, COMMOPPERVLAKTE, VERDIEPINGNR, INHUUR, UITBEHEER)
AS
SELECT
ALLE_RUIMTES.complex Complex,
ALLE_RUIMTES.gebouwcode gebouw, ALG_GEBOUW_KEY,
ALLE_RUIMTES.verdcode Verdieping,
alg_ruimte_key,
ALLE_RUIMTES.ruimte Ruimte,
E.Omschrijving Omschrijving,
e.Ruimtesoort Ruimtesoort,
e.TariefType Tarieftype,
E.Huurder Huurder,
E.Huurdernr HuurderNr,
E.NieuwContractnr ContractNr,
E.GEINDEXEERDEHUUR,
e.Budgetcode BudgetCode,
e.Businessunit Businessunit,
TO_NUMBER(TO_CHAR(FAC.SAFE_TO_NUMBER(alg_ruimte_bruto_vloeropp) ,'99999999D')) GetekendOppervlakte,
TO_NUMBER(TO_CHAR(FAC.SAFE_TO_NUMBER(E.GebruikteOpp) ,'99999999D')) CommOppervlakte,
alg_verdieping_code Verdiepingnr,
DECODE (NVL(inh.alg_onrgoedkenmerk_waarde,''), 130, 'Nee', 129, 'Ja'),
--inh.alg_onrgoedkenmerk_waarde,
uit.alg_onrgoedkenmerk_waarde
FROM
(SELECT E.complex, E.RUIMTE, E.GEBOUWCODE, E.VERDCODE FROM CONN_IMPORT_ETABEL E
UNION SELECT vg.alg_locatie_code, vg.alg_ruimte_nr, vg.alg_gebouw_upper, vg.alg_verdieping_upper FROM alg_v_ruimte_gegevens VG) ALLE_RUIMTES,
alg_v_ruimte_gegevens VG,
CONN_IMPORT_ETABEL e,
ALG_V_AANWEZIGONRGOEDKENMERK uit, -- uitbeheer datum locatieniveau
ALG_V_AANWEZIGONRGOEDKENMERK inh -- inhuur locatieniveau
WHERE
E.complex (+)= ALLE_RUIMTES.complex AND
E.ruimte (+)= ALLE_RUIMTES.ruimte AND
vg.alg_locatie_code (+)=ALLE_RUIMTES.complex AND
vg.alg_ruimte_nr (+)= ALLE_RUIMTES.ruimte AND
vg.alg_locatie_key = uit.alg_onrgoed_key(+) AND
uit.alg_kenmerk_key(+) = '22' AND --uit beheer datum locatieniveau
vg.alg_locatie_key = inh.alg_onrgoed_key(+) AND
inh.alg_kenmerk_key(+) = '10' --inhuur locatieniveau;
CREATE OR REPLACE VIEW CONN_CAD_01
(COMPLEX, RUIMTE, ALG_RUIMTE_KEY, BUNIT, AANTAL)
AS
SELECT
complex, ruimte, alg_ruimte_key, MIN(businessunit) bunit, COUNT(DISTINCT businessunit) aantal
FROM
CONN_RUIMTEGEG
GROUP BY complex, ruimte, alg_ruimte_key
HAVING COUNT(DISTINCT businessunit) = 1
UNION
SELECT
complex, ruimte, alg_ruimte_key, 'Meerdere' bunit, COUNT(DISTINCT businessunit) aantal
FROM
CONN_RUIMTEGEG
GROUP BY complex, ruimte, alg_ruimte_key, 'Meerdere'
HAVING COUNT(DISTINCT businessunit) > 1;
CREATE OR REPLACE VIEW CONN_CAD_02
(COMPLEX, RUIMTE, ALG_RUIMTE_KEY, HUURDER, AANTAL)
AS
SELECT
complex, ruimte, alg_ruimte_key, MIN(huurder) bunit, COUNT(DISTINCT huurder) aantal
FROM
CONN_RUIMTEGEG
GROUP BY complex, ruimte, alg_ruimte_key
HAVING COUNT(DISTINCT businessunit) = 1
UNION
SELECT
complex, ruimte, alg_ruimte_key, 'Meerdere' huurder, COUNT(DISTINCT huurder) aantal
FROM
CONN_RUIMTEGEG
GROUP BY complex, ruimte, alg_ruimte_key, 'Meerdere'
HAVING COUNT(DISTINCT huurder) > 1;
CREATE OR REPLACE VIEW CONN_V_PPI1
(AANVRAAGNUMMER, FCLT_F_MAAND, BESTELLER, AFDELING, ARTIKELNUMMER,
OMSCHRIJVING, AANTAL, PRIJS, FCLT_3D_AFDELING_KEY)
AS
SELECT
B.bes_bestelling_key,
TO_CHAR(B.bes_bestelling_datum, 'YYMM'),
P.prs_perslid_naam || ' ' || NVL(P.prs_perslid_voorletters, '') || ' ' || NVL(P.prs_perslid_voornaam, ''),
A.prs_afdeling_naam,
S.ins_srtdeel_nr,
S.ins_srtdeel_omschrijving,
TO_CHAR(I.bes_bestelling_item_aantal, '99999990'),
TO_CHAR(PR.prijs, '99999990.00'),
A.PRS_AFDELING_KEY
FROM BES_BESTELLING B, BES_BESTELLING_ITEM I, PRS_PERSLID P, PRS_AFDELING A,
INS_SRTDEEL S, INS_SRTGROEP G, INS_TAB_DISCIPLINE D, BES_ITEM_PRIJS pr
WHERE B.BES_BESTELLING_KEY = I.BES_BESTELLING_KEY
AND I.bes_bestelling_item_key = PR.bes_bestelling_item_key
AND B.prs_perslid_key = P.prs_perslid_key
AND B.prs_afdeling_key = A.prs_afdeling_key
AND I.ins_srtdeel_key = S.ins_srtdeel_key
AND S.ins_srtgroep_key = G.ins_srtgroep_key
AND G.ins_discipline_key = D.ins_discipline_key
AND D.ins_discipline_key = 21;
CREATE OR REPLACE VIEW CONN_V_PPI1_TOT
(FCLT_F_MAAND, AANTAL, TOTAALBEDRAG)
AS
SELECT
FCLT_F_Maand
,SUM(TO_NUMBER(Aantal, '999999D99', 'nls_numeric_characters = ''.,'''))
,SUM(TO_NUMBER(Aantal, '999999D99', 'nls_numeric_characters = ''.,''') * TO_NUMBER(prijs, '999999D99', 'nls_numeric_characters = ''.,'''))
FROM CONN_V_PPI1
GROUP BY FCLT_F_Maand;
CREATE OR REPLACE VIEW CONN_V_PPI2_ALL
(OPDRACHTNUMMER, FCLT_F_MAAND, BESTELLER, AFDELING, TOTAALBEDRAG,
BES_BESTELOPDR_DATUM, BES_BESTELOPDR_LEVERDATUM, PRS_AFDELING_KEY)
AS
SELECT
BO.bes_bestelopdr_key,
TO_CHAR(BO.bes_bestelopdr_datum, 'YYMM'),
PP.prs_perslid_naam || ' ' || NVL(PP.prs_perslid_voorletters, '') || ' ' || NVL(PP.prs_perslid_voornaam, ''),
AD.prs_afdeling_naam,
PR.prijs * BI.bes_bestelling_item_aantal,
BO.BES_BESTELOPDR_DATUM,
BO.bes_bestelopdr_leverdatum,
AD.prs_afdeling_key
FROM BES_BESTELLING BB, BES_BESTELLING_ITEM BI, BES_BESTELOPDR BO,
PRS_PERSLID PP, PRS_AFDELING AD, BES_ITEM_PRIJS pr
WHERE BB.bes_bestelling_key = BI.bes_bestelling_key
AND BI.bes_bestelling_item_key = PR.bes_bestelling_item_key
AND BO.bes_bestelopdr_key = BI.bes_bestelopdr_key
AND BO.prs_perslid_key = PP.prs_perslid_key
AND BB.prs_afdeling_key = AD.prs_afdeling_key;
CREATE OR REPLACE VIEW CONN_V_PPI2_SUBSET
(OPDRACHTNUMMER, FCLT_F_MAAND, BESTELLER, AFDELING, TOTAALBEDRAG,
PRS_AFDELING_KEY)
AS
SELECT
Opdrachtnummer,
FCLT_F_Maand,
Besteller,
Afdeling,
Totaalbedrag,
PRS_AFDELING_KEY
FROM CONN_V_PPI2_ALL
WHERE (
(BES_BESTELOPDR_LEVERDATUM > mld_p_mld_datumtijd.DatumTijdPlusUitvoerTijd(BES_BESTELOPDR_DATUM, 4,'DAGEN'))
OR
(BES_BESTELOPDR_LEVERDATUM IS NULL AND
sysdate > mld_p_mld_datumtijd.DatumTijdPlusUitvoerTijd(BES_BESTELOPDR_DATUM, 4,'DAGEN')
)
);
CREATE OR REPLACE VIEW CONN_V_PPI2
(OPDRACHTNUMMER, FCLT_F_MAAND, BESTELLER, AFDELING, TOTAALBEDRAG,
FCLT_3D_AFDELING_KEY)
AS
SELECT
Opdrachtnummer,
FCLT_F_Maand,
Besteller,
Afdeling,
TO_CHAR(SUM(Totaalbedrag),'99999990.00'),
PRS_AFDELING_KEY
FROM CONN_V_PPI2_SUBSET
GROUP BY Opdrachtnummer,FCLT_F_Maand,Besteller,Afdeling,PRS_AFDELING_KEY;
CREATE OR REPLACE VIEW CONN_V_PPI2_TOT
(FCLT_F_MAAND, AANTAL, TOTAAL)
AS
SELECT FCLT_F_Maand, SUM(Aantal) Aantal, SUM(Totaal) Totaal
FROM
(
SELECT FCLT_F_Maand, COUNT(Opdrachtnummer) Aantal, 0 Totaal
FROM (SELECT FCLT_F_Maand, Opdrachtnummer
FROM CONN_V_PPI2 A
GROUP BY FCLT_F_Maand, Opdrachtnummer)
GROUP BY FCLT_F_Maand
UNION
SELECT FCLT_F_Maand, 0, COUNT(Opdrachtnummer)
FROM (SELECT FCLT_F_Maand, Opdrachtnummer
FROM CONN_V_PPI2_ALL B
GROUP BY FCLT_F_Maand, Opdrachtnummer)
GROUP BY FCLT_F_Maand
)
GROUP BY FCLT_F_Maand;
CREATE OR REPLACE VIEW CONN_V_PPI3_ALL
(AANVRAAGNUMMER, FCLT_F_MAAND, BESTELLER, AFDELING, FIATTEUR,
STATUS, AANTAL, PRIJS, TOTAALBEDRAG, BES_BESTELLING_DATUM,
BES_BESTELLING_AFGEWEZEN, BES_BESTELLING_GEACCEPTEERD, PRS_AFDELING_KEY)
AS
SELECT
B.bes_bestelling_key,
TO_CHAR(B.bes_bestelling_datum, 'YYMM'),
P.prs_perslid_naam || ' ' || NVL(P.prs_perslid_voorletters, '') || ' ' || NVL(P.prs_perslid_voornaam, ''),
A.prs_afdeling_naam,
P2.prs_perslid_naam || ' ' || NVL(P2.prs_perslid_voorletters, '') || ' ' || NVL(P2.prs_perslid_voornaam, ''),
BS.bes_bestellingstatuses_omschr,
I.bes_bestelling_item_aantal,
PR.prijs,
I.bes_bestelling_item_aantal * PR.prijs,
B.bes_bestelling_datum,
B.bes_bestelling_afgewezen,
B.bes_bestelling_geaccepteerd,
A.PRS_AFDELING_KEY
FROM BES_BESTELLING B, BES_BESTELLING_ITEM I, PRS_PERSLID P, PRS_AFDELING A, PRS_PERSLID P2,
BES_BESTELLINGSTATUSES BS, BES_ITEM_PRIJS pr
WHERE B.BES_BESTELLING_KEY = I.BES_BESTELLING_KEY
AND I.bes_bestelling_item_key = PR.bes_bestelling_item_key
AND B.prs_perslid_key = P.prs_perslid_key
AND B.prs_afdeling_key = A.prs_afdeling_key
AND B.bes_bestelling_status = BS.bes_bestellingstatuses_key
AND B.bes_bestelling_fiat_user IS NOT NULL -- Dus alleen "fiatteringsbestellingen"
AND B.bes_bestelling_fiat_user = P2.prs_perslid_key;
CREATE OR REPLACE VIEW CONN_V_PPI3_SUBSET
(AANVRAAGNUMMER, FCLT_F_MAAND, BESTELLER, AFDELING, FIATTEUR,
STATUS, AANTAL, PRIJS, TOTAALBEDRAG, BES_BESTELLING_DATUM,
BES_BESTELLING_AFGEWEZEN, BES_BESTELLING_GEACCEPTEERD, PRS_AFDELING_KEY)
AS
SELECT
Aanvraagnummer,
FCLT_F_Maand,
Besteller,
Afdeling,
Fiatteur,
Status,
Aantal,
Prijs,
Totaalbedrag,
BES_BESTELLING_DATUM,
BES_BESTELLING_AFGEWEZEN,
BES_BESTELLING_GEACCEPTEERD,
PRS_AFDELING_KEY
FROM CONN_V_PPI3_ALL
WHERE (
(mld_p_mld_datumtijd.DatumTijdPlusUitvoerTijd(BES_BESTELLING_DATUM, 3,'DAGEN') < bes_bestelling_afgewezen)
OR
(mld_p_mld_datumtijd.DatumTijdPlusUitvoerTijd(BES_BESTELLING_DATUM, 3,'DAGEN') < bes_bestelling_geaccepteerd)
OR
(bes_bestelling_afgewezen IS NULL AND bes_bestelling_geaccepteerd IS NULL AND
mld_p_mld_datumtijd.DatumTijdPlusUitvoerTijd(BES_BESTELLING_DATUM, 3,'DAGEN') < SYSDATE)
);
CREATE OR REPLACE VIEW CONN_V_PPI3
(AANVRAAGNUMMER, FCLT_F_MAAND, BESTELLER, AFDELING, FIATTEUR,
STATUS, TOTAALBEDRAG, BESTELD, AFGEWEZEN, GEFIATTEERD,
FCLT_3D_AFDELING_KEY)
AS
SELECT
Aanvraagnummer,
FCLT_F_Maand,
Besteller,
Afdeling,
Fiatteur,
Status,
TO_CHAR(SUM(Totaalbedrag),'99999990.00'),
BES_BESTELLING_DATUM,
BES_BESTELLING_AFGEWEZEN,
BES_BESTELLING_GEACCEPTEERD,
PRS_AFDELING_KEY
FROM CONN_V_PPI3_SUBSET
GROUP BY Aanvraagnummer, FCLT_F_Maand, Besteller, Afdeling, Fiatteur, Status,
BES_BESTELLING_DATUM, BES_BESTELLING_AFGEWEZEN, BES_BESTELLING_GEACCEPTEERD,
PRS_AFDELING_KEY;
CREATE OR REPLACE VIEW CONN_V_PPI3_TOT
(FCLT_F_MAAND, TOTAAL, TELAAT)
AS
SELECT fclt_f_maand, SUM(totaal) Totaal,SUM(totaal)-SUM(optijd) Telaat
FROM
(
SELECT FCLT_F_Maand, COUNT(*) Totaal, 0 Optijd
FROM (SELECT FCLT_F_Maand, aanvraagnummer
FROM CONN_V_PPI3_ALL A
GROUP BY FCLT_F_Maand, aanvraagnummer)
GROUP BY FCLT_F_Maand
UNION
SELECT FCLT_F_Maand, 0, COUNT(*)
FROM (SELECT FCLT_F_Maand, aanvraagnummer
FROM CONN_V_PPI3_SUBSET A
GROUP BY FCLT_F_Maand, aanvraagnummer)
GROUP BY FCLT_F_Maand
)
GROUP BY FCLT_F_Maand;
CREATE OR REPLACE VIEW CONN_V_PPI4_
(AANVRAAGNUMMER, FCLT_F_MAAND, BESTELLER, AFDELING, AANTAL,
TOTAALPRIJS, PRS_AFDELING_KEY)
AS
SELECT
B.bes_bestelling_key,
TO_CHAR(B.bes_bestelling_datum, 'YYMM'),
P.prs_perslid_naam || ' ' || NVL(P.prs_perslid_voorletters, '') || ' ' || NVL(P.prs_perslid_voornaam, ''),
A.prs_afdeling_naam,
I.bes_bestelling_item_aantal,
I.bes_bestelling_item_aantal * PR.prijs,
A.PRS_AFDELING_KEY
FROM BES_BESTELLING B, BES_BESTELLING_ITEM I, PRS_PERSLID P, PRS_AFDELING A,
BES_ITEM_PRIJS PR
WHERE B.BES_BESTELLING_KEY = I.BES_BESTELLING_KEY
AND I.bes_bestelling_item_key = PR.bes_bestelling_item_key
AND B.prs_perslid_key = P.prs_perslid_key
AND P.prs_afdeling_key = A.prs_afdeling_key;
CREATE OR REPLACE VIEW CONN_V_PPI4
(AANVRAAGNUMMER, FCLT_F_MAAND, BESTELLER, AFDELING, AANTAL,
TOTAALPRIJS, FCLT_3D_AFDELING_KEY)
AS
SELECT
Aanvraagnummer,
FCLT_F_Maand,
Besteller,
Afdeling,
TO_CHAR(SUM(Aantal),'9999999999'),
TO_CHAR(SUM(Totaalprijs),'99999990.00'),
PRS_AFDELING_KEY
FROM CONN_V_PPI4_
GROUP BY Aanvraagnummer,FCLT_F_Maand,Besteller,Afdeling, prs_afdeling_key
HAVING SUM(Totaalprijs) < 50;
CREATE OR REPLACE VIEW CONN_V_PPI4_TOT
(FCLT_F_MAAND, AANTAL, TOTAAL)
AS
SELECT fclt_f_maand, SUM(Aantal) Aantal, SUM(Totaal) Totaal
FROM
(
SELECT FCLT_F_Maand, COUNT(*) Aantal, 0 Totaal
FROM (SELECT FCLT_F_Maand, aanvraagnummer
FROM CONN_V_PPI4 A
GROUP BY FCLT_F_Maand, aanvraagnummer)
GROUP BY FCLT_F_Maand
UNION
SELECT FCLT_F_Maand, 0, COUNT(*)
FROM (SELECT FCLT_F_Maand, aanvraagnummer
FROM CONN_V_PPI4_ A
GROUP BY FCLT_F_Maand, aanvraagnummer)
GROUP BY FCLT_F_Maand
)
GROUP BY FCLT_F_Maand;
CREATE OR REPLACE VIEW CONN_V_PPI5_ALL
(OPDRACHTNUMMER, FCLT_F_MAAND, OPMERKING, PRS_AFDELING_KEY)
AS
SELECT
BO.bes_bestelopdr_key,
TO_CHAR(BO.bes_bestelopdr_datum, 'YYMM'),
BO.BES_BESTELOPDR_DELIVERY_OPMERK,
BB.PRS_AFDELING_KEY
FROM BES_BESTELLING BB, BES_BESTELLING_ITEM BI, BES_BESTELOPDR BO
WHERE BB.bes_bestelling_key = BI.bes_bestelling_key
AND BO.bes_bestelopdr_key = BI.bes_bestelopdr_key;
CREATE OR REPLACE VIEW CONN_V_PPI5
(OPDRACHTNUMMER, FCLT_F_MAAND, OPMERKING, FCLT_3D_PRS_AFDELING_KEY)
AS
SELECT DISTINCT
BO.bes_bestelopdr_key,
TO_CHAR(BO.bes_bestelopdr_datum, 'YYMM'),
BO.BES_BESTELOPDR_DELIVERY_OPMERK,
BB.PRS_AFDELING_KEY
FROM BES_BESTELLING BB, BES_BESTELLING_ITEM BI, BES_BESTELOPDR BO
WHERE BB.bes_bestelling_key = BI.bes_bestelling_key
AND BO.bes_bestelopdr_key = BI.bes_bestelopdr_key
AND BES_BESTELOPDR_DELIVERY_OPMERK is not null;
CREATE OR REPLACE VIEW CONN_V_PPI5_TOT
(FCLT_F_MAAND, AANTAL, TOTAAL)
AS
SELECT fclt_f_maand, SUM(Aantal) Aantal, SUM(Totaal) Totaal
FROM
(
SELECT FCLT_F_Maand, COUNT(*) Aantal, 0 Totaal
FROM (SELECT FCLT_F_Maand, opdrachtnummer
FROM CONN_V_PPI5 A
GROUP BY FCLT_F_Maand, opdrachtnummer)
GROUP BY FCLT_F_Maand
UNION
SELECT FCLT_F_Maand, 0, COUNT(*)
FROM (SELECT FCLT_F_Maand, opdrachtnummer
FROM CONN_V_PPI5_ALL A
GROUP BY FCLT_F_Maand, opdrachtnummer)
GROUP BY FCLT_F_Maand
)
GROUP BY FCLT_F_Maand;
CREATE OR REPLACE VIEW CONN_V_PPI_OVERZICHT
(PPI, FCLT_F_MAAND, AANTAL, TOTAAL)
AS
SELECT 'PPI1 - Bestelling artikelen Luxe catalogus per maand',FCLT_F_Maand,TO_CHAR(Aantal),TO_CHAR(Totaalbedrag,'99999990.00')
FROM CONN_V_PPI1_TOT
UNION
SELECT 'PPI2 - Juistheid "afmelding" ontvangsten per maand',FCLT_F_Maand,TO_CHAR(Aantal),TO_CHAR(Totaal)
FROM CONN_V_PPI2_TOT
UNION
SELECT 'PPI3 - Tijd tussen aanvraag en fiattering per maand',FCLT_F_Maand,TO_CHAR(Telaat),TO_CHAR(Totaal)
FROM CONN_V_PPI3_TOT
UNION
SELECT 'PPI4 - Kleine bestellingen per maand',FCLT_F_Maand,TO_CHAR(Aantal),TO_CHAR(Totaal)
FROM CONN_V_PPI4_TOT
UNION
SELECT 'PPI5 - Niet tevreden ontvangers per maand',FCLT_F_Maand,TO_CHAR(Aantal),TO_CHAR(Totaal)
FROM CONN_V_PPI5_TOT;
-- *
-- * CONN_V_DELETED_LOC_GEG view
-- * Overzicht verwijderde locaties (CONN#188)
-- *
CREATE OR REPLACE FORCE VIEW CONN_V_DELETED_LOC_GEG
(FCLT_F_LOCATIE_CODE, OMSCHRIJVING, BEZOEK_ADRES,
BEZOEK_PLAATS, VERWIJDERDATUM, UITBEHEER, DISTRICT)
AS
SELECT l.alg_locatie_code,
l.alg_locatie_omschrijving,
l.alg_locatie_adres,
l.alg_locatie_plaats,
l.alg_locatie_verwijder,
(SELECT aok.alg_onrgoedkenmerk_waarde from alg_onrgoedkenmerk aok
WHERE alg_onrgoed_key = l.alg_locatie_key
AND alg_kenmerk_key = 22),
d.alg_district_omschrijving
FROM alg_locatie l,
alg_district d
WHERE d.alg_district_key(+) = l.alg_district_key
AND (l.alg_locatie_verwijder IS NOT NULL
OR
l.alg_locatie_key IN (
SELECT alg_onrgoed_key from alg_onrgoedkenmerk aok
WHERE alg_onrgoed_niveau = 'L'
AND alg_kenmerk_key = 22))
ORDER BY l.alg_locatie_upper ASC;
commit;
-- *
-- * CONN_V_SCHOON_TOT_LOC_GEG view
-- * Schoonmaak overzicht totaalgegevens per locatie (CONN#232)
-- *
CREATE OR REPLACE FORCE VIEW CONN_V_SCHOON_TOT_LOC_GEG
(FCLT_F_LOCATIE_CODE, OMSCHRIJVING, FCLT_F_BEDRIJF, TOT_OPP, OPP_GLAS_BINNEN, OPP_GLAS_BUITEN,
TOT_KOSTEN, TOESLAG, SCHOONMAAKKOSTEN, GLASBEWASSING, OVERIGE_KOSTEN, AFRONDING)
AS
SELECT l.alg_locatie_code,
l.alg_locatie_omschrijving,
b.prs_bedrijf_naam schoonmaakbedrijf,
FAC.SAFE_TO_NUMBER(ko.alg_onrgoedkenmerk_waarde) totaal_oppervlakte,
FAC.SAFE_TO_NUMBER(kogb.alg_onrgoedkenmerk_waarde) opp_glas_binnen_kantoor,
FAC.SAFE_TO_NUMBER(kogbu.alg_onrgoedkenmerk_waarde) opp_glas_buiten_stalling,
ROUND(FAC.SAFE_TO_NUMBER(sb.sch_programma_bedrijf_kental)/12*FAC.SAFE_TO_NUMBER(b.prs_bedrijf_uurloon)*FAC.SAFE_TO_NUMBER(ko.alg_onrgoedkenmerk_waarde)*((FAC.SAFE_TO_NUMBER(kt.alg_onrgoedkenmerk_waarde)/100)-1),2)+ROUND(FAC.SAFE_TO_NUMBER(sb.sch_programma_bedrijf_kental)/12*FAC.SAFE_TO_NUMBER(b.prs_bedrijf_uurloon)*FAC.SAFE_TO_NUMBER(ko.alg_onrgoedkenmerk_waarde)*FAC.SAFE_TO_NUMBER(kt.alg_onrgoedkenmerk_waarde)/100,2)+kg.alg_onrgoedkenmerk_waarde+kbk1.alg_onrgoedkenmerk_waarde+kbk2.alg_onrgoedkenmerk_waarde+kbk3.alg_onrgoedkenmerk_waarde+ka.alg_onrgoedkenmerk_waarde totale_kosten,
ROUND(FAC.SAFE_TO_NUMBER(sb.sch_programma_bedrijf_kental)/12*FAC.SAFE_TO_NUMBER(b.prs_bedrijf_uurloon)*FAC.SAFE_TO_NUMBER(ko.alg_onrgoedkenmerk_waarde)*((FAC.SAFE_TO_NUMBER(kt.alg_onrgoedkenmerk_waarde)/100)-1),2) toeslag,
ROUND(FAC.SAFE_TO_NUMBER(sb.sch_programma_bedrijf_kental)/12*FAC.SAFE_TO_NUMBER(b.prs_bedrijf_uurloon)*FAC.SAFE_TO_NUMBER(ko.alg_onrgoedkenmerk_waarde)*FAC.SAFE_TO_NUMBER(kt.alg_onrgoedkenmerk_waarde)/100,2) schoonmaakkosten,
FAC.SAFE_TO_NUMBER(kg.alg_onrgoedkenmerk_waarde) glasbewassing,
FAC.SAFE_TO_NUMBER(kbk1.alg_onrgoedkenmerk_waarde)+FAC.SAFE_TO_NUMBER(kbk2.alg_onrgoedkenmerk_waarde)+FAC.SAFE_TO_NUMBER(kbk3.alg_onrgoedkenmerk_waarde) overige_kosten,
FAC.SAFE_TO_NUMBER(ka.alg_onrgoedkenmerk_waarde) afrondingsverschil
FROM alg_v_aanweziglocatie l,
alg_onrgoedkenmerk ko, -- oppervlak
alg_onrgoedkenmerk ksp, -- schoonmaakprogramma
alg_onrgoedkenmerk ksb, -- schoonmaakbedrijf
alg_onrgoedkenmerk kogb, -- oppervlakte glas binnen (glas kantoor)
alg_onrgoedkenmerk kogbu, -- oppervlakte glas buiten (glas stalling)
alg_onrgoedkenmerk kt, -- toeslag
alg_onrgoedkenmerk kg, -- glasbewassing
alg_onrgoedkenmerk kbk1, -- bijkomende kosten bedrag 1 (overige kosten)
alg_onrgoedkenmerk kbk2, -- bijkomende kosten bedrag 2 (overige kosten)
alg_onrgoedkenmerk kbk3, -- bijkomende kosten bedrag 3 (overige kosten)
alg_onrgoedkenmerk ka, -- afronding
sch_programma_bedrijf sb,
prs_bedrijf b
WHERE l.alg_locatie_key = ko.alg_onrgoed_key(+)
AND ko.alg_kenmerk_key(+) = 99 -- oppervlak
AND ko.alg_onrgoed_niveau(+) = 'L'
--
AND l.alg_locatie_key = ksp.alg_onrgoed_key(+)
AND ksp.alg_kenmerk_key(+) = 98 -- schoonmaakprogramma
AND ksp.alg_onrgoed_niveau(+) = 'L'
AND sb.sch_programma_key(+) = ksp.alg_onrgoedkenmerk_waarde
--
AND l.alg_locatie_key = ksb.alg_onrgoed_key(+)
AND ksb.alg_kenmerk_key(+) = 97 -- schoonmaakbedrijf
AND ksb.alg_onrgoed_niveau(+) = 'L'
AND b.prs_bedrijf_key(+) = ksb.alg_onrgoedkenmerk_waarde
AND sb.prs_bedrijf_key = b.prs_bedrijf_key
--
AND l.alg_locatie_key = kogb.alg_onrgoed_key(+)
AND kogb.alg_kenmerk_key(+) = 89 -- oppervlakte glas binnen (glas kantoor)
AND kogb.alg_onrgoed_niveau(+) = 'L'
--
AND l.alg_locatie_key = kogbu.alg_onrgoed_key(+)
AND kogbu.alg_kenmerk_key(+) = 90 -- oppervlakte glas buiten (glas stalling)
AND kogbu.alg_onrgoed_niveau(+) = 'L'
--
AND l.alg_locatie_key = kt.alg_onrgoed_key(+)
AND kt.alg_kenmerk_key(+) = 87 -- toeslag
AND kt.alg_onrgoed_niveau(+) = 'L'
--
AND l.alg_locatie_key = kg.alg_onrgoed_key(+)
AND kg.alg_kenmerk_key(+) = 40 -- glasbewassing
AND kg.alg_onrgoed_niveau(+) = 'L'
--
AND l.alg_locatie_key = kbk1.alg_onrgoed_key(+)
AND kbk1.alg_kenmerk_key(+) = 43 -- bijkomende kosten bedrag 1 (overige kosten)
AND kbk1.alg_onrgoed_niveau(+) = 'L'
--
AND l.alg_locatie_key = kbk2.alg_onrgoed_key(+)
AND kbk2.alg_kenmerk_key(+) = 45 -- bijkomende kosten bedrag 2 (overige kosten)
AND kbk2.alg_onrgoed_niveau(+) = 'L'
--
AND l.alg_locatie_key = kbk3.alg_onrgoed_key(+)
AND kbk3.alg_kenmerk_key(+) = 47 -- bijkomende kosten bedrag 3 (overige kosten)
AND kbk3.alg_onrgoed_niveau(+) = 'L'
--
AND l.alg_locatie_key = ka.alg_onrgoed_key(+)
AND ka.alg_kenmerk_key(+) = 105 -- afronding
AND ka.alg_onrgoed_niveau(+) = 'L'
ORDER BY l.alg_locatie_upper ASC;
commit;
-- *
-- * CONN_V_SCHOON_DETAIL_GEG view
-- * Schoonmaak overzicht detailgegevens per ruimte (CONN#232)
-- *
CREATE OR REPLACE FORCE VIEW CONN_V_SCHOON_DETAIL_GEG
(FCLT_F_LOC, RUIMTENR, OPP, FREQ, RUIMTE_SOORT, VLOER_AFW, PROGRAMMA, KENTAL,
FCLT_F_BEDRIJF, SCHOONMAAKKOSTEN, TOESLAG, RUIMTE_DICHT, RUIMTE_OPEN, FIN_OPEN, FIN_DICHT, RUIMTE_OPM,
FCLT_F_HUURDERNR,
FCLT_F_BUDGETCODE)
AS
SELECT rg.alg_locatie_code locatienummer,
rg.alg_ruimte_nr ruimtenummer,
FAC.SAFE_TO_NUMBER(ko.alg_onrgoedkenmerk_waarde) oppervlakte,
(SELECT fac_usrdata_omschr FROM fac_usrdata WHERE fac_usrdata_key = sp.sch_programma_frequentie_key AND fac_usrtab_key = 83) frequentie, -- frequentie schoonmaak
(SELECT fac_usrdata_omschr FROM fac_usrdata WHERE fac_usrdata_key = sp.sch_programma_srtruimte_key AND fac_usrtab_key = 82) ruimtesoort, -- ruimtesoort schoonmaak
(SELECT fac_usrdata_omschr FROM fac_usrdata WHERE fac_usrdata_key = sp.sch_programma_srtvloer_key AND fac_usrtab_key = 81) vloersoort, -- vloersoort schoonmaak
sp.sch_programma_code schoonmaakprogramma,
sb.sch_programma_bedrijf_kental kental,
b.prs_bedrijf_naam schoonmaakbedrijf,
ROUND(FAC.SAFE_TO_NUMBER(sb.sch_programma_bedrijf_kental)/12*FAC.SAFE_TO_NUMBER(b.prs_bedrijf_uurloon)*FAC.SAFE_TO_NUMBER(ko.alg_onrgoedkenmerk_waarde)*FAC.SAFE_TO_NUMBER(kt.alg_onrgoedkenmerk_waarde)/100,2) schoonmaakkosten,
ROUND(FAC.SAFE_TO_NUMBER(sb.sch_programma_bedrijf_kental)/12*FAC.SAFE_TO_NUMBER(b.prs_bedrijf_uurloon)*FAC.SAFE_TO_NUMBER(ko.alg_onrgoedkenmerk_waarde)*((FAC.SAFE_TO_NUMBER(kt.alg_onrgoedkenmerk_waarde)/100)-1),2) toeslag,
krd.alg_onrgoedkenmerk_waarde ruimte_dicht_datum,
kro.alg_onrgoedkenmerk_waarde ruimte_open_datum,
kfd.alg_onrgoedkenmerk_waarde ruimte_financieel_dicht_datum,
kfo.alg_onrgoedkenmerk_waarde ruimte_financieel_open_datum,
r.alg_ruimte_opmerking,
(SELECT DISTINCT min(prs_kenmerklink_waarde)
FROM prs_kenmerklink kl,
prs_afdeling a,
prs_v_werkplekafdeling_geg wag
WHERE kl.prs_kenmerk_key = 1061 -- huurdernummer
AND kl.prs_link_key = a.prs_afdeling_key
AND a.prs_afdeling_key = wag.prs_afdeling_key
AND wag.alg_ruimte_key = r.alg_ruimte_key) huurdernummer,
(SELECT DISTINCT min(prs_kenmerklink_waarde)
FROM prs_kenmerklink kl,
prs_afdeling a,
prs_v_werkplekafdeling_geg wag
WHERE kl.prs_kenmerk_key = 1060 -- budgetcode
AND kl.prs_link_key = a.prs_afdeling_key
AND a.prs_afdeling_key = wag.prs_afdeling_key
AND wag.alg_ruimte_key = r.alg_ruimte_key) budgetcode
FROM alg_v_aanwezigruimte r,
alg_v_ruimte_gegevens rg,
alg_locatie l,
alg_onrgoedkenmerk ko, -- oppervlak
alg_onrgoedkenmerk ksp, -- schoonmaakprogramma
alg_onrgoedkenmerk ksb, -- schoonmaakbedrijf
alg_onrgoedkenmerk kt, -- toeslag
alg_onrgoedkenmerk krd, -- ruimte dicht datum
alg_onrgoedkenmerk kro, -- ruimte open datum
alg_onrgoedkenmerk kfd, -- ruimte financieel dicht datum
alg_onrgoedkenmerk kfo, -- ruimte financieel open datum
sch_programma sp,
sch_programma_bedrijf sb,
prs_bedrijf b
WHERE r.alg_ruimte_key = rg.alg_ruimte_key
AND sb.sch_programma_key = sp.sch_programma_key
--
AND r.alg_ruimte_key = ko.alg_onrgoed_key(+)
AND ko.alg_kenmerk_key(+) = 77 -- oppervlak
AND ko.alg_onrgoed_niveau(+) = 'R'
--
AND r.alg_ruimte_key = ksp.alg_onrgoed_key(+)
AND ksp.alg_kenmerk_key(+) = 85 -- schoonmaakprogramma
AND ksp.alg_onrgoed_niveau(+) = 'R'
AND sp.sch_programma_key(+) = ksp.alg_onrgoedkenmerk_waarde
--
AND r.alg_ruimte_key = ksb.alg_onrgoed_key(+)
AND ksb.alg_kenmerk_key(+) = 78 -- schoonmaakbedrijf
AND ksb.alg_onrgoed_niveau(+) = 'R'
AND b.prs_bedrijf_key(+) = ksb.alg_onrgoedkenmerk_waarde
AND sb.prs_bedrijf_key = b.prs_bedrijf_key
--
AND r.alg_ruimte_key = rg.alg_ruimte_key
AND rg.alg_locatie_key = l.alg_locatie_key
AND l.alg_locatie_key = kt.alg_onrgoed_key(+)
AND kt.alg_kenmerk_key(+) = 87 -- toeslag
AND kt.alg_onrgoed_niveau(+) = 'L'
--
AND r.alg_ruimte_key = krd.alg_onrgoed_key(+)
AND krd.alg_kenmerk_key(+) = 80 -- ruimte dicht datum
AND krd.alg_onrgoed_niveau(+) = 'R'
--
AND r.alg_ruimte_key = kro.alg_onrgoed_key(+)
AND kro.alg_kenmerk_key(+) = 79 -- ruimte open datum
AND kro.alg_onrgoed_niveau(+) = 'R'
--
AND r.alg_ruimte_key = kfd.alg_onrgoed_key(+)
AND kfd.alg_kenmerk_key(+) = 82 -- ruimte financieel dicht datum
AND kfd.alg_onrgoed_niveau(+) = 'R'
--
AND r.alg_ruimte_key = kfo.alg_onrgoed_key(+)
AND kfo.alg_kenmerk_key(+) = 81 -- ruimte financieel open datum
AND kfo.alg_onrgoed_niveau(+) = 'R'
ORDER BY rg.alg_locatie_code, b.prs_bedrijf_naam ASC;
create or replace view CONN_V_PRS_INDIENST (FCLT_F_MAAND, FCLT_F_NAAM, NUMMER, INDIENST, FCLT_F_AFDELING) as
select TO_CHAR(p.prs_perslid_ingangsdatum, 'YYMM'),
pf.prs_perslid_naam_full,
p.prs_perslid_nr,
TO_CHAR(p.prs_perslid_ingangsdatum, 'DD-MM-YYYY'),
a.prs_afdeling_naam1
from prs_v_afdeling a,
prs_v_aanwezigperslid p,
prs_v_perslid_fullnames pf
where p.prs_afdeling_key = a.prs_afdeling_key
and pf.prs_perslid_key = p.prs_perslid_key
and p.prs_perslid_ingangsdatum IS NOT NULL;
create or replace view CONN_V_PRS_UITDIENST (FCLT_F_MAAND, FCLT_F_NAAM, NUMMER, UITDIENST, FCLT_F_AFDELING) as
select TO_CHAR(p.prs_perslid_einddatum, 'YYMM'),
pf.prs_perslid_naam_full,
p.prs_perslid_nr,
TO_CHAR(p.prs_perslid_einddatum, 'DD-MM-YYYY'),
a.prs_afdeling_naam1
from prs_v_afdeling a,
prs_v_aanwezigperslid p,
prs_v_perslid_fullnames pf
where p.prs_afdeling_key = a.prs_afdeling_key
and pf.prs_perslid_key = p.prs_perslid_key
and p.prs_perslid_einddatum IS NOT NULL;
create or replace view CONN_V_VERPLICHTING (FCLT_F_NAAM, NUMMER, UITDIENST, VERPLICHTING, DETAILS) as
select pf.prs_perslid_naam_full,
p.prs_perslid_nr,
TO_CHAR(p.prs_perslid_einddatum, 'DD-MM-YYYY'),
t.fac_message_text,
pv.item
from prs_v_verplichting pv,
fac_message t,
prs_perslid p,
prs_v_perslid_fullnames pf
where pv.fac_message_code = t.fac_message_code
and pv.prs_perslid_key = p.prs_perslid_key
and pf.prs_perslid_key = p.prs_perslid_key
and p.prs_perslid_einddatum < sysdate;
CREATE OR REPLACE FORCE VIEW CONN_V_EXPORT_OPDRACHT_
(OPDRACHTNUMMER, LEVERANCIERNR, KOSTENSOORT, COMPLEXNUMMER, FACTUURNUMMER,
HUURDERNUMMER, OMSCHRBOEKING, ONSKLANTNUMMER, BTWTYPE, BEDRAGEXCL,
ADMINISTRATIE, BUDGETNUMMER, BOEKINGSDATUM, FACTUURDATUM, TOTBEDRFACTUUR,
VERDEELPERIODE, SPREIDENOVER, BETAALBAARSTELLEN, MLD_OPDR_KEY)
AS
SELECT O.mld_melding_key || '/' || O.mld_opdr_bedrijfopdr_volgnr
,TRIM(prs_leverancier_nr) LeverancierNr
,trim((SELECT D.fac_usrdata_code
FROM MLD_KENMERKOPDR K, FAC_USRDATA D
WHERE K.mld_kenmerk_key = 100
AND TO_NUMBER(K.mld_kenmerkopdr_waarde) = D.fac_usrdata_key
AND K.mld_opdr_key = O.mld_opdr_key)) Kostensoort
,trim((SELECT alg_locatie_code
FROM ALG_LOCATIE WHERE alg_locatie_key = M.mld_alg_locatie_key)) Complexnummer
,(SELECT mld_kenmerkopdr_waarde
FROM MLD_KENMERKOPDR K WHERE K.mld_kenmerk_key = 113 AND K.mld_opdr_key = O.mld_opdr_key) Factuurnummer
,(SELECT ''||HUURDERNR FROM CONN_V_LOCATIEHUURDER WHERE TO_CHAR(HUURDER_KEY) = K1.mld_kenmerkopdr_waarde) Huurdernummer
,(SELECT mld_kenmerkopdr_waarde
FROM MLD_KENMERKOPDR K WHERE K.mld_kenmerk_key = 132 AND K.mld_opdr_key = O.mld_opdr_key) OmschrBoeking
,B.prs_overeenkomst_nr OnsKlantNummer
,(SELECT fac_usrdata_upper
FROM MLD_KENMERKOPDR K, FAC_USRDATA D
WHERE K.mld_kenmerk_key = 1
AND TO_NUMBER(K.mld_kenmerkopdr_waarde) = D.fac_usrdata_key
AND K.mld_opdr_key = O.mld_opdr_key) BTWtype
,(SELECT TO_CHAR(TO_NUMBER(mld_kenmerkopdr_waarde, '99999999D99', 'nls_numeric_characters = ''.,'''))
FROM MLD_KENMERKOPDR K
WHERE K.mld_kenmerk_key = 118 AND K.mld_opdr_key = O.mld_opdr_key) BedragExcl
,(SELECT DECODE(fac_usrdata_upper, NULL, '', DECODE(fac_usrdata_upper, '1', 'VG','FB' ))
FROM MLD_KENMERKOPDR K, FAC_USRDATA D
WHERE K.mld_kenmerk_key = 83
AND K.mld_kenmerkopdr_waarde = TO_CHAR(D.fac_usrdata_key)
AND K.mld_opdr_key = O.mld_opdr_key) Administratie
,(SELECT ''||BUDGETCODE FROM CONN_V_LOCATIEHUURDER WHERE TO_CHAR(HUURDER_KEY) = K2.mld_kenmerkopdr_waarde) Budgetnummer
,(SELECT TO_CHAR(TO_DATE(mld_kenmerkopdr_waarde, 'DD-MM-YYYY'),'YYYYMMDD')
FROM MLD_KENMERKOPDR K WHERE K.mld_kenmerk_key = 131 AND K.mld_opdr_key = O.mld_opdr_key) Boekingsdatum
,(SELECT TO_CHAR(TO_DATE(mld_kenmerkopdr_waarde, 'DD-MM-YYYY'),'YYYYMMDD')
FROM MLD_KENMERKOPDR K WHERE K.mld_kenmerk_key = 127 AND K.mld_opdr_key = O.mld_opdr_key) Factuurdatum
,(SELECT TO_CHAR(TO_NUMBER(mld_kenmerkopdr_waarde, '99999999D99', 'nls_numeric_characters = ''.,'''))
FROM MLD_KENMERKOPDR K WHERE K.mld_kenmerk_key = 128 AND K.mld_opdr_key = O.mld_opdr_key) TotBedrFactuur
,(SELECT mld_kenmerkopdr_waarde
FROM MLD_KENMERKOPDR K WHERE K.mld_kenmerk_key = 130 AND K.mld_opdr_key = O.mld_opdr_key) Verdeelperiode
,(SELECT mld_kenmerkopdr_waarde || 'M'
FROM MLD_KENMERKOPDR K WHERE K.mld_kenmerk_key = 133 AND K.mld_opdr_key = O.mld_opdr_key) SpreidenOver
,trim((SELECT D.fac_usrdata_code
FROM MLD_KENMERKOPDR K, FAC_USRDATA D
WHERE K.mld_kenmerk_key = 114
AND TO_NUMBER(K.mld_kenmerkopdr_waarde) = D.fac_usrdata_key
AND mld_opdr_key = O.mld_opdr_key)) BetaalbaarStellen
,O.mld_opdr_key
FROM MLD_OPDR O, MLD_MELDING M, mld_v_uitvoerende U, PRS_BEDRIJF B, MLD_KENMERKOPDR K1, MLD_KENMERKOPDR K2
WHERE O.mld_uitvoerende_keys = U.mld_uitvoerende_key
AND (K1.mld_kenmerk_key(+) = 112 AND K1.mld_opdr_key(+) = O.mld_opdr_key)
AND (K2.mld_kenmerk_key(+) = 112 AND K2.mld_opdr_key(+) = O.mld_opdr_key)
AND U.TYPE = 'B'
AND O.mld_statusopdr_key <> 7
AND O.mld_typeopdr_key = 5
AND O.mld_uitvoerende_keys = B.prs_bedrijf_key
AND O.mld_melding_key = M.mld_melding_key;
/
CREATE OR REPLACE FORCE VIEW CONN_V_EXPORT_OPDRACHT
(CONTRACT, MLD_OPDR_KEY, ADMINISTRATIE, EXPORT)
AS
SELECT Opdrachtnummer || ';' ||
Factuurnummer || ';' ||
LeverancierNr || ';' ||
Factuurdatum || ';' ||
Boekingsdatum || ';' ||
SpreidenOver || ';' ||
Kostensoort || ';' ||
OmschrBoeking || ';' ||
Complexnummer || ';' ||
Huurdernummer || ';' ||
Budgetnummer || ';' ||
BedragExcl || ';' ||
Verdeelperiode || ';' ||
BTWtype || ';' ||
TotBedrFactuur || ';' ||
OnsKlantnummer || ';' || Administratie
,mld_opdr_key
,DECODE(Administratie, NULL, '?', Administratie)
,DECODE(BetaalbaarStellen, '1', 'YES', 'NO') Export
FROM CONN_V_EXPORT_OPDRACHT_
WHERE BetaalbaarStellen = '1' or BetaalbaarStellen = '2'
order by Factuurdatum;
/
CREATE OR REPLACE VIEW CONN_V_CONTAINER_GEGEVENS
(INS_DEEL_KEY, ALG_LOCATIE_CODE, ALG_LOCATIE_OMSCHRIJVING, ALG_LOCATIE_ADRES, HUURDERNUMMER,
HUURDER, DEFAULTHUURDER, BUDGETCODE, CONTAINERTYPE, FREQUENTIE,
AANTAL, AANTALASNUMBER, PRIJS, PRIJSASNUMBER, BEGINDATUM,
EINDDATUM)
AS
select d.ins_deel_key
,l.alg_locatie_code
,l.alg_locatie_omschrijving
,l.alg_locatie_adres
,(select kl.prs_kenmerklink_waarde
FROM prs_v_aanwezigafdeling af, prs_kenmerklink kl
where to_char(af.prs_afdeling_key) = k_huurder.ins_kenmerkdeel_waarde
and kl.prs_link_key = af.prs_afdeling_key
and kl.prs_kenmerk_key = 1061
and kl.prs_kenmerklink_verwijder is null
) Huurdernummer
,(select af.prs_afdeling_naam1 FROM prs_v_aanwezigafdeling af where to_char(af.prs_afdeling_key) = k_huurder.ins_kenmerkdeel_waarde) Huurder
,(select af2.prs_afdeling_naam1 FROM prs_v_aanwezigafdeling af2 where prs_afdeling_key = 1061) DefaultHuurder
,(select kl.prs_kenmerklink_waarde
FROM prs_v_aanwezigafdeling af, prs_kenmerklink kl
where to_char(af.prs_afdeling_key) = k_huurder.ins_kenmerkdeel_waarde
and kl.prs_link_key = af.prs_afdeling_key
and kl.prs_kenmerk_key = 1060
and kl.prs_kenmerklink_verwijder is null
) Budgetcode
,sd.ins_srtdeel_omschrijving Containertype
,(select ud.fac_usrdata_omschr from fac_usrdata ud where to_char(ud.fac_usrdata_key) = k_frequentie.ins_kenmerkdeel_waarde) Frequentie
,k_aantal.ins_kenmerkdeel_waarde Aantal
,DECODE(k_aantal.ins_kenmerkdeel_waarde, null, 0, TO_NUMBER(TO_CHAR(FAC.SAFE_TO_NUMBER(k_aantal.ins_kenmerkdeel_waarde) ,'99999999D'))) AantalAsNumber
,k_prijs.ins_kenmerkdeel_waarde Prijs
,TO_NUMBER(NVL(k_prijs.ins_kenmerkdeel_waarde,''), '99999999D99', 'nls_numeric_characters = ''.,''') PrijsAsNumber
,k_begindatum.ins_kenmerkdeel_waarde Begindatum
,k_einddatum.ins_kenmerkdeel_waarde Einddatum
from ins_v_aanwezigdeel d
,alg_locatie l
,ins_srtdeel sd
,ins_kenmerkdeel k_frequentie
,ins_kenmerkdeel k_aantal
,ins_kenmerkdeel k_prijs
,ins_kenmerkdeel k_huurder
,ins_kenmerkdeel k_begindatum
,ins_kenmerkdeel k_einddatum
where ins_discipline_key = 421
and d.ins_alg_locatie_key = l.alg_locatie_key
and d.ins_srtdeel_key = sd.ins_srtdeel_key
and k_frequentie.ins_deel_key(+)=D.ins_deel_key
and k_frequentie.ins_kenmerk_key(+)=382
and k_aantal.ins_deel_key(+)=D.ins_deel_key
and k_aantal.ins_kenmerk_key(+)=381
and k_prijs.ins_deel_key(+)=D.ins_deel_key
and k_prijs.ins_kenmerk_key(+)=383
and k_huurder.ins_deel_key(+)=D.ins_deel_key
and k_huurder.ins_kenmerk_key(+)=391
and k_begindatum.ins_deel_key(+)=D.ins_deel_key
and k_begindatum.ins_kenmerk_key(+)=389
and k_einddatum.ins_deel_key(+)=D.ins_deel_key
and k_einddatum.ins_kenmerk_key(+)=390;
CREATE OR REPLACE FORCE VIEW CONN_V_EXPORT_CT_ AS
SELECT '' Opdrachtnummer
,'' Factuurnummer
,b.prs_leverancier_nr LeverancierNr
,'' Factuurdatum
,SUBSTR(ADD_MONTHS(TO_DATE('31-01-2004', 'DD-MM-YYYY'),TO_NUMBER(TO_CHAR(sysdate,'MM'))-1),1,2) || TO_CHAR(sysdate,'-MM-YYYY') Boekingsdatum
,'' SpreidenOver
,'5077' Kostensoort
,cg.aantal || 'x ' || cg.Containertype OmschrBoeking
,alg_locatie_code Complexnummer
,Huurdernummer Huurdernummer
,Budgetcode Budgetnummer
,(AantalAsNumber*PrijsAsNumber) BedragExcl
,TO_CHAR(sysdate,'YYYY-MM') Verdeelperiode
,'0' BTWtype
,'' TotBedrFactuur
,b.prs_overeenkomst_nr OnsKlantnummer
,'FB' Administratie
,'' BetaalbaarStellen
FROM conn_v_container_gegevens cg
,(select prs_leverancier_nr,prs_overeenkomst_nr from prs_bedrijf where prs_bedrijf_key = 4618) b
where 1=1 and TO_CHAR(TO_DATE(NVL(to_char(to_date(Begindatum, 'DD-MM-YYYY'),'YYYYMM') ,TO_CHAR(sysdate,'YYYYMM')),'YYYYMM')) <= TO_CHAR(sysdate, 'YYYYMM')
and TO_CHAR(TO_DATE(NVL(to_char(to_date(Einddatum, 'DD-MM-YYYY'),'YYYYMM') ,TO_CHAR(sysdate,'YYYYMM')),'YYYYMM')) >= TO_CHAR(sysdate, 'YYYYMM');
/
CREATE OR REPLACE FORCE VIEW CONN_V_EXPORT_CT
(CONTRACT, MLD_OPDR_KEY, ADMINISTRATIE, EXPORT)
AS
SELECT Opdrachtnummer || ';' ||
Factuurnummer || ';' ||
LeverancierNr || ';' ||
Factuurdatum || ';' ||
Boekingsdatum || ';' ||
SpreidenOver || ';' ||
Kostensoort || ';' ||
OmschrBoeking || ';' ||
Complexnummer || ';' ||
Huurdernummer || ';' ||
Budgetnummer || ';' ||
BedragExcl || ';' ||
Verdeelperiode || ';' ||
BTWtype || ';' ||
TotBedrFactuur || ';' ||
OnsKlantnummer || ';' || Administratie
,'' mld_opdr_key
,DECODE(Administratie, NULL, '?', Administratie)
,'YES'
FROM CONN_V_EXPORT_CT_
order by Complexnummer;
/
create or replace view CONN_V_EXPORT_OPDRACHT_LG_ as
select TO_CHAR(m.mld_melding_key) || '/' || TO_CHAR(o.mld_opdr_bedrijfopdr_volgnr) Opdrachtnummer
,'' Facuurnummer
,b.prs_leverancier_nr LeverancierNr
,SUBSTR(ADD_MONTHS(TO_DATE('31-01-2004', 'DD-MM-YYYY'),TO_NUMBER(TO_CHAR(sysdate,'MM'))-1),1,2) || TO_CHAR(sysdate,'-MM-YYYY') Boekingsdatum
,'' Factuurdatum
,'' SpreidenOver
,'5077' Kostensoort
,k_aantal.mld_kenmerkopdr_waarde || 'x ' || cg.Containertype OmschrBoeking
,cg.alg_locatie_code Complexnummer
,Huurdernummer Huurdernummer
,Budgetcode Budgetnummer
, TO_NUMBER(NVL(k_prijs.mld_kenmerkopdr_waarde,0), '99999999D99', 'nls_numeric_characters = ''.,''')
* TO_NUMBER(NVL(k_aantal.mld_kenmerkopdr_waarde,0), '99999999D99', 'nls_numeric_characters = ''.,''') BedragExcl
,TO_CHAR(sysdate,'YYYY-MM') Verdeelperiode
,'0' BTWtype
,'' TotBedrFactuur
,b.prs_overeenkomst_nr OnsKlantnummer
,'FB' Administratie
,trim((SELECT D.fac_usrdata_code
FROM MLD_KENMERKOPDR K, FAC_USRDATA D
WHERE K.mld_kenmerk_key = 114
AND TO_NUMBER(K.mld_kenmerkopdr_waarde) = D.fac_usrdata_key
AND mld_opdr_key = O.mld_opdr_key)) BetaalbaarStellen
,o.mld_opdr_key
,'' Factuurnummer
FROM mld_melding m
,mld_melding_object mo
,mld_opdr o
,conn_v_container_gegevens cg
,(select prs_leverancier_nr, prs_overeenkomst_nr from prs_bedrijf where prs_bedrijf_key = 4618) b
,mld_kenmerkopdr k_aantal
,mld_kenmerkopdr k_prijs
where m.mld_melding_key = mo.mld_melding_key
and m.mld_melding_key = o.mld_melding_key
and m.mld_stdmelding_key = 64
and cg.ins_deel_key = mo.ins_deel_key
and mo.MLD_MELDING_OBJECT_VERWIJDER is null
and k_aantal.mld_opdr_key(+) = o.mld_opdr_key
and k_aantal.mld_kenmerk_key(+) = 86
and k_prijs.mld_opdr_key(+) = o.mld_opdr_key
and k_prijs.mld_kenmerk_key(+) = 87;
/
CREATE OR REPLACE FORCE VIEW CONN_V_EXPORT_OPDRACHT_LG
(CONTRACT, MLD_OPDR_KEY, ADMINISTRATIE, EXPORT)
AS
SELECT Opdrachtnummer || ';' ||
Factuurnummer || ';' ||
LeverancierNr || ';' ||
Factuurdatum || ';' ||
Boekingsdatum || ';' ||
SpreidenOver || ';' ||
Kostensoort || ';' ||
OmschrBoeking || ';' ||
Complexnummer || ';' ||
Huurdernummer || ';' ||
Budgetnummer || ';' ||
BedragExcl || ';' ||
Verdeelperiode || ';' ||
BTWtype || ';' ||
TotBedrFactuur || ';' ||
OnsKlantnummer || ';' || Administratie
,mld_opdr_key
,DECODE(Administratie, NULL, '?', Administratie)
,DECODE(BetaalbaarStellen, '1', 'YES', 'NO') Export
FROM CONN_V_EXPORT_OPDRACHT_LG_
WHERE BetaalbaarStellen = '1' or BetaalbaarStellen = '2'
order by Factuurdatum;
/
CREATE OR REPLACE VIEW CONN_V_MLD_VERPLICHTING_OFF
(OPDRACHT, LOCATIE, BEDRIJF, DATUM, OFFERTE_STATUS, BEDRAG, EIGENAAR)
AS
select (select ins_srtdiscipline_prefix from ins_srtdiscipline sd, ins_tab_discipline d, mld_melding m where
m.MLD_INS_DISCIPLINE_KEY = d.ins_discipline_key
and d.ins_srtdiscipline_key = sd.ins_srtdiscipline_key
and m.mld_melding_key = o.mld_melding_key) || o.mld_melding_key ||'/' || o.MLD_OPDR_BEDRIJFOPDR_VOLGNR
, (select alg_locatie_code
from alg_locatie l, mld_melding m
where l.alg_locatie_key = m.mld_alg_locatie_key
and o.mld_melding_key = m.mld_melding_key) as locatie
, (select prs_bedrijf_naam from prs_bedrijf where prs_bedrijf_key = o.MLD_UITVOERENDE_KEYS) as bedrijf
, (select TO_CHAR(MLD_OPDR_DATUMBEGIN, 'DD-MM-YYYY') from mld_opdr where mld_melding_key = o.mld_melding_key) as OpdrDatum
, ud.FAC_USRDATA_OMSCHR
, nvl(bed.MLD_KENMERKOPDR_WAARDE,'') as Openstaand
, (select fd.fac_usrdata_omschr
from fac_usrdata fd, mld_kenmerkopdr gb, mld_opdr opdr
where gb.mld_opdr_key = opdr.mld_opdr_key
and gb.mld_kenmerk_key = 83
and opdr.mld_uitvoerende_keys = o.MLD_UITVOERENDE_KEYS
and gb.mld_kenmerkopdr_waarde = fd.fac_usrdata_key
and rownum = 1) as Eigenaar
from mld_opdr o, mld_kenmerkopdr ko, fac_usrdata ud, mld_kenmerkopdr bed
where o.MLD_TYPEOPDR_KEY = 66
and o.mld_opdr_key = ko.mld_opdr_key(+)
and ko.MLD_KENMERK_KEY(+) = 74
and ud.fac_usrdata_key(+) = ko.mld_kenmerkopdr_waarde
and bed.mld_kenmerk_key(+) = 449
and o.mld_opdr_key = bed.mld_opdr_key(+)
and o.mld_statusopdr_key = 5 -- uitgegeven
CREATE OR REPLACE VIEW CONN_V_MLD_VERPLICHTING
(DATUM, MELDING, LOCATIE, BEDRIJF, TOTAAL,
BETAALD, OPEN, EIGENAAR, GROOTBOEKNR)
AS
select (select TO_CHAR(MLD_OPDR_DATUMBEGIN, 'DD-MM-YYYY') from mld_opdr where mld_melding_key = open.mld_melding_key and mld_uitvoerende_keys = open.uitv and rownum = 1) as OpdrDatum
, open.mld_melding_key
, (select alg_locatie_code
from alg_locatie l, mld_melding m
where l.alg_locatie_key = m.mld_alg_locatie_key
and open.mld_melding_key = m.mld_melding_key) as locatie
, (select prs_bedrijf_naam from prs_bedrijf where prs_bedrijf_key = open.uitv) as bedrijf
, totaal.bedrag as Totaal
, totaal.bedrag - open.bedrag as Betaald
, open.bedrag as Openstaand
, (select fd.fac_usrdata_omschr
from fac_usrdata fd, mld_kenmerkopdr gb, mld_opdr opdr
where gb.mld_opdr_key = opdr.mld_opdr_key
and gb.mld_kenmerk_key = 83
and opdr.mld_uitvoerende_keys = open.uitv
and gb.mld_kenmerkopdr_waarde = fd.fac_usrdata_key
and rownum = 1) as Eigenaar
, (select max(fd.fac_usrdata_omschr)
from fac_usrdata fd, mld_kenmerkopdr gb, mld_opdr opdr
where gb.mld_opdr_key = opdr.mld_opdr_key
and gb.mld_kenmerk_key = 100
and opdr.mld_uitvoerende_keys = open.uitv
and gb.mld_kenmerkopdr_waarde = fd.fac_usrdata_key) as Grbnr
from
(select o.mld_melding_key, o.MLD_UITVOERENDE_KEYS as uitv, sum(ko.MLD_KENMERKOPDR_WAARDE) as bedrag
from mld_opdr o, mld_kenmerkopdr ko
where o.MLD_TYPEOPDR_KEY = 5
and o.mld_opdr_key = ko.mld_opdr_key
and ko.MLD_KENMERK_KEY = 118
and o.mld_statusopdr_key <> 7
group by o.mld_melding_key, o.mld_uitvoerende_keys) open,
(select o.mld_melding_key, o.MLD_UITVOERENDE_KEYS as uitv, sum(ko.MLD_KENMERKOPDR_WAARDE) as bedrag
from mld_opdr o, mld_kenmerkopdr ko
where o.MLD_TYPEOPDR_KEY = 5
and o.mld_opdr_key = ko.mld_opdr_key
and ko.MLD_KENMERK_KEY = 118 --totaal bedrag
group by o.mld_melding_key, o.MLD_UITVOERENDE_KEYS) totaal
where open.mld_melding_key = totaal.mld_melding_key
and totaal.bedrag > 2500
and open.uitv = totaal.uitv
order by opdrDatum;
CREATE OR REPLACE VIEW CONN_V_MLD_VERPLICHTING_FIAT
(OPDRACHT, LOCATIE, FIATTEUR, DATUM, OFFERTE_STATUS, BEDRAG, EIGENAAR)
AS
select (select ins_srtdiscipline_prefix from ins_srtdiscipline sd, ins_tab_discipline d, mld_melding m where
m.MLD_INS_DISCIPLINE_KEY = d.ins_discipline_key
and d.ins_srtdiscipline_key = sd.ins_srtdiscipline_key
and m.mld_melding_key = o.mld_melding_key) || o.mld_melding_key ||'/' || o.MLD_OPDR_BEDRIJFOPDR_VOLGNR
, (select alg_locatie_code
from alg_locatie l, mld_melding m
where l.alg_locatie_key = m.mld_alg_locatie_key
and o.mld_melding_key = m.mld_melding_key) as locatie
, NVL((select prs_bedrijf_naam from prs_bedrijf where prs_bedrijf_key = o.MLD_UITVOERENDE_KEYS),
(select prs_perslid_naam from prs_perslid where prs_perslid_key = o.MLD_UITVOERENDE_KEYS)) as bedrijf
, (select TO_CHAR(MLD_OPDR_DATUMBEGIN,'DD-MM-YYYY') from mld_opdr where mld_melding_key = o.mld_melding_key) as OpdrDatum
, ud.FAC_USRDATA_OMSCHR
, nvl(bed.MLD_KENMERKOPDR_WAARDE,'') as Openstaand
, (select fd.fac_usrdata_omschr
from fac_usrdata fd, mld_kenmerkopdr gb, mld_opdr opdr
where gb.mld_opdr_key = opdr.mld_opdr_key
and gb.mld_kenmerk_key = 83
and opdr.mld_uitvoerende_keys = o.MLD_UITVOERENDE_KEYS
and gb.mld_kenmerkopdr_waarde = fd.fac_usrdata_key
and rownum = 1) as Eigenaar
from mld_opdr o, mld_kenmerkopdr ko , fac_usrdata ud, mld_kenmerkopdr bed
where o.MLD_TYPEOPDR_KEY = 65
and o.mld_opdr_key = ko.mld_opdr_key(+)
and ko.MLD_KENMERK_KEY(+) = 69
and ud.fac_usrdata_key(+) = ko.mld_kenmerkopdr_waarde
and bed.mld_kenmerk_key(+) = 445
and o.mld_opdr_key = bed.mld_opdr_key(+)
and o.mld_statusopdr_key = 5; -- uitgegeven
create or replace view CONN_V_OPPERVLAKTE (FCLT_F_CODE, AANDUIDING, OMSCHRIJVING, GETEKEND, ETABEL, SCHOONMAAK)
AS
select alg_locatie_code as fclt_f_code, alg_ruimte_aanduiding, alg_locatie_omschrijving, alg_ruimte_bruto_vloeropp as getekend, sum(gebruikteopp) as etabel, fac.safe_to_number(alg_onrgoedkenmerk_waarde) as schoonmaak from alg_v_ruimte_gegevens rg, conn_import_etabel et, alg_v_aanwezigonrgoedkenmerk ok
where
rg.alg_locatie_code = et.complex
and rg.alg_ruimte_nr = et.ruimte(+)
AND rg.alg_ruimte_key = ok.alg_onrgoed_key(+)
AND ok.alg_kenmerk_key(+) = '77' --ruimte opp schoonmaak
group by alg_locatie_code, alg_ruimte_aanduiding, alg_locatie_omschrijving, alg_ruimte_bruto_vloeropp, alg_onrgoedkenmerk_waarde order by 2;
commit;