NOVA#80968 NOVA0
svn path=/Customer/trunk/; revision=66961
This commit is contained in:
169
NOVA/nova.sql
169
NOVA/nova.sql
@@ -128,12 +128,12 @@ BEGIN
|
||||
DBMS_OUTPUT.put_line ('Niet gelukt om attentie te zetten.');
|
||||
END;
|
||||
/*
|
||||
-- Find the lowest volgnummer of the Folder-flexfield.
|
||||
-- Find the lowest volgnummer of the Folder-flexfield.
|
||||
v_errormsg := 'Fout toevoegen opdracht-bijlage';
|
||||
SELECT MIN (k1.mld_kenmerk_key)
|
||||
SELECT MIN (k1.mld_kenmerk_key)
|
||||
INTO v_folder_kkey
|
||||
FROM mld_kenmerk k1, mld_srtkenmerk sk1
|
||||
WHERE k1.mld_typeopdr_key = v_typeopdr_key
|
||||
WHERE k1.mld_typeopdr_key = v_typeopdr_key
|
||||
AND k1.mld_kenmerk_verwijder IS NULL
|
||||
AND k1.mld_kenmerk_niveau = 'O'
|
||||
AND k1.mld_srtkenmerk_key = sk1.mld_srtkenmerk_key
|
||||
@@ -149,13 +149,13 @@ BEGIN
|
||||
AND k2.mld_kenmerk_volgnummer < k1.mld_kenmerk_volgnummer);
|
||||
*/
|
||||
v_folder_kkey := 421;
|
||||
IF v_folder_kkey IS NOT NULL
|
||||
THEN
|
||||
IF v_folder_kkey IS NOT NULL
|
||||
THEN
|
||||
--INSERT INTO fac_result (fac_result_sessionid, fac_result_naam, fac_result_waarde)
|
||||
-- VALUES (psessionid, 'kenmerkpath', 'MLD\O' || TO_CHAR (TRUNC (v_opdracht_key / 1000), 'FM0000') || '___\O' || v_opdracht_key || '\' || v_folder_kkey || '\');
|
||||
INSERT INTO fac_result (fac_result_sessionid, fac_result_naam, fac_result_waarde)
|
||||
VALUES (psessionid, 'kenmerkpath', 'MLD\O' || TO_CHAR (TRUNC (v_opdracht_key / 1000), 'FM0000') || '___\O' || v_opdracht_key || '\' || v_folder_kkey || '\');
|
||||
END IF;
|
||||
END IF;
|
||||
|
||||
-- Per 2021.1 mogelijk dat originele mail (incl. bijlagen?) ook wordt opgeslagen!
|
||||
v_errormsg := 'Fout toevoegen originele mail';
|
||||
@@ -1065,39 +1065,124 @@ AS
|
||||
oracle_err_num NUMBER;
|
||||
oracle_err_mes VARCHAR2 (200);
|
||||
v_count NUMBER (10);
|
||||
v_prijs NUMBER;
|
||||
|
||||
CURSOR res
|
||||
CURSOR c1
|
||||
IS
|
||||
SELECT DISTINCT rrr.res_rsv_ruimte_van, rrr.res_rsv_ruimte_key
|
||||
FROM res_rsv_ruimte rrr,
|
||||
res_rsv_artikel rra,
|
||||
(SELECT fac.safe_to_number (fac_usrdata_omschr) export_days
|
||||
FROM fac_v_aanwezigusrdata
|
||||
WHERE fac_usrtab_key = 161 -- BENQUE-koppeling
|
||||
AND fac_usrdata_upper = 'BENQ_EXPORT_DAYS') b
|
||||
WHERE rrr.res_rsv_ruimte_verwijder IS NULL
|
||||
AND rrr.res_rsv_ruimte_van > fac.safe_to_date ('30-09-2024', 'dd-mm-yyyy')
|
||||
AND rrr.res_status_fo_key = 2 -- Definitief/Of ook Optie?
|
||||
--AND rrr.res_status_bo_key = 2 -- Geregistreerd
|
||||
AND rrr.res_rsv_ruimte_dirtlevel = 0
|
||||
AND rrr.res_rsv_ruimte_key = rra.res_rsv_ruimte_key
|
||||
AND fac.count_work_days (rrr.res_rsv_ruimte_van, SYSDATE) >= b.export_days
|
||||
AND rrr.res_rsv_ruimte_key NOT IN
|
||||
(SELECT res_rsv_ruimte_key
|
||||
FROM res_kenmerkwaarde rkw, res_kenmerk rk
|
||||
WHERE rkw.res_kenmerk_key = rk.res_kenmerk_key
|
||||
AND rk.res_kenmerk_code = 'BENQ_ID'
|
||||
AND rkw.res_rsv_ruimte_key = rrr.res_rsv_ruimte_key)
|
||||
ORDER BY 1, 2;
|
||||
WITH wachtdagen
|
||||
AS (SELECT fac.safe_to_number (fac_usrdata_omschr) aantal
|
||||
FROM fac_v_aanwezigusrdata
|
||||
WHERE fac_usrtab_key = 161 -- BENQUE-koppeling
|
||||
AND fac_usrdata_upper = 'BENQ_EXPORT_DAYS')
|
||||
SELECT DISTINCT '[' || TO_CHAR (rrr.res_rsv_ruimte_key) || '|' || TO_CHAR (rrr.res_reservering_key) || '/' || TO_CHAR (rrr.res_rsv_ruimte_volgnr) || '] '
|
||||
aanduiding,
|
||||
rrr.res_rsv_ruimte_key,
|
||||
rra.res_rsv_artikel_key,
|
||||
ra.res_artikel_key,
|
||||
rra.res_status_bo_key
|
||||
FROM wachtdagen wd, res_v_aanwezigrsv_ruimte rrr, res_v_aanwezigrsv_artikel rra, res_artikel ra
|
||||
WHERE rrr.res_rsv_ruimte_van > fac.safe_to_date ('30-09-2024', 'dd-mm-yyyy')
|
||||
AND rrr.res_status_fo_key = 2 -- Definitief/Of ook Optie?
|
||||
AND rrr.res_rsv_ruimte_dirtlevel = 0 -- TODO:Niet dirty?
|
||||
AND fac.count_work_days (rrr.res_rsv_ruimte_van, SYSDATE) >= wd.aantal
|
||||
AND NOT EXISTS -- Niet al doorgezet/Vervangen door check op Verwerkt?
|
||||
(SELECT 1
|
||||
FROM res_kenmerkwaarde rkw, res_kenmerk rk
|
||||
WHERE rkw.res_kenmerk_key = rk.res_kenmerk_key
|
||||
AND rk.res_kenmerk_code = 'BENQ_ID'
|
||||
AND rkw.res_rsv_ruimte_key = rrr.res_rsv_ruimte_key)
|
||||
AND rrr.res_rsv_ruimte_key = rra.res_rsv_ruimte_key
|
||||
AND rra.res_rsv_artikel_verwerkt IS NULL
|
||||
AND rra.res_rsv_artikel_dirtlevel = 0 -- TODO:Niet dirty?
|
||||
AND rra.res_artikel_key = ra.res_artikel_key
|
||||
AND EXISTS -- Met artikel uit Benque-catalogus
|
||||
(SELECT 1
|
||||
FROM res_disc_params
|
||||
WHERE prs_bedrijf_key = 3661 -- Benque-catalogus
|
||||
AND res_ins_discipline_key = ra.res_discipline_key)
|
||||
UNION ALL
|
||||
SELECT DISTINCT '[' || TO_CHAR (rrr.res_rsv_ruimte_key) || '|' || TO_CHAR (rrr.res_reservering_key) || '/' || TO_CHAR (rrr.res_rsv_ruimte_volgnr) || '] '
|
||||
aanduiding,
|
||||
rrr.res_rsv_ruimte_key,
|
||||
NULL res_rsv_artikel_key,
|
||||
NULL res_artikel_key,
|
||||
rrr.res_status_bo_key
|
||||
FROM wachtdagen wd, res_v_aanwezigrsv_ruimte rrr
|
||||
WHERE rrr.res_rsv_ruimte_van > fac.safe_to_date ('30-09-2024', 'dd-mm-yyyy')
|
||||
AND rrr.res_status_fo_key = 2 -- Definitief/Of ook Optie?
|
||||
AND rrr.res_rsv_ruimte_dirtlevel = 0 -- TODO:Niet dirty?
|
||||
AND fac.count_work_days (rrr.res_rsv_ruimte_van, SYSDATE) >= wd.aantal
|
||||
AND NOT EXISTS -- Niet al doorgezet/Vervangen door check op Verwerkt?
|
||||
(SELECT 1
|
||||
FROM res_kenmerkwaarde rkw, res_kenmerk rk
|
||||
WHERE rkw.res_kenmerk_key = rk.res_kenmerk_key
|
||||
AND rk.res_kenmerk_code = 'BENQ_ID'
|
||||
AND rkw.res_rsv_ruimte_key = rrr.res_rsv_ruimte_key)
|
||||
AND EXISTS -- Met artikel uit Benque-catalogus
|
||||
(SELECT 1
|
||||
FROM res_v_aanwezigrsv_artikel rra, res_artikel ra, res_disc_params dp
|
||||
WHERE rra.res_rsv_artikel_verwerkt IS NULL
|
||||
AND rra.res_rsv_artikel_dirtlevel = 0 -- TODO:Niet dirty?
|
||||
AND rra.res_artikel_key = ra.res_artikel_key
|
||||
AND ra.res_discipline_key = dp.res_ins_discipline_key
|
||||
AND dp.prs_bedrijf_key = 3661 -- Benque-catalogus
|
||||
AND rra.res_rsv_ruimte_key = rrr.res_rsv_ruimte_key)
|
||||
ORDER BY 1, 3, 2;
|
||||
BEGIN
|
||||
v_count := 0;
|
||||
FOR rec IN res
|
||||
FOR rec IN c1
|
||||
LOOP
|
||||
v_errormsg := 'Fout teverzenden reservering';
|
||||
UPDATE res_rsv_ruimte
|
||||
SET res_rsv_ruimte_teverzenden = 1
|
||||
WHERE res_rsv_ruimte_key = rec.res_rsv_ruimte_key;
|
||||
v_count := v_count + 1;
|
||||
IF rec.res_rsv_artikel_key IS NOT NULL
|
||||
THEN -- Catering-regel
|
||||
IF rec.res_status_bo_key = 2 -- Als 2=Nieuw, dan naar 5=Afgemeld!
|
||||
THEN
|
||||
v_errormsg := 'Fout bepalen res_rsv_artikel_prijs';
|
||||
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 catering';
|
||||
fac.trackaction ('RESAFM', rec.res_rsv_ruimte_key, NULL, NULL, 'Catering afgemeld');
|
||||
END IF;
|
||||
ELSE -- Ruimte-regel
|
||||
IF rec.res_status_bo_key = 2 -- Als 2=Nieuw, dan naar 5=Afgemeld (dus niet voor Losse catering)!
|
||||
THEN
|
||||
v_errormsg := 'Fout bepalen res_rsv_ruimte_prijs';
|
||||
SELECT res.getruimteprijs (rec.res_rsv_ruimte_key)
|
||||
INTO v_prijs
|
||||
FROM DUAL;
|
||||
|
||||
v_errormsg := 'Fout afmelden res_rsv_ruimte';
|
||||
UPDATE res_rsv_ruimte
|
||||
SET res_status_bo_key = 5,
|
||||
res_rsv_ruimte_prijs = v_prijs
|
||||
WHERE res_rsv_ruimte_key = rec.res_rsv_ruimte_key;
|
||||
|
||||
v_errormsg := 'Fout tracken afmelding ruimte';
|
||||
fac.trackaction ('RESAFM', rec.res_rsv_ruimte_key, NULL, NULL, NULL);
|
||||
END IF;
|
||||
|
||||
v_errormsg := 'Fout teverzenden reservering';
|
||||
UPDATE res_rsv_ruimte
|
||||
SET res_rsv_ruimte_teverzenden = 1
|
||||
WHERE res_rsv_ruimte_key = rec.res_rsv_ruimte_key;
|
||||
|
||||
v_count := v_count + 1;
|
||||
END IF;
|
||||
END LOOP;
|
||||
|
||||
fac.writelog ('RES2BENQ', 'S', 'Reserveringen/#teverzenden: ' || TO_CHAR (v_count), '');
|
||||
@@ -3041,8 +3126,8 @@ AS
|
||||
rd.ins_discipline_omschrijving catalogus,
|
||||
ra.res_artikel_key artikel_key,
|
||||
ra.res_artikel_aanmaak aangemaakt,
|
||||
ra.res_artikel_vervaldatum vervallen,
|
||||
ra.res_artikel_verwijder verwijderd,
|
||||
--ra.res_artikel_vervaldatum vervallen,
|
||||
--ra.res_artikel_verwijder verwijderd,
|
||||
ra.res_artikel_nr artikelnummer,
|
||||
ra.res_artikel_omschrijving omschrijving,
|
||||
ra.res_artikel_opmerking opmerking,
|
||||
@@ -3053,9 +3138,17 @@ AS
|
||||
DECODE (ra.res_artikel_flags, 1, 'Ja', 'Nee')
|
||||
meermaals_reserveerbaar
|
||||
FROM res_artikel ra, res_discipline rd
|
||||
WHERE ra.res_discipline_key = rd.ins_discipline_key
|
||||
WHERE ra.res_artikel_verwijder IS NULL
|
||||
AND COALESCE (ra.res_artikel_vervaldatum, SYSDATE) >
|
||||
TRUNC (SYSDATE)
|
||||
AND ra.res_discipline_key = rd.ins_discipline_key
|
||||
AND (rd.ins_discipline_key IN (321, 341, 361, 362, 363, 364, 365, 366, 367)
|
||||
OR rd.ins_discipline_externnr = 'BENQ');
|
||||
OR rd.ins_discipline_externnr = 'BENQ'
|
||||
OR EXISTS
|
||||
(SELECT 1
|
||||
FROM res_disc_params
|
||||
WHERE prs_bedrijf_key = 3661
|
||||
AND res_ins_discipline_key = rd.ins_discipline_key));
|
||||
|
||||
-- HV-opdrachten/uitnutting!
|
||||
CREATE OR REPLACE VIEW NOVA_V_RAP_HV_OPDRACHTEN
|
||||
|
||||
Reference in New Issue
Block a user