BLCC#32725 BLCC4/FIN-koppelingen
svn path=/Customer/trunk/; revision=26529
This commit is contained in:
436
BLCC/blcc.sql
436
BLCC/blcc.sql
@@ -172,38 +172,40 @@ AS
|
||||
-- Markeren te exporteren opdracht-verplichtingen (via ordernr)!
|
||||
CURSOR c1
|
||||
IS
|
||||
SELECT '['
|
||||
|| TO_CHAR (o.mld_melding_key)
|
||||
|| '|'
|
||||
|| TO_CHAR (o.mld_opdr_key)
|
||||
|| '] '
|
||||
aanduiding,
|
||||
o.mld_opdr_key
|
||||
FROM mld_opdr o, fac_tracking t
|
||||
WHERE o.mld_opdr_ordernr IS NULL -- Geen ordernr, dus bijwerken!
|
||||
AND o.mld_statusopdr_key = 9 -- Afgerond
|
||||
--AND o.mld_opdr_kosten > 0 -- Allemaal, ook als kosten=0
|
||||
AND o.mld_typeopdr_key != 103; -- Geen RFQs
|
||||
SELECT '['
|
||||
|| TO_CHAR (o.mld_melding_key)
|
||||
|| '|'
|
||||
|| TO_CHAR (o.mld_opdr_key)
|
||||
|| '] '
|
||||
aanduiding,
|
||||
o.mld_opdr_key
|
||||
FROM mld_opdr o
|
||||
WHERE o.mld_opdr_ordernr IS NULL -- Geen ordernr, dus bijwerken!
|
||||
AND o.mld_statusopdr_key = 9 -- Afgerond
|
||||
--AND o.mld_opdr_kosten > 0 -- Allemaal, ook als kosten=0
|
||||
AND o.mld_typeopdr_key != 103 -- Geen RFQs
|
||||
ORDER BY 1;
|
||||
|
||||
-- Markeren te exporteren catering-verplichtingen (via RESAFM/RESVER)!
|
||||
-- LET OP: Maandelijks in de nacht na de 2e werkdag van de maand.
|
||||
CURSOR c2
|
||||
IS
|
||||
SELECT '['
|
||||
|| TO_CHAR (res_rsv_ruimte_key)
|
||||
|| '|'
|
||||
|| TO_CHAR (res_rsv_artikel_key)
|
||||
|| '] '
|
||||
aanduiding,
|
||||
res_rsv_ruimte_key,
|
||||
res_rsv_artikel_key,
|
||||
res_status_bo_key,
|
||||
res_artikel_key
|
||||
FROM res_v_aanwezigrsv_artikel
|
||||
WHERE TO_CHAR (SYSDATE, 'dd') = '05' -- Maandelijks op de 5e!
|
||||
AND res_status_bo_key != 6 -- Niet Verwerkt, dus verwerken!
|
||||
AND res_rsv_artikel_dirtlevel = 0
|
||||
AND res_rsv_artikel_levering < TRUNC (SYSDATE, 'mm') -- Voor 1e!
|
||||
AND res_rsv_artikel_levering > TO_DATE ('20151001', 'yyyymmdd');
|
||||
SELECT '['
|
||||
|| TO_CHAR (res_rsv_ruimte_key)
|
||||
|| '|'
|
||||
|| TO_CHAR (res_rsv_artikel_key)
|
||||
|| '] '
|
||||
aanduiding,
|
||||
res_rsv_ruimte_key,
|
||||
res_rsv_artikel_key,
|
||||
res_status_bo_key,
|
||||
res_artikel_key
|
||||
FROM res_v_aanwezigrsv_artikel
|
||||
WHERE res_status_bo_key != 6 -- Niet Verwerkt, dus verwerken!
|
||||
AND res_rsv_artikel_dirtlevel = 0
|
||||
AND res_rsv_artikel_levering < TRUNC (SYSDATE, 'mm') -- Voor 1e
|
||||
AND res_rsv_artikel_levering > TO_DATE ('20151001', 'yyyymmdd')
|
||||
ORDER BY 1;
|
||||
|
||||
-- Wegschrijven te exporteren verplichting-regels (= factuur naar ProQuro).
|
||||
CURSOR c3
|
||||
@@ -228,15 +230,13 @@ AS
|
||||
|| ')'
|
||||
omschrijving,
|
||||
o.mld_opdr_kosten price,
|
||||
TO_CHAR (fac.gettrackingdate ('ORDAFM', o.mld_opdr_key), 'dd-mm-yyyy')
|
||||
TO_CHAR (fac.gettrackingdate ('ORDAFM', o.mld_opdr_key), 'yyyy-mm-dd')
|
||||
deliverydate,
|
||||
COALESCE (ksm.prs_kostensoort_oms, ksv.prs_kostensoort_oms)
|
||||
costtype -- CostTypeExternalId
|
||||
FROM mld_opdr o,
|
||||
fac_tracking t,
|
||||
mld_melding M,
|
||||
--prs_v_perslid_fullnames_all pf,
|
||||
--alg_v_allonrgoed_gegevens og,
|
||||
--fac_tracking t,
|
||||
mld_melding m,
|
||||
mld_stdmelding sm,
|
||||
ins_tab_discipline td,
|
||||
ins_srtdiscipline sd,
|
||||
@@ -245,7 +245,7 @@ AS
|
||||
prs_kostenplaats kp,
|
||||
prs_bedrijf b,
|
||||
prs_perslid p
|
||||
WHERE o.mld_opdr_ordernr = TO_CHAR (SYSDATE, 'yyyy-mm-dd')
|
||||
WHERE SUBSTR (o.mld_opdr_ordernr, 1, 10) = TO_CHAR (SYSDATE, 'yyyy-mm-dd')
|
||||
--AND o.mld_statusopdr_key = 9 -- Afgerond
|
||||
--AND o.mld_opdr_key = t.fac_tracking_refkey
|
||||
--AND t.fac_srtnotificatie_key = 70 -- ORDAFR
|
||||
@@ -253,8 +253,6 @@ AS
|
||||
AND o.mld_opdr_kosten > 0
|
||||
AND o.mld_typeopdr_key != 103 -- Geen RFQs
|
||||
AND o.mld_melding_key = m.mld_melding_key
|
||||
--AND m.prs_perslid_key = pf.prs_perslid_key
|
||||
--AND m.mld_alg_onroerendgoed_keys = og.alg_onroerendgoed_keys
|
||||
AND m.mld_stdmelding_key = sm.mld_stdmelding_key
|
||||
AND sm.mld_ins_discipline_key = td.ins_discipline_key
|
||||
AND td.ins_srtdiscipline_key = sd.ins_srtdiscipline_key
|
||||
@@ -266,40 +264,40 @@ AS
|
||||
UNION ALL -- Somregel alle Verwerkte res_rsv_artikel zojuist gemarkeerd!
|
||||
SELECT 'BPV1/' || TO_CHAR (TRUNC (SYSDATE, 'mm') - 1, 'yyyymm'),
|
||||
p.prs_perslid_nr, -- AdministrationExternalId
|
||||
'50800' costcentre, -- CostcentreExternalId/TODO: Correct???
|
||||
'50800' costcentre, -- CostcentreExternalId
|
||||
b.prs_leverancier_nr,
|
||||
'Cateringkosten ' || TO_CHAR (TRUNC (SYSDATE, 'mm') - 1, 'yyyy-mm')
|
||||
omschrijving, -- TODO: Correct???
|
||||
omschrijving,
|
||||
SUM (rra.res_rsv_artikel_prijs / rra.res_rsv_artikel_aantal)
|
||||
price,
|
||||
TO_CHAR (TRUNC (SYSDATE, 'mm') - 1, 'dd-mm-yyyy') deliverydate, -- TODO: Laatste dag voorgaande maand???
|
||||
'4181' costtype -- CostTypeExternalId/TODO: Correct???
|
||||
TO_CHAR (TRUNC (SYSDATE, 'mm') - 1, 'yyyy-mm-dd')
|
||||
deliverydate, -- Laatste dag voorgaande maand
|
||||
'4181' costtype -- CostTypeExternalId
|
||||
FROM res_v_aanwezigrsv_artikel rra, prs_bedrijf b, prs_perslid p
|
||||
WHERE TO_CHAR (SYSDATE, 'dd') = '05' -- Maandelijks op de 5e!
|
||||
AND rra.res_status_bo_key = 6
|
||||
AND TRUNC (rra.res_rsv_artikel_verwerkt) = TRUNC (SYSDATE)
|
||||
WHERE TRUNC (rra.res_rsv_artikel_verwerkt) = TRUNC (SYSDATE)
|
||||
--AND rra.res_status_bo_key = 6
|
||||
--AND rra.res_rsv_artikel_levering < TRUNC (SYSDATE, 'mm') -- Voor 1e
|
||||
--AND rra.res_rsv_artikel_levering > TO_DATE ('20151001', 'yyyymmdd')
|
||||
AND b.prs_bedrijf_key = 153 -- Sodexo
|
||||
AND p.prs_perslid_key(+) = 101 -- Pseudo-user
|
||||
GROUP BY 'BCC-C1/' || TO_CHAR (TRUNC (SYSDATE, 'mm') - 1, 'mm'),
|
||||
GROUP BY 'BPV1/' || TO_CHAR (TRUNC (SYSDATE, 'mm') - 1, 'yyyymm'),
|
||||
p.prs_perslid_nr,
|
||||
'50800',
|
||||
b.prs_leverancier_nr,
|
||||
'Cateringkosten ' || TO_CHAR (TRUNC (SYSDATE, 'mm') - 1, 'yyyy-mm'),
|
||||
TO_CHAR (TRUNC (SYSDATE, 'mm') - 1, 'dd-mm-yyyy'),
|
||||
'4181';
|
||||
TO_CHAR (TRUNC (SYSDATE, 'mm') - 1, 'yyyy-mm-dd'),
|
||||
'4181'
|
||||
ORDER BY 1;
|
||||
|
||||
v_errormsg VARCHAR2 (1000);
|
||||
oracle_err_num NUMBER;
|
||||
oracle_err_mes VARCHAR2 (200);
|
||||
v_holiday NUMBER;
|
||||
v_prijs NUMBER (9, 2);
|
||||
v_bestand VARCHAR2 (12);
|
||||
v_order_count NUMBER;
|
||||
v_amount_sum NUMBER (10, 2);
|
||||
v_bestand VARCHAR2 (12);
|
||||
BEGIN
|
||||
v_order_count := 0;
|
||||
v_amount_sum := 0;
|
||||
v_bestand := SUBSTR (p_applname, 1, 12);
|
||||
|
||||
-- Eerst opruiming
|
||||
@@ -315,7 +313,7 @@ BEGIN
|
||||
v_errormsg := 'Fout bijwerken mld_opdr';
|
||||
|
||||
UPDATE mld_opdr
|
||||
SET mld_opdr_ordernr = TO_CHAR (SYSDATE, 'yyyy-mm-dd')
|
||||
SET mld_opdr_ordernr = TO_CHAR (SYSDATE, 'yyyy-mm-dd hh24:mi:ss')
|
||||
WHERE mld_opdr_key = rec.mld_opdr_key;
|
||||
EXCEPTION
|
||||
WHEN OTHERS
|
||||
@@ -339,80 +337,108 @@ BEGIN
|
||||
|
||||
COMMIT;
|
||||
|
||||
FOR rec IN c2
|
||||
LOOP
|
||||
BEGIN
|
||||
IF rec.res_status_bo_key = 2
|
||||
THEN
|
||||
v_errormsg := 'Fout bepalen res_rsv_artikel_prijs';
|
||||
SELECT COUNT ( * )
|
||||
INTO v_holiday
|
||||
FROM mld_vrije_dagen
|
||||
WHERE TRUNC (mld_vrije_dagen_datum) = TRUNC (SYSDATE - 1);
|
||||
|
||||
SELECT res.getartikelprijs (rec.res_rsv_artikel_key)
|
||||
INTO v_prijs
|
||||
FROM DUAL;
|
||||
-- LET OP: ProQuro-export draait dagelijks na middernacht (begin van dag) en
|
||||
-- voor de catering-verplichtingen is afgesproken dat deze maandelijks in de
|
||||
-- nacht na de 2e werkdag van de maand worden verwerkt.
|
||||
-- IF nacht na 2e werkdag van de maand (<28>n geen weekend <20>n geen vrije dag)!
|
||||
-- count_work_days (d1,d2) bepaalt het #werkdagen van d1 tot d2 (als d1 = d2,
|
||||
-- dan return 0); daarom bepalen tov. laatste dag van vorige maand!
|
||||
IF FAC.count_work_days (TRUNC (SYSDATE, 'mm') - 1, SYSDATE - 1) = 2
|
||||
AND TO_CHAR (SYSDATE - 1, 'd') BETWEEN '2' AND '6'
|
||||
AND v_holiday = 0
|
||||
THEN
|
||||
FOR rec IN c2
|
||||
LOOP
|
||||
BEGIN
|
||||
IF rec.res_status_bo_key = 2
|
||||
THEN
|
||||
v_errormsg := 'Fout bepalen res_rsv_artikel_prijs';
|
||||
|
||||
v_errormsg := 'Fout afmelden res_rsv_artikel';
|
||||
SELECT res.getartikelprijs (rec.res_rsv_artikel_key)
|
||||
INTO v_prijs
|
||||
FROM DUAL;
|
||||
|
||||
v_errormsg := 'Fout afmelden res_rsv_artikel';
|
||||
|
||||
UPDATE res_rsv_artikel
|
||||
SET res_status_bo_key = 5,
|
||||
res_rsv_artikel_prijs = v_prijs,
|
||||
res_rsv_artikel_inkoopprijs =
|
||||
(SELECT res_artikel_inkoopprijs
|
||||
FROM res_artikel
|
||||
WHERE res_artikel_key = rec.res_artikel_key),
|
||||
res_rsv_artikel_btw =
|
||||
(SELECT res_artikel_btw
|
||||
FROM res_artikel
|
||||
WHERE res_artikel_key = rec.res_artikel_key)
|
||||
WHERE res_rsv_artikel_key = rec.res_rsv_artikel_key;
|
||||
|
||||
v_errormsg := 'Fout tracken afmelding';
|
||||
|
||||
fac.trackaction ('RESAFM',
|
||||
rec.res_rsv_ruimte_key,
|
||||
NULL,
|
||||
NULL,
|
||||
'Catering afgemeld');
|
||||
END IF;
|
||||
|
||||
v_errormsg := 'Fout verwerken res_rsv_artikel';
|
||||
|
||||
UPDATE res_rsv_artikel
|
||||
SET res_status_bo_key = 5,
|
||||
res_rsv_artikel_prijs = v_prijs,
|
||||
res_rsv_artikel_inkoopprijs =
|
||||
(SELECT res_artikel_inkoopprijs
|
||||
FROM res_artikel
|
||||
WHERE res_artikel_key = rec.res_artikel_key),
|
||||
res_rsv_artikel_btw =
|
||||
(SELECT res_artikel_btw
|
||||
FROM res_artikel
|
||||
WHERE res_artikel_key = rec.res_artikel_key)
|
||||
SET res_status_bo_key = 6 -- AV (en zet ook Verwerkt-date)
|
||||
WHERE res_rsv_artikel_key = rec.res_rsv_artikel_key;
|
||||
|
||||
v_errormsg := 'Fout tracken afmelding';
|
||||
v_errormsg := 'Fout tracken verwerking';
|
||||
|
||||
fac.trackaction ('RESAFM',
|
||||
fac.trackaction ('RESVER',
|
||||
rec.res_rsv_ruimte_key,
|
||||
NULL,
|
||||
NULL,
|
||||
'Catering afgemeld');
|
||||
END IF;
|
||||
'Catering verwerkt');
|
||||
|
||||
v_errormsg := 'Fout verwerken res_rsv_artikel';
|
||||
|
||||
UPDATE res_rsv_artikel
|
||||
SET res_status_bo_key = 6 -- AV (en zet ook Verwerkt-date)
|
||||
WHERE res_rsv_artikel_key = rec.res_rsv_artikel_key;
|
||||
|
||||
v_errormsg := 'Fout tracken verwerking';
|
||||
|
||||
fac.trackaction ('RESVER',
|
||||
rec.res_rsv_ruimte_key,
|
||||
NULL,
|
||||
NULL,
|
||||
'Catering verwerkt');
|
||||
|
||||
COMMIT;
|
||||
EXCEPTION
|
||||
WHEN OTHERS
|
||||
THEN
|
||||
oracle_err_num := SQLCODE;
|
||||
oracle_err_mes := SUBSTR (SQLERRM, 1, 200);
|
||||
v_errormsg :=
|
||||
v_errormsg
|
||||
|| ' ORACLE (error '
|
||||
|| oracle_err_num
|
||||
|| '/'
|
||||
|| oracle_err_mes
|
||||
|| ')';
|
||||
fac.writelog (p_applname,
|
||||
'W',
|
||||
rec.aanduiding || v_errormsg,
|
||||
'Catering-verplichtingen');
|
||||
COMMIT;
|
||||
EXCEPTION
|
||||
WHEN OTHERS
|
||||
THEN
|
||||
oracle_err_num := SQLCODE;
|
||||
oracle_err_mes := SUBSTR (SQLERRM, 1, 200);
|
||||
v_errormsg :=
|
||||
v_errormsg
|
||||
|| ' ORACLE (error '
|
||||
|| oracle_err_num
|
||||
|| '/'
|
||||
|| oracle_err_mes
|
||||
|| ')';
|
||||
fac.writelog (p_applname,
|
||||
'W',
|
||||
rec.aanduiding || v_errormsg,
|
||||
'Catering-verplichtingen');
|
||||
COMMIT;
|
||||
END;
|
||||
END LOOP;
|
||||
END IF;
|
||||
|
||||
v_order_count := 0;
|
||||
v_amount_sum := 0;
|
||||
FOR rec IN c3
|
||||
LOOP
|
||||
BEGIN
|
||||
v_order_count := v_order_count + 1;
|
||||
v_amount_sum := v_amount_sum + rec.price;
|
||||
END;
|
||||
END LOOP;
|
||||
|
||||
--blcc_add_xml_row (v_bestand, '<?xml version="1.0" encoding="windows-1252"?>'); -- ???
|
||||
blcc_add_xml_row (v_bestand, '<Orders>');
|
||||
FOR rec IN c3
|
||||
LOOP
|
||||
IF v_order_count > 0
|
||||
THEN
|
||||
--blcc_add_xml_row (v_bestand, '<?xml version="1.0" encoding="windows-1252"?>'); -- ???
|
||||
blcc_add_xml_row (v_bestand, '<Orders>');
|
||||
FOR rec IN c3
|
||||
LOOP
|
||||
BEGIN
|
||||
--blcc_add_xml_row (v_bestand, '<AddOrder>');
|
||||
blcc_add_xml_row (v_bestand, '<Order>');
|
||||
@@ -443,12 +469,10 @@ BEGIN
|
||||
--blcc_add_xml_row (v_bestand, '</parms>');
|
||||
--blcc_add_xml_row (v_bestand, '</AddOrder>');
|
||||
blcc_add_xml_row (v_bestand, '</Order>');
|
||||
|
||||
v_order_count := v_order_count + 1;
|
||||
v_amount_sum := v_amount_sum + rec.price;
|
||||
END;
|
||||
END LOOP;
|
||||
blcc_add_xml_row (v_bestand, '</Orders>');
|
||||
END LOOP;
|
||||
blcc_add_xml_row (v_bestand, '</Orders>');
|
||||
END IF;
|
||||
|
||||
fac.writelog (
|
||||
p_applname,
|
||||
@@ -517,7 +541,7 @@ AS
|
||||
o.mld_opdr_kosten,
|
||||
NULL,
|
||||
'VH',
|
||||
COALESCE (ksm.prs_kostensoort_oms, ksv.prs_kostensoort_oms),
|
||||
COALESCE (ksm.prs_kostensoort_refcode, ksv.prs_kostensoort_refcode),
|
||||
NULL,
|
||||
NULL,
|
||||
NULL
|
||||
@@ -576,7 +600,7 @@ AS
|
||||
SUM (verw_prijs),
|
||||
NULL,
|
||||
'VH',
|
||||
prs_kostensoort_oms,
|
||||
prs_kostensoort_refcode,
|
||||
NULL,
|
||||
NULL,
|
||||
NULL
|
||||
@@ -590,7 +614,7 @@ AS
|
||||
FROM prs_afdeling
|
||||
WHERE prs_afdeling_key = kl.prs_link_key)
|
||||
debiteur_oms,
|
||||
ks.prs_kostensoort_oms,
|
||||
ks.prs_kostensoort_refcode,
|
||||
res_rsv_artikel_key res_item_key,
|
||||
LTRIM (ra.res_artikel_omschrijving)
|
||||
|| ' ('
|
||||
@@ -618,8 +642,9 @@ AS
|
||||
AND kl.prs_kenmerk_key(+) = 1001 -- Debiteurnummer
|
||||
AND rrr.res_rsv_ruimte_key = rra.res_rsv_ruimte_key
|
||||
--AND rra.res_status_bo_key = 5 Sommige wel, sommige niet!
|
||||
AND (rra.res_rsv_artikel_verwerkt IS NULL
|
||||
OR rra.res_rsv_artikel_verwerkt > SYSDATE - 5) -- Op 5e Verwerkt en pas op 10e naar Twinfield!
|
||||
--AND (rra.res_rsv_artikel_verwerkt IS NULL
|
||||
-- OR rra.res_rsv_artikel_verwerkt > SYSDATE - 5) -- Op 5e Verwerkt en pas op 10e naar Twinfield!
|
||||
AND rra.res_rsv_artikel_verwerkt IS NULL
|
||||
AND rra.res_artikel_key = ra.res_artikel_key
|
||||
AND ra.res_discipline_key = rd.ins_discipline_key
|
||||
--AND ks.prs_kostensoort_doorbelasten(+) = 1
|
||||
@@ -636,7 +661,7 @@ AS
|
||||
FROM prs_afdeling
|
||||
WHERE prs_afdeling_key = kl.prs_link_key)
|
||||
debiteur_oms,
|
||||
ks.prs_kostensoort_oms,
|
||||
ks.prs_kostensoort_refcode,
|
||||
res_rsv_artikel_key res_item_key,
|
||||
LTRIM (ra.res_artikel_omschrijving)
|
||||
|| ' ('
|
||||
@@ -664,8 +689,9 @@ AS
|
||||
AND kl.prs_kenmerk_key(+) = 1001 -- Debiteurnummer
|
||||
AND rrr.res_rsv_ruimte_key = rra.res_rsv_ruimte_key
|
||||
--AND rra.res_status_bo_key = 5 Sommige wel, sommige niet!
|
||||
AND (rra.res_rsv_artikel_verwerkt IS NULL
|
||||
OR rra.res_rsv_artikel_verwerkt > SYSDATE - 5) -- Op 5e Verwerkt en pas op 10e naar Twinfield!
|
||||
--AND (rra.res_rsv_artikel_verwerkt IS NULL
|
||||
-- OR rra.res_rsv_artikel_verwerkt > SYSDATE - 5) -- Op 5e Verwerkt en pas op 10e naar Twinfield!
|
||||
AND rra.res_rsv_artikel_verwerkt IS NULL
|
||||
AND rra.res_artikel_key = ra.res_artikel_key
|
||||
AND ra.res_discipline_key = rd.ins_discipline_key
|
||||
--AND ks.prs_kostensoort_doorbelasten(+) = 1
|
||||
@@ -674,7 +700,7 @@ AS
|
||||
GROUP BY TO_CHAR (reslev, 'yyyy-mm'),
|
||||
debiteur_oms,
|
||||
debiteur,
|
||||
prs_kostensoort_oms;
|
||||
prs_kostensoort_refcode;
|
||||
|
||||
/* Formatted on 17-9-2015 10:40:20 (QP5 v5.136.908.31019) */
|
||||
CREATE OR REPLACE VIEW blcc_v_rap_tf_frozen
|
||||
@@ -733,7 +759,7 @@ AS
|
||||
o.mld_opdr_kosten,
|
||||
NULL,
|
||||
'VH',
|
||||
COALESCE (ksm.prs_kostensoort_oms, ksv.prs_kostensoort_oms),
|
||||
COALESCE (ksm.prs_kostensoort_refcode, ksv.prs_kostensoort_refcode),
|
||||
NULL,
|
||||
NULL,
|
||||
NULL
|
||||
@@ -792,7 +818,7 @@ AS
|
||||
SUM (verw_prijs),
|
||||
NULL,
|
||||
'VH',
|
||||
prs_kostensoort_oms,
|
||||
prs_kostensoort_refcode,
|
||||
NULL,
|
||||
NULL,
|
||||
NULL
|
||||
@@ -806,7 +832,7 @@ AS
|
||||
FROM prs_afdeling
|
||||
WHERE prs_afdeling_key = kl.prs_link_key)
|
||||
debiteur_oms,
|
||||
ks.prs_kostensoort_oms,
|
||||
ks.prs_kostensoort_refcode,
|
||||
--TRUNC (rra.res_rsv_artikel_levering) lev_datum,
|
||||
--ra.res_discipline_key res_ins_discipline_key,
|
||||
res_rsv_artikel_key res_item_key,
|
||||
@@ -836,7 +862,8 @@ AS
|
||||
AND kl.prs_kenmerk_key(+) = 1001 -- Debiteurnummer
|
||||
AND rrr.res_rsv_ruimte_key = rra.res_rsv_ruimte_key
|
||||
AND rra.res_status_bo_key = 6 -- AV
|
||||
AND rra.res_rsv_artikel_verwerkt < SYSDATE - 5 -- Op 5e Verwerkt en pas op 10e naar Twinfield!
|
||||
--AND rra.res_rsv_artikel_verwerkt < SYSDATE - 5 -- Op 5e Verwerkt en pas op 10e naar Twinfield!
|
||||
AND rra.res_rsv_artikel_verwerkt IS NOT NULL
|
||||
AND rra.res_artikel_key = ra.res_artikel_key
|
||||
AND ra.res_discipline_key = rd.ins_discipline_key
|
||||
--AND ks.prs_kostensoort_doorbelasten(+) = 1
|
||||
@@ -852,7 +879,7 @@ AS
|
||||
FROM prs_afdeling
|
||||
WHERE prs_afdeling_key = kl.prs_link_key)
|
||||
debiteur_oms,
|
||||
ks.prs_kostensoort_oms,
|
||||
ks.prs_kostensoort_refcode,
|
||||
--TRUNC (rra.res_rsv_artikel_levering) lev_datum,
|
||||
--ra.res_discipline_key res_ins_discipline_key,
|
||||
res_rsv_artikel_key res_item_key,
|
||||
@@ -882,7 +909,8 @@ AS
|
||||
AND kl.prs_kenmerk_key(+) = 1001 -- Debiteurnummer
|
||||
AND rrr.res_rsv_ruimte_key = rra.res_rsv_ruimte_key
|
||||
AND rra.res_status_bo_key = 6 -- AV
|
||||
AND rra.res_rsv_artikel_verwerkt < SYSDATE - 5 -- Op 5e Verwerkt en pas op 10e naar Twinfield!
|
||||
--AND rra.res_rsv_artikel_verwerkt < SYSDATE - 5 -- Op 5e Verwerkt en pas op 10e naar Twinfield!
|
||||
AND rra.res_rsv_artikel_verwerkt IS NOT NULL
|
||||
AND rra.res_artikel_key = ra.res_artikel_key
|
||||
AND ra.res_discipline_key = rd.ins_discipline_key
|
||||
--AND ks.prs_kostensoort_doorbelasten(+) = 1
|
||||
@@ -891,15 +919,15 @@ AS
|
||||
debiteur_oms,
|
||||
debiteur,
|
||||
TO_CHAR (TRUNC (resver, 'mm') - 1, 'dd-mm-yyyy'),
|
||||
prs_kostensoort_oms;
|
||||
prs_kostensoort_refcode;
|
||||
|
||||
/* Formatted on 17-9-2015 17:24:42 (QP5 v5.136.908.31019) */
|
||||
/* Formatted on 30-9-2015 10:15:45 (QP5 v5.136.908.31019) */
|
||||
CREATE OR REPLACE VIEW blcc_v_export_twinfield
|
||||
(
|
||||
result,
|
||||
result_order
|
||||
)
|
||||
AS
|
||||
AS -- View bevat alleen inhoud op de dag na de 2e werkdag van de maand!
|
||||
SELECT 'factuurtype'
|
||||
|| ';debiteur'
|
||||
|| ';nummer'
|
||||
@@ -921,6 +949,12 @@ AS
|
||||
|| ';vrij_tekstveld_3',
|
||||
0
|
||||
FROM DUAL
|
||||
WHERE FAC.count_work_days (TRUNC (SYSDATE, 'mm') - 1, SYSDATE - 1) = 2
|
||||
AND TO_CHAR (SYSDATE - 1, 'd') BETWEEN '2' AND '6'
|
||||
AND NOT EXISTS
|
||||
(SELECT 1
|
||||
FROM mld_vrije_dagen
|
||||
WHERE TRUNC (mld_vrije_dagen_datum) = TRUNC (SYSDATE - 1))
|
||||
UNION ALL
|
||||
SELECT factuurtype
|
||||
|| ';'
|
||||
@@ -983,8 +1017,15 @@ AS
|
||||
WHERE fclt_x_maand = TO_CHAR (SYSDATE, 'yyyy-mm')
|
||||
ORDER BY debiteur,
|
||||
fclt_x_maand || '-' || SUBSTR (factuurdatum, 1, 2),
|
||||
grootboek);
|
||||
grootboek)
|
||||
WHERE FAC.count_work_days (TRUNC (SYSDATE, 'mm') - 1, SYSDATE - 1) = 2
|
||||
AND TO_CHAR (SYSDATE - 1, 'd') BETWEEN '2' AND '6'
|
||||
AND NOT EXISTS
|
||||
(SELECT 1
|
||||
FROM mld_vrije_dagen
|
||||
WHERE TRUNC (mld_vrije_dagen_datum) = TRUNC (SYSDATE - 1));
|
||||
|
||||
/* Formatted on 30-9-2015 10:20:30 (QP5 v5.136.908.31019) */
|
||||
CREATE OR REPLACE PROCEDURE blcc_select_twinfield (p_applname IN VARCHAR2,
|
||||
p_applrun IN VARCHAR2)
|
||||
AS
|
||||
@@ -1023,6 +1064,7 @@ AS
|
||||
v_errormsg VARCHAR2 (1000);
|
||||
oracle_err_num NUMBER;
|
||||
oracle_err_mes VARCHAR2 (200);
|
||||
v_holiday NUMBER;
|
||||
v_order_count NUMBER;
|
||||
v_amount_sum NUMBER (10, 2);
|
||||
BEGIN
|
||||
@@ -1033,68 +1075,84 @@ BEGIN
|
||||
DELETE FROM imp_log
|
||||
WHERE imp_log_applicatie = p_applname;
|
||||
|
||||
FOR rec IN c1
|
||||
LOOP
|
||||
BEGIN
|
||||
v_errormsg := 'Fout verwerken mld_opdr';
|
||||
SELECT COUNT ( * )
|
||||
INTO v_holiday
|
||||
FROM mld_vrije_dagen
|
||||
WHERE TRUNC (mld_vrije_dagen_datum) = TRUNC (SYSDATE - 1);
|
||||
|
||||
MLD.setopdrachtstatus (rec.mld_opdr_key, 7, NULL);
|
||||
-- LET OP: Twinfield-export draait dagelijks na middernacht (begin van dag)
|
||||
-- en de verkoop wordt maandelijks alleen in de nacht na de 2e werkdag van de
|
||||
-- maand doorgezet.
|
||||
-- IF nacht na 2e werkdag van de maand (<28>n geen weekend <20>n geen vrije dag)!
|
||||
-- count_work_days (d1,d2) bepaalt het #werkdagen van d1 tot d2 (als d1 = d2,
|
||||
-- dan return 0); daarom bepalen tov. laatste dag van vorige maand!
|
||||
IF FAC.count_work_days (TRUNC (SYSDATE, 'mm') - 1, SYSDATE - 1) = 2
|
||||
AND TO_CHAR (SYSDATE - 1, 'd') BETWEEN '2' AND '6'
|
||||
AND v_holiday = 0
|
||||
THEN
|
||||
FOR rec IN c1
|
||||
LOOP
|
||||
BEGIN
|
||||
v_errormsg := 'Fout verwerken mld_opdr';
|
||||
|
||||
v_order_count := v_order_count + 1;
|
||||
v_amount_sum := v_amount_sum + rec.mld_opdr_kosten;
|
||||
EXCEPTION
|
||||
WHEN OTHERS
|
||||
THEN
|
||||
oracle_err_num := SQLCODE;
|
||||
oracle_err_mes := SUBSTR (SQLERRM, 1, 200);
|
||||
v_errormsg :=
|
||||
v_errormsg
|
||||
|| ' ORACLE (error '
|
||||
|| oracle_err_num
|
||||
|| '/'
|
||||
|| oracle_err_mes
|
||||
|| ')';
|
||||
fac.writelog (p_applname,
|
||||
'W',
|
||||
rec.aanduiding || v_errormsg,
|
||||
'Opdracht-verkoop');
|
||||
COMMIT;
|
||||
END;
|
||||
END LOOP;
|
||||
MLD.setopdrachtstatus (rec.mld_opdr_key, 7, NULL);
|
||||
|
||||
COMMIT;
|
||||
v_order_count := v_order_count + 1;
|
||||
v_amount_sum := v_amount_sum + rec.mld_opdr_kosten;
|
||||
EXCEPTION
|
||||
WHEN OTHERS
|
||||
THEN
|
||||
oracle_err_num := SQLCODE;
|
||||
oracle_err_mes := SUBSTR (SQLERRM, 1, 200);
|
||||
v_errormsg :=
|
||||
v_errormsg
|
||||
|| ' ORACLE (error '
|
||||
|| oracle_err_num
|
||||
|| '/'
|
||||
|| oracle_err_mes
|
||||
|| ')';
|
||||
fac.writelog (p_applname,
|
||||
'W',
|
||||
rec.aanduiding || v_errormsg,
|
||||
'Opdracht-verkoop');
|
||||
COMMIT;
|
||||
END;
|
||||
END LOOP;
|
||||
|
||||
FOR rec IN c2
|
||||
LOOP
|
||||
BEGIN
|
||||
v_errormsg := 'Fout meetellen res_rsv_artikel';
|
||||
COMMIT;
|
||||
|
||||
v_order_count := v_order_count + 1;
|
||||
v_amount_sum := v_amount_sum + rec.artikelprijs_excl;
|
||||
EXCEPTION
|
||||
WHEN OTHERS
|
||||
THEN
|
||||
oracle_err_num := SQLCODE;
|
||||
oracle_err_mes := SUBSTR (SQLERRM, 1, 200);
|
||||
v_errormsg :=
|
||||
v_errormsg
|
||||
|| ' ORACLE (error '
|
||||
|| oracle_err_num
|
||||
|| '/'
|
||||
|| oracle_err_mes
|
||||
|| ')';
|
||||
fac.writelog (p_applname,
|
||||
'W',
|
||||
rec.aanduiding || v_errormsg,
|
||||
'Catering-verkoop');
|
||||
COMMIT;
|
||||
END;
|
||||
END LOOP;
|
||||
FOR rec IN c2
|
||||
LOOP
|
||||
BEGIN
|
||||
v_errormsg := 'Fout meetellen res_rsv_artikel';
|
||||
|
||||
fac.writelog (p_applname,
|
||||
'S',
|
||||
'Twinfield export/#regels: ' || TO_CHAR (v_order_count),
|
||||
TO_CHAR (v_amount_sum));
|
||||
v_order_count := v_order_count + 1;
|
||||
v_amount_sum := v_amount_sum + rec.artikelprijs_excl;
|
||||
EXCEPTION
|
||||
WHEN OTHERS
|
||||
THEN
|
||||
oracle_err_num := SQLCODE;
|
||||
oracle_err_mes := SUBSTR (SQLERRM, 1, 200);
|
||||
v_errormsg :=
|
||||
v_errormsg
|
||||
|| ' ORACLE (error '
|
||||
|| oracle_err_num
|
||||
|| '/'
|
||||
|| oracle_err_mes
|
||||
|| ')';
|
||||
fac.writelog (p_applname,
|
||||
'W',
|
||||
rec.aanduiding || v_errormsg,
|
||||
'Catering-verkoop');
|
||||
COMMIT;
|
||||
END;
|
||||
END LOOP;
|
||||
|
||||
fac.writelog (p_applname,
|
||||
'S',
|
||||
'Twinfield export/#regels: ' || TO_CHAR (v_order_count),
|
||||
TO_CHAR (v_amount_sum));
|
||||
END IF;
|
||||
END;
|
||||
/
|
||||
|
||||
|
||||
Reference in New Issue
Block a user