PROR#82508 -- aanpassingen catering export bestand

svn path=/Customer/trunk/; revision=63988
This commit is contained in:
Norbert Wassink
2024-03-20 12:38:33 +00:00
parent 594b16c7e2
commit 1939f8fea1

View File

@@ -1650,8 +1650,8 @@ AS
WHERE rrr.res_rsv_ruimte_van > TO_DATE('01-05-2022','DD-MM-YYYY')
AND rrr.res_rsv_ruimte_key = rra.res_rsv_ruimte_key
AND rrr.prs_kostenplaats_key = k.prs_kostenplaats_key(+)
AND rrr.res_status_fo_key = 2 -- vervallen en te laat uit outllok afgemeld
AND rrr.res_rsv_ruimte_cvab_mode IS NOT NULL -- vervallen en te laat uit outllok afgemeld
AND rrr.res_status_fo_key = 2 -- Alleen definitieve res
AND rrr.res_rsv_ruimte_cvab_mode IS NOT NULL -- betreft een losse catering
AND p.prs_perslid_key=rrr.res_rsv_ruimte_contact_key
AND rrr.res_rsv_ruimte_key NOT IN (SELECT rkw.RES_RSV_RUIMTE_KEY FROM res_kenmerkwaarde rkw, res_kenmerk rk
WHERE rkw.RES_RSV_RUIMTE_KEY = rrr.RES_RSV_RUIMTE_KEY
@@ -1659,7 +1659,7 @@ AS
AND rk.RES_KENMERK_OMSCHRIJVING='ExternSyncDatum')
-- AND rrr.res_rsv_ruimte_externsyncdate IS NULL
UNION -- alle te laat verwijderde outlook reservereingen met catering
SELECT distinct rra.res_rsv_ruimte_key rrr_key,
SELECT distinct rrr.res_rsv_ruimte_key rrr_key,
rrr.res_reservering_key||'/'||rrr.res_rsv_ruimte_volgnr reservering,
rrr.res_rsv_ruimte_opmerking opmerking,
'Te late annulering' extra_opmerking,
@@ -1695,18 +1695,35 @@ AS
AND rarm.res_alg_ruimte_verwijder IS NULL
AND alg.alg_ruimte_key = rarm.alg_ruimte_key)) ruimtenr,
rrr.res_activiteit_key activiteit_key
FROM res_rsv_artikel rra,
res_rsv_ruimte rrr,
FROM res_rsv_ruimte rrr,
prs_kostenplaats k,
prs_v_perslid_gegevens p
prs_v_perslid_gegevens p,
(SElECT r.*,
(SELECT MAX(rdp.res_disc_params_cancel_dagen) annuleer_dagen
FROM res_rsv_artikel rra, res_artikel ra, res_discipline rd, res_disc_params rdp
WHERE res_rsv_ruimte_key = r.res_rsv_ruimte_key
AND ra.res_artikel_key = rra.res_artikel_key
AND ra.res_discipline_key = rd.ins_discipline_key
AND rdp.res_ins_discipline_key=rd.ins_discipline_key) annuleer_dagen
FROM (SELECT DISTINCT
res.res_rsv_ruimte_key res_rsv_ruimte_key,
res.res_reservering_key res_reservering_key,
res.res_rsv_ruimte_volgnr res_rsv_ruimte_volgnr,
res.res_rsv_ruimte_host_key gastheer_key,
res.res_rsv_ruimte_verwijder datum_verwijder,
fac.safe_to_date (
TO_CHAR (res.res_rsv_ruimte_van, 'DD-MM-YYYY')||' 12:00',
'DD-MM-YYYY HH24:MI') leverdatum
FROM res_rsv_ruimte res, res_rsv_artikel rra
WHERE res.res_rsv_ruimte_verwijder IS NOT NULL
AND res.res_rsv_ruimte_externnr IS NOT NULL
-- AND res.res_status_fo_key=4
AND rra.res_rsv_ruimte_key=res.res_rsv_ruimte_key) r) x
WHERE rrr.res_rsv_ruimte_van > TO_DATE('01-05-2022','DD-MM-YYYY')
AND rrr.res_rsv_ruimte_key = rra.res_rsv_ruimte_key
AND rrr.prs_kostenplaats_key = k.prs_kostenplaats_key(+)
AND rrr.res_status_fo_key = 4 -- vervallen en te laat uit outllok afgemeld
AND rrr.res_status_bo_key = 2 -- vervallen en te laat uit outllok afgemeld
AND p.prs_perslid_key=rrr.res_rsv_ruimte_contact_key
AND rrr.res_rsv_ruimte_externnr IS NOT NULL
-- AND rrr.res_rsv_ruimte_externsyncdate IS NULL
AND rrr.res_rsv_ruimte_key = x.res_rsv_ruimte_key
AND rrr.prs_kostenplaats_key = k.prs_kostenplaats_key(+)
AND p.prs_perslid_key=rrr.res_rsv_ruimte_contact_key
AND x.datum_verwijder> x.leverdatum - x.annuleer_dagen -- bepalen of de annulering te laat was
AND rrr.res_rsv_ruimte_key NOT IN (SELECT rkw.RES_RSV_RUIMTE_KEY FROM res_kenmerkwaarde rkw, res_kenmerk rk
WHERE rkw.RES_RSV_RUIMTE_KEY = rrr.RES_RSV_RUIMTE_KEY
AND rk.RES_KENMERK_KEY = rkw.RES_KENMERK_KEY
@@ -1737,30 +1754,30 @@ AS
CURSOR sel_art(p_rrr_key NUMBER)
IS
SELECT rra.res_rsv_artikel_key,
rra.res_rsv_artikel_aantal aantal,
ra.res_artikel_omschrijving artikel_omschrijving,
COALESCE(ra.RES_ARTIKEL_NR,ra.res_artikel_externnr) artikelnr,
rra.res_rsv_artikel_levering van,
ra.res_artikel_btw btw,
rra.res_rsv_artikel_prijs totprijs,
ra.res_artikel_prijs prijs,
rd.ins_discipline_omschrijving catalogus,
(SELECT rka.res_kenmerkartikel_waarde
from res_kenmerkartikel rka, res_kenmerk rk, res_srtkenmerk rsk
where rka.res_rsv_artikel_key=rra.res_rsv_artikel_key
AND rk.res_kenmerk_key=rka.res_kenmerk_key
AND rsk.res_srtkenmerk_key = rk.res_srtkenmerk_key
AND rsk.res_srtkenmerk_upper='MAATWERK OPMERKING') opmerking
FROM res_rsv_artikel rra,
res_artikel ra,
res_discipline rd
WHERE rra.res_rsv_ruimte_key=p_rrr_key
AND rra.res_artikel_key = ra.res_artikel_key
-- AND rra.res_status_bo_key = 2 -- afgemeld
AND rra.res_rsv_artikel_verwijder IS NULL
AND ra.res_artikel_btw IN (0, 9, 21)
AND rd.ins_discipline_key=ra.res_discipline_key;
SELECT rra.res_rsv_artikel_key,
rra.res_rsv_artikel_aantal aantal,
ra.res_artikel_omschrijving artikel_omschrijving,
COALESCE(ra.RES_ARTIKEL_NR,ra.res_artikel_externnr) artikelnr,
rra.res_rsv_artikel_levering van,
ra.res_artikel_btw btw,
rra.res_rsv_artikel_prijs totprijs,
ra.res_artikel_prijs prijs,
rd.ins_discipline_omschrijving catalogus,
(SELECT rka.res_kenmerkartikel_waarde
from res_kenmerkartikel rka, res_kenmerk rk, res_srtkenmerk rsk
where rka.res_rsv_artikel_key=rra.res_rsv_artikel_key
AND rk.res_kenmerk_key=rka.res_kenmerk_key
AND rsk.res_srtkenmerk_key = rk.res_srtkenmerk_key
AND rsk.res_srtkenmerk_upper='MAATWERK OPMERKING') opmerking
FROM res_rsv_artikel rra,
res_artikel ra,
res_discipline rd
WHERE rra.res_rsv_ruimte_key=p_rrr_key
AND rra.res_artikel_key = ra.res_artikel_key
-- AND rra.res_status_bo_key = 2 -- afgemeld
-- AND rra.res_rsv_artikel_verwijder IS NULL
AND ra.res_artikel_btw IN (0, 9, 21)
AND rd.ins_discipline_key=ra.res_discipline_key;
v_bestand VARCHAR2(20);
v_shop_token VARCHAR2(50);
@@ -1794,7 +1811,7 @@ BEGIN
pror.add_xml_row (v_bestand, '<Header>');
/* pror.add_xml_row (v_bestand, '<ShopToken>'||v_shop_token||'</ShopToken>'); */
pror.add_xml_row (v_bestand, '<Sender>');
pror.add_xml_row (v_bestand, '<ID>1</ID>');
pror.add_xml_row (v_bestand, '<ID></ID>');
pror.add_xml_row (v_bestand, '<Name>Prorail</Name>');
pror.add_xml_row (v_bestand, '<Email>'||v_contact_email||'</Email>');
pror.add_xml_row (v_bestand, '</Sender>');
@@ -1808,7 +1825,7 @@ BEGIN
pror.add_xml_row(v_bestand, '<Order>');
pror.add_xml_row(v_bestand, '<Customer>');
pror.add_xml_element (v_bestand, 'Name', 'PROR');
pror.add_xml_element (v_bestand, 'ID', '0000');
pror.add_xml_element (v_bestand, 'ID', '251990');
pror.add_xml_element (v_bestand, 'ExternalID', rec.reservering);
pror.add_xml_row(v_bestand, '<ContentContact>');
pror.add_xml_element (v_bestand, 'Name', rec.aanvrager);
@@ -1844,7 +1861,12 @@ BEGIN
IF UPPER(rec_art.catalogus) LIKE 'MAATWERK%'
THEN
v_artikelprijs := rec_art.totprijs/rec_art.aantal;
IF rec_art.totprijs IS NOT NULL
THEN
v_artikelprijs := rec_art.totprijs/rec_art.aantal;
ELSE
v_artikelprijs := rec_art.prijs;
END IF;
ELSE
v_artikelprijs := rec_art.prijs;