KFSG#65747 FACT-rap/Toegang tbv. leveranciers

svn path=/Customer/trunk/; revision=51305
This commit is contained in:
Maarten van der Heide
2021-05-06 16:44:30 +00:00
parent 5885a590d9
commit bf6270cd6c

View File

@@ -933,7 +933,62 @@ AS -- Vaste contractkosten over de ACTUAL termijn
b.prs_bedrijf_naam,
c.cnt_contract_nummer_intern,
c.cnt_contract_omschrijving,
COALESCE (nr.mld_kenmerkopdr_waarde, c.cnt_contract_nummer);
COALESCE (nr.mld_kenmerkopdr_waarde, c.cnt_contract_nummer)
UNION ALL -- Variabele kosten uit ACTUAL opdrachten voor Wiltec (niet gekoppeld aan variabel contract)!
SELECT pcp.prs_afdeling_key,
TO_CHAR (SYSDATE, 'yyyy-mm') maand, -- Deze maand ORDAFR, volgende maand factureren (achteraf)
'O' broc_flag,
b.prs_bedrijf_naam,
c.cnt_contract_nummer_intern,
c.cnt_contract_omschrijving,
c.cnt_contract_nummer,
COUNT ( * ) aantal,
SUM (o.mld_opdr_kosten) kosten -- Netto bedrag, want alle bedragen excl. BTW, toch?
FROM mld_opdr o,
cnt_contract c,
cnt_contract mc,
prs_bedrijf b,
prs_contactpersoon cp,
prs_perslid pcp
--(SELECT ko.mld_opdr_key, ko.mld_kenmerkopdr_waarde
-- FROM mld_v_aanwezigkenmerkopdr ko, mld_kenmerk k
-- WHERE ko.mld_kenmerk_key = k.mld_kenmerk_key
-- AND k.mld_srtkenmerk_key = 961) nr -- Inkoopnummer
WHERE o.mld_statusopdr_key = 9
AND fac.gettrackingdate ('ORDAFR', o.mld_opdr_key) > TRUNC (SYSDATE, 'mm') -- Actual = Deze maand Afgerond (en nog niet Verwerkt)
AND NOT EXISTS -- Niet gemarkeerd als dispuut!
(SELECT 1
FROM mld_v_aanwezigkenmerkopdr ko, mld_kenmerk k
WHERE ko.mld_opdr_key = o.mld_opdr_key
AND ko.mld_kenmerk_key = k.mld_kenmerk_key
AND k.mld_srtkenmerk_key = 141 -- Dispuut
AND ko.mld_kenmerkopdr_waarde = '1') -- Aangevinkt
AND o.mld_uitvoerende_keys = c.cnt_prs_bedrijf_key
AND c.ins_discipline_key = 523 -- Variabele contracten
AND TRUNC (c.cnt_contract_looptijd_van) < TRUNC (SYSDATE, 'mm') - 1
AND c.cnt_contract_looptijd_tot >= TRUNC (SYSDATE, 'mm') - 1
AND c.cnt_prs_bedrijf_key = b.prs_bedrijf_key
AND b.prs_bedrijf_key = 31041 -- Wiltec
AND c.cnt_contract_mantel_key = mc.cnt_contract_key(+)
AND mc.prs_contactpersoon_key = cp.prs_contactpersoon_key(+)
AND cp.prs_perslid_key = pcp.prs_perslid_key(+)
--AND o.mld_opdr_key = nr.mld_opdr_key(+)
AND NOT EXISTS -- Niet gemarkeerd als dispuut!
(SELECT 1
FROM cnt_v_aanwezigcontract
WHERE ins_discipline_key = 523 -- Variabele contracten
--AND cnt_contract_status = 0 -- NIET Gesloten
AND TRUNC (cnt_contract_looptijd_van) < TRUNC (SYSDATE, 'mm') - 1
AND cnt_contract_looptijd_tot >= TRUNC (SYSDATE, 'mm') - 1
AND cnt_prs_bedrijf_key = c.cnt_prs_bedrijf_key
AND cnt_contract_nummer_intern > c.cnt_contract_nummer_intern)
GROUP BY pcp.prs_afdeling_key,
TO_CHAR (SYSDATE, 'yyyy-mm'),
'O',
b.prs_bedrijf_naam,
c.cnt_contract_nummer_intern,
c.cnt_contract_omschrijving,
c.cnt_contract_nummer;
-- Actual regels en basis voor oa. te exporteren/bevriezen regels op de 10e van
-- de maand; voor de output geldt:
@@ -1508,7 +1563,177 @@ AS
AND mc.prs_contactpersoon_key = cp.prs_contactpersoon_key(+)
AND cp.prs_perslid_key = pcp.prs_perslid_key(+)
AND c.prs_perslid_key_beh = pcm.prs_perslid_key
AND o.mld_opdr_key = nr.mld_opdr_key(+);
AND o.mld_opdr_key = nr.mld_opdr_key(+)
UNION ALL -- Variabele kosten uit ACTUAL opdrachten voor Wiltec (niet gekoppeld aan variabel contract)!
SELECT pcp.prs_afdeling_key,
TO_CHAR (TRUNC (SYSDATE, 'mm') - 1, 'yyyy-mm') maand, -- Voor 1e ORDAFR, deze maand factureren (achteraf)
b.prs_bedrijf_key,
b.prs_bedrijf_naam,
pcp.prs_perslid_key,
DECODE (pcp.prs_perslid_geslacht, 0, 'Mevr. ', 1, 'Dhr. ', '')
cp_aanhef,
DECODE (
COALESCE (pcp.prs_perslid_voorletters,
SUBSTR (pcp.prs_perslid_voornaam, 1, 1)),
NULL, NULL,
COALESCE (pcp.prs_perslid_voorletters,
SUBSTR (pcp.prs_perslid_voornaam, 1, 1) || '.')
|| ' ')
|| DECODE (pcp.prs_perslid_tussenvoegsel,
NULL, NULL,
pcp.prs_perslid_tussenvoegsel || ' ')
|| pcp.prs_perslid_naam
cp_naam,
pcp.prs_perslid_email cp_email,
c.cnt_contract_key,
c.cnt_contract_nummer_intern,
c.cnt_contract_omschrijving,
c.cnt_contract_nummer,
DECODE (pcm.prs_perslid_geslacht, 0, 'Mevr. ', 1, 'Dhr. ', '')
cm_aanhef,
DECODE (
COALESCE (pcm.prs_perslid_voorletters,
SUBSTR (pcm.prs_perslid_voornaam, 1, 1)),
NULL, NULL,
COALESCE (pcm.prs_perslid_voorletters,
SUBSTR (pcm.prs_perslid_voornaam, 1, 1) || '.')
|| ' ')
|| DECODE (pcm.prs_perslid_tussenvoegsel,
NULL, NULL,
pcm.prs_perslid_tussenvoegsel || ' ')
|| pcm.prs_perslid_naam
cm_naam,
NULL bes_bestelopdr_key,
NULL res_rsv_ruimte_key,
o.mld_opdr_key,
TO_CHAR (o.mld_melding_key) || '/' || TO_CHAR (o.mld_opdr_bedrijfopdr_volgnr) bro_id,
1 aantal,
o.mld_opdr_kosten kosten -- Netto bedrag, want alle bedragen excl. BTW, toch?
FROM mld_opdr o,
cnt_contract c,
prs_bedrijf b,
cnt_contract mc,
prs_contactpersoon cp,
prs_perslid pcp,
prs_perslid pcm
--(SELECT ko.mld_opdr_key, ko.mld_kenmerkopdr_waarde
-- FROM mld_v_aanwezigkenmerkopdr ko, mld_kenmerk k
-- WHERE ko.mld_kenmerk_key = k.mld_kenmerk_key
-- AND k.mld_srtkenmerk_key = 961) nr -- Inkoopnummer
WHERE o.mld_statusopdr_key = 9
AND fac.gettrackingdate ('ORDAFR', o.mld_opdr_key) BETWEEN TO_DATE ('20210501', 'yyyymmdd') AND TRUNC (SYSDATE, 'mm') -- Actual = Deze maand Afgerond (en nog niet Verwerkt)
AND NOT EXISTS -- Niet gemarkeerd als dispuut!
(SELECT 1
FROM mld_v_aanwezigkenmerkopdr ko, mld_kenmerk k
WHERE ko.mld_opdr_key = o.mld_opdr_key
AND ko.mld_kenmerk_key = k.mld_kenmerk_key
AND k.mld_srtkenmerk_key = 141 -- Dispuut
AND ko.mld_kenmerkopdr_waarde = '1') -- Aangevinkt
AND o.mld_uitvoerende_keys = c.cnt_prs_bedrijf_key
AND c.ins_discipline_key = 523 -- Variabele contracten
AND TRUNC (c.cnt_contract_looptijd_van) < TRUNC (SYSDATE, 'mm') - 1
AND c.cnt_contract_looptijd_tot >= TRUNC (SYSDATE, 'mm') - 1
AND c.cnt_prs_bedrijf_key = b.prs_bedrijf_key
AND b.prs_bedrijf_key = 31041 -- Wiltec
AND c.cnt_contract_mantel_key = mc.cnt_contract_key(+)
AND mc.prs_contactpersoon_key = cp.prs_contactpersoon_key(+)
AND cp.prs_perslid_key = pcp.prs_perslid_key(+)
AND c.prs_perslid_key_beh = pcm.prs_perslid_key
--AND o.mld_opdr_key = nr.mld_opdr_key(+)
AND NOT EXISTS -- Niet gemarkeerd als dispuut!
(SELECT 1
FROM cnt_v_aanwezigcontract
WHERE ins_discipline_key = 523 -- Variabele contracten
--AND cnt_contract_status = 0 -- NIET Gesloten
AND TRUNC (cnt_contract_looptijd_van) < TRUNC (SYSDATE, 'mm') - 1
AND cnt_contract_looptijd_tot >= TRUNC (SYSDATE, 'mm') - 1
AND cnt_prs_bedrijf_key = c.cnt_prs_bedrijf_key
AND cnt_contract_nummer_intern > c.cnt_contract_nummer_intern)
UNION ALL -- Variabele kosten uit ACTUAL opdrachten voor Wiltec-DISPUUT (niet gekoppeld aan variabel contract)!
SELECT pcp.prs_afdeling_key,
TO_CHAR (TRUNC (SYSDATE, 'mm') - 1, 'yyyy-mm') maand, -- Voor 1e ORDAFR, deze maand factureren (achteraf)
b.prs_bedrijf_key,
b.prs_bedrijf_naam,
pcp.prs_perslid_key,
DECODE (pcp.prs_perslid_geslacht, 0, 'Mevr. ', 1, 'Dhr. ', '')
cp_aanhef,
DECODE (
COALESCE (pcp.prs_perslid_voorletters,
SUBSTR (pcp.prs_perslid_voornaam, 1, 1)),
NULL, NULL,
COALESCE (pcp.prs_perslid_voorletters,
SUBSTR (pcp.prs_perslid_voornaam, 1, 1) || '.')
|| ' ')
|| DECODE (pcp.prs_perslid_tussenvoegsel,
NULL, NULL,
pcp.prs_perslid_tussenvoegsel || ' ')
|| pcp.prs_perslid_naam
cp_naam,
pcp.prs_perslid_email cp_email,
c.cnt_contract_key,
COALESCE (c.cnt_contract_nummer_intern, '') || '/DISPUUT' cnt_contract_nummer_intern,
c.cnt_contract_omschrijving,
c.cnt_contract_nummer,
DECODE (pcm.prs_perslid_geslacht, 0, 'Mevr. ', 1, 'Dhr. ', '')
cm_aanhef,
DECODE (
COALESCE (pcm.prs_perslid_voorletters,
SUBSTR (pcm.prs_perslid_voornaam, 1, 1)),
NULL, NULL,
COALESCE (pcm.prs_perslid_voorletters,
SUBSTR (pcm.prs_perslid_voornaam, 1, 1) || '.')
|| ' ')
|| DECODE (pcm.prs_perslid_tussenvoegsel,
NULL, NULL,
pcm.prs_perslid_tussenvoegsel || ' ')
|| pcm.prs_perslid_naam
cm_naam,
NULL bes_bestelopdr_key,
NULL res_rsv_ruimte_key,
o.mld_opdr_key,
TO_CHAR (o.mld_melding_key) || '/' || TO_CHAR (o.mld_opdr_bedrijfopdr_volgnr) bro_id,
1 aantal,
o.mld_opdr_kosten kosten -- Netto bedrag, want alle bedragen excl. BTW, toch?
FROM mld_opdr o,
cnt_contract c,
prs_bedrijf b,
cnt_contract mc,
prs_contactpersoon cp,
prs_perslid pcp,
prs_perslid pcm
--(SELECT ko.mld_opdr_key, ko.mld_kenmerkopdr_waarde
-- FROM mld_v_aanwezigkenmerkopdr ko, mld_kenmerk k
-- WHERE ko.mld_kenmerk_key = k.mld_kenmerk_key
-- AND k.mld_srtkenmerk_key = 961) nr -- Inkoopnummer
WHERE o.mld_statusopdr_key = 9
AND fac.gettrackingdate ('ORDAFR', o.mld_opdr_key) BETWEEN TO_DATE ('20210501', 'yyyymmdd') AND TRUNC (SYSDATE, 'mm') -- Actual = Deze maand Afgerond (en nog niet Verwerkt)
AND EXISTS -- Gemarkeerd als dispuut!
(SELECT 1
FROM mld_v_aanwezigkenmerkopdr ko, mld_kenmerk k
WHERE ko.mld_opdr_key = o.mld_opdr_key
AND ko.mld_kenmerk_key = k.mld_kenmerk_key
AND k.mld_srtkenmerk_key = 141 -- Dispuut
AND ko.mld_kenmerkopdr_waarde = '1') -- Aangevinkt
AND o.mld_uitvoerende_keys = c.cnt_prs_bedrijf_key
AND c.ins_discipline_key = 523 -- Variabele contracten
AND TRUNC (c.cnt_contract_looptijd_van) < TRUNC (SYSDATE, 'mm') - 1
AND c.cnt_contract_looptijd_tot >= TRUNC (SYSDATE, 'mm') - 1
AND c.cnt_prs_bedrijf_key = b.prs_bedrijf_key
AND b.prs_bedrijf_key = 31041 -- Wiltec
AND c.cnt_contract_mantel_key = mc.cnt_contract_key(+)
AND mc.prs_contactpersoon_key = cp.prs_contactpersoon_key(+)
AND cp.prs_perslid_key = pcp.prs_perslid_key(+)
AND c.prs_perslid_key_beh = pcm.prs_perslid_key
--AND o.mld_opdr_key = nr.mld_opdr_key(+)
AND NOT EXISTS -- Niet gemarkeerd als dispuut!
(SELECT 1
FROM cnt_v_aanwezigcontract
WHERE ins_discipline_key = 523 -- Variabele contracten
--AND cnt_contract_status = 0 -- NIET Gesloten
AND TRUNC (cnt_contract_looptijd_van) < TRUNC (SYSDATE, 'mm') - 1
AND cnt_contract_looptijd_tot >= TRUNC (SYSDATE, 'mm') - 1
AND cnt_prs_bedrijf_key = c.cnt_prs_bedrijf_key
AND cnt_contract_nummer_intern > c.cnt_contract_nummer_intern)
-- Te exporteren/bevriezen totalen over voorgaande maand (vast en variabel).
CREATE OR REPLACE VIEW kfsg_v_rap_actual_fact_tot
@@ -2193,7 +2418,94 @@ AS
AND c.prs_perslid_key_beh = pcm.prs_perslid_key
AND o.mld_opdr_key = nr.mld_opdr_key(+)
AND b.prs_bedrijf_key = kl.prs_link_key(+)
AND o.mld_melding_key = m.mld_melding_key;
AND o.mld_melding_key = m.mld_melding_key
UNION ALL -- Variabele kosten uit FROZEN opdrachten voor Wiltec (niet gekoppeld aan variabel contract)!
SELECT pcp.prs_afdeling_key,
o.mld_opdr_ordernr maand,
b.prs_bedrijf_key,
b.prs_bedrijf_naam,
pcp.prs_perslid_key,
DECODE (pcp.prs_perslid_geslacht, 0, 'Mevr. ', 1, 'Dhr. ', '')
cp_aanhef,
DECODE (
COALESCE (pcp.prs_perslid_voorletters,
SUBSTR (pcp.prs_perslid_voornaam, 1, 1)),
NULL,
NULL,
COALESCE (pcp.prs_perslid_voorletters,
SUBSTR (pcp.prs_perslid_voornaam, 1, 1) || '.')
|| ' ')
|| DECODE (pcp.prs_perslid_tussenvoegsel,
NULL, NULL,
pcp.prs_perslid_tussenvoegsel || ' ')
|| pcp.prs_perslid_naam
cp_naam,
pcp.prs_perslid_email,
c.cnt_contract_key,
c.cnt_contract_nummer_intern,
c.cnt_contract_omschrijving,
c.cnt_contract_nummer,
DECODE (pcm.prs_perslid_geslacht, 0, 'Mevr. ', 1, 'Dhr. ', '')
cm_aanhef,
DECODE (
COALESCE (pcm.prs_perslid_voorletters,
SUBSTR (pcm.prs_perslid_voornaam, 1, 1)),
NULL, NULL,
COALESCE (pcm.prs_perslid_voorletters,
SUBSTR (pcm.prs_perslid_voornaam, 1, 1) || '.')
|| ' ')
|| DECODE (pcm.prs_perslid_tussenvoegsel,
NULL, NULL,
pcm.prs_perslid_tussenvoegsel || ' ')
|| pcm.prs_perslid_naam
cm_naam,
NULL bes_bestelopdr_key,
NULL res_rsv_ruimte_key,
o.mld_opdr_key,
TO_CHAR (o.mld_melding_key) || '/' || TO_CHAR (o.mld_opdr_bedrijfopdr_volgnr) bro_id,
DECODE (kl.prs_kenmerklink_waarde, 1, 'Ja', 'Nee'),
1 aantal,
o.mld_opdr_kosten kosten, -- Netto bedrag, want alle bedragen excl. BTW, toch?
DECODE (c.cnt_contract_nummer_intern, 30, DECODE (m.mld_alg_onroerendgoed_keys, 8023, 'B', 'O'), 'X') bps -- 30=Maatwerk-contract met Eurest Catering/8023=Restaurant BPS (TERM-T1-3-R3236)
FROM mld_opdr o,
cnt_contract c,
prs_bedrijf b,
cnt_contract mc,
prs_contactpersoon cp,
prs_perslid pcp,
prs_perslid pcm,
--(SELECT ko.mld_opdr_key, ko.mld_kenmerkopdr_waarde
-- FROM mld_v_aanwezigkenmerkopdr ko, mld_kenmerk k
-- WHERE ko.mld_kenmerk_key = k.mld_kenmerk_key
-- AND k.mld_srtkenmerk_key = 961) nr, -- Inkoopnummer
(SELECT *
FROM prs_v_aanwezigkenmerklink
WHERE prs_kenmerk_key = 1040) kl, -- Factuur rechtstreeks naar SG!
mld_melding m
WHERE o.mld_opdr_ordernr IS NOT NULL -- Gefactureerd!
--AND o.mld_statusopdr_key = 7 -- Verwerkt (kan niet anders)
AND o.mld_uitvoerende_keys = c.cnt_prs_bedrijf_key
AND c.ins_discipline_key = 523 -- Variabele contracten
AND TO_CHAR (c.cnt_contract_looptijd_van, 'yyyy-mm') <= o.mld_opdr_ordernr
AND TO_CHAR (c.cnt_contract_looptijd_tot, 'yyyy-mm') >= o.mld_opdr_ordernr
AND c.cnt_prs_bedrijf_key = b.prs_bedrijf_key
AND b.prs_bedrijf_key = 31041 -- Wiltec
AND c.cnt_contract_mantel_key = mc.cnt_contract_key(+)
AND mc.prs_contactpersoon_key = cp.prs_contactpersoon_key(+)
AND cp.prs_perslid_key = pcp.prs_perslid_key(+)
AND c.prs_perslid_key_beh = pcm.prs_perslid_key
--AND o.mld_opdr_key = nr.mld_opdr_key(+)
AND b.prs_bedrijf_key = kl.prs_link_key(+)
AND o.mld_melding_key = m.mld_melding_key
AND NOT EXISTS -- Betreffende maand lopend contract!
(SELECT 1
FROM cnt_v_aanwezigcontract
WHERE ins_discipline_key = 523 -- Variabele contracten
--AND cnt_contract_status = 0 -- NIET Gesloten
AND TO_CHAR (cnt_contract_looptijd_van, 'yyyy-mm') <= o.mld_opdr_ordernr
AND TO_CHAR (cnt_contract_looptijd_tot, 'yyyy-mm') >= o.mld_opdr_ordernr
AND cnt_prs_bedrijf_key = c.cnt_prs_bedrijf_key
AND cnt_contract_nummer_intern > c.cnt_contract_nummer_intern);
-- Geexporteerde/bevroren totalen over voorgaande maanden (vast en variabel).
CREATE OR REPLACE VIEW kfsg_v_rap_frozen_fact_tot
@@ -2236,6 +2548,43 @@ AS -- Vaste contractkosten over de FROZEN termijnen
inkoopordernr,
bps;
-- KFSG#65747: Rapportage tbv. leverancier-contactpersonen!
CREATE OR REPLACE VIEW kfsg_v_rap_frozen_tot_lev
(
fclt_3d_user_key, -- Kunnen beperken per leverancier-contactpersoon!
maand,
broc_flag,
fclt_f_leverancier,
contractnr,
beschrijving,
inkoopordernr,
aantal,
kosten,
bps
)
AS -- Vaste contractkosten over de FROZEN termijnen
SELECT cp.prs_perslid_key,
v.maand,
DECODE (v.bes_bestelopdr_key, NULL, DECODE (v.res_rsv_ruimte_key, NULL, DECODE (v.mld_opdr_key, NULL, 'C', 'O'), 'R'), 'B') broc_flag,
v.prs_bedrijf_naam,
v.contractnr,
v.beschrijving,
v.inkoopordernr,
SUM (v.aantal),
SUM (COALESCE (v.kosten, 0)),
v.bps
FROM kfsg_v_frozen_fact v, prs_contactpersoon cp
WHERE v.extra_key = cp.prs_bedrijf_key
AND cp.prs_perslid_key IS NOT NULL -- Account in Facilitor!
GROUP BY cp.prs_perslid_key,
v.maand,
DECODE (v.bes_bestelopdr_key, NULL, DECODE (v.res_rsv_ruimte_key, NULL, DECODE (v.mld_opdr_key, NULL, 'C', 'O'), 'R'), 'B'),
v.prs_bedrijf_naam,
v.contractnr,
v.beschrijving,
v.inkoopordernr,
v.bps;
-- Geexporteerde/bevroren variabele bestelopdrachtkosten over voorgaande maanden (details).
CREATE OR REPLACE VIEW kfsg_v_rap_frozen_fact_bes
(
@@ -2301,6 +2650,75 @@ AS
AND ma.alg_locatie_key = l.alg_locatie_key(+)
AND l.alg_district_key = d.alg_district_key(+);
-- KFSG#65747: Rapportage tbv. leverancier-contactpersonen!
CREATE OR REPLACE VIEW kfsg_v_rap_frozen_bes_lev
(
fclt_3d_user_key, -- Kunnen beperken per leverancier-contactpersonen!
maand,
bes_bestelling_key,
bes_bestelopdr_key,
bes_id,
plaats,
ruimte,
catalogus,
besteldatum,
leverdatum,
bestellingstatus, -- Not used
bestelopdrachtstatus,
afhandeling, -- Not used
fclt_f_leverancier,
kosten,
fclt_f_contractnr,
fclt_f_inkoopordernr,
fclt_x_district,
bps
)
AS
SELECT cp.prs_perslid_key,
v.maand,
x.bes_bestelling_key,
v.bes_bestelopdr_key,
v.bro_id bes_id,
COALESCE (l.alg_locatie_code, ma.mld_adres_naam) plaatsaanduiding,
x.bes_bestelling_plaats ruimte,
x.ins_discipline_omschrijving,
bo.bes_bestelopdr_datum,
bo.bes_bestelopdr_leverdatum, -- Of uit FAC_TRACKING-tabel?
bs.bes_bestellingstatuses_omschr, -- Status van onderliggende artikelen/delen betrekken?
bos.bes_bestelopdrstatuses_omschr, -- Status van onderliggende artikelen/delen betrekken?
COALESCE (bo.bes_bestelopdr_opmerking, bo.bes_bestelopdr_delivery_opmerk) afhandeling,
v.prs_bedrijf_naam,
COALESCE (v.kosten, 0),
v.contractnr,
v.inkoopordernr,
d.alg_district_omschrijving,
v.bps
FROM kfsg_v_frozen_fact v,
bes_bestelopdr bo,
(SELECT DISTINCT boi.bes_bestelopdr_key, b.bes_bestelling_key, b.mld_adres_key_lev, b.bes_bestelling_plaats, b.bes_bestelling_datum, b.bes_bestelling_status, td.ins_discipline_omschrijving
FROM bes_bestelopdr_item boi, bes_bestelling_item bbi, bes_bestelling b, bes_srtdeel sd, bes_srtgroep sg, ins_tab_discipline td
WHERE boi.bes_bestelopdr_item_key = bbi.bes_bestelopdr_item_key
AND bbi.bes_bestelling_key = b.bes_bestelling_key
AND bbi.bes_srtdeel_key = sd.bes_srtdeel_key
AND sd.bes_srtgroep_key = sg.bes_srtgroep_key
AND sg.ins_discipline_key = td.ins_discipline_key) x,
bes_bestellingstatuses bs,
bes_bestelopdrstatuses bos,
mld_adres ma,
alg_locatie l,
alg_district d,
prs_contactpersoon cp
WHERE v.bes_bestelopdr_key = bo.bes_bestelopdr_key
AND bo.bes_bestelopdr_key = x.bes_bestelopdr_key
AND x.bes_bestelling_status = bs.bes_bestellingstatuses_key(+)
AND bo.bes_bestelopdr_status = bos.bes_bestelopdrstatuses_key(+)
AND x.mld_adres_key_lev = ma.mld_adres_key(+)
AND ma.alg_locatie_key = l.alg_locatie_key(+)
AND l.alg_district_key = d.alg_district_key(+)
AND v.extra_key = cp.prs_bedrijf_key
AND cp.prs_perslid_key IS NOT NULL -- Account in Facilitor!
;
-- Geexporteerde/bevroren variabele reserveringskosten over voorgaande maanden (details).
CREATE OR REPLACE VIEW kfsg_v_rap_frozen_fact_res
(
@@ -2377,6 +2795,86 @@ AS
AND og.alg_locatie_key = l.alg_locatie_key(+)
AND l.alg_district_key = d.alg_district_key(+);
-- KFSG#65747: Rapportage tbv. leverancier-contactpersonen!
CREATE OR REPLACE VIEW kfsg_v_rap_frozen_res_lev
(
fclt_3d_user_key, -- Kunnen beperken per leverancier-contactpersonen!
maand,
res_reservering_key,
res_rsv_ruimte_key,
res_id,
plaats, -- Gebouw
ruimte,
activiteit,
omschrijving,
van_datum, -- Not used
van_tijd,
tot_tijd,
status,
fclt_f_leverancier,
kosten,
fclt_f_contractnr,
fclt_f_inkoopordernr,
fclt_x_district,
bps
)
AS
SELECT cp.prs_perslid_key,
v.maand,
rrr.res_reservering_key,
v.res_rsv_ruimte_key,
v.bro_id res_id,
DECODE (
og.alg_type,
'R', og.alg_gebouw_code,
'V', og.alg_gebouw_code,
'G', og.alg_gebouw_code,
'T', og.alg_terreinsector_code,
l.alg_locatie_code)
plaatsaanduiding,
COALESCE ((SELECT res_ruimte_nr FROM res_ruimte WHERE res_ruimte_key = rro.res_ruimte_key), og.alg_plaatsaanduiding) ruimte,
ra.res_activiteit_omschrijving,
rrr.res_rsv_ruimte_omschrijving,
rrr.res_rsv_ruimte_van,
rrr.res_rsv_ruimte_van,
rrr.res_rsv_ruimte_tot,
rs.res_status_bo_omschrijving,
v.prs_bedrijf_naam,
COALESCE (v.kosten, 0),
v.contractnr,
v.inkoopordernr,
d.alg_district_omschrijving,
v.bps
FROM kfsg_v_frozen_fact v,
res_rsv_ruimte rrr,
res_activiteit ra,
res_status_bo rs,
res_ruimte_opstelling rro,
( SELECT res_ruimte_key, MAX (alg_ruimte_key) alg_ruimte_key
FROM res_alg_ruimte
WHERE res_alg_ruimte_verwijder IS NULL
GROUP BY res_ruimte_key) rar1,
( SELECT res_ruimte_key, MAX (alg_ruimte_key) alg_ruimte_key
FROM res_alg_ruimte
WHERE res_alg_ruimte_verwijder IS NOT NULL
GROUP BY res_ruimte_key) rar2,
alg_v_onroerendgoed_gegevens og,
alg_locatie l,
alg_district d,
prs_contactpersoon cp
WHERE v.res_rsv_ruimte_key = rrr.res_rsv_ruimte_key
AND rrr.res_activiteit_key = ra.res_activiteit_key
AND rrr.res_status_bo_key = rs.res_status_bo_key(+) -- Status van onderliggende artikelen/delen betrekken?
AND rrr.res_ruimte_opstel_key = rro.res_ruimte_opstel_key(+)
AND rro.res_ruimte_key = rar1.res_ruimte_key(+)
AND rro.res_ruimte_key = rar2.res_ruimte_key(+)
AND COALESCE (rar1.alg_ruimte_key, rar2.alg_ruimte_key, rrr.alg_ruimte_key) = og.alg_ruimte_key
AND og.alg_locatie_key = l.alg_locatie_key(+)
AND l.alg_district_key = d.alg_district_key(+)
AND v.extra_key = cp.prs_bedrijf_key
AND cp.prs_perslid_key IS NOT NULL -- Account in Facilitor!
;
-- Geexporteerde/bevroren variabele opdrachtkosten over voorgaande maanden (details).
CREATE OR REPLACE VIEW kfsg_v_rap_frozen_fact_mld
(
@@ -2458,6 +2956,91 @@ AS
AND l.alg_district_key = d.alg_district_key(+)
AND m.mld_alg_onroerendgoed_keys = og.alg_onroerendgoed_keys(+);
-- KFSG#65747: Rapportage tbv. leverancier-contactpersonen!
CREATE OR REPLACE VIEW kfsg_v_rap_frozen_mld_lev
(
fclt_3d_user_key, -- Kunnen beperken per leverancier-contactpersonen!
maand,
prio,
mld_melding_key,
mld_opdr_key,
opdr_id,
plaats, -- Gebouw
ruimte,
mld_stdmelding_oms,
opdrachttype,
omschrijving,
begindatum,
einddatum,
meldingstatus,
opdrachtstatus,
afhandeling,
fclt_f_leverancier,
kosten,
fclt_f_contractnr,
fclt_f_inkoopordernr,
fclt_x_district,
bps
)
AS
SELECT cp.prs_perslid_key,
v.maand,
TO_CHAR (m.mld_melding_spoed),
m.mld_melding_key,
o.mld_opdr_key,
COALESCE (sd.ins_srtdiscipline_prefix, '') || v.bro_id opdr_id,
DECODE (
og.alg_type,
'R', og.alg_gebouw_code,
'V', og.alg_gebouw_code,
'G', og.alg_gebouw_code,
'T', og.alg_terreinsector_code,
l.alg_locatie_code)
plaatsaanduiding,
DECODE (og.alg_type, 'R', og.alg_plaatsaanduiding, NULL) ruimte,
sm.mld_stdmelding_omschrijving,
ot.mld_typeopdr_omschrijving,
o.mld_opdr_omschrijving,
o.mld_opdr_datumbegin begindatum,
--TO_CHAR (o.mld_opdr_einddatum, 'dd-mm-yyyy') einddatum,
fac.gettrackingdate ('ORDAFM', o.mld_opdr_key) einddatum,
ms.mld_statuses_omschrijving,
os.mld_statusopdr_omschrijving,
o.mld_opdr_opmerking,
v.prs_bedrijf_naam,
COALESCE (o.mld_opdr_kosten, 0),
v.contractnr,
v.inkoopordernr,
d.alg_district_omschrijving,
v.bps
FROM kfsg_v_frozen_fact v,
mld_opdr o,
mld_statusopdr os,
mld_typeopdr ot,
mld_melding m,
mld_statuses ms,
mld_stdmelding sm,
mld_discipline md,
ins_srtdiscipline sd,
alg_locatie l,
alg_district d,
alg_v_onroerendgoed_gegevens og,
prs_contactpersoon cp
WHERE v.mld_opdr_key = o.mld_opdr_key
AND o.mld_statusopdr_key = os.mld_statusopdr_key
AND o.mld_typeopdr_key = ot.mld_typeopdr_key
AND o.mld_melding_key = m.mld_melding_key
AND m.mld_melding_status = ms.mld_statuses_key
AND m.mld_stdmelding_key = sm.mld_stdmelding_key
AND sm.mld_ins_discipline_key = md.ins_discipline_key
AND md.ins_srtdiscipline_key = sd.ins_srtdiscipline_key
AND m.mld_alg_locatie_key = l.alg_locatie_key(+)
AND l.alg_district_key = d.alg_district_key(+)
AND m.mld_alg_onroerendgoed_keys = og.alg_onroerendgoed_keys(+)
AND v.extra_key = cp.prs_bedrijf_key
AND cp.prs_perslid_key IS NOT NULL -- Account in Facilitor!
;
CREATE OR REPLACE PROCEDURE kfsg_select_fact (p_applname IN VARCHAR2,
p_applrun IN VARCHAR2)
AS