KFNS#34994 Archiveren "inclusief" opdrachten

svn path=/Customer/trunk/; revision=28424
This commit is contained in:
Maarten van der Heide
2016-03-10 11:10:46 +00:00
parent 3652dd7dd9
commit d7205152c0

View File

@@ -1471,18 +1471,14 @@ AS
AND l.alg_district_key = d.alg_district_key(+)
AND m.mld_alg_onroerendgoed_keys = og.alg_onroerendgoed_keys(+);
/* Formatted on 30-7-2015 13:34:26 (QP5 v5.136.908.31019) */
/* Formatted on 9-3-2016 14:18:22 (QP5 v5.136.908.31019) */
CREATE OR REPLACE PROCEDURE kfns_select_fact (p_applname IN VARCHAR2,
p_applrun IN VARCHAR2)
AS
-- Bevries vaste contractkosten in eigen tabel (TODO/incl. malus?).
CURSOR c1
IS
SELECT maand,
prs_bedrijf_key,
cnt_contract_key,
inkoopordernr,
kosten
SELECT maand, prs_bedrijf_key, cnt_contract_key, inkoopordernr, kosten
FROM kfns_v_actual_fact
WHERE mld_opdr_key IS NULL;
@@ -1494,30 +1490,70 @@ AS
FROM kfns_v_actual_fact
WHERE mld_opdr_key IS NOT NULL;
-- Zet "inclusief" opdrachten die voor de 1e zijn gesloten op AV?
-- Op afgeronde vaste contracten,
-- Op afgeronde Offerteaanvragen en Beheerdersopdrachten
-- Op afgemelde Klachten en Interne opdrachten
--CURSOR c3
--IS
-- SELECT mld_opdr_key
-- FROM mld_opdr o, cnt_contract c
-- WHERE o.mld_statusopdr_key = 9 -- KV
-- AND o.cnt_contract_key = c.cnt_contract_key
-- AND c.ins_discipline_key = 144 -- Vast contracten
-- AND fac.gettrackingdate ('ORDAFR', o.mld_opdr_key) < TRUNC (SYSDATE, 'mm')
-- UNION ALL -- Offerteaanvragen en Beheerdersopdrachten
-- SELECT mld_opdr_key
-- FROM mld_opdr o
-- WHERE o.mld_typeopdr_key IN (283, 301)
-- AND o.mld_statusopdr_key = 9 -- KV
-- AND fac.gettrackingdate ('ORDAFR', o.mld_opdr_key) < TRUNC (SYSDATE, 'mm')
-- UNION ALL -- Klachten en Interne opdrachten
-- SELECT mld_opdr_key
-- FROM mld_opdr o
-- WHERE o.mld_typeopdr_key IN (285, 302)
-- AND o.mld_statusopdr_key = 6 -- TV
-- AND fac.gettrackingdate ('ORDAFM', o.mld_opdr_key) < TRUNC (SYSDATE, 'mm');
-- Zet "inclusief" opdrachten die voor de 1e zijn gesloten op AV.
-- Afgerond met kosten op vaste contracten en geen dispuut
-- VERVALLEN: Afgemeld zonder kosten, offerteaanvraag en ander opdrachttype met hoger volgnummer
-- Afgemeld zonder kosten, geen offerteaanvraag en geen dispuut
-- Afgerond zonder kosten en geen dispuut
CURSOR c3
IS
SELECT mld_opdr_key
FROM mld_opdr o, cnt_contract c, mld_typeopdr ot
WHERE o.mld_statusopdr_key = 9 -- KV
AND o.cnt_contract_key = c.cnt_contract_key
AND c.ins_discipline_key = 141 -- Vaste contracten
AND o.mld_typeopdr_key = ot.mld_typeopdr_key
AND ot.mld_typeopdr_kosten = 1 -- Kosten meerekenen=Ja
AND NOT EXISTS -- Niet gemarkeerd als dispuut!
(SELECT 1
FROM mld_v_aanwezigkenmerkopdr ko, mld_kenmerk k
WHERE ko.mld_opdr_key = o.mld_opdr_key
AND ko.mld_kenmerk_key = k.mld_kenmerk_key
AND k.mld_srtkenmerk_key = 101 -- Dispuut
AND ko.mld_kenmerkopdr_waarde = '1') -- Aangevinkt
AND fac.gettrackingdate ('ORDAFR', o.mld_opdr_key) < TRUNC (SYSDATE, 'mm')
--UNION ALL
--SELECT mld_opdr_key
-- FROM mld_opdr o, mld_typeopdr ot
-- WHERE o.mld_statusopdr_key = 6 -- TV
-- AND o.mld_typeopdr_key = ot.mld_typeopdr_key
-- AND ot.mld_typeopdr_key = 283 -- Offerteaanvraag
-- AND EXISTS -- Opdracht met hoger volgnr. en geen Offerteaanvraag
-- (SELECT 1
-- FROM mld_opdr
-- WHERE mld_melding_key = o.mld_melding_key
-- AND mld_opdr_bedrijfopdr_volgnr > o.mld_opdr_bedrijfopdr_volgnr
-- AND mld_typeopdr_key != 283) -- Offerteaanvraag
-- AND fac.gettrackingdate ('ORDAFM', o.mld_opdr_key) < TRUNC (SYSDATE, 'mm')
UNION ALL
SELECT mld_opdr_key
FROM mld_opdr o, mld_typeopdr ot
WHERE o.mld_statusopdr_key = 6 -- TV
AND o.mld_typeopdr_key = ot.mld_typeopdr_key
AND ot.mld_typeopdr_kosten = 0 -- Kosten meerekenen=Nee
AND ot.mld_typeopdr_key != 283 -- Offerteaanvraag
AND NOT EXISTS -- Niet gemarkeerd als dispuut!
(SELECT 1
FROM mld_v_aanwezigkenmerkopdr ko, mld_kenmerk k
WHERE ko.mld_opdr_key = o.mld_opdr_key
AND ko.mld_kenmerk_key = k.mld_kenmerk_key
AND k.mld_srtkenmerk_key = 101 -- Dispuut
AND ko.mld_kenmerkopdr_waarde = '1') -- Aangevinkt
AND fac.gettrackingdate ('ORDAFM', o.mld_opdr_key) < TRUNC (SYSDATE, 'mm')
UNION ALL
SELECT mld_opdr_key
FROM mld_opdr o, mld_typeopdr ot
WHERE o.mld_statusopdr_key = 9 -- KV (ooit met kosten en Offerteaanvragen)
AND o.mld_typeopdr_key = ot.mld_typeopdr_key
AND ot.mld_typeopdr_kosten = 0 -- Kosten meerekenen=Nee
AND NOT EXISTS -- Niet gemarkeerd als dispuut!
(SELECT 1
FROM mld_v_aanwezigkenmerkopdr ko, mld_kenmerk k
WHERE ko.mld_opdr_key = o.mld_opdr_key
AND ko.mld_kenmerk_key = k.mld_kenmerk_key
AND k.mld_srtkenmerk_key = 101 -- Dispuut
AND ko.mld_kenmerkopdr_waarde = '1') -- Aangevinkt
AND fac.gettrackingdate ('ORDAFR', o.mld_opdr_key) < TRUNC (SYSDATE, 'mm');
v_errormsg VARCHAR2 (1000);
oracle_err_num NUMBER;
@@ -1527,7 +1563,7 @@ BEGIN
-- Op 10e dag van de maand (via scheduled task):
-- 1. Bevries vaste contractkosten in eigen tabel (incl. malus?).
-- 2. Zet "variabele" opdrachten die voor de 1e zijn afgerond op AV.
-- 3. Zet "inclusief" opdrachten die voor de 1e zijn gesloten op AV?
-- 3. Zet "inclusief" opdrachten die voor de 1e zijn gesloten op AV.
-- x. Doe niets met afgewezen/geannuleerde opdrachten?
v_count := 0;
@@ -1544,9 +1580,7 @@ BEGIN
fac_usrdata_prijs)
VALUES (21, -- VasteKostenMnd
rec.maand || '/' || TO_CHAR (rec.cnt_contract_key),
TO_CHAR (rec.prs_bedrijf_key)
|| '/'
|| rec.inkoopordernr, -- TODO: Of weg?
TO_CHAR (rec.prs_bedrijf_key) || '/' || rec.inkoopordernr, -- TODO: Of weg?
SYSDATE,
NULL,
rec.kosten);
@@ -1585,16 +1619,16 @@ BEGIN
v_count := 0;
--FOR rec IN c3
--LOOP
-- v_errormsg := 'Fout bijwerken status (inclusief opdrachten).';
FOR rec IN c3
LOOP
v_errormsg := 'Fout bijwerken status (inclusief opdrachten).';
--MLD.setopdrachtstatus (rec.mld_opdr_key, 7, 4);
MLD.setopdrachtstatus (rec.mld_opdr_key, 7, 4);
--v_count := v_count + 1;
v_count := v_count + 1;
--COMMIT;
--END LOOP;
COMMIT;
END LOOP;
fac.writelog (p_applname, 'S',
'#Inclusief opdrachten bevroren: ' || TO_CHAR (v_count), '');
@@ -2850,7 +2884,7 @@ AS
BEGIN adm.systrackscriptId('$Id$', 0); END;
/
BEGIN fac.registercustversion('KFNS', 13); END;
BEGIN fac.registercustversion('KFNS', 14); END;
/
commit;
spool off