YAXX#88771 Koppeling Facilitor - Exact

svn path=/Customer/trunk/; revision=70743
This commit is contained in:
Arthur Egberink
2025-10-29 07:54:24 +00:00
parent cc1d8230e8
commit 18c19df074

View File

@@ -68,6 +68,7 @@ AS
FUNCTION vk_bepaal_maandbedrag (p_startdienstverlening IN DATE,
p_startverrekening IN DATE,
p_offset IN NUMBER,
p_maand IN NUMBER,
p_bedrag IN NUMBER)
RETURN NUMBER;
@@ -153,6 +154,13 @@ AS
INTO kkey
FROM alg_kenmerk k
WHERE k.alg_kenmerk_code = p_kenmerk_code;
WHEN p_module = 'FIN'
THEN
SELECT fin_kenmerk_key
INTO kkey
FROM fin_kenmerk k
WHERE k.fin_kenmerk_code = p_kenmerk_code;
ELSE
kkey := NULL;
END CASE;
@@ -1125,6 +1133,7 @@ AS
-- plaatsvinden in p_startverrekening
FUNCTION vk_bepaal_maandbedrag (p_startdienstverlening IN DATE,
p_startverrekening IN DATE,
p_offset IN NUMBER,
p_maand IN NUMBER,
p_bedrag IN NUMBER)
RETURN NUMBER
@@ -1144,11 +1153,12 @@ AS
END IF;
v_maand := ADD_MONTHS (TRUNC (SYSDATE, 'YY'), p_maand - 1);
v_maand := ADD_MONTHS (v_maand, (12 * p_offset)); -- als de periode op vorig jaar staat wordt de maand van een jaar terug bepalend.
CASE
WHEN v_maand = v_startverrekening
THEN
RETURN ROUND(MONTHS_BETWEEN (v_startverrekening, v_startdienstverlening) * p_bedrag,2);
RETURN ROUND((MONTHS_BETWEEN (v_startverrekening, v_startdienstverlening) + 1) * p_bedrag,2);
WHEN v_maand > v_startverrekening
THEN
RETURN ROUND(p_bedrag,2);
@@ -5006,6 +5016,7 @@ AS
CREATE OR REPLACE VIEW vbxx_v_factuur_gegevens_api
AS
SELECT f.fin_factuur_key,
f.fin_factuur_externnr,
DECODE (
c.cnt_contract_key,
NULL, DECODE (
@@ -5029,6 +5040,7 @@ AS
opdracht_id,
f.fin_factuur_datum,
f.fin_factuur_nr,
flx.getflex('FIN', vbxx.get_kenmerk_key('FIN', NULL, 'BOEKSTUKNUMMER'), f.fin_factuur_key) boekstuknr,
COALESCE (b_c.prs_bedrijf_key, COALESCE (b_o.prs_bedrijf_key, b_b.prs_bedrijf_key))
prs_bedrijf_key,
DECODE (
@@ -5052,6 +5064,7 @@ AS
btw.fin_btwtabelwaarde_key,
fr.fin_factuurregel_nr,
fr.fin_factuurregel_key,
fr.fin_factuurregel_id,
f.fin_factuur_debiteur_nr,
f.fin_factuur_boekmaand,
prs_kostensoort_oms,
@@ -5122,7 +5135,8 @@ AS
AND k.cnt_kenmerk_code = 'TYPEFACTUUR'
AND k.cnt_kenmerk_verwijder IS NULL
AND FAC.safe_to_number (kc.cnt_kenmerkcontract_waarde) = ud.fac_usrdata_key))
typefactuur
typefactuur,
fin_factuur_flag
FROM fin_factuur f,
fin_factuurregel fr,
fin_btwtabelwaarde btw,
@@ -5192,6 +5206,7 @@ AS
CREATE OR REPLACE VIEW vbxx_v_bron_export_exact_api
(
fin_factuur_key,
fin_factuur_externnr,
opdracht_id,
factuur_nr, -- crediteur factuurnummer
datum, -- factuurdatum
@@ -5209,13 +5224,19 @@ CREATE OR REPLACE VIEW vbxx_v_bron_export_exact_api
fin_factuur_debiteur_nr, -- crediteur debiteurnummer
alg_district_key,
alg_regio_key,
alg_regio_adm,
fin_factuur_boekmaand,
fin_factuur_statuses_key,
fin_factuurregel_key,
fin_factuurregel_id,
n_incompleet,
n_niet_akkoord
n_niet_akkoord,
factuur_flag,
boekstuknr
)
AS
SELECT fin_factuur_key,
fin_factuur_externnr,
opdracht_id,
fin_factuur_nr,
TO_CHAR (fin_factuur_datum, 'yyyy-mm-dd')
@@ -5247,8 +5268,15 @@ AS
fin_factuur_debiteur_nr,
alg_district_key,
alg_regio_key,
(SELECT alg_onrgoedkenmerk_waarde
FROM alg_onrgoedkenmerk aogk, alg_kenmerk k
WHERE aogk.alg_kenmerk_key = k.alg_kenmerk_key
AND k.alg_kenmerk_code = 'ADMINISTRATIE'
AND aogk.alg_onrgoed_key = fg.alg_regio_key) alg_regio_adm,
fin_factuur_boekmaand,
fg.fin_factuur_statuses_key,
fin_factuurregel_key,
fin_factuurregel_id,
(SELECT COUNT(DISTINCT(fg2.fin_factuur_key)) FROM vbxx_v_factuur_gegevens_api fg2
WHERE fg.prs_bedrijf_key = fg2.prs_bedrijf_key
AND fg.fin_factuur_nr = fg2.fin_factuur_nr
@@ -5256,8 +5284,11 @@ AS
(SELECT COUNT(DISTINCT(fg2.fin_factuur_key)) FROM vbxx_v_factuur_gegevens_api fg2
WHERE fg.prs_bedrijf_key = fg2.prs_bedrijf_key
AND fg.fin_factuur_nr = fg2.fin_factuur_nr
AND fg2.fin_factuur_statuses_key <> 6) n_niet_akkoord
AND fg2.fin_factuur_statuses_key <> 6) n_niet_akkoord,
fin_factuur_flag,
boekstuknr
FROM ( SELECT g.fin_factuur_key,
g.fin_factuur_externnr,
opdracht_id,
fin_factuur_datum,
fin_factuur_nr,
@@ -5279,12 +5310,17 @@ AS
g.dagboek,
g.afw_dagboek,
g.afw_kstdrcode,
g.alg_district_key,
g.alg_regio_key,
g.alg_district_key,
g.typefactuur,
g.fin_factuur_statuses_key
g.fin_factuur_statuses_key,
g.fin_factuurregel_key,
g.fin_factuurregel_id,
g.fin_factuur_flag,
g.boekstuknr
FROM vbxx_v_factuur_gegevens_api g
GROUP BY g.fin_factuur_key,
g.fin_factuur_externnr,
opdracht_id,
fin_factuur_datum,
fin_factuur_nr,
@@ -5305,10 +5341,13 @@ AS
g.alg_district_key,
g.alg_regio_key,
g.typefactuur,
g.fin_factuur_statuses_key) fg,
g.fin_factuur_statuses_key,
g.fin_factuurregel_key,
g.fin_factuurregel_id,
g.fin_factuur_flag,
boekstuknr) fg,
prs_bedrijf b
WHERE fg.prs_bedrijf_key = b.prs_bedrijf_key
AND b.prs_leverancier_nr IS NOT NULL;
WHERE fg.prs_bedrijf_key = b.prs_bedrijf_key;
-- Procedure om alle facturen te exporteren naar exact.
CREATE OR REPLACE PROCEDURE vbxx_select_exact_xml (p_applname IN VARCHAR2,