PCHX#63945 Import xml-factuur uit Scansys (xml ipv csv), nu betere bepaling afwijkende kostenplaats
svn path=/Customer/trunk/; revision=50152
This commit is contained in:
156
PCHX/pchx.sql
156
PCHX/pchx.sql
@@ -436,7 +436,8 @@ CREATE OR REPLACE VIEW pchx_v_factuur_gegevens
|
||||
reknr,
|
||||
kstdrcode,
|
||||
administratie,
|
||||
afwboekdatum
|
||||
afwboekdatum,
|
||||
afw_kostenplaats
|
||||
)
|
||||
AS
|
||||
SELECT f.fin_factuur_key,
|
||||
@@ -594,7 +595,8 @@ AS
|
||||
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
|
||||
afwboekdatum,
|
||||
fr_afwk.afw_kostenplaats
|
||||
FROM fin_factuur f,
|
||||
fin_factuurregel fr,
|
||||
fin_btwtabelwaarde btw,
|
||||
@@ -615,6 +617,17 @@ AS
|
||||
afw_btw_bedrag
|
||||
FROM fin_kenmerkfactregel kfr
|
||||
WHERE fin_kenmerk_key = 4) fr_btw, -- Afwijkend btwbedrag
|
||||
(SELECT frk.fin_factuurregel_key,
|
||||
prs_kostenplaats_nr afw_kostenplaats
|
||||
FROM fin_kenmerk k,
|
||||
prs_kostenplaats kp,
|
||||
fin_kenmerkfactregel frk
|
||||
WHERE kp.prs_kostenplaats_key = fac.safe_to_number(frk.fin_kenmerkfactregel_waarde)
|
||||
AND k.fin_kenmerk_key = frk.fin_kenmerk_key
|
||||
AND frk.fin_kenmerkfactregel_verwijder IS NULL
|
||||
AND k.fin_kenmerk_verwijder IS NULL
|
||||
AND kp.prs_kostenplaats_verwijder IS NULL
|
||||
AND k.fin_kenmerk_upper = 'AFW. KOSTENPLAATS') fr_afwk, -- Afwijkend kostenplaats
|
||||
prs_kostensoort k,
|
||||
prs_kostensoort kr,
|
||||
prs_kostensoortgrp kg,
|
||||
@@ -638,6 +651,7 @@ AS
|
||||
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 fr.fin_factuurregel_key = fr_afwk.fin_factuurregel_key(+)
|
||||
AND f.fin_factuur_verwijder IS NULL;
|
||||
|
||||
|
||||
@@ -836,7 +850,8 @@ CREATE OR REPLACE VIEW pchx_v_bron_export_exact_xml
|
||||
lev_kpn,
|
||||
administratie,
|
||||
fin_factuur_key,
|
||||
fin_factuurregel_nr
|
||||
fin_factuurregel_nr,
|
||||
afw_kostenplaats
|
||||
)
|
||||
AS
|
||||
SELECT (SELECT fin_kenmerkfactuur_waarde kf
|
||||
@@ -879,7 +894,8 @@ AS
|
||||
lev_kpn,
|
||||
administratie,
|
||||
fin_factuur_key,
|
||||
fin_factuurregel_nr
|
||||
fin_factuurregel_nr,
|
||||
afw_kostenplaats
|
||||
FROM pchx_v_factuur_gegevens fg
|
||||
WHERE fin_factuur_statuses_key = 6;
|
||||
|
||||
@@ -1536,7 +1552,6 @@ AS
|
||||
--v_sub_count NUMBER; --Met PCHX#63945 wordt regelnummer vanuit de xml-import aangeleverd en moet ook conform worden doorgegeven.
|
||||
v_bestand VARCHAR2 (30);
|
||||
v_dagboeknr VARCHAR2 (2);
|
||||
v_kostenplaats VARCHAR2 (200);
|
||||
BEGIN
|
||||
v_order_count := 0;
|
||||
v_amount_sum := 0;
|
||||
@@ -1613,24 +1628,6 @@ BEGIN
|
||||
FOR rec1 IN c_sub (rec.bkstnr)
|
||||
LOOP
|
||||
BEGIN
|
||||
v_kostenplaats := NULL;
|
||||
|
||||
SELECT prs_kostenplaats_nr
|
||||
INTO v_kostenplaats
|
||||
FROM fin_kenmerk k,
|
||||
prs_kostenplaats kp,
|
||||
fin_factuurregel fr,
|
||||
fin_kenmerkfactregel frk
|
||||
WHERE fr.fin_factuur_key = rec1.fin_factuur_key
|
||||
AND fr.fin_factuurregel_nr = rec1.fin_factuurregel_nr
|
||||
AND fr.fin_factuurregel_key = frk.fin_factuurregel_key
|
||||
AND kp.prs_kostenplaats_key =
|
||||
frk.fin_kenmerkfactregel_waarde
|
||||
AND frk.fin_kenmerkfactregel_verwijder IS NULL
|
||||
AND k.fin_kenmerk_verwijder IS NULL
|
||||
AND kp.prs_kostenplaats_verwijder IS NULL
|
||||
AND k.fin_kenmerk_upper = 'AFW. KOSTENPLAATS';
|
||||
|
||||
pchx.add_xml_row (
|
||||
v_bestand,
|
||||
'<FinEntryLine number="'
|
||||
@@ -1666,48 +1663,15 @@ BEGIN
|
||||
--Met PCHX#63945 wordt afwijkende kostenplaats gehaald vanuit de import en daarmee van de factuurregels.
|
||||
-- Voorheen kreeg PCHH altijd 0100, bij PCHA en PCHW werd dit gehaald uit projectcode en bij de overige omgeving werd kostenplaats van bestelling/contract/opdracht overgenomen.
|
||||
--Met PCHX#63945 moet dit dus, voor controledoeleinden in Exact, nu van de (door Exact aangeleverde) factuurregels. CASE
|
||||
IF v_kostenplaats IS NOT NULL
|
||||
IF rec1.afw_kostenplaats IS NOT NULL
|
||||
THEN
|
||||
pchx.add_xml_row (
|
||||
v_bestand,
|
||||
'<Costcenter code="'
|
||||
|| xml.char_to_html (v_kostenplaats)
|
||||
|| xml.char_to_html (rec1.afw_kostenplaats)
|
||||
|| '"/>');
|
||||
END IF;
|
||||
|
||||
-- IF pchx.get_user = 'PCHD'
|
||||
-- OR pchx.get_user = 'PCHS'
|
||||
-- OR pchx.get_user = 'PCHP'
|
||||
-- OR pchx.get_user = 'PCHY'
|
||||
-- THEN
|
||||
-- pchx.add_xml_row (
|
||||
-- v_bestand,
|
||||
-- '<Costcenter code="'
|
||||
-- || xml.char_to_html (rec1.kstplcode)
|
||||
-- || '"/>');
|
||||
-- END IF;
|
||||
--
|
||||
-- -- LET OP: PCHA en PCHW gebruiken het projectcode veld om de kostenplaats te vullen in Exact
|
||||
-- -- De Facilitor kostenplaats wordt bij deze accounts al gebruikt voor de klantkostenplaats.
|
||||
-- IF pchx.get_user = 'PCHA' OR pchx.get_user = 'PCHW'
|
||||
-- THEN
|
||||
-- pchx.add_xml_row (
|
||||
-- v_bestand,
|
||||
-- '<Costcenter code="'
|
||||
-- || xml.char_to_html (rec1.projectnr)
|
||||
-- || '"/>');
|
||||
-- END IF;
|
||||
--
|
||||
-- -- PCHH#61092 Altijd Costcenter 0100 doorgeven bij PCHH
|
||||
-- IF pchx.get_user = 'PCHH'
|
||||
-- THEN
|
||||
-- pchx.add_xml_row (
|
||||
-- v_bestand,
|
||||
-- '<Costcenter code="'
|
||||
-- || xml.char_to_html ('0100')
|
||||
-- || '"/>');
|
||||
-- END IF;
|
||||
|
||||
IF pchx.get_user = 'PCHD'
|
||||
THEN
|
||||
pchx.add_xml_row (
|
||||
@@ -1779,6 +1743,7 @@ END;
|
||||
/
|
||||
|
||||
|
||||
|
||||
CREATE OR REPLACE PROCEDURE pchx_select_scansys (p_applname IN VARCHAR2,
|
||||
p_applrun IN VARCHAR2)
|
||||
AS
|
||||
@@ -1787,7 +1752,7 @@ BEGIN
|
||||
END;
|
||||
/
|
||||
|
||||
CREATE OR REPLACE VIEW pchx_v_bron_verplichtingen_xml
|
||||
CREATE OR REPLACE FORCE VIEW pchx_v_bron_verplichtingen_xml
|
||||
(
|
||||
bkstnr,
|
||||
fact_oms25,
|
||||
@@ -1810,7 +1775,8 @@ CREATE OR REPLACE VIEW pchx_v_bron_verplichtingen_xml
|
||||
administratie,
|
||||
fin_factuur_key,
|
||||
track_verpl,
|
||||
fin_factuurregel_nr
|
||||
fin_factuurregel_nr,
|
||||
afw_kostenplaats
|
||||
)
|
||||
AS
|
||||
SELECT (SELECT fin_kenmerkfactuur_waarde kf
|
||||
@@ -1859,9 +1825,10 @@ AS
|
||||
AND t.fac_srtnotificatie_key = sn.fac_srtnotificatie_key
|
||||
AND sn.fac_srtnotificatie_code = 'CUST10')
|
||||
track_verpl,
|
||||
fin_factuurregel_nr
|
||||
fin_factuurregel_nr,
|
||||
afw_kostenplaats
|
||||
FROM pchx_v_factuur_gegevens fg
|
||||
WHERE fin_factuur_statuses_key between 1 and 6;
|
||||
WHERE fin_factuur_statuses_key BETWEEN 1 AND 6;
|
||||
|
||||
|
||||
CREATE OR REPLACE VIEW pchx_v_export_verpl
|
||||
@@ -1929,7 +1896,6 @@ AS
|
||||
v_bestand VARCHAR2 (30);
|
||||
v_dagboeknr VARCHAR2 (2);
|
||||
v_applname VARCHAR2 (2);
|
||||
v_kostenplaats VARCHAR2 (200);
|
||||
BEGIN
|
||||
--Eerst maar de resultaten van vorige export opruimen
|
||||
|
||||
@@ -1997,24 +1963,6 @@ BEGIN
|
||||
|
||||
FOR rec1 IN c_sub (rec.fin_factuur_key)
|
||||
LOOP
|
||||
v_kostenplaats := NULL;
|
||||
|
||||
SELECT prs_kostenplaats_nr
|
||||
INTO v_kostenplaats
|
||||
FROM fin_kenmerk k,
|
||||
prs_kostenplaats kp,
|
||||
fin_factuurregel fr,
|
||||
fin_kenmerkfactregel frk
|
||||
WHERE fr.fin_factuur_key = rec1.fin_factuur_key
|
||||
AND fr.fin_factuurregel_nr = rec1.fin_factuurregel_nr
|
||||
AND fr.fin_factuurregel_key = frk.fin_factuurregel_key
|
||||
AND kp.prs_kostenplaats_key =
|
||||
frk.fin_kenmerkfactregel_waarde
|
||||
AND frk.fin_kenmerkfactregel_verwijder IS NULL
|
||||
AND k.fin_kenmerk_verwijder IS NULL
|
||||
AND kp.prs_kostenplaats_verwijder IS NULL
|
||||
AND k.fin_kenmerk_upper = 'AFW. KOSTENPLAATS';
|
||||
|
||||
BEGIN
|
||||
pchx.add_xml_row (
|
||||
v_bestand,
|
||||
@@ -2051,57 +1999,15 @@ BEGIN
|
||||
--Met PCHX#63945 wordt afwijkende kostenplaats gehaald vanuit de import en daarmee van de factuurregels.
|
||||
-- Voorheen kreeg PCHH altijd 0100, bij PCHA en PCHW werd dit gehaald uit projectcode en bij de overige omgeving werd kostenplaats van bestelling/contract/opdracht overgenomen.
|
||||
--Met PCHX#63945 moet dit dus, voor controledoeleinden in Exact, nu van de (door Exact aangeleverde) factuurregels. CASE
|
||||
IF v_kostenplaats IS NOT NULL
|
||||
IF rec1.afw_kostenplaats IS NOT NULL
|
||||
THEN
|
||||
pchx.add_xml_row (
|
||||
v_bestand,
|
||||
'<Costcenter code="'
|
||||
|| xml.char_to_html (v_kostenplaats)
|
||||
|| xml.char_to_html (rec1.afw_kostenplaats)
|
||||
|| '"/>');
|
||||
END IF;
|
||||
|
||||
-- IF pchx.get_user = 'PCHD'
|
||||
-- OR pchx.get_user = 'PCHS'
|
||||
-- OR pchx.get_user = 'PCHP'
|
||||
-- OR pchx.get_user = 'PCHY'
|
||||
-- THEN
|
||||
-- pchx.add_xml_row (
|
||||
-- v_bestand,
|
||||
-- '<Costcenter code="'
|
||||
-- || xml.char_to_html (rec1.kstplcode)
|
||||
-- || '"/>');
|
||||
-- END IF;
|
||||
--
|
||||
-- -- LET OP: PCHA en PCHW gebruiken het projectcode veld om de kostenplaats te vullen in Exact
|
||||
-- -- De Facilitor kostenplaats wordt bij deze accounts al gebruikt voor de klantkostenplaats.
|
||||
-- IF pchx.get_user = 'PCHA' OR pchx.get_user = 'PCHW'
|
||||
-- THEN
|
||||
-- pchx.add_xml_row (
|
||||
-- v_bestand,
|
||||
-- '<Costcenter code="'
|
||||
-- || xml.char_to_html (rec1.projectnr)
|
||||
-- || '"/>');
|
||||
-- END IF;
|
||||
--
|
||||
-- -- PCHH#61092 Altijd Costcenter 0100 doorgeven bij PCHH
|
||||
-- IF pchx.get_user = 'PCHH'
|
||||
-- THEN
|
||||
-- pchx.add_xml_row (
|
||||
-- v_bestand,
|
||||
-- '<Costcenter code="'
|
||||
-- || xml.char_to_html ('0100')
|
||||
-- || '"/>');
|
||||
-- END IF;
|
||||
--
|
||||
-- IF pchx.get_user = 'PCHD'
|
||||
-- THEN
|
||||
-- pchx.add_xml_row (
|
||||
-- v_bestand,
|
||||
-- '<Costunit code="'
|
||||
-- || xml.char_to_html (rec1.kstdrcode)
|
||||
-- || '"/>');
|
||||
-- END IF;
|
||||
|
||||
IF pchx.get_user = 'PCHD'
|
||||
THEN
|
||||
pchx.add_xml_row (
|
||||
|
||||
Reference in New Issue
Block a user