PCHX#56440 factuurrapport incl afw boekdatum

svn path=/Customer/trunk/; revision=41188
This commit is contained in:
Ruud Lipper
2019-02-27 10:41:44 +00:00
parent 887ed7d581
commit 431e132c7c

View File

@@ -382,6 +382,8 @@ CREATE OR REPLACE VIEW pchx_v_factuur_gegevens
opdracht_id,
fin_factuur_datum,
fin_factuur_nr,
prs_bedrijf_key_org,
prs_bedrijf_key_afw,
prs_bedrijf_key,
fin_factuurregel_omschrijving,
fin_factuurregel_totaal,
@@ -410,7 +412,8 @@ CREATE OR REPLACE VIEW pchx_v_factuur_gegevens
lev_kpn,
reknr,
kstdrcode,
administratie
administratie,
afwboekdatum
)
AS
SELECT f.fin_factuur_key,
@@ -428,10 +431,11 @@ AS
mld_stdmelding std,
ins_tab_discipline d,
ins_srtdiscipline sd
WHERE m.mld_melding_key = o.mld_melding_key
AND m.mld_stdmelding_key = std.mld_stdmelding_key
AND std.mld_ins_discipline_key = d.ins_discipline_key
AND d.ins_srtdiscipline_key = sd.ins_srtdiscipline_key),
WHERE m.mld_melding_key = o.mld_melding_key
AND m.mld_stdmelding_key = std.mld_stdmelding_key
AND std.mld_ins_discipline_key = d.ins_discipline_key
AND d.ins_srtdiscipline_key =
sd.ins_srtdiscipline_key),
bo.bes_bestelopdr_id),
'C' || TO_CHAR (cnt_contract_nummer_intern))
opdracht_id,
@@ -440,6 +444,10 @@ AS
'2011', TO_DATE ('20120102', 'YYYYMMDD'),
f.fin_factuur_datum),
f.fin_factuur_nr,
b_f.prs_bedrijf_key prs_bedrijf_key_afw,
COALESCE (b_c.prs_bedrijf_key,
COALESCE (b_o.prs_bedrijf_key, b_b.prs_bedrijf_key))
prs_bedrijf_key_org,
COALESCE (
b_f.prs_bedrijf_key,
COALESCE (b_c.prs_bedrijf_key,
@@ -469,21 +477,21 @@ AS
(SELECT fin_kenmerkfactuur_waarde
FROM fin_kenmerkfactuur fk
WHERE fk.fin_factuur_key = f.fin_factuur_key
AND fk.fin_kenmerk_key = 3)
AND fk.fin_kenmerk_key = 3)
boekstuknummer,
(SELECT fac_usrdata_code
FROM fin_kenmerkfactregel kfr, fac_usrdata ud
WHERE fin_kenmerk_key = 61
AND kfr.fin_factuurregel_key = fr.fin_factuurregel_key
AND fac.safe_to_number (fin_kenmerkfactregel_waarde) =
ud.fac_usrdata_key)
AND kfr.fin_factuurregel_key = fr.fin_factuurregel_key
AND fac.safe_to_number (fin_kenmerkfactregel_waarde) =
ud.fac_usrdata_key)
projectnummer,
(SELECT fac_usrdata_omschr
FROM fin_kenmerkfactregel kfr, fac_usrdata ud
WHERE fin_kenmerk_key = 61
AND kfr.fin_factuurregel_key = fr.fin_factuurregel_key
AND fac.safe_to_number (fin_kenmerkfactregel_waarde) =
ud.fac_usrdata_key)
AND kfr.fin_factuurregel_key = fr.fin_factuurregel_key
AND fac.safe_to_number (fin_kenmerkfactregel_waarde) =
ud.fac_usrdata_key)
projectnaam,
COALESCE (kr.prs_kostensoort_oms, k.prs_kostensoort_oms),
k.prs_kostensoort_refcode,
@@ -493,9 +501,9 @@ AS
(SELECT prs_kostenplaats_key
FROM prs_kostenplaats kpr, fin_kenmerkfactregel kfr
WHERE kfr.fin_kenmerk_key = 26
AND kfr.fin_factuurregel_key = fr.fin_factuurregel_key
AND fac.safe_to_number (fin_kenmerkfactregel_waarde) =
kpr.prs_kostenplaats_key),
AND kfr.fin_factuurregel_key = fr.fin_factuurregel_key
AND fac.safe_to_number (fin_kenmerkfactregel_waarde) =
kpr.prs_kostenplaats_key),
o.prs_kostenplaats_key,
c.prs_kostenplaats_key,
(SELECT DISTINCT b.prs_kostenplaats_key
@@ -503,8 +511,9 @@ AS
bes_bestelopdr_item boi,
bes_bestelling_item bi
WHERE bo.bes_bestelopdr_key = boi.bes_bestelopdr_key
AND boi.bes_bestelopdr_item_key = bi.bes_bestelopdr_item_key
AND bi.bes_bestelling_key = b.bes_bestelling_key))
AND boi.bes_bestelopdr_item_key =
bi.bes_bestelopdr_item_key
AND bi.bes_bestelling_key = b.bes_bestelling_key))
prs_kostenplaats_key,
COALESCE (
o.prs_kostenplaats_key,
@@ -514,32 +523,35 @@ AS
bes_bestelopdr_item boi,
bes_bestelling_item bi
WHERE bo.bes_bestelopdr_key = boi.bes_bestelopdr_key
AND boi.bes_bestelopdr_item_key = bi.bes_bestelopdr_item_key
AND bi.bes_bestelling_key = b.bes_bestelling_key))
AND boi.bes_bestelopdr_item_key =
bi.bes_bestelopdr_item_key
AND bi.bes_bestelling_key = b.bes_bestelling_key))
prs_kostenplaats_org,
o.mld_opdr_key,
c.cnt_contract_key,
bo.bes_bestelopdr_key,
( -- status van de factuur is ingevoerd als er facturen van dezelfde leverancier en nummer zijn
-- met status ingevoerd, afgewezen of incompleet
SELECT DECODE (COUNT ( * ), 0, f.fin_factuur_statuses_key, 2)
FROM fin_factuur f_t,
cnt_contract c_t,
bes_bestelopdr b_t,
mld_opdr o_t
WHERE f_t.fin_factuur_verwijder IS NULL
AND f_t.mld_opdr_key = o_t.mld_opdr_key(+)
AND f_t.cnt_contract_key = c_t.cnt_contract_key(+)
AND f_t.bes_bestelopdr_key = b_t.bes_bestelopdr_key(+)
AND COALESCE (
o_t.mld_uitvoerende_keys,
COALESCE (b_t.prs_bedrijf_key, c_t.cnt_prs_bedrijf_key)) =
COALESCE (
o.mld_uitvoerende_keys,
COALESCE (bo.prs_bedrijf_key, c.cnt_prs_bedrijf_key))
AND f.fin_factuur_nr = f_t.fin_factuur_nr
AND f_t.fin_factuur_statuses_key IN (1, 2, 3, 5) -- Afgewezen,Ingevoerd,Incompleet,TerGoedkeuring
AND f.fin_factuur_statuses_key = 6)
-- met status ingevoerd, afgewezen of incompleet
SELECT DECODE (COUNT ( * ), 0, f.fin_factuur_statuses_key, 2)
FROM fin_factuur f_t,
cnt_contract c_t,
bes_bestelopdr b_t,
mld_opdr o_t
WHERE f_t.fin_factuur_verwijder IS NULL
AND f_t.mld_opdr_key = o_t.mld_opdr_key(+)
AND f_t.cnt_contract_key = c_t.cnt_contract_key(+)
AND f_t.bes_bestelopdr_key = b_t.bes_bestelopdr_key(+)
AND COALESCE (
o_t.mld_uitvoerende_keys,
COALESCE (b_t.prs_bedrijf_key,
c_t.cnt_prs_bedrijf_key)) =
COALESCE (
o.mld_uitvoerende_keys,
COALESCE (bo.prs_bedrijf_key,
c.cnt_prs_bedrijf_key))
AND f.fin_factuur_nr = f_t.fin_factuur_nr
AND f_t.fin_factuur_statuses_key IN (1, 2, 3, 5) -- Afgewezen,Ingevoerd,Incompleet,TerGoedkeuring
AND f.fin_factuur_statuses_key = 6)
fin_factuur_statuses_key,
lk.prs_kostenplaats_nr lev_kpn,
rn.reknr,
@@ -548,7 +560,17 @@ AS
FROM fin_kenmerkfactuur fk
WHERE fk.fin_factuur_key = f.fin_factuur_key
AND fk.fin_kenmerk_key = 2)
administratie
administratie,
(SELECT fac.safe_to_date (fin_kenmerkfactregel_waarde,
'DD-MM-YYYY')
afwboekdatum
FROM fin_kenmerkfactregel fkf, fin_kenmerk fk
WHERE fk.fin_kenmerk_key = fkf.fin_kenmerk_key
AND fkf.fin_kenmerkfactregel_verwijder IS NULL
AND fk.fin_kenmerk_verwijder IS NULL
AND UPPER (fk.fin_kenmerk_omschrijving) = 'AFW. BOEKDATUM'
AND fkf.fin_factuurregel_key = fr.fin_factuurregel_key)
afwboekdatum
FROM fin_factuur f,
fin_factuurregel fr,
fin_btwtabelwaarde btw,
@@ -562,8 +584,8 @@ AS
(SELECT b.*, fin_factuur_key
FROM fin_kenmerkfactuur km, prs_bedrijf b
WHERE fin_kenmerk_key = 41
AND fac.safe_to_number (km.fin_kenmerkfactuur_waarde) =
b.prs_bedrijf_key) b_f, -- Afwijkend bedrijf
AND fac.safe_to_number (km.fin_kenmerkfactuur_waarde) =
b.prs_bedrijf_key) b_f, -- Afwijkend bedrijf
(SELECT kfr.fin_factuurregel_key,
fac.safe_to_number (fin_kenmerkfactregel_waarde)
afw_btw_bedrag
@@ -575,24 +597,24 @@ AS
prs_kostenplaats lk,
pchx_v_kenm_kstdrcode kd,
pchx_v_kenm_reknr rn
WHERE f.fin_factuur_key = fr.fin_factuur_key
AND fr.fin_btwtabelwaarde_key = btw.fin_btwtabelwaarde_key
AND f.mld_opdr_key = o.mld_opdr_key(+)
AND o.mld_typeopdr_key = ot.mld_typeopdr_key(+)
AND f.cnt_contract_key = c.cnt_contract_key(+)
AND f.bes_bestelopdr_key = bo.bes_bestelopdr_key(+)
AND bo.prs_bedrijf_key = b_b.prs_bedrijf_key(+)
AND o.mld_uitvoerende_keys = b_o.prs_bedrijf_key(+)
AND c.cnt_prs_bedrijf_key = b_c.prs_bedrijf_key(+)
AND f.fin_factuur_key = b_f.fin_factuur_key(+)
AND f.prs_kostensoort_key = k.prs_kostensoort_key(+)
AND k.prs_kostenplaats_key = lk.prs_kostenplaats_key(+)
AND k.prs_kostensoortgrp_key = kg.prs_kostensoortgrp_key(+)
AND fr.prs_kostensoort_key = kr.prs_kostensoort_key(+)
AND fr.fin_factuurregel_key = kd.fin_factuurregel_key(+)
AND fr.fin_factuurregel_key = rn.fin_factuurregel_key(+)
AND fr.fin_factuurregel_key = fr_btw.fin_factuurregel_key(+)
AND f.fin_factuur_verwijder IS NULL;
WHERE f.fin_factuur_key = fr.fin_factuur_key
AND fr.fin_btwtabelwaarde_key = btw.fin_btwtabelwaarde_key
AND f.mld_opdr_key = o.mld_opdr_key(+)
AND o.mld_typeopdr_key = ot.mld_typeopdr_key(+)
AND f.cnt_contract_key = c.cnt_contract_key(+)
AND f.bes_bestelopdr_key = bo.bes_bestelopdr_key(+)
AND bo.prs_bedrijf_key = b_b.prs_bedrijf_key(+)
AND o.mld_uitvoerende_keys = b_o.prs_bedrijf_key(+)
AND c.cnt_prs_bedrijf_key = b_c.prs_bedrijf_key(+)
AND f.fin_factuur_key = b_f.fin_factuur_key(+)
AND f.prs_kostensoort_key = k.prs_kostensoort_key(+)
AND k.prs_kostenplaats_key = lk.prs_kostenplaats_key(+)
AND k.prs_kostensoortgrp_key = kg.prs_kostensoortgrp_key(+)
AND fr.prs_kostensoort_key = kr.prs_kostensoort_key(+)
AND fr.fin_factuurregel_key = kd.fin_factuurregel_key(+)
AND fr.fin_factuurregel_key = rn.fin_factuurregel_key(+)
AND fr.fin_factuurregel_key = fr_btw.fin_factuurregel_key(+)
AND f.fin_factuur_verwijder IS NULL;
CREATE OR REPLACE VIEW pchx_v_rap_factuurgegevens
@@ -628,6 +650,53 @@ AS
fin_factuur_nr,
prs_bedrijf_naam;
CREATE OR REPLACE VIEW pchx_v_rap_factuurgegevens_fin
(
nr,
factuurdatum,
uitvoerende,
leveranciernr,
factuurnr,
excl_btw,
incl_btw,
status,
afwbedrijf,
grootboekrekening,
kostendrager,
afw_boekdatum
)
AS
SELECT fin_factuur_key,
fin_factuur_datum,
borg.prs_bedrijf_naam,
borg.prs_leverancier_nr,
fin_factuur_nr,
SUM (fin_factuurregel_totaal),
SUM (fin_factuurregel_totaal + fin_factuurregel_btw),
fin_factuur_statuses_omschr,
bafw.prs_bedrijf_naam,
reknr,
kstdrcode,
afwboekdatum
FROM pchx_v_factuur_gegevens f,
prs_bedrijf borg,
prs_bedrijf bafw,
fin_factuur_statuses fs
WHERE borg.prs_bedrijf_key = f.prs_bedrijf_key_org
AND bafw.prs_bedrijf_key = f.prs_bedrijf_key_afw(+)
AND fs.fin_factuur_statuses_key = f.fin_factuur_statuses_key
AND f.fin_factuur_statuses_key IN (1, 2, 6)
GROUP BY fin_factuur_key,
fin_factuur_datum,
borg.prs_bedrijf_naam,
borg.prs_leverancier_nr,
fin_factuur_nr,
fin_factuur_statuses_omschr,
bafw.prs_bedrijf_naam,
reknr,
kstdrcode,
afwboekdatum;
-------------------------------------------------------------------------------
-- EXPORTFUNCTIE - Export exact
-------------------------------------------------------------------------------