BSSC#56993 Rap/Toevoegen kolommen

svn path=/Customer/trunk/; revision=45202
This commit is contained in:
Maarten van der Heide
2019-12-11 21:46:38 +00:00
parent ca5d1f3981
commit 5e5e0e2394

View File

@@ -318,7 +318,7 @@ CREATE OR REPLACE VIEW bssc_v_externe_relaties
AS
SELECT prs_bedrijf_key, prs_bedrijf_naam || ' [' || prs_overeenkomst_nr || ']', prs_bedrijf_verwijder
FROM prs_bedrijf
WHERE prs_bedrijf_ingids = 1;
WHERE prs_bedrijf_intern IS NULL;
CREATE OR REPLACE VIEW bssc_v_rap_ssc_cat_looplijst
(
@@ -438,86 +438,118 @@ AS
CREATE OR REPLACE VIEW bssc_v_rap_ssc_cat_factlijst
(
hide_f_sortering,
resnr,
datum,
ruimte,
personen,
organisatie,
gastheer,
kostenplaats,
--costcenter,
omschrijving,
horeca_details,
product,
btw,
aantal,
prijs,
totaal
)
AS -- Catering gegroepeerd per reservering
SELECT res_id,
TRUNC (reslev),
prs_afdeling_omschrijving organisatie,
prs_perslid_naam_full gastheer,
prs_kostenplaats_omschrijving kostenplaats,
--(SELECT MAX (kw.res_kenmerkreservering_waarde)
-- FROM res_kenmerkwaarde kw, res_kenmerk rk
-- WHERE kw.res_rsv_ruimte_key = res_rsv_ruimte_key
-- AND kw.res_kenmerkwaarde_verwijder IS NULL
-- AND kw.res_kenmerk_key = rk.res_kenmerk_key
-- AND rk.res_srtkenmerk_key = 1)
-- costcenter,
res_rsv_ruimte_omschrijving omschrijving,
SUM (COALESCE (verw_prijs, prijs))
FROM (SELECT rrr.res_reservering_key || '/' || rrr.res_rsv_ruimte_volgnr res_id,
rra.res_rsv_artikel_levering reslev,
a.prs_afdeling_omschrijving,
pf.prs_perslid_naam_full,
kp.prs_kostenplaats_nr,
kp.prs_kostenplaats_omschrijving,
rrr.res_rsv_ruimte_omschrijving,
rra.res_rsv_artikel_prijs verw_prijs,
rra.res_rsv_artikel_aantal * ra.res_artikel_prijs prijs
FROM res_rsv_ruimte rrr,
res_ruimte_opstelling rro,
( SELECT res_ruimte_key, MAX (alg_ruimte_key) alg_ruimte_key
FROM res_alg_ruimte
WHERE res_alg_ruimte_verwijder IS NULL
GROUP BY res_ruimte_key) rar1,
( SELECT res_ruimte_key, MAX (alg_ruimte_key) alg_ruimte_key
FROM res_alg_ruimte
WHERE res_alg_ruimte_verwijder IS NOT NULL
GROUP BY res_ruimte_key) rar2,
alg_v_allonroerendgoed aog,
prs_perslid p,
prs_afdeling a,
prs_v_perslid_fullnames_all pf,
prs_kostenplaats kp,
res_v_aanwezigrsv_artikel rra,
res_artikel ra,
res_discipline rd,
res_disc_params dp,
prs_bedrijf b,
prs_kostensoort ks
WHERE rrr.res_rsv_ruimte_dirtlevel = 0
AND rrr.res_ruimte_opstel_key = rro.res_ruimte_opstel_key(+)
AND rro.res_ruimte_key = rar1.res_ruimte_key(+)
AND rro.res_ruimte_key = rar2.res_ruimte_key(+)
AND COALESCE (rar1.alg_ruimte_key, rar2.alg_ruimte_key, rrr.alg_ruimte_key) = aog.alg_ruimte_key
AND aog.alg_locatie_key = 21 -- SSC
AND rrr.res_rsv_ruimte_host_key = p.prs_perslid_key
AND p.prs_afdeling_key = a.prs_afdeling_key
AND rrr.res_rsv_ruimte_host_key = pf.prs_perslid_key
AND rrr.prs_kostenplaats_key = kp.prs_kostenplaats_key(+)
AND rrr.res_rsv_ruimte_key = rra.res_rsv_ruimte_key
AND rra.res_artikel_key = ra.res_artikel_key
AND ra.res_discipline_key = rd.ins_discipline_key
AND rd.ins_discipline_key = dp.res_ins_discipline_key
AND dp.prs_bedrijf_key = b.prs_bedrijf_key
AND rd.prs_kostensoort_key = ks.prs_kostensoort_key(+)
--AND rra.res_rsv_artikel_verwerkt IS NULL
AND rra.res_rsv_artikel_dirtlevel = 0
AND rra.res_rsv_artikel_levering > TO_DATE ('20171101', 'yyyymmdd')
AND rra.res_rsv_artikel_levering < SYSDATE)
GROUP BY res_id,
TRUNC (reslev),
prs_afdeling_omschrijving,
prs_perslid_naam_full,
prs_kostenplaats_omschrijving,
res_rsv_ruimte_omschrijving;
AS -- Catering gesorteerd per datum/res_id
SELECT TO_CHAR (x.res_rsv_artikel_levering, 'yyyymmdd') || TO_CHAR (x.res_reservering_key) || '/' || TO_CHAR (x.res_rsv_ruimte_volgnr) sortering,
TO_CHAR (x.res_reservering_key) || '/' || TO_CHAR (x.res_rsv_ruimte_volgnr) res_id,
x.res_rsv_artikel_levering datum,
x.ruimte,
x.res_rsv_ruimte_bezoekers personen,
x.prs_afdeling_omschrijving organisatie,
x.prs_perslid_naam_full gastheer,
x.prs_kostenplaats_omschrijving kostenplaats,
--(SELECT MAX (kw.res_kenmerkreservering_waarde)
-- FROM res_kenmerkwaarde kw, res_kenmerk rk
-- WHERE kw.res_rsv_ruimte_key = res_rsv_ruimte_key
-- AND kw.res_kenmerkwaarde_verwijder IS NULL
-- AND kw.res_kenmerk_key = rk.res_kenmerk_key
-- AND rk.res_srtkenmerk_key = 1)
-- costcenter,
x.res_rsv_ruimte_omschrijving omschrijving,
kw.res_kenmerkreservering_waarde horeca_details,
x.artikel product,
COALESCE (x.verw_btw, x.btw) btw,
x.aantal,
DECODE (x.verw_prijs,
NULL, x.prijs,
x.verw_prijs / DECODE (COALESCE (x.aantal, 0), 0, 1, x.aantal))
prijs,
COALESCE (x.verw_prijs, x.aantal * x.prijs) totaal
FROM (SELECT rrr.res_rsv_ruimte_key,
rrr.res_reservering_key,
rrr.res_rsv_ruimte_volgnr,
rra.res_rsv_artikel_levering,
COALESCE (rr.res_ruimte_nr, aog.alg_plaatsaanduiding) ruimte,
rrr.res_rsv_ruimte_bezoekers,
a.prs_afdeling_omschrijving,
pf.prs_perslid_naam_full,
kp.prs_kostenplaats_nr,
kp.prs_kostenplaats_omschrijving,
rrr.res_rsv_ruimte_omschrijving,
ra.res_artikel_omschrijving artikel,
rra.res_rsv_artikel_btw verw_btw,
ra.res_artikel_btw btw,
rra.res_rsv_artikel_aantal aantal,
rra.res_rsv_artikel_prijs verw_prijs,
ra.res_artikel_prijs prijs
FROM res_v_aanwezigrsv_ruimte rrr,
res_ruimte_opstelling rro,
( SELECT res_ruimte_key, MAX (alg_ruimte_key) alg_ruimte_key
FROM res_alg_ruimte
WHERE res_alg_ruimte_verwijder IS NULL
GROUP BY res_ruimte_key) rar1,
( SELECT res_ruimte_key, MAX (alg_ruimte_key) alg_ruimte_key
FROM res_alg_ruimte
WHERE res_alg_ruimte_verwijder IS NOT NULL
GROUP BY res_ruimte_key) rar2,
res_v_aanwezigruimte rr,
alg_v_allonrgoed_gegevens aog,
prs_perslid p,
prs_afdeling a,
prs_v_perslid_fullnames_all pf,
prs_kostenplaats kp,
res_v_aanwezigrsv_artikel rra,
res_artikel ra,
res_discipline rd,
--prs_kostensoort ks,
res_disc_params dp,
prs_bedrijf b
WHERE rrr.res_rsv_ruimte_dirtlevel = 0
AND rrr.res_ruimte_opstel_key = rro.res_ruimte_opstel_key(+)
AND rro.res_ruimte_key = rar1.res_ruimte_key(+)
AND rro.res_ruimte_key = rar2.res_ruimte_key(+)
AND rro.res_ruimte_key = rr.res_ruimte_key(+)
AND COALESCE (rar1.alg_ruimte_key, rar2.alg_ruimte_key, rrr.alg_ruimte_key) = aog.alg_ruimte_key
AND aog.alg_locatie_key = 21 -- SSC
AND rrr.res_rsv_ruimte_host_key = p.prs_perslid_key
AND p.prs_afdeling_key = a.prs_afdeling_key
AND rrr.res_rsv_ruimte_host_key = pf.prs_perslid_key
AND rrr.prs_kostenplaats_key = kp.prs_kostenplaats_key(+)
AND rrr.res_rsv_ruimte_key = rra.res_rsv_ruimte_key
AND rra.res_rsv_artikel_dirtlevel = 0
AND rra.res_artikel_key = ra.res_artikel_key
AND ra.res_discipline_key = rd.ins_discipline_key
--AND rd.prs_kostensoort_key = ks.prs_kostensoort_key(+)
AND rd.ins_discipline_key = dp.res_ins_discipline_key
AND dp.prs_bedrijf_key = b.prs_bedrijf_key
--AND rra.res_rsv_artikel_verwerkt IS NULL
AND rra.res_rsv_artikel_levering > TO_DATE ('20171101', 'yyyymmdd')
AND rra.res_rsv_artikel_levering < SYSDATE) x
LEFT JOIN
res_v_aanwezigkenmerkwaarde kw
ON x.res_rsv_ruimte_key = kw.res_rsv_ruimte_key
AND EXISTS
(SELECT 1
FROM res_kenmerk
WHERE res_kenmerk_verwijder IS NULL
AND res_srtkenmerk_key = 142 -- Horeca details
AND res_kenmerk_key = kw.res_kenmerk_key);
CREATE OR REPLACE VIEW bssc_v_rap_parkres_bez
(
@@ -612,7 +644,7 @@ AS
-- BSSC#55692: Facturatie verhuur (M2 en meer)!
CREATE OR REPLACE VIEW bssc_v_fact_actual
AS
WITH lopendeperiode AS (SELECT COALESCE (MAX (TO_CHAR (LAST_DAY (fac.safe_to_date (fin_verkoopfactuur_maand, 'yyyymm')) + 1, 'yyyymm')), '201905') maand
WITH lopendeperiode AS (SELECT COALESCE (MAX (TO_CHAR (LAST_DAY (fac.safe_to_date (fin_verkoopfactuur_maand, 'yyyymm')) + 1, 'yyyymm')), '202002') maand -- TODO
FROM fin_verkoopfactuur)
SELECT '*CONCEPT*' fin_verkoopfactuur_id, -- Huur!
'CHV' || TRIM (x.cnt_contract_nummer) po_nr, -- Regulier
@@ -1950,12 +1982,13 @@ AS
FROM fin_verkoopfactuur vf,
cnt_contract c,
prs_bedrijf b
WHERE SUBSTR (vf.fin_verkoopfactuur_id, 1, 1) = '?' -- TODO:Of andere conditie?
WHERE (SUBSTR (vf.fin_verkoopfactuur_id, 5, 1) = '9' -- CMD
OR SUBSTR (vf.fin_verkoopfactuur_id, 5, 1) = '1') -- CHV
AND vf.fin_verkoopfactuur_refkey = c.cnt_contract_key
AND vf.prs_bedrijf_key = b.prs_bedrijf_key
ORDER BY vf.prs_bedrijf_key, 1, 2, 3, 4, SUBSTR (vf.fin_verkoopfactuur_c6, 1, 1), SUBSTR (vf.fin_verkoopfactuur_c6, INSTR (vf.fin_verkoopfactuur_c6, '=') + 1);
CREATE OR REPLACE VIEW bssc_v_rap_export_fact
CREATE OR REPLACE VIEW bssc_v_rap_export_fact_chv
(
hide_f_sortering,
fclt_x_maand,
@@ -1979,10 +2012,12 @@ AS
REPLACE (periode, '/', '-') periode,
code,
valuta,
factuurdatum,
--factuurdatum,
REPLACE (factuurdatum, '-', '/') factuurdatum,
periode,
factuurnummer,
vervaldatum,
--vervaldatum,
REPLACE (vervaldatum, '-', '/') vervaldatum,
nummer,
grtboekrek,
rel_kpl,
@@ -2007,7 +2042,8 @@ AS
'Total' omschrijving, -- Hard op 'Total'
NULL btwcode -- Hard op NULL
FROM bssc_v_fact_frozen v
WHERE v.maand >= TO_CHAR (ADD_MONTHS (SYSDATE, -12), 'yyyy') || '01'
WHERE v.po_nr = 'CHV'
AND v.maand >= TO_CHAR (ADD_MONTHS (SYSDATE, -12), 'yyyy') || '01'
GROUP BY v.fin_verkoopfactuur_id || '0000',
'VRK',
'EUR',
@@ -2039,7 +2075,8 @@ AS
v.regel omschrijving,
DECODE (fin_btwtabelwaarde_code, 'H', 'VH', 'L', 'VL', 'V', 'VBINEU_VERL', 'VN') btwcode
FROM bssc_v_fact_frozen v, cnt_contract c, prs_kostenplaats kp
WHERE v.maand >= TO_CHAR (ADD_MONTHS (SYSDATE, -12), 'yyyy') || '01'
WHERE v.po_nr = 'CHV'
AND v.maand >= TO_CHAR (ADD_MONTHS (SYSDATE, -12), 'yyyy') || '01'
AND v.cnt_contract_key = c.cnt_contract_key
AND c.prs_kostenplaats_key = kp.prs_kostenplaats_key(+)
GROUP BY v.fin_verkoopfactuur_id || COALESCE (v.grtboekrek, '???'),
@@ -2058,7 +2095,7 @@ AS
DECODE (fin_btwtabelwaarde_code, 'H', 'VH', 'L', 'VL', 'V', 'VBINEU_VERL', 'VN')
ORDER BY 1);
CREATE OR REPLACE VIEW bssc_v_export_fact
CREATE OR REPLACE VIEW bssc_v_export_fact_chv
(
result,
result_order
@@ -2080,7 +2117,7 @@ AS -- View bevat alleen inhoud op de dag na de 1e werkdag van de maand!
|| ';btwcode',
0
FROM DUAL
WHERE FAC.count_work_days (TRUNC (SYSDATE, 'mm') - 1, SYSDATE - 1) = 1 -- Nacht na 1e werkdag!
WHERE FAC.count_work_days (TRUNC (SYSDATE, 'mm') - 1, SYSDATE - 1) = 14 -- TODO:Nacht na 1e werkdag!
AND TO_CHAR (SYSDATE - 1, 'd') BETWEEN '2' AND '6'
AND NOT EXISTS
(SELECT 1
@@ -2115,9 +2152,183 @@ AS -- View bevat alleen inhoud op de dag na de 1e werkdag van de maand!
|| ';'
|| btwcode,
ROWNUM
FROM bssc_v_rap_export_fact
FROM bssc_v_rap_export_fact_chv
WHERE fclt_x_maand = TO_CHAR (ADD_MONTHS (SYSDATE, 1), 'yyyy-mm')
AND FAC.count_work_days (TRUNC (SYSDATE, 'mm') - 1, SYSDATE - 1) = 1 -- Nacht na 1e werkdag!
AND FAC.count_work_days (TRUNC (SYSDATE, 'mm') - 1, SYSDATE - 1) = 14 -- TODO:Nacht na 1e werkdag!
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))
ORDER BY 2;
CREATE OR REPLACE VIEW bssc_v_rap_export_fact_cmd
(
hide_f_sortering,
fclt_x_maand,
code,
valuta,
factuurdatum,
periode,
factuurnummer,
vervaldatum,
nummer,
grtboekrek,
rel_kpl,
prj_activa,
bedrag,
debitcredit,
omschrijving,
btwcode
)
AS
SELECT ROWNUM,
REPLACE (periode, '/', '-') periode,
code,
valuta,
--factuurdatum,
REPLACE (factuurdatum, '-', '/') factuurdatum,
periode,
factuurnummer,
--vervaldatum,
REPLACE (vervaldatum, '-', '/') vervaldatum,
nummer,
grtboekrek,
rel_kpl,
prj_activa,
bedrag,
debitcredit,
omschrijving,
btwcode
FROM ( SELECT v.fin_verkoopfactuur_id || '0000' sortering,
'VRK' code, -- Hard op 'VRK'
'EUR' valuta, -- Hard op 'EUR'
v.factuurdatum,
SUBSTR (v.maand, 1, 4) || '/' || SUBSTR (v.maand, -2) periode,
v.fin_verkoopfactuur_id factuurnummer, -- Boekstuknummer
v.vervaldatum,
'1' nummer, -- Hard op '1'
'1300' grtboekrek, -- TODO:Hard op '1300'
v.debiteur_nr rel_kpl,
NULL prj_activa, -- Hard op NULL
SUM (v.mndnet + v.mndbtw) bedrag, -- Totaalbedrag incl. BTW gegroepeerd over andere kolommen!
'debit' debitcredit,
'Total' omschrijving, -- Hard op 'Total'
NULL btwcode -- Hard op NULL
FROM bssc_v_fact_frozen v
WHERE v.po_nr = 'CMD'
AND v.maand >= TO_CHAR (ADD_MONTHS (SYSDATE, -12), 'yyyy') || '01'
GROUP BY v.fin_verkoopfactuur_id || '0000',
'VRK',
'EUR',
v.factuurdatum,
SUBSTR (v.maand, 1, 4) || '/' || SUBSTR (v.maand, -2),
v.fin_verkoopfactuur_id,
v.vervaldatum,
'1',
'1300',
v.debiteur_nr,
NULL,
'debit',
'Total',
NULL
UNION ALL
SELECT v.fin_verkoopfactuur_id || COALESCE (v.grtboekrek, '???') sortering,
'VRK' code, -- Hard op 'VRK'
'EUR' valuta, -- Hard op 'EUR'
v.factuurdatum,
SUBSTR (v.maand, 1, 4) || '/' || SUBSTR (v.maand, -2) periode,
v.fin_verkoopfactuur_id factuurnummer, -- Boekstuknummer
v.vervaldatum,
'1' nummer, -- Hard op '1'
v.grtboekrek,
kp.prs_kostenplaats_nr rel_kpl,
NULL prj_activa, -- Hard op NULL
SUM (v.mndnet) bedrag, -- Totaalbedrag excl. BTW gegroepeerd over andere kolommen!
'credit' debitcredit, -- TODO:Altijd 'credit' (ook negatieve bedragen)???
v.regel omschrijving,
DECODE (fin_btwtabelwaarde_code, 'H', 'VH', 'L', 'VL', 'V', 'VBINEU_VERL', 'VN') btwcode
FROM bssc_v_fact_frozen v, cnt_contract c, prs_kostenplaats kp
WHERE v.po_nr = 'CMD'
AND v.maand >= TO_CHAR (ADD_MONTHS (SYSDATE, -12), 'yyyy') || '01'
AND v.cnt_contract_key = c.cnt_contract_key
AND c.prs_kostenplaats_key = kp.prs_kostenplaats_key(+)
GROUP BY v.fin_verkoopfactuur_id || COALESCE (v.grtboekrek, '???'),
'VRK',
'EUR',
v.factuurdatum,
SUBSTR (v.maand, 1, 4) || '/' || SUBSTR (v.maand, -2),
v.fin_verkoopfactuur_id,
v.vervaldatum,
'1',
v.grtboekrek,
kp.prs_kostenplaats_nr,
NULL,
'credit',
v.regel,
DECODE (fin_btwtabelwaarde_code, 'H', 'VH', 'L', 'VL', 'V', 'VBINEU_VERL', 'VN')
ORDER BY 1);
CREATE OR REPLACE VIEW bssc_v_export_fact_cmd
(
result,
result_order
)
AS -- View bevat alleen inhoud op de dag na de 1e werkdag van de maand!
SELECT 'code'
|| ';valuta'
|| ';factuurdatum'
|| ';periode'
|| ';factuurnummer'
|| ';vervaldatum'
|| ';nummer'
|| ';grtboekrek'
|| ';rel/kpl'
|| ';prj/activa'
|| ';bedrag'
|| ';debitcredit'
|| ';omschrijving'
|| ';btwcode',
0
FROM DUAL
WHERE FAC.count_work_days (TRUNC (SYSDATE, 'mm') - 1, SYSDATE - 1) = 14 -- TODO:Nacht na 1e werkdag!
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 code
|| ';'
|| valuta
|| ';'
|| factuurdatum
|| ';'
|| periode
|| ';'
|| factuurnummer
|| ';'
|| vervaldatum
|| ';'
|| nummer
|| ';'
|| grtboekrek
|| ';'
|| rel_kpl
|| ';'
|| prj_activa
|| ';'
|| bedrag
|| ';'
|| debitcredit
|| ';'
|| omschrijving
|| ';'
|| btwcode,
ROWNUM
FROM bssc_v_rap_export_fact_cmd
WHERE fclt_x_maand = TO_CHAR (ADD_MONTHS (SYSDATE, 1), 'yyyy-mm')
AND FAC.count_work_days (TRUNC (SYSDATE, 'mm') - 1, SYSDATE - 1) = 14 -- TODO:Nacht na 1e werkdag!
AND TO_CHAR (SYSDATE - 1, 'd') BETWEEN '2' AND '6'
AND NOT EXISTS
(SELECT 1
@@ -2145,7 +2356,8 @@ AS
vfk.fin_verkoopfactuurkop_key, vfk.fin_verkoopfactuurkop_id,
b.prs_bedrijf_email
FROM fin_verkoopfactuur vf, fin_verkoopfactuurkop vfk, prs_bedrijf b
WHERE SUBSTR (vf.fin_verkoopfactuur_id, 5, 1) = '1' -- TODO:vf.fin_verkoopfactuur_xmlnode = 'contract'
WHERE (SUBSTR (vf.fin_verkoopfactuur_id, 5, 1) = '9' -- CHV
OR SUBSTR (vf.fin_verkoopfactuur_id, 5, 1) = '1') -- CMD
AND vf.fin_verkoopfactuur_maand = TO_CHAR (ADD_MONTHS (SYSDATE, 1), 'yyyymm')
AND vf.fin_verkoopfactuurkop_key = vfk.fin_verkoopfactuurkop_key
AND vf.prs_bedrijf_key = b.prs_bedrijf_key
@@ -2180,7 +2392,7 @@ BEGIN
-- IF nacht na 10e werkdag van de maand (<28>n<EFBFBD>geen weekend <20>n<EFBFBD>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) = 1 -- Nacht na 1e werkdag!
IF FAC.count_work_days (TRUNC (SYSDATE, 'mm') - 1, SYSDATE - 1) = 14 -- Nacht na 1e werkdag!
AND TO_CHAR (SYSDATE - 1, 'd') BETWEEN '2' AND '6'
AND v_holiday = 0
THEN
@@ -2196,6 +2408,24 @@ BEGIN
BEGIN
IF rec.prs_bedrijf_key != v_old_bedrijf_key OR rec.po_nr != v_old_po_nr
THEN
IF rec.po_nr = 'CHV'
THEN
-- TODO:Afhankelijk van boekstuknummer-methodiek!
-- Bepaal max. sequence t/m voorgaande jaar (= aantal entries in
-- fin_verkoopfactuurkop-tabel).
SELECT COUNT ( * )
INTO v_year_offset
FROM fin_verkoopfactuurkop vfk
WHERE SUBSTR (vfk.fin_verkoopfactuurkop_id, 5, 1) = '9' -- Boekstuknummers in formaat <yyyy>9!
AND SUBSTR (vfk.fin_verkoopfactuurkop_id, 1, 4) < TO_CHAR (ADD_MONTHS (SYSDATE, 1), 'yyyy');
-- Bepaal fin_verkoopfactuur_id=boekstuknr. tbv. BCC-verkoopboek
-- obv. sequence '01' en begin elk nieuw jaar weer bij 1 door te
-- corrigeren met de hierboven bepaalde offset.
SELECT fac_s_user01.NEXTVAL - v_year_offset INTO v_count FROM DUAL;
v_factuur_id := TO_CHAR (ADD_MONTHS (SYSDATE, 1), 'yyyy') || '9' || SUBSTR ('0000' || TO_CHAR (v_count), -4);
ELSE -- rec.po_nr = 'CMD'
-- TODO:Afhankelijk van boekstuknummer-methodiek!
-- Bepaal max. sequence t/m voorgaande jaar (= aantal entries in
-- fin_verkoopfactuurkop-tabel).
@@ -2206,11 +2436,13 @@ BEGIN
AND SUBSTR (vfk.fin_verkoopfactuurkop_id, 1, 4) < TO_CHAR (ADD_MONTHS (SYSDATE, 1), 'yyyy');
-- Bepaal fin_verkoopfactuur_id=boekstuknr. tbv. BCC-verkoopboek
-- obv. sequence '01' en begin elk nieuw jaar weer bij 1 door te
-- obv. sequence '02' en begin elk nieuw jaar weer bij 1 door te
-- corrigeren met de hierboven bepaalde offset.
SELECT fac_s_user01.NEXTVAL - v_year_offset INTO v_count FROM DUAL;
SELECT fac_s_user02.NEXTVAL - v_year_offset INTO v_count FROM DUAL;
v_factuur_id := TO_CHAR (ADD_MONTHS (SYSDATE, 1), 'yyyy') || '1' || SUBSTR ('0000' || TO_CHAR (v_count), -4);
END IF;
v_factuur_id := TO_CHAR (ADD_MONTHS (SYSDATE, 1), 'YYYY') || '1' || SUBSTR ('0000' || TO_CHAR (v_count), -4);
v_factkop_id := v_factuur_id || '_' || SUBSTR (rec.maand, 1, 4) || '-' || SUBSTR (rec.maand, -2) || '_' || rec.debiteur_nr;
INSERT INTO fin_verkoopfactuurkop (fin_verkoopfactuurkop_id)
@@ -2359,13 +2591,13 @@ BEGIN
DECODE ( -- To-adres
rec.prs_bedrijf_email,
NULL, 'finance.smartservices@brightlands.com',
rec.prs_bedrijf_email || ';finance.smartservices@brightlands.com'),
'finance.smartservices@brightlands.com'), -- TODO:rec.prs_bedrijf_email || ';finance.smartservices@brightlands.com'),
'Factuur ' || rec.fin_verkoopfactuur_id || ' ' || rec.fin_verkoopfactuur_maand || ' ' || rec.prs_debiteur_naam,
rec.fin_verkoopfactuurkop_key,
2, -- Prioriteit
TRUNC (SYSDATE) + (7 / 24),
TRUNC (SYSDATE) + (23 / 24), -- TODO
'finance.smartservices@brightlands.com',
'/../../Fplace5i/CUST/BSSC/export/PDF/' || rec.fin_verkoopfactuurkop_id || '.pdf');
'/../../Fplace_A/CUST/BSSC/export/PDF/Backup/' || rec.fin_verkoopfactuurkop_id || '.pdf'); -- TODO
EXCEPTION
WHEN OTHERS
THEN