KFSG#51990 Facturatieproces
svn path=/Customer/trunk/; revision=40601
This commit is contained in:
454
KFSG/kfsg.sql
454
KFSG/kfsg.sql
@@ -451,7 +451,7 @@ AS
|
||||
AND p.prs_afdeling_key = a.prs_afdeling_key
|
||||
AND a.prs_kostenplaats_key = ka.prs_kostenplaats_key
|
||||
AND geg.datum < SYSDATE;
|
||||
/*
|
||||
|
||||
-- KFSG#51990: Facturatieproces (eerste opzet zoals KFNS)!
|
||||
CREATE OR REPLACE VIEW kfsg_v_rap_actual_cost_tot
|
||||
(
|
||||
@@ -471,19 +471,18 @@ CREATE OR REPLACE VIEW kfsg_v_rap_actual_cost_tot
|
||||
kosten
|
||||
)
|
||||
AS -- Vaste contractkosten over de ACTUAL termijn
|
||||
SELECT c.cp_afdeling_key,
|
||||
SELECT c.prs_afdeling_key,
|
||||
TO_CHAR (SYSDATE, 'yyyy-mm'), -- Deze maand volgende maand factureren (achteraf)
|
||||
--c.prs_bedrijf_key,
|
||||
c.prs_bedrijf_naam bedrijf,
|
||||
--c.cp_perslid_key,
|
||||
--c.prs_perslid_key,
|
||||
--c.cp_aanhef,
|
||||
--c.cp_naam,
|
||||
--c.cp_email,
|
||||
--c.cnt_contract_key,
|
||||
c.cnt_contract_nummer_intern,
|
||||
c.cnt_contract_nummer_intern, -- Uit deze maand lopend contract, anders geen vaste kosten
|
||||
c.cnt_contract_omschrijving,
|
||||
--kc.cnt_kenmerkcontract_waarde,
|
||||
c.cnt_contract_nummer, -- Uit deze maand lopend contract, anders geen vaste kosten
|
||||
c.cnt_contract_nummer,
|
||||
--NULL mld_opdr_key,
|
||||
--NULL opdr_id,
|
||||
0 aantal,
|
||||
@@ -497,18 +496,14 @@ AS -- Vaste contractkosten over de ACTUAL termijn
|
||||
kosten -- Wat als looptijd < jaar?
|
||||
FROM (SELECT b.prs_bedrijf_key,
|
||||
b.prs_bedrijf_naam,
|
||||
pcp.prs_afdeling_key cp_afdeling_key,
|
||||
pcp.prs_perslid_key cp_perslid_key,
|
||||
DECODE (pcp.prs_perslid_geslacht,
|
||||
0, 'Mevr. ',
|
||||
1, 'Dhr. ',
|
||||
'')
|
||||
pcp.prs_afdeling_key,
|
||||
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,
|
||||
NULL, NULL,
|
||||
COALESCE (
|
||||
pcp.prs_perslid_voorletters,
|
||||
SUBSTR (pcp.prs_perslid_voornaam, 1, 1) || '.')
|
||||
@@ -529,8 +524,7 @@ AS -- Vaste contractkosten over de ACTUAL termijn
|
||||
prs_bedrijf b,
|
||||
cnt_contract mc,
|
||||
prs_contactpersoon cp,
|
||||
prs_perslid pcp,
|
||||
prs_perslid pcm
|
||||
prs_perslid pcp
|
||||
WHERE c.ins_discipline_key = 522 -- Vaste contracten
|
||||
--AND c.cnt_contract_status = 0 -- NIET Gesloten
|
||||
AND TRUNC (c.cnt_contract_looptijd_van) < TRUNC (LAST_DAY (SYSDATE))
|
||||
@@ -538,11 +532,7 @@ AS -- Vaste contractkosten over de ACTUAL termijn
|
||||
AND c.cnt_prs_bedrijf_key = b.prs_bedrijf_key
|
||||
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) c
|
||||
LEFT JOIN cnt_kenmerkcontract kc
|
||||
ON kc.cnt_kenmerk_key = -1 -- Inkoopordernummer NS
|
||||
AND c.cnt_contract_key = kc.cnt_contract_key
|
||||
AND cp.prs_perslid_key = pcp.prs_perslid_key(+)) c
|
||||
LEFT JOIN cnt_kenmerkcontract ce
|
||||
ON ce.cnt_kenmerk_key = -1 -- Credit/extra kosten
|
||||
AND c.cnt_contract_key = ce.cnt_contract_key
|
||||
@@ -554,14 +544,13 @@ AS -- Vaste contractkosten over de ACTUAL termijn
|
||||
TO_CHAR (SYSDATE, 'yyyy-mm'), -- Deze maand ORDAFR, volgende maand factureren (achteraf)
|
||||
--b.prs_bedrijf_key,
|
||||
b.prs_bedrijf_naam,
|
||||
--pcp.prs_perslid_key cp_perslid_key,
|
||||
--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,
|
||||
-- NULL, NULL,
|
||||
-- COALESCE (pcp.prs_perslid_voorletters,
|
||||
-- SUBSTR (pcp.prs_perslid_voornaam, 1, 1) || '.')
|
||||
-- || ' ')
|
||||
@@ -574,12 +563,9 @@ AS -- Vaste contractkosten over de ACTUAL termijn
|
||||
--c.cnt_contract_key,
|
||||
c.cnt_contract_nummer_intern,
|
||||
c.cnt_contract_omschrijving,
|
||||
--kc.cnt_kenmerkcontract_waarde,
|
||||
c.cnt_contract_nummer,
|
||||
--o.mld_opdr_key,
|
||||
-- TO_CHAR (o.mld_melding_key)
|
||||
--|| '/'
|
||||
--|| TO_CHAR (o.mld_opdr_bedrijfopdr_volgnr)
|
||||
--TO_CHAR (o.mld_melding_key) || '/' || TO_CHAR (o.mld_opdr_bedrijfopdr_volgnr)
|
||||
-- opdr_id,
|
||||
COUNT ( * ) aantal,
|
||||
SUM (o.mld_opdr_kosten) kosten
|
||||
@@ -599,8 +585,7 @@ AS -- Vaste contractkosten over de ACTUAL termijn
|
||||
cnt_contract mc,
|
||||
prs_bedrijf b,
|
||||
prs_contactpersoon cp,
|
||||
prs_perslid pcp,
|
||||
prs_perslid pcm
|
||||
prs_perslid pcp
|
||||
WHERE o.mld_statusopdr_key = 9
|
||||
AND o.mld_opdr_key = t.fac_tracking_refkey
|
||||
AND t.fac_srtnotificatie_key = 76 -- ORDAFR
|
||||
@@ -614,14 +599,13 @@ AS -- Vaste contractkosten over de ACTUAL termijn
|
||||
AND ko.mld_kenmerkopdr_waarde = '1') -- Aangevinkt
|
||||
AND o.cnt_contract_key = c.cnt_contract_key(+) -- TODO: PLUS WEG
|
||||
AND c.ins_discipline_key(+) = 523 -- TODO: PLUS WEG/Variabele contracten
|
||||
--AND c.cnt_contract_status = 0 -- NIET Gesloten
|
||||
--AND c1.cnt_contract_nummer_intern = c2.cnt_contract_nummer_intern
|
||||
--AND (t.fac_tracking_datum BETWEEN c2.cnt_contract_looptijd_van
|
||||
-- AND c2.cnt_contract_looptijd_tot
|
||||
--AND (t.fac_tracking_datum BETWEEN c2.cnt_contract_looptijd_van AND c2.cnt_contract_looptijd_tot
|
||||
-- OR NOT EXISTS
|
||||
-- (SELECT 1
|
||||
-- FROM cnt_contract
|
||||
-- WHERE t.fac_tracking_datum BETWEEN cnt_contract_looptijd_van
|
||||
-- AND cnt_contract_looptijd_tot
|
||||
-- WHERE t.fac_tracking_datum BETWEEN cnt_contract_looptijd_van AND cnt_contract_looptijd_tot
|
||||
-- AND cnt_contract_nummer_intern = c2.cnt_contract_nummer_intern))
|
||||
--AND o.mld_melding_key = m.mld_melding_key
|
||||
--AND m.prs_perslid_key = pf.prs_perslid_key
|
||||
@@ -633,11 +617,10 @@ AS -- Vaste contractkosten over de ACTUAL termijn
|
||||
--AND td.prs_kostensoort_key = ksv.prs_kostensoort_key(+)
|
||||
--AND o.prs_kostenplaats_key = kp.prs_kostenplaats_key
|
||||
--AND o.mld_uitvoerende_keys = b.prs_bedrijf_key
|
||||
AND c.cnt_prs_bedrijf_key = b.prs_bedrijf_key(+) -- TODO: PLUS WEG
|
||||
AND c.cnt_prs_bedrijf_key = b.prs_bedrijf_key
|
||||
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(+) -- TODO: PLUS WEG
|
||||
GROUP BY pcp.prs_afdeling_key,
|
||||
TO_CHAR (SYSDATE, 'yyyy-mm'),
|
||||
--b.prs_bedrijf_key,
|
||||
@@ -645,13 +628,106 @@ AS -- Vaste contractkosten over de ACTUAL termijn
|
||||
--c.cnt_contract_key,
|
||||
c.cnt_contract_nummer_intern,
|
||||
c.cnt_contract_omschrijving,
|
||||
c.cnt_contract_nummer;
|
||||
c.cnt_contract_nummer
|
||||
UNION ALL -- Reserveringskosten
|
||||
SELECT x.prs_afdeling_key,
|
||||
TO_CHAR (SYSDATE, 'yyyy-mm'), -- Deze maand volgende maand factureren (achteraf)
|
||||
--x.prs_bedrijf_key,
|
||||
x.prs_bedrijf_naam bedrijf,
|
||||
--x.cnt_contract_key,
|
||||
x.cnt_contract_nummer_intern, -- Uit deze maand lopend contract, anders geen variabele kosten
|
||||
x.cnt_contract_omschrijving,
|
||||
x.cnt_contract_nummer,
|
||||
--NULL mld_opdr_key,
|
||||
--NULL opdr_id,
|
||||
COUNT (DISTINCT x.res_rsv_ruimte_key) aantal,
|
||||
SUM (COALESCE (verw_prijs, prijs, 0)) kosten -- Netto bedrag
|
||||
FROM (SELECT --b.prs_bedrijf_key,
|
||||
b.prs_bedrijf_naam,
|
||||
pcp.prs_afdeling_key,
|
||||
--c.cnt_contract_key,
|
||||
c.cnt_contract_nummer_intern, -- Uit deze maand lopend contract, anders geen variabele kosten
|
||||
c.cnt_contract_omschrijving,
|
||||
c.cnt_contract_nummer,
|
||||
rrr.res_rsv_ruimte_key,
|
||||
--rrr.res_reservering_key,
|
||||
--rrr.res_rsv_ruimte_volgnr,
|
||||
--rra.res_rsv_artikel_aantal res_aantal,
|
||||
--LTRIM (rra.res_artikel_omschrijving) || ' [' || TO_CHAR (res_rsv_artikel_levering, 'dd-mm-yyyy') || ']' res_voorziening,
|
||||
--rra.res_rsv_artikel_levering reslev,
|
||||
rra.res_rsv_artikel_prijs verw_prijs,
|
||||
rra.res_rsv_artikel_aantal * rra.res_artikel_prijs prijs,
|
||||
rra.btw
|
||||
FROM res_rsv_ruimte rrr,
|
||||
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_allonroerendgoed aog,
|
||||
(SELECT rra.res_rsv_ruimte_key,
|
||||
rra.res_rsv_artikel_levering,
|
||||
rra.res_rsv_artikel_prijs,
|
||||
rra.res_rsv_artikel_aantal,
|
||||
ra.res_artikel_prijs,
|
||||
DECODE (COALESCE (rra.res_rsv_artikel_btw, ra.res_artikel_btw),
|
||||
NULL, 'VH',
|
||||
21, 'VH',
|
||||
'VL')
|
||||
btw,
|
||||
ra.res_discipline_key,
|
||||
ra.res_artikel_omschrijving,
|
||||
ra.res_artikel_eenheid
|
||||
FROM res_v_aanwezigrsv_artikel rra, res_artikel ra
|
||||
WHERE rra.res_rsv_artikel_levering > TO_DATE ('20190101', 'yyyymmdd')
|
||||
AND rra.res_rsv_artikel_levering < TRUNC (SYSDATE + 1)
|
||||
AND rra.res_rsv_artikel_verwerkt IS NULL
|
||||
AND rra.res_rsv_artikel_dirtlevel = 0
|
||||
AND rra.res_artikel_key = ra.res_artikel_key) rra,
|
||||
res_discipline rd,
|
||||
res_disc_params dp,
|
||||
prs_bedrijf b,
|
||||
cnt_v_aanwezigcontract c,
|
||||
cnt_contract mc,
|
||||
prs_contactpersoon cp,
|
||||
prs_perslid pcp
|
||||
WHERE rrr.res_activiteit_key != -1 -- Alle activiteiten?
|
||||
AND rrr.res_rsv_ruimte_dirtlevel = 0
|
||||
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) = aog.alg_ruimte_key
|
||||
AND rrr.res_rsv_ruimte_key = rra.res_rsv_ruimte_key
|
||||
AND rra.res_discipline_key = rd.ins_discipline_key
|
||||
AND rd.ins_discipline_key = dp.res_ins_discipline_key
|
||||
AND dp.prs_bedrijf_key = b.prs_bedrijf_key(+) -- TODO: PLUS WEG
|
||||
AND b.prs_bedrijf_key = c.cnt_prs_bedrijf_key(+) -- TODO: PLUS WEG
|
||||
AND c.ins_discipline_key(+) = 523 -- TODO: PLUS WEG/Variabele contracten
|
||||
--AND c.cnt_contract_status = 0 -- NIET Gesloten
|
||||
--AND TRUNC (c.cnt_contract_looptijd_van) < TRUNC (LAST_DAY (SYSDATE)) -- TODO: COMMENTAAR WEG
|
||||
--AND c.cnt_contract_looptijd_tot >= TRUNC (LAST_DAY (SYSDATE)) -- TODO: COMMENTAAR WEG
|
||||
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(+)) x
|
||||
GROUP BY x.prs_afdeling_key,
|
||||
TO_CHAR (SYSDATE, 'yyyy-mm'),
|
||||
--x.prs_bedrijf_key,
|
||||
x.prs_bedrijf_naam,
|
||||
--x.cnt_contract_key,
|
||||
x.cnt_contract_nummer_intern,
|
||||
x.cnt_contract_omschrijving,
|
||||
x.cnt_contract_nummer;
|
||||
|
||||
-- Actual regels en basis voor oa. te exporteren/bevriezen regels op de 10e van
|
||||
-- de maand; voor de output geldt:
|
||||
-- Dat deze de actual vaste contractkosten toont (over afgelopen maand).
|
||||
-- Dat deze de actual variabele opdrachten toont (voor 1e ORDAFR).
|
||||
-- Dat deze tot de 10e van de huidige maand alleen nog door Kien wijzigbaar is.
|
||||
-- Dat deze de actual variabele reserveringskosten toont (over afgelopen maand).
|
||||
-- Dat deze tot de 10e van de huidige maand alleen nog door Yask wijzigbaar is.
|
||||
CREATE OR REPLACE VIEW kfsg_v_actual_fact -- Tbv. FACT_EXPORT!
|
||||
(
|
||||
prs_afdeling_key,
|
||||
@@ -668,29 +744,32 @@ CREATE OR REPLACE VIEW kfsg_v_actual_fact -- Tbv. FACT_EXPORT!
|
||||
inkoopordernr,
|
||||
cm_aanhef,
|
||||
cm_naam,
|
||||
bes_bestelopdr_key,
|
||||
res_rsv_ruimte_key,
|
||||
mld_opdr_key,
|
||||
opdr_id,
|
||||
bro_id,
|
||||
aantal,
|
||||
kosten
|
||||
)
|
||||
AS
|
||||
SELECT c.cp_afdeling_key, -- Vaste contractkosten over de ACTUAL termijn
|
||||
SELECT c.prs_afdeling_key, -- Vaste contractkosten over de ACTUAL termijn
|
||||
TO_CHAR (TRUNC (SYSDATE, 'mm') - 1, 'yyyy-mm'), -- Afgelopen maand deze maand factureren (achteraf)
|
||||
c.prs_bedrijf_key,
|
||||
c.prs_bedrijf_naam,
|
||||
c.cp_perslid_key,
|
||||
c.prs_perslid_key,
|
||||
c.cp_aanhef,
|
||||
c.cp_naam,
|
||||
c.cp_email,
|
||||
c.cnt_contract_key,
|
||||
c.cnt_contract_nummer_intern,
|
||||
c.cnt_contract_omschrijving,
|
||||
--kc.cnt_kenmerkcontract_waarde,
|
||||
c.cnt_contract_nummer, -- Uit afgelopen maand lopend contract, anders geen vaste kosten
|
||||
c.cm_aanhef,
|
||||
c.cm_naam,
|
||||
NULL bes_bestelopdr_key,
|
||||
NULL res_rsv_ruimte_key,
|
||||
NULL mld_opdr_key,
|
||||
NULL opdr_id,
|
||||
NULL bro_id,
|
||||
0 aantal,
|
||||
ROUND (
|
||||
DECODE (COALESCE (c.cnt_contract_termijnkosten, 0),
|
||||
@@ -702,8 +781,8 @@ AS
|
||||
kosten -- Wat als looptijd < jaar?
|
||||
FROM (SELECT b.prs_bedrijf_key,
|
||||
b.prs_bedrijf_naam,
|
||||
pcp.prs_afdeling_key cp_afdeling_key,
|
||||
pcp.prs_perslid_key cp_perslid_key,
|
||||
pcp.prs_afdeling_key,
|
||||
pcp.prs_perslid_key,
|
||||
DECODE (pcp.prs_perslid_geslacht,
|
||||
0, 'Mevr. ',
|
||||
1, 'Dhr. ',
|
||||
@@ -771,21 +850,167 @@ 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) c
|
||||
LEFT JOIN cnt_kenmerkcontract kc
|
||||
ON kc.cnt_kenmerk_key = -1 -- Inkoopordernummer NS
|
||||
AND c.cnt_contract_key = kc.cnt_contract_key
|
||||
LEFT JOIN cnt_kenmerkcontract ce
|
||||
ON ce.cnt_kenmerk_key = -1 -- Credit/extra kosten
|
||||
AND c.cnt_contract_key = ce.cnt_contract_key
|
||||
LEFT JOIN cnt_kenmerkcontract bm
|
||||
ON bm.cnt_kenmerk_key = -1 -- Bonus/malus
|
||||
AND c.cnt_contract_key = bm.cnt_contract_key
|
||||
UNION ALL -- Reserveringskosten
|
||||
SELECT x.prs_afdeling_key,
|
||||
TO_CHAR (TRUNC (SYSDATE, 'mm') - 1, 'yyyy-mm'), -- Afgelopen maand deze maand factureren (achteraf)
|
||||
x.prs_bedrijf_key,
|
||||
x.prs_bedrijf_naam bedrijf,
|
||||
x.prs_perslid_key,
|
||||
x.cp_aanhef,
|
||||
x.cp_naam,
|
||||
x.cp_email,
|
||||
x.cnt_contract_key,
|
||||
x.cnt_contract_nummer_intern, -- Uit deze maand lopend contract, anders geen variabele kosten
|
||||
x.cnt_contract_omschrijving,
|
||||
x.cnt_contract_nummer,
|
||||
x.cm_aanhef,
|
||||
x.cm_naam,
|
||||
NULL bes_bestelopdr_key,
|
||||
x.res_rsv_ruimte_key,
|
||||
NULL mld_opdr_key,
|
||||
TO_CHAR (x.res_reservering_key) || '/' || TO_CHAR (x.res_rsv_ruimte_volgnr) bro_id,
|
||||
1 aantal,
|
||||
SUM (COALESCE (verw_prijs, prijs, 0)) kosten -- Netto bedrag
|
||||
FROM (SELECT b.prs_bedrijf_key,
|
||||
b.prs_bedrijf_naam,
|
||||
pcp.prs_afdeling_key,
|
||||
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, -- Uit deze maand lopend contract, anders geen variabele kosten
|
||||
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,
|
||||
rrr.res_rsv_ruimte_key,
|
||||
rrr.res_reservering_key,
|
||||
rrr.res_rsv_ruimte_volgnr,
|
||||
--rra.res_rsv_artikel_aantal res_aantal,
|
||||
--LTRIM (rra.res_artikel_omschrijving) || ' [' || TO_CHAR (res_rsv_artikel_levering, 'dd-mm-yyyy') || ']' res_voorziening,
|
||||
--rra.res_rsv_artikel_levering reslev,
|
||||
rra.res_rsv_artikel_prijs verw_prijs,
|
||||
rra.res_rsv_artikel_aantal * rra.res_artikel_prijs prijs,
|
||||
rra.btw
|
||||
FROM res_rsv_ruimte rrr,
|
||||
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_allonroerendgoed aog,
|
||||
(SELECT rra.res_rsv_ruimte_key,
|
||||
rra.res_rsv_artikel_levering,
|
||||
rra.res_rsv_artikel_prijs,
|
||||
rra.res_rsv_artikel_aantal,
|
||||
ra.res_artikel_prijs,
|
||||
DECODE (COALESCE (rra.res_rsv_artikel_btw, ra.res_artikel_btw),
|
||||
NULL, 'VH',
|
||||
21, 'VH',
|
||||
'VL')
|
||||
btw,
|
||||
ra.res_discipline_key,
|
||||
ra.res_artikel_omschrijving,
|
||||
ra.res_artikel_eenheid
|
||||
FROM res_v_aanwezigrsv_artikel rra, res_artikel ra
|
||||
WHERE rra.res_rsv_artikel_levering > TO_DATE ('20190101', 'yyyymmdd')
|
||||
AND rra.res_rsv_artikel_levering < TRUNC (SYSDATE, 'mm')
|
||||
AND rra.res_rsv_artikel_verwerkt IS NULL
|
||||
AND rra.res_rsv_artikel_dirtlevel = 0
|
||||
AND rra.res_artikel_key = ra.res_artikel_key) rra,
|
||||
res_discipline rd,
|
||||
res_disc_params dp,
|
||||
prs_bedrijf b,
|
||||
cnt_v_aanwezigcontract c,
|
||||
cnt_contract mc,
|
||||
prs_contactpersoon cp,
|
||||
prs_perslid pcp,
|
||||
prs_perslid pcm
|
||||
WHERE rrr.res_activiteit_key != -1 -- Alle activiteiten?
|
||||
AND rrr.res_rsv_ruimte_dirtlevel = 0
|
||||
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) = aog.alg_ruimte_key
|
||||
AND rrr.res_rsv_ruimte_key = rra.res_rsv_ruimte_key
|
||||
AND rra.res_discipline_key = rd.ins_discipline_key
|
||||
AND rd.ins_discipline_key = dp.res_ins_discipline_key
|
||||
AND dp.prs_bedrijf_key = b.prs_bedrijf_key(+) -- TODO: PLUS WEG
|
||||
AND b.prs_bedrijf_key = c.cnt_prs_bedrijf_key(+) -- TODO: PLUS WEG
|
||||
AND c.ins_discipline_key(+) = 523 -- TODO: PLUS WEG/Variabele contracten
|
||||
--AND c.cnt_contract_status = 0 -- NIET Gesloten
|
||||
--AND TRUNC (c.cnt_contract_looptijd_van) < TRUNC (LAST_DAY (SYSDATE)) -- TODO: COMMENTAAR WEG
|
||||
--AND c.cnt_contract_looptijd_tot >= TRUNC (LAST_DAY (SYSDATE)) -- TODO: COMMENTAAR WEG
|
||||
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) x
|
||||
GROUP BY x.prs_afdeling_key,
|
||||
TO_CHAR (TRUNC (SYSDATE, 'mm') - 1, 'yyyy-mm'),
|
||||
x.prs_bedrijf_key,
|
||||
x.prs_bedrijf_naam,
|
||||
x.prs_perslid_key,
|
||||
x.cp_aanhef,
|
||||
x.cp_naam,
|
||||
x.cp_email,
|
||||
x.cnt_contract_key,
|
||||
x.cnt_contract_nummer_intern,
|
||||
x.cnt_contract_omschrijving,
|
||||
x.cnt_contract_nummer,
|
||||
x.cm_aanhef,
|
||||
x.cm_naam,
|
||||
x.res_rsv_ruimte_key,
|
||||
TO_CHAR (x.res_reservering_key) || '/' || TO_CHAR (x.res_rsv_ruimte_volgnr),
|
||||
1
|
||||
UNION ALL -- Variabele kosten uit ACTUAL opdrachten op variabele contracten
|
||||
SELECT pcp.prs_afdeling_key,
|
||||
TO_CHAR (TRUNC (SYSDATE, 'mm') - 1, 'yyyy-mm'), -- Voor 1e ORDAFR, deze maand factureren (achteraf)
|
||||
b.prs_bedrijf_key,
|
||||
b.prs_bedrijf_naam,
|
||||
pcp.prs_perslid_key cp_perslid_key,
|
||||
pcp.prs_perslid_key,
|
||||
DECODE (pcp.prs_perslid_geslacht, 0, 'Mevr. ', 1, 'Dhr. ', '')
|
||||
cp_aanhef,
|
||||
DECODE (
|
||||
@@ -804,7 +1029,6 @@ AS
|
||||
c.cnt_contract_key,
|
||||
c.cnt_contract_nummer_intern,
|
||||
c.cnt_contract_omschrijving,
|
||||
--kc.cnt_kenmerkcontract_waarde,
|
||||
c.cnt_contract_nummer,
|
||||
DECODE (pcm.prs_perslid_geslacht, 0, 'Mevr. ', 1, 'Dhr. ', '')
|
||||
cm_aanhef,
|
||||
@@ -820,11 +1044,10 @@ AS
|
||||
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)
|
||||
opdr_id,
|
||||
TO_CHAR (o.mld_melding_key) || '/' || TO_CHAR (o.mld_opdr_bedrijfopdr_volgnr) bro_id,
|
||||
1 aantal,
|
||||
o.mld_opdr_kosten kosten
|
||||
FROM mld_opdr o,
|
||||
@@ -835,7 +1058,7 @@ AS
|
||||
prs_contactpersoon cp,
|
||||
prs_perslid pcp,
|
||||
prs_perslid pcm
|
||||
WHERE o.mld_statusopdr_key = 9
|
||||
WHERE o.mld_statusopdr_key = 9
|
||||
AND o.mld_opdr_key = t.fac_tracking_refkey
|
||||
AND t.fac_srtnotificatie_key = 76 -- ORDAFR
|
||||
AND t.fac_tracking_datum < TRUNC (SYSDATE, 'mm')
|
||||
@@ -852,8 +1075,7 @@ AS
|
||||
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(+) -- TODO: PLUS WEG
|
||||
;
|
||||
AND c.prs_perslid_key_beh = pcm.prs_perslid_key;
|
||||
|
||||
-- Te exporteren/bevriezen totalen over voorgaande maand (vast en variabel).
|
||||
CREATE OR REPLACE VIEW kfsg_v_rap_actual_fact_tot
|
||||
@@ -891,28 +1113,25 @@ AS
|
||||
inkoopordernr;
|
||||
|
||||
-- Te exporteren/bevriezen variabele kosten over voorgaande maand (details).
|
||||
CREATE OR REPLACE VIEW kfsg_v_rap_actual_fact_var
|
||||
CREATE OR REPLACE VIEW kfsg_v_rap_actual_fact_mld
|
||||
(
|
||||
fclt_3d_afdeling_key, -- Kunnen beperken per leverancier!
|
||||
maand,
|
||||
prio,
|
||||
prefix,
|
||||
mld_melding_key,
|
||||
volgnr,
|
||||
mld_opdr_key,
|
||||
opdrachttype,
|
||||
opdr_id,
|
||||
plaats,
|
||||
alg_ruimte_omschrijving,
|
||||
ruimte,
|
||||
mld_stdmelding_oms,
|
||||
opdrachttype,
|
||||
omschrijving,
|
||||
begindatum,
|
||||
--begintijd,
|
||||
einddatum,
|
||||
meldingstatus,
|
||||
opdrachtstatus,
|
||||
einddatum,
|
||||
--eindtijd,
|
||||
fclt_f_leverancier,
|
||||
afhandeling,
|
||||
fclt_f_leverancier,
|
||||
kosten,
|
||||
fclt_f_inkoopordernr,
|
||||
fclt_x_district
|
||||
@@ -921,11 +1140,9 @@ AS
|
||||
SELECT v.prs_afdeling_key,
|
||||
v.maand,
|
||||
TO_CHAR (m.mld_melding_spoed),
|
||||
sd.ins_srtdiscipline_prefix,
|
||||
TO_CHAR (m.mld_melding_key),
|
||||
TO_CHAR (o.mld_opdr_bedrijfopdr_volgnr),
|
||||
TO_CHAR (o.mld_opdr_key),
|
||||
ot.mld_typeopdr_omschrijving,
|
||||
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,
|
||||
@@ -934,30 +1151,24 @@ AS
|
||||
'T', og.alg_terreinsector_code,
|
||||
l.alg_locatie_code)
|
||||
plaatsaanduiding,
|
||||
DECODE (og.alg_type, 'R', og.alg_ruimte_omschrijving, NULL)
|
||||
alg_ruimte_omschrijving,
|
||||
DECODE (og.alg_type, 'R', og.alg_plaatsaanduiding, NULL) ruimte,
|
||||
sm.mld_stdmelding_omschrijving,
|
||||
ot.mld_typeopdr_omschrijving,
|
||||
o.mld_opdr_omschrijving,
|
||||
TO_CHAR (o.mld_opdr_datumbegin, 'dd-mm-yyyy') datum,
|
||||
--TO_CHAR (o.mld_opdr_datumbegin, 'hh24:mi') tijd,
|
||||
ms.mld_statuses_omschrijving,
|
||||
os.mld_statusopdr_omschrijving,
|
||||
--TO_CHAR (o.mld_opdr_einddatum, 'dd-mm-yyyy') einddatum,
|
||||
TO_CHAR (fac.gettrackingdate ('ORDAFM', o.mld_opdr_key), 'dd-mm-yyyy') einddatum,
|
||||
--TO_CHAR (o.mld_opdr_einddatum, 'hh24:mi') eindtijd,
|
||||
--COALESCE (b.prs_bedrijf_naam, puv.prs_perslid_naam_full)
|
||||
-- uitvoerende,
|
||||
v.prs_bedrijf_naam,
|
||||
ms.mld_statuses_omschrijving,
|
||||
os.mld_statusopdr_omschrijving,
|
||||
o.mld_opdr_opmerking,
|
||||
o.mld_opdr_kosten,
|
||||
v.prs_bedrijf_naam,
|
||||
v.kosten,
|
||||
v.inkoopordernr,
|
||||
d.alg_district_omschrijving
|
||||
FROM kfsg_v_actual_fact v,
|
||||
mld_opdr o,
|
||||
mld_statusopdr os,
|
||||
mld_typeopdr ot,
|
||||
--prs_bedrijf b, -- Externe leverancier
|
||||
--prs_v_perslid_fullnames_all puv, -- Interne uitvoerende
|
||||
mld_melding m,
|
||||
mld_statuses ms,
|
||||
mld_stdmelding sm,
|
||||
@@ -966,11 +1177,9 @@ AS
|
||||
alg_locatie l,
|
||||
alg_district d,
|
||||
alg_v_onroerendgoed_gegevens og
|
||||
WHERE v.mld_opdr_key = o.mld_opdr_key
|
||||
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_uitvoerende_keys = b.prs_bedrijf_key(+)
|
||||
--AND o.mld_uitvoerende_keys = puv.prs_perslid_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
|
||||
@@ -979,7 +1188,78 @@ AS
|
||||
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(+);
|
||||
*/
|
||||
|
||||
CREATE OR REPLACE VIEW kfsg_v_rap_actual_fact_res
|
||||
(
|
||||
fclt_3d_afdeling_key, -- Kunnen beperken per leverancier!
|
||||
maand,
|
||||
res_reservering_key,
|
||||
res_rsv_ruimte_key,
|
||||
res_id,
|
||||
plaats, -- Gebouw
|
||||
ruimte, -- Ruimte (alg of res)
|
||||
activiteit,
|
||||
omschrijving,
|
||||
van_datum,
|
||||
van_tijd,
|
||||
tot_tijd,
|
||||
status,
|
||||
fclt_f_leverancier,
|
||||
kosten,
|
||||
fclt_f_inkoopordernr,
|
||||
fclt_x_district
|
||||
)
|
||||
AS
|
||||
SELECT v.prs_afdeling_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,
|
||||
v.kosten,
|
||||
v.inkoopordernr,
|
||||
d.alg_district_omschrijving
|
||||
FROM kfsg_v_actual_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
|
||||
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(+) -- TODO: 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(+);
|
||||
|
||||
------ payload end ------
|
||||
|
||||
SET DEFINE OFF
|
||||
|
||||
Reference in New Issue
Block a user