BLST#66395 -- Implementatie belastingdienst

svn path=/Customer/trunk/; revision=52239
This commit is contained in:
Norbert Wassink
2021-07-07 07:37:23 +00:00
parent 64bf31689f
commit a565d8ec18

View File

@@ -262,7 +262,7 @@ CREATE OR REPLACE PROCEDURE blst_select_nds_export_new (
p_applrun IN VARCHAR2
)
AS
CURSOR SEL IS
CURSOR SEL(p_days NUMBER) IS
SELECT res.res_rsv_ruimte_key res_ruimte_key,
rr.res_reservering_key reserveringnr,
res.res_rsv_ruimte_volgnr volgnr,
@@ -293,8 +293,8 @@ AS
WHERE res.res_status_bo_key=2
AND res.res_status_fo_key=2
AND rr.res_reservering_key = res.res_reservering_key
AND TRUNC(res.res_rsv_ruimte_van) < TRUNC(sysdate+7)
AND TRUNC(res.res_rsv_ruimte_van) > TRUNC(sysdate)
AND TRUNC(res.res_rsv_ruimte_van) < TRUNC(SYSDATE+p_days)
AND TRUNC(res.res_rsv_ruimte_van) > TRUNC(SYSDATE)
AND prsh.prs_perslid_key = res.res_rsv_ruimte_host_key
AND prsc.prs_perslid_key = res.res_rsv_ruimte_contact_key
AND ro.res_ruimte_opstel_key = res.res_ruimte_opstel_key
@@ -310,16 +310,28 @@ AS
v_bestand VARCHAR2(50);
v_base VARCHAR2(10);
v_guid VARCHAR2 (40);
v_daysC VARCHAR2(5);
v_days NUMBER :=7;
v_counter NUMBER;
BEGIN
v_base:='NDS_NEW';
v_bestand:=v_base||'-';
v_guid := blst.getguid();
v_counter :=0;
DELETE FROM fac_rapport -- Opschonen oude NDS exports
WHERE fac_rapport_node like 'NDS_NEW%';
COMMIT;
-- SELECT ud.fac_usrdata_code INTO v_daysC
-- FROM fac_usrtab ut, FAC_USRDATA ud
-- WHERE UPPER(ut.fac_usrtab_naam)='BLST_SETTINGS'
-- AND ud.fac_usrtab_key = ut.fac_usrtab_key
-- AND UPPER(ud.fac_usrdata_omschr)='NDS_EXPORT_DAYS'
-- v_days := fac.safe_to_number(v_daysC);
blst.add_xml_row (v_bestand, '<?xml version="1.0" encoding="windows-1252"?>');
blst.add_xml_row (v_bestand, '<Facilitor>');
blst.add_xml_row (v_bestand, '<SOAPEnvelope>');
@@ -328,7 +340,7 @@ BEGIN
blst.add_xml_element (v_bestand, 'User', 'FACILITOR');
blst.add_xml_row (v_bestand, '</SOAPEnvelope>');
blst.add_xml_row (v_bestand, '<Reserveringen>');
FOR rec in SEL
FOR rec in SEL(v_days)
LOOP
blst.add_xml_row (v_bestand, '<Reservering>');
blst.add_xml_element (v_bestand, 'Reserveringnummer', rec.reserveringNr||'/'||rec.volgNr);
@@ -347,10 +359,18 @@ BEGIN
blst.add_xml_element (v_bestand, 'Aanvrager', rec.aanvrager);
blst.add_xml_element (v_bestand, 'Gastheer', rec.host);
blst.add_xml_row (v_bestand, '</Reservering>');
v_counter:=v_counter+1;
END LOOP;
blst.add_xml_row (v_bestand, '</Reserveringen>');
blst.add_xml_row (v_bestand, '</Facilitor>');
IF v_counter=0
THEN
-- no data to be exported
DELETE FROM fac_rapport -- Opschonen NDS exports
WHERE fac_rapport_node like 'NDS_NEW%';
COMMIT;
END IF;
END;
/
@@ -366,18 +386,45 @@ CREATE OR REPLACE PROCEDURE blst_select_res_vkp_new(
p_counter IN NUMBER
)
AS
--CURSOR sel_sap_export(in_res_key NUMBER) IS
-- SELECT exp.regel_nr regel_nr,
-- exp.artikel_nr artikel_nr,
-- art.res_artikel_omschrijving artikel_omsch,
-- art.res_artikel_prijs art_prijs,
-- exp.aantal aantal,
-- res.res_rsv_ruimte_van datum
-- FROM blst_exp_sap exp, res_artikel art, res_rsv_ruimte res
-- WHERE exp.res_key=in_res_key
-- AND art.res_artikel_nr = exp.artikel_nr
-- AND res.res_rsv_ruimte_key= in_res_key
-- ORDER BY exp.regel_nr;
CURSOR sel_sap_export(in_res_key NUMBER) IS
SELECT exp.regel_nr regel_nr,
exp.artikel_nr artikel_nr,
art.res_artikel_omschrijving artikel_omsch,
art.res_artikel_prijs art_prijs,
exp.aantal aantal,
res.res_rsv_ruimte_van datum
FROM blst_exp_sap exp, res_artikel art, res_rsv_ruimte res
WHERE exp.res_key=in_res_key
AND art.res_artikel_nr = exp.artikel_nr
AND res.res_rsv_ruimte_key= in_res_key
ORDER BY exp.regel_nr;
SELECT COALESCE(ex.regel_nr,0) regel_nr,
ex.res_key,
ex.artikel_key,
ex.exp_artikel_key,
art.res_artikel_nr artikel_nr,
coalesce(ex.exp_aantal,0) exp_aantal,
ex.art_artikel_key,
COALESCE(ex.art_aantal,0) aantal,
art.res_artikel_omschrijving artikel_omsch,
art.res_artikel_prijs art_prijs,
ex.art_aantal*art.res_artikel_prijs tot_prijs,
art.res_discipline_key catalogusID,
art.res_artikel_groep groep,
ex.lever_datum datum
FROM(
SELECT exp.res_key, rart.res_artikel_key artikel_key, artikel_nr,exp.res_rsv_artikel_key exp_artikel_key,exp.aantal exp_aantal, rart.res_rsv_artikel_key art_artikel_key, rart.res_rsv_artikel_aantal art_aantal, rart.res_rsv_artikel_levering lever_datum,exp.regel_nr regel_nr
FROM blst_exp_Sap exp
FULL OUTER JOIN res_rsv_artikel rart
ON exp.res_rsv_artikel_key = rart.res_rsv_artikel_key
WHERE (exp.res_key=in_res_key OR rart.res_rsv_ruimte_key=in_res_key)) ex,
res_artikel art
WHERE art.res_artikel_key(+) = ex.artikel_key
ORDER BY regel_nr;
v_bestand VARCHAR2(50);
v_base VARCHAR2(10);
@@ -469,18 +516,44 @@ CREATE OR REPLACE PROCEDURE blst_select_res_vkp_upd(
p_counter IN NUMBER
)
AS
CURSOR sel_sap_export(in_res_key NUMBER) IS
SELECT exp.regel_nr regel_nr,
exp.artikel_nr artikel_nr,
art.res_artikel_omschrijving artikel_omsch,
art.res_artikel_prijs art_prijs,
exp.aantal aantal,
res.res_rsv_ruimte_van datum
FROM blst_exp_sap exp, res_artikel art, res_rsv_ruimte res
WHERE exp.res_key=in_res_key
AND art.res_artikel_nr = exp.artikel_nr
AND res.res_rsv_ruimte_key= in_res_key
ORDER BY exp.regel_nr;
--CURSOR sel_sap_export(in_res_key NUMBER) IS
-- SELECT exp.regel_nr regel_nr,
-- exp.artikel_nr artikel_nr,
-- art.res_artikel_omschrijving artikel_omsch,
-- art.res_artikel_prijs art_prijs,
-- exp.aantal aantal,
-- res.res_rsv_ruimte_van datum
-- FROM blst_exp_sap exp, res_artikel art, res_rsv_ruimte res
-- WHERE exp.res_key=in_res_key
-- AND art.res_artikel_nr = exp.artikel_nr
-- AND res.res_rsv_ruimte_key= in_res_key
-- ORDER BY exp.regel_nr;
CURSOR sel_sap_export(in_res_key NUMBER) IS
SELECT COALESCE(ex.regel_nr,0) regel_nr,
ex.res_key,
ex.artikel_key,
ex.exp_artikel_key,
art.res_artikel_nr artikel_nr,
coalesce(ex.exp_aantal,0) exp_aantal,
ex.art_artikel_key,
COALESCE(ex.art_aantal,0) aantal,
art.res_artikel_omschrijving artikel_omsch,
art.res_artikel_prijs art_prijs,
ex.art_aantal*art.res_artikel_prijs tot_prijs,
art.res_discipline_key catalogusID,
art.res_artikel_groep groep,
ex.lever_datum datum
FROM(
SELECT exp.res_key, rart.res_artikel_key artikel_key, artikel_nr,exp.res_rsv_artikel_key exp_artikel_key,exp.aantal exp_aantal, rart.res_rsv_artikel_key art_artikel_key, rart.res_rsv_artikel_aantal art_aantal, rart.res_rsv_artikel_levering lever_datum,exp.regel_nr regel_nr
FROM blst_exp_Sap exp
FULL OUTER JOIN res_rsv_artikel rart
ON exp.res_rsv_artikel_key = rart.res_rsv_artikel_key
WHERE (exp.res_key=in_res_key OR rart.res_rsv_ruimte_key=in_res_key)) ex,
res_artikel art
WHERE art.res_artikel_key(+) = ex.artikel_key
ORDER BY regel_nr;
v_bestand VARCHAR2(50);
v_base VARCHAR2(10);
@@ -558,10 +631,12 @@ CREATE OR REPLACE PROCEDURE blst_select_res_vkp_fac(
AS
CURSOR sel_res_fac IS
SELECT res.res_rsv_ruimte_key res_key
FROM res_rsv_ruimte res
FROM res_rsv_ruimte res, prs_kostenplaats kstp
WHERE res.res_status_bo_key=5 AND res.res_status_fo_key=2
AND res.res_rsv_ruimte_verwijder IS NULL
AND res.res_rsv_ruimte_externsyncdate IS NOT NULL;
AND res.res_rsv_ruimte_externsyncdate IS NOT NULL
AND kstp.prs_kostenplaats_key = res.prs_kostenplaats_key
AND kstp.prs_kostenplaats_extern = 1;
v_bestand VARCHAR2(50);
v_base VARCHAR2(10);
@@ -574,7 +649,7 @@ BEGIN
v_guid := blst.getguid();
v_counter := 1;
DELETE FROM fac_rapport -- Opschonen oude Verkooporders tbv Facturatie
WHERE fac_rapport_node like 'VKP_FAC%';
WHERE fac_rapport_node like 'VKP_FAC%';
FOR rec IN sel_res_fac
LOOP
v_bestand:=v_base||'-'||v_counter||'-';
@@ -604,18 +679,44 @@ CREATE OR REPLACE PROCEDURE blst_select_res_vkp_del(
p_counter IN NUMBER
)
AS
CURSOR sel_sap_export(in_res_key NUMBER) IS
SELECT exp.regel_nr regel_nr,
exp.artikel_nr artikel_nr,
art.res_artikel_omschrijving artikel_omsch,
art.res_artikel_prijs art_prijs,
exp.aantal aantal,
res.res_rsv_ruimte_van datum
FROM blst_exp_sap exp, res_artikel art, res_rsv_ruimte res
WHERE exp.res_key=in_res_key
AND art.res_artikel_nr = exp.artikel_nr
AND res.res_rsv_ruimte_key= in_res_key
ORDER BY exp.regel_nr;
--CURSOR sel_sap_export(in_res_key NUMBER) IS
-- SELECT exp.regel_nr regel_nr,
-- exp.artikel_nr artikel_nr,
-- art.res_artikel_omschrijving artikel_omsch,
-- art.res_artikel_prijs art_prijs,
-- exp.aantal aantal,
-- res.res_rsv_ruimte_van datum
-- FROM blst_exp_sap exp, res_artikel art, res_rsv_ruimte res
-- WHERE exp.res_key=in_res_key
-- AND art.res_artikel_nr = exp.artikel_nr
-- AND res.res_rsv_ruimte_key= in_res_key
-- ORDER BY exp.regel_nr;
CURSOR sel_sap_export(in_res_key NUMBER) IS
SELECT COALESCE(ex.regel_nr,0) regel_nr,
ex.res_key,
ex.artikel_key,
ex.exp_artikel_key,
art.res_artikel_nr artikel_nr,
coalesce(ex.exp_aantal,0) exp_aantal,
ex.art_artikel_key,
COALESCE(ex.art_aantal,0) aantal,
art.res_artikel_omschrijving artikel_omsch,
art.res_artikel_prijs art_prijs,
ex.art_aantal*art.res_artikel_prijs tot_prijs,
art.res_discipline_key catalogusID,
art.res_artikel_groep groep,
ex.lever_datum datum
FROM(
SELECT exp.res_key, rart.res_artikel_key artikel_key, artikel_nr,exp.res_rsv_artikel_key exp_artikel_key,exp.aantal exp_aantal, rart.res_rsv_artikel_key art_artikel_key, rart.res_rsv_artikel_aantal art_aantal, rart.res_rsv_artikel_levering lever_datum,exp.regel_nr regel_nr
FROM blst_exp_Sap exp
FULL OUTER JOIN res_rsv_artikel rart
ON exp.res_rsv_artikel_key = rart.res_rsv_artikel_key
WHERE (exp.res_key=in_res_key OR rart.res_rsv_ruimte_key=in_res_key)) ex,
res_artikel art
WHERE art.res_artikel_key(+) = ex.artikel_key
ORDER BY regel_nr;
v_bestand VARCHAR2(50);
v_base VARCHAR2(10);
@@ -968,7 +1069,7 @@ BEGIN
blst.add_xml_element (v_bestand, 'ArtikelPrijs',rec_art.artikel_prijs);
blst.add_xml_element (v_bestand, 'Omschrijving',rec_art.res_artikel_omschrijving);
blst.add_xml_element (v_bestand, 'LeverDatum', rec.datum_van);
blst.add_xml_element (v_bestand, 'TechnischeKey', 'Technisch materiaal');
blst.add_xml_element (v_bestand, 'TechnischeKey', 'Technisch materiaal'); -- kan komen te vervallen
blst.add_xml_element (v_bestand, 'Leverancier', v_LevNr);
blst.add_xml_element (v_bestand, 'Artikelsoort', '01');
blst.add_xml_element (v_bestand, 'CatalogusID', rec_art.catalogusID);
@@ -1186,10 +1287,10 @@ BEGIN
blst.add_xml_element (v_bestand, 'ArtikelPrijs',rec_art.artikel_prijs);
blst.add_xml_element (v_bestand, 'Omschrijving',rec_art.artikel_omschrijving);
blst.add_xml_element (v_bestand, 'LeverDatum', rec.datum_van);
blst.add_xml_element (v_bestand, 'TechnischeKey', 'Technisch materiaal');
blst.add_xml_element (v_bestand, 'TechnischeKey', 'Technisch materiaal'); -- kan komen te vervallen
blst.add_xml_element (v_bestand, 'Leverancier', v_LevNr);
blst.add_xml_element (v_bestand, 'Artikelsoort', '01');
blst.add_xml_element (v_bestand, 'CatalogusID', 'CATERING');
blst.add_xml_element (v_bestand, 'CatalogusID', rec_art.catalogusID);
blst.add_xml_element (v_bestand, 'Groep', rec_art.groep);
blst.add_xml_element (v_bestand, 'StartDatum', rec_art.lever_datum);
@@ -1364,7 +1465,7 @@ BEGIN
blst.add_xml_element (v_bestand, 'ArtikelNr', rec_art.artikel_nr);
blst.add_xml_element (v_bestand, 'Conditiesoort' ,'ZPRM');
blst.add_xml_element (v_bestand, 'Prijs',rec_art.tot_prijs);
blst.add_xml_element (v_bestand, 'Prijs',rec_art.tot_prijs); -- deze mischien ook op 0 zetten
blst.add_xml_element (v_bestand, 'ArtikelPrijs',rec_art.artikel_prijs);
blst.add_xml_element (v_bestand, 'Omschrijving',rec_art.artikel_omschrijving);
blst.add_xml_element (v_bestand, 'LeverDatum', rec.datum_van);