KFSG#52740 -- Kostenrapportage schiphol
svn path=/Customer/trunk/; revision=38518
This commit is contained in:
634
KFSG/kfsg.sql
634
KFSG/kfsg.sql
@@ -349,6 +349,638 @@ AS
|
||||
AND rr.res_ruimte_key = res_alg.res_ruimte_key(+)
|
||||
AND bk.fac_bookmark_naam LIKE '%QRC_RES_RUIMTE%';
|
||||
|
||||
|
||||
-- Kostenrapportage met de kosten van alle onderdelen KFSG#52740
|
||||
/* Formatted on 16/7/2018 9:23:43 (QP5 v5.313) */
|
||||
CREATE OR REPLACE VIEW kfsg_v_kostenrapportage
|
||||
AS
|
||||
SELECT nummer,
|
||||
kostentype,
|
||||
datum,
|
||||
COALESCE (k.prs_kostenplaats_omschrijving,
|
||||
ka.prs_kostenplaats_omschrijving)
|
||||
kostenplaats,
|
||||
aantal,
|
||||
omschrijving,
|
||||
prijs,
|
||||
ins_discipline_omschrijving
|
||||
catalogus
|
||||
FROM (SELECT res_reservering_key || '/' || res_rsv_ruimte_volgnr
|
||||
nummer,
|
||||
'artikel'
|
||||
kostentype,
|
||||
res_rsv_ruimte_van
|
||||
datum,
|
||||
prs_kostenplaats_key,
|
||||
res_rsv_ruimte_host_key
|
||||
prs_perslid_key,
|
||||
res_rsv_artikel_aantal
|
||||
aantal,
|
||||
ra.res_artikel_omschrijving
|
||||
omschrijving,
|
||||
RES.getartikelprijs (res_rsv_artikel_key)
|
||||
prijs,
|
||||
ra.res_discipline_key
|
||||
ins_discipline_key
|
||||
FROM res_rsv_ruimte rrr, res_rsv_artikel rra, res_artikel ra
|
||||
WHERE rrr.res_rsv_ruimte_key = rra.res_rsv_ruimte_key
|
||||
AND rra.res_artikel_key = ra.res_artikel_key
|
||||
AND rra.res_rsv_artikel_verwijder IS NULL
|
||||
UNION ALL
|
||||
SELECT res_reservering_key || '/' || res_rsv_ruimte_volgnr
|
||||
nummer,
|
||||
'deel',
|
||||
res_rsv_ruimte_van,
|
||||
rrr.prs_kostenplaats_key,
|
||||
res_rsv_ruimte_host_key
|
||||
prs_perslid_key,
|
||||
1,
|
||||
res_deel_omschrijving,
|
||||
RES.getdeelprijs (res_rsv_deel_key),
|
||||
rd.res_discipline_key
|
||||
FROM res_rsv_ruimte rrr, res_rsv_deel rrd, res_deel rd
|
||||
WHERE rrr.res_rsv_ruimte_key = rrd.res_rsv_ruimte_key
|
||||
AND rrd.res_deel_key = rd.res_deel_key
|
||||
AND rrd.res_rsv_deel_verwijder IS NULL
|
||||
AND res_rsv_ruimte_van < SYSDATE
|
||||
UNION ALL
|
||||
SELECT TO_CHAR (b.bes_bestelling_key),
|
||||
'bestelling',
|
||||
b.bes_bestelling_datum,
|
||||
b.prs_kostenplaats_key,
|
||||
prs_perslid_key_voor,
|
||||
bi.bes_bestelling_item_aantal,
|
||||
sd.bes_srtdeel_omschrijving,
|
||||
bi.bes_bestelling_item_aantal * bes_bestelling_item_prijs,
|
||||
sg.ins_discipline_key
|
||||
FROM bes_bestelling b,
|
||||
bes_bestelling_item bi,
|
||||
bes_srtdeel sd,
|
||||
bes_srtgroep sg
|
||||
WHERE b.bes_bestelling_key = bi.bes_bestelling_key
|
||||
AND bi.bes_srtdeel_key = sd.bes_srtdeel_key
|
||||
AND sd.bes_srtgroep_key = sg.bes_srtgroep_key
|
||||
UNION ALL
|
||||
SELECT TO_CHAR (m.mld_melding_key),
|
||||
'melding',
|
||||
mld_melding_datum,
|
||||
m.prs_kostenplaats_key,
|
||||
prs_perslid_key_voor,
|
||||
1,
|
||||
mld_stdmelding_omschrijving,
|
||||
SUM (mld_opdr_kosten),
|
||||
mld_ins_discipline_key
|
||||
FROM mld_melding m, mld_opdr o, mld_stdmelding std
|
||||
WHERE m.mld_melding_key = o.mld_melding_key
|
||||
AND m.mld_stdmelding_key = std.mld_stdmelding_key
|
||||
GROUP BY mld_melding_datum,
|
||||
m.prs_kostenplaats_key,
|
||||
prs_perslid_key_voor,
|
||||
1,
|
||||
mld_stdmelding_omschrijving,
|
||||
mld_ins_discipline_key,
|
||||
m.mld_melding_key) geg,
|
||||
prs_kostenplaats k,
|
||||
prs_kostenplaats ka,
|
||||
prs_perslid p,
|
||||
prs_afdeling a,
|
||||
ins_tab_discipline d
|
||||
WHERE geg.prs_kostenplaats_key = k.prs_kostenplaats_key(+)
|
||||
AND geg.ins_discipline_key = d.ins_discipline_key
|
||||
AND geg.prs_perslid_key = p.prs_perslid_key
|
||||
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
|
||||
(
|
||||
fclt_3d_afdeling_key, -- Kunnen beperken per leverancier!
|
||||
maand,
|
||||
--prs_bedrijf_key,
|
||||
fclt_f_leverancier,
|
||||
--cp_perslid_key,
|
||||
--cp_aanhef,
|
||||
--cp_naam,
|
||||
--cp_email,
|
||||
--cnt_contract_key,
|
||||
contractnr,
|
||||
beschrijving,
|
||||
inkoopordernr,
|
||||
aantal,
|
||||
kosten
|
||||
)
|
||||
AS -- Vaste contractkosten over de ACTUAL termijn
|
||||
SELECT c.cp_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.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 deze maand lopend contract, anders geen vaste kosten
|
||||
--NULL mld_opdr_key,
|
||||
--NULL opdr_id,
|
||||
0 aantal,
|
||||
ROUND (
|
||||
DECODE (COALESCE (c.cnt_contract_termijnkosten, 0),
|
||||
0, c.cnt_contract_kosten / 12,
|
||||
c.cnt_contract_termijnkosten),
|
||||
2)
|
||||
+ fac.safe_to_number (COALESCE (ce.cnt_kenmerkcontract_waarde, '0'))
|
||||
+ fac.safe_to_number (COALESCE (bm.cnt_kenmerkcontract_waarde, '0'))
|
||||
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. ',
|
||||
'')
|
||||
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,
|
||||
c.cnt_contract_kosten,
|
||||
c.cnt_contract_termijnkosten
|
||||
FROM cnt_v_aanwezigcontract c,
|
||||
prs_bedrijf b,
|
||||
cnt_contract mc,
|
||||
prs_contactpersoon cp,
|
||||
prs_perslid pcp,
|
||||
prs_perslid pcm
|
||||
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))
|
||||
AND c.cnt_contract_looptijd_tot >= TRUNC (LAST_DAY (SYSDATE))
|
||||
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
|
||||
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 -- Variabele kosten uit ACTUAL opdrachten op variabele contracten
|
||||
SELECT pcp.prs_afdeling_key,
|
||||
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,
|
||||
--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,
|
||||
--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)
|
||||
-- opdr_id,
|
||||
COUNT ( * ) aantal,
|
||||
SUM (o.mld_opdr_kosten) kosten
|
||||
FROM mld_opdr o,
|
||||
fac_tracking t,
|
||||
cnt_contract c,
|
||||
--cnt_contract c2,
|
||||
--mld_melding m,
|
||||
--prs_v_perslid_fullnames_all pf,
|
||||
--alg_v_allonrgoed_gegevens og,
|
||||
--mld_stdmelding sm,
|
||||
--ins_tab_discipline td,
|
||||
--ins_srtdiscipline sd,
|
||||
--prs_kostensoort ksm,
|
||||
--prs_kostensoort ksv,
|
||||
--prs_kostenplaats kp
|
||||
cnt_contract mc,
|
||||
prs_bedrijf b,
|
||||
prs_contactpersoon cp,
|
||||
prs_perslid pcp,
|
||||
prs_perslid pcm
|
||||
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')
|
||||
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 = -1 -- Dispuut
|
||||
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 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
|
||||
-- OR NOT EXISTS
|
||||
-- (SELECT 1
|
||||
-- FROM cnt_contract
|
||||
-- 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
|
||||
--AND m.mld_alg_onroerendgoed_keys = og.alg_onroerendgoed_keys
|
||||
--AND m.mld_stdmelding_key = sm.mld_stdmelding_key
|
||||
--AND sm.mld_ins_discipline_key = td.ins_discipline_key
|
||||
--AND td.ins_srtdiscipline_key = sd.ins_srtdiscipline_key
|
||||
--AND sm.prs_kostensoort_key = ksm.prs_kostensoort_key(+)
|
||||
--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_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,
|
||||
b.prs_bedrijf_naam,
|
||||
--c.cnt_contract_key,
|
||||
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:
|
||||
-- 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.
|
||||
CREATE OR REPLACE VIEW kfsg_v_actual_fact -- Tbv. FACT_EXPORT!
|
||||
(
|
||||
prs_afdeling_key,
|
||||
maand,
|
||||
prs_bedrijf_key,
|
||||
prs_bedrijf_naam,
|
||||
cp_perslid_key,
|
||||
cp_aanhef,
|
||||
cp_naam,
|
||||
cp_email,
|
||||
cnt_contract_key,
|
||||
contractnr,
|
||||
beschrijving,
|
||||
inkoopordernr,
|
||||
cm_aanhef,
|
||||
cm_naam,
|
||||
mld_opdr_key,
|
||||
opdr_id,
|
||||
aantal,
|
||||
kosten
|
||||
)
|
||||
AS
|
||||
SELECT c.cp_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.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 mld_opdr_key,
|
||||
NULL opdr_id,
|
||||
0 aantal,
|
||||
ROUND (
|
||||
DECODE (COALESCE (c.cnt_contract_termijnkosten, 0),
|
||||
0, c.cnt_contract_kosten / 12,
|
||||
c.cnt_contract_termijnkosten),
|
||||
2)
|
||||
+ fac.safe_to_number (COALESCE (ce.cnt_kenmerkcontract_waarde, '0'))
|
||||
+ fac.safe_to_number (COALESCE (bm.cnt_kenmerkcontract_waarde, '0'))
|
||||
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. ',
|
||||
'')
|
||||
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,
|
||||
c.cnt_contract_kosten,
|
||||
c.cnt_contract_termijnkosten,
|
||||
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
|
||||
FROM cnt_v_aanwezigcontract c,
|
||||
prs_bedrijf b,
|
||||
cnt_contract mc,
|
||||
prs_contactpersoon cp,
|
||||
prs_perslid pcp,
|
||||
prs_perslid pcm
|
||||
WHERE c.ins_discipline_key = 522 -- Vaste contracten
|
||||
--AND c.cnt_contract_status = 0 -- NIET Gesloten
|
||||
AND TRUNC (c.cnt_contract_looptijd_van) < TRUNC (SYSDATE, 'mm') - 1
|
||||
AND c.cnt_contract_looptijd_tot >= TRUNC (SYSDATE, 'mm') - 1
|
||||
--AND TO_CHAR (SYSDATE, 'dd') < '10' -- Geen goede conditie
|
||||
AND NOT EXISTS -- Nog geen entry in eigen tabel
|
||||
(SELECT 1
|
||||
FROM fac_usrdata
|
||||
WHERE fac_usrtab_key = -1 -- VasteKostenMnd
|
||||
AND fac_usrdata_code =
|
||||
TO_CHAR (TRUNC (SYSDATE, 'mm') - 1, 'yyyy-mm')
|
||||
|| '/'
|
||||
|| c.cnt_contract_key)
|
||||
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
|
||||
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 -- 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,
|
||||
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,
|
||||
--kc.cnt_kenmerkcontract_waarde,
|
||||
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,
|
||||
o.mld_opdr_key,
|
||||
TO_CHAR (o.mld_melding_key)
|
||||
|| '/'
|
||||
|| TO_CHAR (o.mld_opdr_bedrijfopdr_volgnr)
|
||||
opdr_id,
|
||||
1 aantal,
|
||||
o.mld_opdr_kosten kosten
|
||||
FROM mld_opdr o,
|
||||
fac_tracking t,
|
||||
cnt_contract c,
|
||||
prs_bedrijf b,
|
||||
cnt_contract mc,
|
||||
prs_contactpersoon cp,
|
||||
prs_perslid pcp,
|
||||
prs_perslid pcm
|
||||
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')
|
||||
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 = -1 -- Dispuut
|
||||
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_prs_bedrijf_key = b.prs_bedrijf_key(+) -- TODO: PLUS 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(+) -- TODO: PLUS WEG
|
||||
;
|
||||
|
||||
-- Te exporteren/bevriezen totalen over voorgaande maand (vast en variabel).
|
||||
CREATE OR REPLACE VIEW kfsg_v_rap_actual_fact_tot
|
||||
(
|
||||
fclt_3d_afdeling_key, -- Kunnen beperken per leverancier!
|
||||
maand,
|
||||
--hide_f_bedrijf_key,
|
||||
fclt_f_leverancier,
|
||||
--hide_f_contract_key,
|
||||
contractnr,
|
||||
beschrijving,
|
||||
inkoopordernr,
|
||||
aantal,
|
||||
kosten
|
||||
)
|
||||
AS
|
||||
SELECT prs_afdeling_key,
|
||||
maand,
|
||||
--prs_bedrijf_key,
|
||||
prs_bedrijf_naam,
|
||||
--cnt_contract_key,
|
||||
contractnr,
|
||||
beschrijving,
|
||||
inkoopordernr,
|
||||
SUM (aantal),
|
||||
SUM (kosten)
|
||||
FROM kfsg_v_actual_fact
|
||||
GROUP BY prs_afdeling_key,
|
||||
maand,
|
||||
--prs_bedrijf_key,
|
||||
prs_bedrijf_naam,
|
||||
--cnt_contract_key,
|
||||
contractnr,
|
||||
beschrijving,
|
||||
inkoopordernr;
|
||||
|
||||
-- Te exporteren/bevriezen variabele kosten over voorgaande maand (details).
|
||||
CREATE OR REPLACE VIEW kfsg_v_rap_actual_fact_var
|
||||
(
|
||||
fclt_3d_afdeling_key, -- Kunnen beperken per leverancier!
|
||||
maand,
|
||||
prio,
|
||||
prefix,
|
||||
mld_melding_key,
|
||||
volgnr,
|
||||
mld_opdr_key,
|
||||
opdrachttype,
|
||||
plaats,
|
||||
alg_ruimte_omschrijving,
|
||||
mld_stdmelding_oms,
|
||||
omschrijving,
|
||||
begindatum,
|
||||
--begintijd,
|
||||
meldingstatus,
|
||||
opdrachtstatus,
|
||||
einddatum,
|
||||
--eindtijd,
|
||||
fclt_f_leverancier,
|
||||
afhandeling,
|
||||
kosten,
|
||||
fclt_f_inkoopordernr,
|
||||
fclt_x_district
|
||||
)
|
||||
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,
|
||||
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_ruimte_omschrijving, NULL)
|
||||
alg_ruimte_omschrijving,
|
||||
sm.mld_stdmelding_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,
|
||||
o.mld_opdr_opmerking,
|
||||
o.mld_opdr_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,
|
||||
mld_discipline md,
|
||||
ins_srtdiscipline sd,
|
||||
alg_locatie l,
|
||||
alg_district d,
|
||||
alg_v_onroerendgoed_gegevens og
|
||||
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
|
||||
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(+);
|
||||
*/
|
||||
------ payload end ------
|
||||
|
||||
SET DEFINE OFF
|
||||
@@ -359,4 +991,4 @@ COMMIT;
|
||||
SET ECHO OFF
|
||||
SPOOL OFF
|
||||
SET DEFINE ON
|
||||
PROMPT Logfile of this upgrade is: &fcltlogfile
|
||||
PROMPT Logfile of this upgrade is: &fcltlogfile
|
||||
|
||||
Reference in New Issue
Block a user