VLKC#36864 Fin. rapportages en CODA-export (bevriezen)
svn path=/Customer/trunk/; revision=32528
This commit is contained in:
503
VLKC/vlkc.sql
503
VLKC/vlkc.sql
@@ -768,8 +768,7 @@ EXCEPTION
|
||||
oracle_err_mes := SUBSTR (SQLERRM, 1, 200);
|
||||
v_errormsg := 'ORACLE (error ' || oracle_err_num || '/' || oracle_err_mes || ') ';
|
||||
fac.imp_writelog (p_import_key, 'E',
|
||||
v_errormsg,
|
||||
'Inleesproces personen afgebroken!');
|
||||
v_errormsg, 'Inleesproces personen afgebroken!');
|
||||
END vlkc_import_prs;
|
||||
/
|
||||
|
||||
@@ -1984,6 +1983,391 @@ AS
|
||||
AND rrr.res_ruimte_opstel_key = res_ruimte_geg.res_ruimte_opstel_key(+)
|
||||
AND rrr.res_rsv_ruimte_key = kr.res_rsv_ruimte_key(+);
|
||||
|
||||
|
||||
-- Zonder de B en R van BROC (in de R geeft 'vlkc_v_rap_cat_doorbelasting' inzicht)!
|
||||
/* Formatted on 20-1-2017 10:15:45 (QP5 v5.136.908.31019) */
|
||||
CREATE OR REPLACE VIEW vlkc_v_coda_actual
|
||||
(
|
||||
bedrijf_key,
|
||||
factuur_key,
|
||||
bes_opdr_key,
|
||||
mld_opdr_key,
|
||||
cnt_key,
|
||||
--res_art_key,
|
||||
--res_deel_key,
|
||||
kostensoort, -- Van groep!
|
||||
doorbelasten,
|
||||
kostenplaats, -- Kostenplaats bij verplichting
|
||||
kosten
|
||||
)
|
||||
AS -- Op basis van O-facturen!
|
||||
SELECT b.prs_bedrijf_key bedrijf_key,
|
||||
f.fin_factuur_key factuur_key,
|
||||
NULL bes_opdr_key,
|
||||
f.mld_opdr_key mld_opdr_key,
|
||||
NULL cnt_key,
|
||||
--NULL res_art_key,
|
||||
--NULL res_deel_key,
|
||||
COALESCE (ksgm.prs_kostensoortgrp_altcode,
|
||||
ksgv.prs_kostensoortgrp_altcode,
|
||||
NULL)
|
||||
kostensoort,
|
||||
COALESCE (ksm.prs_kostensoort_doorbelasten,
|
||||
ksv.prs_kostensoort_doorbelasten,
|
||||
0)
|
||||
doorbelasten,
|
||||
kp.prs_kostenplaats_nr,
|
||||
SUM(DECODE (
|
||||
ksm.prs_kostensoort_doorbelasten,
|
||||
1,
|
||||
DECODE (ksm.prs_kostensoort_btw,
|
||||
1, f.fin_factuur_totaal + f.fin_factuur_totaal_btw,
|
||||
f.fin_factuur_totaal),
|
||||
DECODE (ksv.prs_kostensoort_btw,
|
||||
1, f.fin_factuur_totaal + f.fin_factuur_totaal_btw,
|
||||
f.fin_factuur_totaal)))
|
||||
kosten
|
||||
FROM fin_factuur f,
|
||||
mld_opdr o,
|
||||
mld_melding m,
|
||||
mld_stdmelding sm,
|
||||
ins_tab_discipline td,
|
||||
prs_kostensoort ksm,
|
||||
prs_kostensoortgrp ksgm,
|
||||
prs_kostensoort ksv,
|
||||
prs_kostensoortgrp ksgv,
|
||||
prs_kostenplaats kp,
|
||||
prs_bedrijf b
|
||||
WHERE f.fin_factuur_verwijder IS NULL
|
||||
AND f.fin_factuur_statuses_key = 6 -- Akkoord
|
||||
AND fac.gettrackingdate ('FINFOK', f.fin_factuur_key) < TRUNC (SYSDATE, 'mm')
|
||||
AND f.mld_opdr_key = o.mld_opdr_key
|
||||
AND o.mld_melding_key = m.mld_melding_key
|
||||
AND m.mld_stdmelding_key = sm.mld_stdmelding_key
|
||||
AND sm.prs_kostensoort_key = ksm.prs_kostensoort_key(+)
|
||||
AND ksm.prs_kostensoortgrp_key = ksgm.prs_kostensoortgrp_key(+)
|
||||
AND sm.mld_ins_discipline_key = td.ins_discipline_key
|
||||
AND td.prs_kostensoort_key = ksv.prs_kostensoort_key(+)
|
||||
AND ksv.prs_kostensoortgrp_key = ksgv.prs_kostensoortgrp_key(+)
|
||||
AND o.prs_kostenplaats_key = kp.prs_kostenplaats_key
|
||||
AND o.mld_uitvoerende_keys = b.prs_bedrijf_key
|
||||
GROUP BY b.prs_bedrijf_key,
|
||||
f.fin_factuur_key,
|
||||
NULL,
|
||||
f.mld_opdr_key,
|
||||
NULL,
|
||||
--NULL,
|
||||
--NULL,
|
||||
COALESCE (ksgm.prs_kostensoortgrp_altcode,
|
||||
ksgv.prs_kostensoortgrp_altcode,
|
||||
NULL),
|
||||
COALESCE (ksm.prs_kostensoort_doorbelasten,
|
||||
ksv.prs_kostensoort_doorbelasten,
|
||||
0),
|
||||
kp.prs_kostenplaats_nr
|
||||
-- UNION ALL -- Op basis van C-facturen -> Doen we niet!
|
||||
-- SELECT c.cnt_prs_bedrijf_key bedrijf_key,
|
||||
-- f.fin_factuur_key factuur_key,
|
||||
-- NULL bes_opdr_key,
|
||||
-- NULL mld_opdr_key,
|
||||
-- f.cnt_contract_key cnt_key,
|
||||
-- --NULL res_art_key,
|
||||
-- --NULL res_deel_key,
|
||||
-- COALESCE (ksgc.prs_kostensoortgrp_altcode,
|
||||
-- ksgd.prs_kostensoortgrp_altcode,
|
||||
-- NULL)
|
||||
-- kostensoort,
|
||||
-- COALESCE (ksc.prs_kostensoort_doorbelasten,
|
||||
-- ksd.prs_kostensoort_doorbelasten,
|
||||
-- 0)
|
||||
-- doorbelasten,
|
||||
-- kp.prs_kostenplaats_nr,
|
||||
-- SUM(DECODE (
|
||||
-- ksc.prs_kostensoort_doorbelasten,
|
||||
-- 1,
|
||||
-- DECODE (ksc.prs_kostensoort_btw,
|
||||
-- 1, f.fin_factuur_totaal + f.fin_factuur_totaal_btw,
|
||||
-- f.fin_factuur_totaal),
|
||||
-- DECODE (ksd.prs_kostensoort_btw,
|
||||
-- 1, f.fin_factuur_totaal + f.fin_factuur_totaal_btw,
|
||||
-- f.fin_factuur_totaal)))
|
||||
-- kosten
|
||||
-- FROM fin_factuur f,
|
||||
-- cnt_v_aanwezigcontract c,
|
||||
-- prs_kostensoort ksc,
|
||||
-- prs_kostensoortgrp ksgc,
|
||||
-- ins_tab_discipline td,
|
||||
-- prs_kostensoort ksd,
|
||||
-- prs_kostensoortgrp ksgd,
|
||||
-- prs_kostenplaats kp
|
||||
-- WHERE f.fin_factuur_verwijder IS NULL
|
||||
-- AND f.fin_factuur_statuses_key = 6 -- Akkoord
|
||||
-- AND f.cnt_contract_key = c.cnt_contract_key
|
||||
-- AND c.prs_kostensoort_key = ksc.prs_kostensoort_key(+)
|
||||
-- AND ksc.prs_kostensoortgrp_key = ksgc.prs_kostensoortgrp_key(+)
|
||||
-- AND c.ins_discipline_key = td.ins_discipline_key
|
||||
-- --AND td.ins_discipline_omschrijving LIKE 'CF%'
|
||||
-- AND td.prs_kostensoort_key = ksd.prs_kostensoort_key(+)
|
||||
-- AND ksd.prs_kostensoortgrp_key = ksgd.prs_kostensoortgrp_key(+)
|
||||
-- AND c.prs_kostenplaats_key = kp.prs_kostenplaats_key
|
||||
-- GROUP BY c.cnt_prs_bedrijf_key,
|
||||
-- f.fin_factuur_key,
|
||||
-- NULL,
|
||||
-- NULL,
|
||||
-- f.cnt_contract_key,
|
||||
-- --NULL,
|
||||
-- --NULL,
|
||||
-- COALESCE (ksgc.prs_kostensoortgrp_altcode,
|
||||
-- ksgd.prs_kostensoortgrp_altcode,
|
||||
-- NULL),
|
||||
-- COALESCE (ksc.prs_kostensoort_doorbelasten,
|
||||
-- ksd.prs_kostensoort_doorbelasten,
|
||||
-- 0),
|
||||
-- kp.prs_kostenplaats_nr
|
||||
UNION ALL -- Op basis van C-termijnen op vaste contracten (CF)!
|
||||
SELECT c.cnt_prs_bedrijf_key bedrijf_key,
|
||||
NULL factuur_key,
|
||||
NULL bes_opdr_key,
|
||||
NULL mld_opdr_key,
|
||||
c.cnt_contract_key cnt_key,
|
||||
--NULL res_art_key,
|
||||
--NULL res_deel_key,
|
||||
COALESCE (ksgc.prs_kostensoortgrp_altcode,
|
||||
ksgd.prs_kostensoortgrp_altcode,
|
||||
NULL)
|
||||
kostensoort,
|
||||
COALESCE (ksc.prs_kostensoort_doorbelasten,
|
||||
ksd.prs_kostensoort_doorbelasten,
|
||||
0)
|
||||
doorbelasten,
|
||||
kp.prs_kostenplaats_nr,
|
||||
c.cnt_contract_termijnkosten kosten
|
||||
FROM cnt_v_aanwezigcontract c,
|
||||
prs_kostensoort ksc,
|
||||
prs_kostensoortgrp ksgc,
|
||||
ins_tab_discipline td,
|
||||
prs_kostensoort ksd,
|
||||
prs_kostensoortgrp ksgd,
|
||||
prs_kostenplaats kp
|
||||
WHERE TRUNC (c.cnt_contract_looptijd_van) < TRUNC (SYSDATE, 'mm') - 1
|
||||
AND c.cnt_contract_looptijd_tot >= TRUNC (SYSDATE, 'mm') - 1
|
||||
--AND c.cnt_contract_status = 0 -- NIET Gesloten
|
||||
AND c.prs_kostensoort_key = ksc.prs_kostensoort_key(+)
|
||||
AND ksc.prs_kostensoortgrp_key = ksgc.prs_kostensoortgrp_key(+)
|
||||
AND c.ins_discipline_key = td.ins_discipline_key
|
||||
AND td.ins_discipline_omschrijving LIKE 'CF%'
|
||||
AND td.prs_kostensoort_key = ksd.prs_kostensoort_key(+)
|
||||
AND ksd.prs_kostensoortgrp_key = ksgd.prs_kostensoortgrp_key(+)
|
||||
AND c.prs_kostenplaats_key = kp.prs_kostenplaats_key;
|
||||
/* WEG!!!
|
||||
-- Zonder de B en R van BROC (in de R geeft 'vlkc_v_rap_cat_doorbelasting' inzicht)!
|
||||
CREATE OR REPLACE VIEW vlkc_v_rap_coda_frozen
|
||||
(
|
||||
fclt_f_exportdatum,
|
||||
fclt_f_leverancier,
|
||||
fclt_f_factuurnr,
|
||||
fclt_f_status,
|
||||
fclt_f_kostensoort,
|
||||
fclt_f_kostenplaats,
|
||||
broc_type,
|
||||
facilitornr,
|
||||
bedrag_incl,
|
||||
bedrag_excl
|
||||
)
|
||||
AS -- O-facturen!
|
||||
SELECT TO_CHAR (t.fac_tracking_datum, 'yyyy-mm-dd') exportdatum,
|
||||
b.prs_bedrijf_naam,
|
||||
f.fin_factuur_nr,
|
||||
fs.fin_factuur_statuses_omschr,
|
||||
COALESCE (ksm.prs_kostensoort_upper, ksv.prs_kostensoort_upper), -- Incl. prs_kostensoort_refcode?
|
||||
kp.prs_kostenplaats_nr afn_kpn,
|
||||
'Opdracht' broc_type,
|
||||
o.mld_melding_key || '/' || o.mld_opdr_bedrijfopdr_volgnr,
|
||||
SUM (f.fin_factuur_totaal + f.fin_factuur_totaal_btw) bedrag_incl,
|
||||
SUM (f.fin_factuur_totaal) bedrag_excl
|
||||
FROM fin_factuur f,
|
||||
fin_factuur_statuses fs,
|
||||
fac_tracking t,
|
||||
mld_opdr o,
|
||||
mld_melding m,
|
||||
mld_stdmelding sm,
|
||||
ins_tab_discipline td,
|
||||
prs_kostensoort ksm,
|
||||
prs_kostensoort ksv,
|
||||
prs_kostenplaats kp,
|
||||
prs_bedrijf b
|
||||
WHERE f.fin_factuur_statuses_key = 7 -- Verwerkt
|
||||
AND f.fin_factuur_statuses_key = fs.fin_factuur_statuses_key
|
||||
AND f.fin_factuur_key = t.fac_tracking_refkey
|
||||
AND t.fac_srtnotificatie_key = 145 -- FINVER
|
||||
AND t.fac_tracking_datum >
|
||||
TRUNC (ADD_MONTHS (SYSDATE, -12), 'YYYY')
|
||||
AND f.mld_opdr_key = o.mld_opdr_key
|
||||
AND o.mld_melding_key = m.mld_melding_key
|
||||
AND m.mld_stdmelding_key = sm.mld_stdmelding_key
|
||||
AND sm.prs_kostensoort_key = ksm.prs_kostensoort_key(+)
|
||||
AND sm.mld_ins_discipline_key = td.ins_discipline_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
|
||||
GROUP BY TO_CHAR (t.fac_tracking_datum, 'yyyy-mm-dd'),
|
||||
b.prs_bedrijf_naam,
|
||||
f.fin_factuur_nr,
|
||||
fs.fin_factuur_statuses_omschr,
|
||||
COALESCE (ksm.prs_kostensoort_upper, ksv.prs_kostensoort_upper),
|
||||
kp.prs_kostenplaats_nr,
|
||||
'Opdracht',
|
||||
o.mld_melding_key || '/' || o.mld_opdr_bedrijfopdr_volgnr
|
||||
UNION ALL -- C-facturen!
|
||||
SELECT TO_CHAR (t.fac_tracking_datum, 'yyyy-mm-dd') exportdatum,
|
||||
b.prs_bedrijf_naam,
|
||||
f.fin_factuur_nr,
|
||||
fs.fin_factuur_statuses_omschr,
|
||||
ks.prs_kostensoort_upper, -- Incl. prs_kostensoort_refcode?
|
||||
kp.prs_kostenplaats_nr afn_kpn,
|
||||
'Contract' broc_type,
|
||||
c.cnt_contract_nummer_intern,
|
||||
SUM (f.fin_factuur_totaal + f.fin_factuur_totaal_btw) bedrag_incl,
|
||||
SUM (f.fin_factuur_totaal) bedrag_excl
|
||||
FROM fin_factuur f,
|
||||
fin_factuur_statuses fs,
|
||||
fac_tracking t,
|
||||
cnt_contract c,
|
||||
ins_tab_discipline td,
|
||||
prs_kostensoort ks,
|
||||
prs_kostenplaats kp,
|
||||
prs_bedrijf b
|
||||
WHERE f.fin_factuur_statuses_key = 7 -- Verwerkt
|
||||
AND f.fin_factuur_statuses_key = fs.fin_factuur_statuses_key
|
||||
AND f.fin_factuur_key = t.fac_tracking_refkey
|
||||
AND t.fac_srtnotificatie_key = 145 -- FINVER
|
||||
AND t.fac_tracking_datum >
|
||||
TRUNC (ADD_MONTHS (SYSDATE, -12), 'YYYY')
|
||||
AND f.cnt_contract_key = c.cnt_contract_key
|
||||
AND c.ins_discipline_key = td.ins_discipline_key
|
||||
AND td.prs_kostensoort_key = ks.prs_kostensoort_key(+)
|
||||
AND c.prs_kostenplaats_key = kp.prs_kostenplaats_key
|
||||
AND c.cnt_prs_bedrijf_key = b.prs_bedrijf_key
|
||||
GROUP BY TO_CHAR (t.fac_tracking_datum, 'yyyy-mm-dd'),
|
||||
b.prs_bedrijf_naam,
|
||||
f.fin_factuur_nr,
|
||||
fs.fin_factuur_statuses_omschr,
|
||||
ks.prs_kostensoort_upper,
|
||||
kp.prs_kostenplaats_nr,
|
||||
'Contract',
|
||||
c.cnt_contract_nummer_intern;
|
||||
*/
|
||||
/* Formatted on 20-1-2017 12:42:24 (QP5 v5.136.908.31019) */
|
||||
CREATE OR REPLACE PROCEDURE vlkc_select_coda (p_applname IN VARCHAR2,
|
||||
p_applrun IN VARCHAR2)
|
||||
AS
|
||||
-- 1. Goedgekeurde facturen AV-en.
|
||||
-- 2. Termijn/maandbedrag van lopende contracten bevriezen (in Eigen tabel).
|
||||
--[3. Achterliggende opdrachten AV-en.]
|
||||
-- Cursor loopt over een tijdelijke tabel met daarin opgebouwd alle regels
|
||||
-- van de (te bevriezen) verantwoording van kosten gebaseerd op O-facturen
|
||||
-- en C-termijnen.
|
||||
CURSOR c1
|
||||
IS
|
||||
SELECT '[' || TO_CHAR (v.bedrijf_key) || '|' || TO_CHAR (v.factuur_key) || '|' || TO_CHAR (COALESCE (v.mld_opdr_key, v.cnt_key)) || '] '
|
||||
aanduiding,
|
||||
v.factuur_key,
|
||||
v.mld_opdr_key,
|
||||
v.cnt_key,
|
||||
c.cnt_contract_nummer_intern || DECODE (c.cnt_contract_versie, NULL, '', '.' || TO_CHAR (c.cnt_contract_versie))
|
||||
cnt_nr,
|
||||
cp.plaats,
|
||||
v.kosten
|
||||
FROM vlkc_v_coda_actual v,
|
||||
cnt_contract c,
|
||||
(SELECT cnt_contract_key, COUNT ( * ) aant, MIN (pa.alg_plaatsaanduiding) plaats
|
||||
FROM cnt_contract_plaats cp, alg_v_plaatsaanduiding_all pa
|
||||
WHERE cp.cnt_alg_plaats_key = pa.alg_onroerendgoed_keys
|
||||
AND cp.cnt_alg_plaats_code = pa.alg_onroerendgoed_type) cp
|
||||
WHERE v.cnt_key = c.cnt_contract_key
|
||||
AND c.cnt_contract_key = cp.cnt_contract_key(+);
|
||||
|
||||
v_errormsg VARCHAR2 (1000);
|
||||
oracle_err_num NUMBER;
|
||||
oracle_err_mes VARCHAR2 (200);
|
||||
v_aanduiding VARCHAR2 (200) := '';
|
||||
v_holiday NUMBER;
|
||||
v_line_count NUMBER;
|
||||
v_amount_sum NUMBER (10, 2);
|
||||
BEGIN
|
||||
v_line_count := 0;
|
||||
v_amount_sum := 0;
|
||||
|
||||
SELECT COUNT ( * )
|
||||
INTO v_holiday
|
||||
FROM mld_vrije_dagen
|
||||
WHERE TRUNC (mld_vrije_dagen_datum) = TRUNC (SYSDATE - 1);
|
||||
|
||||
-- LET OP: CODA-export draait dagelijks na middernacht (begin van dag)
|
||||
-- en de bedragen over de voorgaande maand worden maandelijks alleen in de
|
||||
-- nacht na 2e werkdag van de maand doorgezet (= bevroren tbv. rapporten).
|
||||
-- IF nacht na 2e werkdag van de maand (<28>n geen weekend <20>n geen vrije dag)!
|
||||
-- count_work_days (d1,d2) bepaalt het #werkdagen van d1 tot d2 (als d1=d2,
|
||||
-- dan return 0); daarom bepalen tov. laatste dag van vorige maand!
|
||||
IF FAC.count_work_days (TRUNC (SYSDATE, 'mm') - 1, SYSDATE - 1) = 2
|
||||
AND TO_CHAR (SYSDATE - 1, 'd') BETWEEN '2' AND '6'
|
||||
AND v_holiday = 0
|
||||
THEN
|
||||
FOR rec IN c1
|
||||
LOOP
|
||||
BEGIN
|
||||
v_aanduiding := rec.aanduiding;
|
||||
|
||||
IF rec.mld_opdr_key IS NOT NULL -- O-facturen
|
||||
THEN
|
||||
v_errormsg := 'Fout verwerken O-factuur';
|
||||
|
||||
UPDATE fin_factuur f
|
||||
SET fin_factuur_statuses_key = 7 -- AV
|
||||
WHERE f.fin_factuur_key = rec.factuur_key;
|
||||
|
||||
fac.trackaction ('FINVER',
|
||||
rec.factuur_key,
|
||||
NULL, -- Dus _FACILITOR!
|
||||
NULL,
|
||||
NULL);
|
||||
ELSE -- C-termijnen op vaste contracten (CF)!
|
||||
v_errormsg := 'Fout verwerken C-termijn';
|
||||
|
||||
INSERT INTO fac_usrdata (fac_usrtab_key,
|
||||
fac_usrdata_code,
|
||||
fac_usrdata_omschr,
|
||||
fac_usrdata_aanmaak,
|
||||
fac_usrdata_vervaldatum,
|
||||
fac_usrdata_prijs)
|
||||
VALUES (81, -- VasteKostenMnd
|
||||
TO_CHAR (ADD_MONTHS (SYSDATE, -1), 'yyyy-mm') || '/' || TO_CHAR (rec.cnt_key),
|
||||
TO_CHAR (rec.cnt_nr) || '/' || TO_CHAR (rec.plaats),
|
||||
SYSDATE,
|
||||
NULL,
|
||||
rec.kosten);
|
||||
END IF;
|
||||
|
||||
COMMIT;
|
||||
|
||||
v_line_count := v_line_count + 1;
|
||||
v_amount_sum := v_amount_sum + rec.kosten;
|
||||
END;
|
||||
END LOOP;
|
||||
|
||||
fac.writelog (p_applname, 'S', 'CODA-export/#regels: ' || TO_CHAR (v_line_count), TO_CHAR (v_amount_sum));
|
||||
END IF;
|
||||
EXCEPTION
|
||||
WHEN OTHERS
|
||||
THEN
|
||||
oracle_err_num := SQLCODE;
|
||||
oracle_err_mes := SUBSTR (SQLERRM, 1, 200);
|
||||
v_errormsg := v_errormsg || ' ORACLE (error ' || oracle_err_num || '/' || oracle_err_mes || ')';
|
||||
fac.writelog (p_applname, 'E', v_aanduiding || v_errormsg, 'Proces CODA-export afgebroken!');
|
||||
COMMIT;
|
||||
END;
|
||||
/
|
||||
|
||||
/* Formatted on 25-11-2016 15:36:24 (QP5 v5.136.908.31019) */
|
||||
CREATE OR REPLACE VIEW vlkc_v_rap_coda_export
|
||||
(
|
||||
@@ -2107,10 +2491,9 @@ CREATE OR REPLACE VIEW vlkc_v_rap_coda_ordexp
|
||||
factuurnummer
|
||||
)
|
||||
AS
|
||||
SELECT TO_CHAR (fac.gettrackingdate ('FINFOK', f.fin_factuur_key), 'yyyy-mm')
|
||||
|| DECODE (TO_CHAR (fac.gettrackingdate ('FINFOK', f.fin_factuur_key), 'yyyy-mm'),
|
||||
TO_CHAR (SYSDATE, 'yyyy-mm'), '*',
|
||||
'')
|
||||
SELECT DECODE (f.fin_factuur_statuses_key,
|
||||
7, TO_CHAR (fac.gettrackingdate ('FINVER', f.fin_factuur_key), 'yyyy-mm'),
|
||||
TO_CHAR (fac.gettrackingdate ('FINFOK', f.fin_factuur_key), 'yyyy-mm') || '*')
|
||||
periode, -- ToDo!
|
||||
COALESCE (ksgm.prs_kostensoortgrp_altcode, ksgv.prs_kostensoortgrp_altcode, NULL) kostensoort,
|
||||
kp.prs_kostenplaats_nr kostenplaats,
|
||||
@@ -2144,7 +2527,7 @@ AS
|
||||
WHERE 1 = 1
|
||||
AND o.mld_typeopdr_key IN (5, 283) -- Werkopdracht/Offerteopdracht
|
||||
AND o.mld_opdr_key = f.mld_opdr_key
|
||||
AND f.fin_factuur_statuses_key = 6 -- Akkoord
|
||||
AND f.fin_factuur_statuses_key IN (6, 7) -- Akkoord/Verwerkt
|
||||
AND o.mld_melding_key = m.mld_melding_key
|
||||
AND m.mld_stdmelding_key = sm.mld_stdmelding_key
|
||||
AND sm.prs_kostensoort_key = ksm.prs_kostensoort_key(+)
|
||||
@@ -2171,27 +2554,23 @@ CREATE OR REPLACE VIEW vlkc_v_rap_coda_cntexp
|
||||
factuurnummer
|
||||
)
|
||||
AS
|
||||
SELECT TO_CHAR (SYSDATE, 'yyyy-mm') || '*' periode, -- ToDo!
|
||||
WITH lopendeperiode AS (SELECT COALESCE (MAX (TO_CHAR (ADD_MONTHS (fac.safe_to_date (SUBSTR (fac_usrdata_code, 1, 7), 'yyyy-mm'), 1), 'yyyy-mm')), '2017-01') maand
|
||||
FROM fac_usrdata
|
||||
WHERE fac_usrtab_key = 81)
|
||||
SELECT SUBSTR (ud.fac_usrdata_code, 1, 7) periode, -- yyyy-mm
|
||||
COALESCE (ksgc.prs_kostensoortgrp_altcode, ksgd.prs_kostensoortgrp_altcode, NULL) kostensoort,
|
||||
kp.prs_kostenplaats_nr kostenplaats,
|
||||
'EUR' valuta,
|
||||
'Vast' element4,
|
||||
--DECODE (SIGN (f.fin_factuur_totaal + f.fin_factuur_totaal_btw),
|
||||
-- -1, TO_NUMBER (NULL),
|
||||
-- f.fin_factuur_totaal + f.fin_factuur_totaal_btw)
|
||||
c.cnt_contract_termijnkosten bedrag_debet,
|
||||
--DECODE (SIGN (f.fin_factuur_totaal + f.fin_factuur_totaal_btw),
|
||||
-- -1, f.fin_factuur_totaal + f.fin_factuur_totaal_btw,
|
||||
-- TO_NUMBER (NULL))
|
||||
ud.fac_usrdata_prijs bedrag_debet,
|
||||
TO_NUMBER (NULL) bedrag_credit,
|
||||
--COALESCE (ksgc.prs_kostensoortgrp_oms, ksgd.prs_kostensoortgrp_oms, 'ONGEDEFINEERD')
|
||||
td.ins_discipline_omschrijving omschrijving,
|
||||
'C' || c.cnt_contract_nummer_intern verplichtingnummer,
|
||||
'C' || SUBSTR (ud.fac_usrdata_omschr, 1, INSTR (ud.fac_usrdata_omschr, '/') - 1) verplichtingnummer,
|
||||
b.prs_bedrijf_naam leverancier,
|
||||
--f.fin_factuur_nr factuurnummer
|
||||
'N.v.t.' factuurnummer
|
||||
FROM cnt_contract c,
|
||||
--fin_factuur f,
|
||||
FROM fac_usrdata ud,
|
||||
cnt_contract c, -- Alles, want fac_usrdata "rules"!
|
||||
prs_kostensoort ksc,
|
||||
prs_kostensoortgrp ksgc,
|
||||
ins_tab_discipline td,
|
||||
@@ -2199,11 +2578,40 @@ AS
|
||||
prs_kostensoortgrp ksgd,
|
||||
prs_kostenplaats kp,
|
||||
prs_bedrijf b
|
||||
WHERE 1 = 1
|
||||
--AND c.cnt_contract_looptijd_van < SYSDATE -- Altijd van eerste maand?
|
||||
AND c.cnt_contract_looptijd_tot > TRUNC (SYSDATE, 'mm') -- Altijd tot eerste maand?
|
||||
--AND c.cnt_contract_key = f.cnt_contract_key
|
||||
--AND f.fin_factuur_statuses_key = 6 -- Akkoord
|
||||
WHERE ud.fac_usrtab_key = 81 -- VasteKostenMnd
|
||||
AND SUBSTR (ud.fac_usrdata_code, INSTR (ud.fac_usrdata_code, '/') + 1) = TO_CHAR (c.cnt_contract_key)
|
||||
AND c.prs_kostensoort_key = ksc.prs_kostensoort_key(+)
|
||||
AND ksc.prs_kostensoortgrp_key = ksgc.prs_kostensoortgrp_key(+)
|
||||
AND c.ins_discipline_key = td.ins_discipline_key
|
||||
--AND td.ins_discipline_omschrijving LIKE 'CF%'
|
||||
AND td.prs_kostensoort_key = ksd.prs_kostensoort_key(+)
|
||||
AND ksd.prs_kostensoortgrp_key = ksgd.prs_kostensoortgrp_key(+)
|
||||
AND c.prs_kostenplaats_key = kp.prs_kostenplaats_key(+)
|
||||
AND c.cnt_prs_bedrijf_key = b.prs_bedrijf_key
|
||||
UNION ALL
|
||||
SELECT lp.maand || '*' periode,
|
||||
COALESCE (ksgc.prs_kostensoortgrp_altcode, ksgd.prs_kostensoortgrp_altcode, NULL) kostensoort,
|
||||
kp.prs_kostenplaats_nr kostenplaats,
|
||||
'EUR' valuta,
|
||||
'Vast' element4,
|
||||
c.cnt_contract_termijnkosten bedrag_debet,
|
||||
TO_NUMBER (NULL) bedrag_credit,
|
||||
--COALESCE (ksgc.prs_kostensoortgrp_oms, ksgd.prs_kostensoortgrp_oms, 'ONGEDEFINEERD')
|
||||
td.ins_discipline_omschrijving omschrijving,
|
||||
'C' || c.cnt_contract_nummer_intern || DECODE (c.cnt_contract_versie, NULL, '', '.' || TO_CHAR (c.cnt_contract_versie)) verplichtingnummer,
|
||||
b.prs_bedrijf_naam leverancier,
|
||||
'N.v.t.' factuurnummer
|
||||
FROM lopendeperiode lp,
|
||||
cnt_v_aanwezigcontract c, -- Alleen aanwezige (CF-)contracten!
|
||||
prs_kostensoort ksc,
|
||||
prs_kostensoortgrp ksgc,
|
||||
ins_tab_discipline td,
|
||||
prs_kostensoort ksd,
|
||||
prs_kostensoortgrp ksgd,
|
||||
prs_kostenplaats kp,
|
||||
prs_bedrijf b
|
||||
WHERE TRUNC (c.cnt_contract_looptijd_van) < LAST_DAY (TO_DATE (lp.maand || '-01', 'yyyy-mm-dd'))
|
||||
AND c.cnt_contract_looptijd_tot >= LAST_DAY (TO_DATE (lp.maand || '-01', 'yyyy-mm-dd'))
|
||||
AND c.prs_kostensoort_key = ksc.prs_kostensoort_key(+)
|
||||
AND ksc.prs_kostensoortgrp_key = ksgc.prs_kostensoortgrp_key(+)
|
||||
AND c.ins_discipline_key = td.ins_discipline_key
|
||||
@@ -2233,13 +2641,23 @@ AS
|
||||
kp.prs_kostenplaats_nr kostenplaats,
|
||||
'EUR' element3,
|
||||
DECODE (kp.prs_kostenplaats_nr, '2216', 'Variabel', 'Eindgebruiker') element4,
|
||||
DECODE (SIGN (f.fin_factuur_totaal + f.fin_factuur_totaal_btw),
|
||||
-1, TO_NUMBER (NULL),
|
||||
f.fin_factuur_totaal + f.fin_factuur_totaal_btw)
|
||||
DECODE (f.fin_factuur_statuses_key,
|
||||
NULL, -- Nog geen factuur ontvangen
|
||||
DECODE (SIGN (o.mld_opdr_kosten),
|
||||
-1, TO_NUMBER (NULL),
|
||||
o.mld_opdr_kosten),
|
||||
DECODE (SIGN (f.fin_factuur_totaal + f.fin_factuur_totaal_btw),
|
||||
-1, TO_NUMBER (NULL),
|
||||
f.fin_factuur_totaal + f.fin_factuur_totaal_btw))
|
||||
bedrag_debet,
|
||||
DECODE (SIGN (f.fin_factuur_totaal + f.fin_factuur_totaal_btw),
|
||||
-1, f.fin_factuur_totaal + f.fin_factuur_totaal_btw,
|
||||
TO_NUMBER (NULL))
|
||||
DECODE (f.fin_factuur_statuses_key,
|
||||
NULL, -- Nog geen factuur ontvangen
|
||||
DECODE (SIGN (o.mld_opdr_kosten),
|
||||
-1, o.mld_opdr_kosten,
|
||||
TO_NUMBER (NULL)),
|
||||
DECODE (SIGN (f.fin_factuur_totaal + f.fin_factuur_totaal_btw),
|
||||
-1, f.fin_factuur_totaal + f.fin_factuur_totaal_btw,
|
||||
TO_NUMBER (NULL)))
|
||||
bedrag_credit,
|
||||
--COALESCE (ksgm.prs_kostensoortgrp_oms, ksgv.prs_kostensoortgrp_oms, 'ONGEDEFINEERD')
|
||||
sd.ins_srtdiscipline_prefix || '-' || sm.mld_stdmelding_omschrijving omschrijving,
|
||||
@@ -2247,9 +2665,7 @@ AS
|
||||
b.prs_bedrijf_naam leverancier,
|
||||
f.fin_factuur_nr factuurnummer
|
||||
FROM mld_opdr o,
|
||||
(SELECT *
|
||||
FROM fin_factuur
|
||||
WHERE fin_factuur_statuses_key IN (2, 3)) f, -- Ingevoerd/Incompleet
|
||||
fin_factuur f,
|
||||
mld_melding m,
|
||||
mld_stdmelding sm,
|
||||
prs_kostensoort ksm,
|
||||
@@ -2260,9 +2676,9 @@ AS
|
||||
ins_srtdiscipline sd,
|
||||
prs_kostenplaats kp,
|
||||
prs_bedrijf b
|
||||
WHERE 1 = 1
|
||||
AND o.mld_typeopdr_key IN (5, 283) -- Werkopdracht/Offerteopdracht
|
||||
WHERE o.mld_typeopdr_key IN (5, 283) -- Werkopdracht/Offerteopdracht
|
||||
AND o.mld_opdr_key = f.mld_opdr_key(+)
|
||||
AND COALESCE (f.fin_factuur_statuses_key, 3) IN (2, 3) -- Factuur Ingevoerd/Incompleet of nog niet ontvangen!
|
||||
AND o.mld_melding_key = m.mld_melding_key
|
||||
AND m.mld_stdmelding_key = sm.mld_stdmelding_key
|
||||
AND sm.prs_kostensoort_key = ksm.prs_kostensoort_key(+)
|
||||
@@ -2287,8 +2703,8 @@ CREATE OR REPLACE VIEW vlkc_v_rap_cnt_verantw
|
||||
kostenplaats -- 4 cijfers
|
||||
)
|
||||
AS
|
||||
SELECT TO_CHAR (c.cnt_contract_looptijd_tot, 'yyyy') jaar, -- Altijd nieuwe versie per jaar?
|
||||
c.cnt_contract_nummer_intern contractnummer,
|
||||
SELECT TO_CHAR (c.cnt_contract_looptijd_tot, 'yyyy') jaar, -- Altijd nieuwe versie per jaar!
|
||||
'C' || c.cnt_contract_nummer_intern || DECODE (c.cnt_contract_versie, NULL, '', '.' || TO_CHAR (c.cnt_contract_versie)) contractnummer,
|
||||
b.prs_bedrijf_naam leverancier,
|
||||
b.prs_leverancier_nr leveranciersnummer,
|
||||
c.cnt_contract_kosten jaarbedrag, -- Is dat altijd jaarbedrag?
|
||||
@@ -2299,7 +2715,7 @@ AS
|
||||
SUM (COALESCE (ud.fac_usrdata_prijs, 0)) reeds_verantwoord,
|
||||
COALESCE (ksgc.prs_kostensoortgrp_altcode, ksgd.prs_kostensoortgrp_altcode, NULL) kostensoort,
|
||||
kp.prs_kostenplaats_nr kostenplaats
|
||||
FROM cnt_contract c,
|
||||
FROM cnt_contract c, -- Alle contracten/versies (incl. verwijderde?)
|
||||
(SELECT *
|
||||
FROM fin_factuur
|
||||
WHERE fin_factuur_statuses_key IN (2, 6, 7)) f, -- Ingevoerd/Akkoord/Verwerkt
|
||||
@@ -2310,11 +2726,10 @@ AS
|
||||
prs_kostensoortgrp ksgd,
|
||||
prs_kostenplaats kp,
|
||||
prs_bedrijf b,
|
||||
(SELECT *
|
||||
(SELECT SUBSTR (fac_usrdata_code, INSTR (fac_usrdata_code, '/') + 1) cnt_usrdata_code, fac_usrdata_prijs
|
||||
FROM fac_usrdata
|
||||
WHERE fac_usrtab_key = -1) ud
|
||||
WHERE 1 = 1 -- Alle contracten!
|
||||
AND c.cnt_contract_key = f.cnt_contract_key(+)
|
||||
WHERE fac_usrtab_key = 81) ud -- VasteKostenMnd
|
||||
WHERE c.cnt_contract_key = f.cnt_contract_key(+)
|
||||
AND c.prs_kostensoort_key = ksc.prs_kostensoort_key(+)
|
||||
AND ksc.prs_kostensoortgrp_key = ksgc.prs_kostensoortgrp_key(+)
|
||||
AND c.ins_discipline_key = td.ins_discipline_key
|
||||
@@ -2322,9 +2737,9 @@ AS
|
||||
AND ksd.prs_kostensoortgrp_key = ksgd.prs_kostensoortgrp_key(+)
|
||||
AND c.prs_kostenplaats_key = kp.prs_kostenplaats_key(+)
|
||||
AND c.cnt_prs_bedrijf_key = b.prs_bedrijf_key
|
||||
AND TO_CHAR (c.cnt_contract_key) = ud.fac_usrdata_omschr(+)
|
||||
AND TO_CHAR (c.cnt_contract_key) = cnt_usrdata_code(+)
|
||||
GROUP BY TO_CHAR (c.cnt_contract_looptijd_tot, 'yyyy'), -- Altijd nieuwe versie per jaar?
|
||||
c.cnt_contract_nummer_intern,
|
||||
'C' || c.cnt_contract_nummer_intern || DECODE (c.cnt_contract_versie, NULL, '', '.' || TO_CHAR (c.cnt_contract_versie)),
|
||||
b.prs_bedrijf_naam,
|
||||
b.prs_leverancier_nr,
|
||||
c.cnt_contract_kosten, -- Is dat altijd jaarbedrag?
|
||||
|
||||
Reference in New Issue
Block a user