UWVA#65182 Bewaartermijnen/automatische schoning in core
svn path=/Database/trunk/; revision=49806
This commit is contained in:
@@ -71,7 +71,8 @@ AS
|
|||||||
RETURN varchar2;
|
RETURN varchar2;
|
||||||
FUNCTION opdrsprintf (ps IN varchar2, pbes_bestelopdr_key IN number)
|
FUNCTION opdrsprintf (ps IN varchar2, pbes_bestelopdr_key IN number)
|
||||||
RETURN varchar2;
|
RETURN varchar2;
|
||||||
PROCEDURE remove(p_bes_opdr_key IN NUMBER, p_module IN VARCHAR2 DEFAULT 'BES');
|
PROCEDURE remove(p_bes_bestelling_key IN NUMBER);
|
||||||
|
PROCEDURE remove_opdr(p_bes_opdr_key IN NUMBER);
|
||||||
END bes;
|
END bes;
|
||||||
/
|
/
|
||||||
|
|
||||||
@@ -2155,7 +2156,7 @@ AS
|
|||||||
RETURN s;
|
RETURN s;
|
||||||
END;
|
END;
|
||||||
|
|
||||||
PROCEDURE remove(p_bes_opdr_key IN NUMBER, p_module IN VARCHAR2 DEFAULT 'BES')
|
PROCEDURE remove(p_bes_bestelling_key IN NUMBER)
|
||||||
IS
|
IS
|
||||||
CURSOR c_bestelling(p_bestelling_key IN NUMBER) IS
|
CURSOR c_bestelling(p_bestelling_key IN NUMBER) IS
|
||||||
SELECT bes_bestelling_key
|
SELECT bes_bestelling_key
|
||||||
@@ -2163,22 +2164,50 @@ AS
|
|||||||
WHERE bes_bestelling_retourvan_key = p_bestelling_key
|
WHERE bes_bestelling_retourvan_key = p_bestelling_key
|
||||||
OR bes_bestelling_parentkey = p_bestelling_key;
|
OR bes_bestelling_parentkey = p_bestelling_key;
|
||||||
|
|
||||||
CURSOR c_factuur(p_bestelopdracht_key IN NUMBER) IS
|
CURSOR c_bijlagen(p_refkey IN NUMBER) IS
|
||||||
SELECT fin_factuur_key
|
SELECT b.fac_bijlagen_key
|
||||||
FROM fin_factuur
|
FROM fac_bijlagen b
|
||||||
WHERE bes_bestelopdr_key = p_bestelopdracht_key;
|
, bes_bestelling r
|
||||||
|
, (SELECT k.bes_kenmerk_key kenmerk_key
|
||||||
|
FROM bes_kenmerk k
|
||||||
|
, bes_srtkenmerk s
|
||||||
|
WHERE k.bes_srtkenmerk_key = s.bes_srtkenmerk_key
|
||||||
|
AND k.bes_kenmerk_type = 'B'
|
||||||
|
AND s.bes_srtkenmerk_kenmerktype IN ('F', 'M', 'E', 'X')
|
||||||
|
) k
|
||||||
|
WHERE b.fac_bijlagen_refkey = r.bes_bestelling_key
|
||||||
|
AND b.fac_bijlagen_kenmerk_key = k.kenmerk_key
|
||||||
|
AND b.fac_bijlagen_module = 'BES'
|
||||||
|
AND r.bes_bestelling_key = p_refkey
|
||||||
|
UNION
|
||||||
|
SELECT b.fac_bijlagen_key
|
||||||
|
FROM fac_bijlagen b
|
||||||
|
, bes_bestelling_item r
|
||||||
|
, (SELECT k.bes_kenmerk_key kenmerk_key
|
||||||
|
FROM bes_kenmerk k
|
||||||
|
, bes_srtkenmerk s
|
||||||
|
WHERE k.bes_srtkenmerk_key = s.bes_srtkenmerk_key
|
||||||
|
AND k.bes_kenmerk_type = 'B'
|
||||||
|
AND s.bes_srtkenmerk_kenmerktype IN ('F', 'M', 'E', 'X')
|
||||||
|
) k
|
||||||
|
WHERE b.fac_bijlagen_refkey = r.bes_bestelling_item_key
|
||||||
|
AND b.fac_bijlagen_kenmerk_key = k.kenmerk_key
|
||||||
|
AND b.fac_bijlagen_module = 'BES'
|
||||||
|
AND r.bes_bestelling_key = p_refkey;
|
||||||
|
|
||||||
BEGIN
|
BEGIN
|
||||||
IF (p_module = 'BES')
|
-- Verwijderen bestelling
|
||||||
THEN
|
-- Als een bestelling verwijderd wordt kunnen ook de eventuele retour- en child-bestellingen verwijderd worden.
|
||||||
-- Verwijderen bestelling
|
FOR ref_bestelling IN c_bestelling(p_bes_bestelling_key)
|
||||||
FOR ref_bestelling IN c_bestelling(p_bes_opdr_key)
|
LOOP
|
||||||
|
-- Van alle bestellingen en bestelitems die worden verwijderd moeten ook de bijlagen verwijderd worden.
|
||||||
|
FOR ref_bijlagen IN c_bijlagen(ref_bestelling.bes_bestelling_key)
|
||||||
LOOP
|
LOOP
|
||||||
bes.remove(ref_bestelling.bes_bestelling_key, 'BES');
|
flx.deleteflexbijlage (ref_bijlagen.fac_bijlagen_key);
|
||||||
END LOOP;
|
END LOOP;
|
||||||
|
|
||||||
DELETE FROM bes_bestelling
|
DELETE FROM bes_bestelling
|
||||||
WHERE bes_bestelling_key = p_bes_opdr_key;
|
WHERE bes_bestelling_key = ref_bestelling.bes_bestelling_key;
|
||||||
|
|
||||||
-- Van de volgende tabellen worden de records die naar deze p_bestelling_key
|
-- Van de volgende tabellen worden de records die naar deze p_bestelling_key
|
||||||
-- verwijzen met ON DELETE CASCADE ook verwijderd:
|
-- verwijzen met ON DELETE CASCADE ook verwijderd:
|
||||||
@@ -2187,23 +2216,32 @@ AS
|
|||||||
-- Hierdoor worden de afhankelijkheden in de volgende tabel ook verwijderd:
|
-- Hierdoor worden de afhankelijkheden in de volgende tabel ook verwijderd:
|
||||||
-- bes_kenmerkbesteli
|
-- bes_kenmerkbesteli
|
||||||
|
|
||||||
fac.remove_tracking('bestelling', p_bes_opdr_key);
|
fac.remove_tracking('bestelling', ref_bestelling.bes_bestelling_key);
|
||||||
ElSE
|
END LOOP;
|
||||||
-- Verwijderen bestelopdracht
|
END;
|
||||||
FOR ref_factuur IN c_factuur(p_bes_opdr_key)
|
|
||||||
LOOP
|
|
||||||
fin.remove(ref_factuur.fin_factuur_key);
|
|
||||||
END LOOP;
|
|
||||||
|
|
||||||
DELETE FROM bes_bestelopdr
|
|
||||||
WHERE bes_bestelopdr_key = p_bes_opdr_key;
|
|
||||||
|
|
||||||
-- Van de volgende tabellen worden de records die naar deze p_bestelling_key
|
PROCEDURE remove_opdr(p_bes_opdr_key IN NUMBER)
|
||||||
-- verwijzen met ON DELETE CASCADE ook verwijderd:
|
IS
|
||||||
-- bes_bestelopdr_item
|
CURSOR c_factuur(p_bestelopdracht_key IN NUMBER) IS
|
||||||
|
SELECT fin_factuur_key
|
||||||
|
FROM fin_factuur
|
||||||
|
WHERE bes_bestelopdr_key = p_bestelopdracht_key;
|
||||||
|
BEGIN
|
||||||
|
-- Verwijderen bestelopdracht
|
||||||
|
FOR ref_factuur IN c_factuur(p_bes_opdr_key)
|
||||||
|
LOOP
|
||||||
|
fin.remove(ref_factuur.fin_factuur_key);
|
||||||
|
END LOOP;
|
||||||
|
|
||||||
fac.remove_tracking('bestelopdr', p_bes_opdr_key);
|
DELETE FROM bes_bestelopdr
|
||||||
END IF;
|
WHERE bes_bestelopdr_key = p_bes_opdr_key;
|
||||||
|
|
||||||
|
-- Van de volgende tabellen worden de records die naar deze p_bestelling_key
|
||||||
|
-- verwijzen met ON DELETE CASCADE ook verwijderd:
|
||||||
|
-- bes_bestelopdr_item
|
||||||
|
|
||||||
|
fac.remove_tracking('bestelopdr', p_bes_opdr_key);
|
||||||
END;
|
END;
|
||||||
|
|
||||||
END bes;
|
END bes;
|
||||||
|
|||||||
@@ -527,9 +527,24 @@ CREATE OR REPLACE PACKAGE BODY cnt AS
|
|||||||
SELECT fin_factuur_key
|
SELECT fin_factuur_key
|
||||||
FROM fin_factuur
|
FROM fin_factuur
|
||||||
WHERE cnt_contract_key = p_contract_key;
|
WHERE cnt_contract_key = p_contract_key;
|
||||||
|
|
||||||
|
CURSOR c_bijlagen(p_refkey IN NUMBER) IS
|
||||||
|
SELECT fac_bijlagen_key
|
||||||
|
FROM fac_bijlagen b
|
||||||
|
, cnt_contract r
|
||||||
|
WHERE b.fac_bijlagen_refkey = r.cnt_contract_key
|
||||||
|
AND b.fac_bijlagen_module = 'CNT'
|
||||||
|
AND b.fac_bijlagen_refkey = p_refkey;
|
||||||
|
|
||||||
BEGIN
|
BEGIN
|
||||||
|
-- Verwijder alle subcontracten van dit contract.
|
||||||
FOR ref_contract IN c_contract
|
FOR ref_contract IN c_contract
|
||||||
LOOP
|
LOOP
|
||||||
|
FOR ref_bijlagen IN c_bijlagen(ref_contract.cnt_contract_key)
|
||||||
|
LOOP
|
||||||
|
flx.deleteflexbijlage (ref_bijlagen.fac_bijlagen_key);
|
||||||
|
END LOOP;
|
||||||
|
|
||||||
cnt.remove(ref_contract.cnt_contract_key);
|
cnt.remove(ref_contract.cnt_contract_key);
|
||||||
END LOOP;
|
END LOOP;
|
||||||
|
|
||||||
@@ -538,6 +553,11 @@ CREATE OR REPLACE PACKAGE BODY cnt AS
|
|||||||
fin.remove(ref_factuur.fin_factuur_key);
|
fin.remove(ref_factuur.fin_factuur_key);
|
||||||
END LOOP;
|
END LOOP;
|
||||||
|
|
||||||
|
FOR ref_bijlagen IN c_bijlagen(p_contract_key)
|
||||||
|
LOOP
|
||||||
|
flx.deleteflexbijlage (ref_bijlagen.fac_bijlagen_key);
|
||||||
|
END LOOP;
|
||||||
|
|
||||||
DELETE FROM cnt_contract
|
DELETE FROM cnt_contract
|
||||||
WHERE cnt_contract_key = p_contract_key;
|
WHERE cnt_contract_key = p_contract_key;
|
||||||
|
|
||||||
|
|||||||
@@ -1055,8 +1055,19 @@ AS
|
|||||||
|
|
||||||
PROCEDURE remove(p_factuur_key IN NUMBER)
|
PROCEDURE remove(p_factuur_key IN NUMBER)
|
||||||
IS
|
IS
|
||||||
-- **
|
CURSOR c_bijlagen(p_refkey IN NUMBER) IS
|
||||||
|
SELECT fac_bijlagen_key
|
||||||
|
FROM fac_bijlagen b
|
||||||
|
, fin_factuur r
|
||||||
|
WHERE b.fac_bijlagen_refkey = r.fin_factuur_key
|
||||||
|
AND b.fac_bijlagen_module = 'FIN'
|
||||||
|
AND b.fac_bijlagen_refkey = p_refkey;
|
||||||
BEGIN
|
BEGIN
|
||||||
|
FOR ref_bijlagen IN c_bijlagen(p_factuur_key)
|
||||||
|
LOOP
|
||||||
|
flx.deleteflexbijlage (ref_bijlagen.fac_bijlagen_key);
|
||||||
|
END LOOP;
|
||||||
|
|
||||||
DELETE FROM fin_factuur
|
DELETE FROM fin_factuur
|
||||||
WHERE fin_factuur_key = p_factuur_key;
|
WHERE fin_factuur_key = p_factuur_key;
|
||||||
|
|
||||||
|
|||||||
131
MLD/MLD_PAC.SRC
131
MLD/MLD_PAC.SRC
@@ -70,7 +70,8 @@ CREATE OR REPLACE PACKAGE mld AS
|
|||||||
p_opdr_key IN NUMBER,
|
p_opdr_key IN NUMBER,
|
||||||
p_waarde IN VARCHAR2);
|
p_waarde IN VARCHAR2);
|
||||||
FUNCTION mldflexsummary (pmelding_key IN NUMBER) RETURN VARCHAR2;
|
FUNCTION mldflexsummary (pmelding_key IN NUMBER) RETURN VARCHAR2;
|
||||||
PROCEDURE remove(p_mld_opdr_key IN NUMBER, p_module IN VARCHAR2 DEFAULT 'MLD');
|
PROCEDURE remove(p_melding_key IN NUMBER);
|
||||||
|
PROCEDURE remove_opdr(p_mld_opdr_key IN NUMBER);
|
||||||
END mld;
|
END mld;
|
||||||
/
|
/
|
||||||
CREATE OR REPLACE PACKAGE BODY mld AS
|
CREATE OR REPLACE PACKAGE BODY mld AS
|
||||||
@@ -2930,7 +2931,7 @@ BEGIN
|
|||||||
RETURN builder;
|
RETURN builder;
|
||||||
END;
|
END;
|
||||||
|
|
||||||
PROCEDURE remove(p_mld_opdr_key IN NUMBER, p_module IN VARCHAR2 DEFAULT 'MLD')
|
PROCEDURE remove(p_melding_key IN NUMBER)
|
||||||
IS
|
IS
|
||||||
CURSOR c_melding(p_melding_key IN NUMBER) IS
|
CURSOR c_melding(p_melding_key IN NUMBER) IS
|
||||||
SELECT mld_melding_key
|
SELECT mld_melding_key
|
||||||
@@ -2943,56 +2944,100 @@ IS
|
|||||||
FROM mld_opdr
|
FROM mld_opdr
|
||||||
WHERE mld_melding_key = p_melding_key;
|
WHERE mld_melding_key = p_melding_key;
|
||||||
|
|
||||||
|
CURSOR c_bijlagen(p_refkey IN NUMBER) IS
|
||||||
|
SELECT fac_bijlagen_key
|
||||||
|
FROM fac_bijlagen b
|
||||||
|
, mld_melding r
|
||||||
|
, (SELECT k.mld_kenmerk_key kenmerk_key
|
||||||
|
FROM mld_kenmerk k
|
||||||
|
, mld_srtkenmerk s
|
||||||
|
WHERE k.mld_srtkenmerk_key = s.mld_srtkenmerk_key
|
||||||
|
AND k.mld_kenmerk_niveau NOT IN ('O', 'P')
|
||||||
|
AND s.mld_srtkenmerk_kenmerktype IN ('F', 'M', 'E', 'X')
|
||||||
|
) k
|
||||||
|
WHERE b.fac_bijlagen_refkey = r.mld_melding_key
|
||||||
|
AND b.fac_bijlagen_module = 'MLD'
|
||||||
|
AND b.fac_bijlagen_refey = p_refkey;
|
||||||
|
|
||||||
|
BEGIN
|
||||||
|
-- Ook alle child meldingen verwijderen.
|
||||||
|
FOR ref_melding IN c_melding(p_melding_key)
|
||||||
|
LOOP
|
||||||
|
mld.remove(ref_melding.mld_melding_key, 'MLD');
|
||||||
|
END LOOP;
|
||||||
|
|
||||||
|
-- Alle opdrachten onder de melding verwijderen.
|
||||||
|
FOR ref_opdracht IN c_opdracht(p_melding_key)
|
||||||
|
LOOP
|
||||||
|
mld.remove(ref_opdracht.mld_opdr_key, 'ORD');
|
||||||
|
END LOOP;
|
||||||
|
|
||||||
|
FOR ref_bijlagen IN c_bijlagen(p_melding_key);
|
||||||
|
LOOP
|
||||||
|
flx.deleteflexbijlage (ref_bijlagen.fac_bijlagen_key);
|
||||||
|
END LOOP;
|
||||||
|
|
||||||
|
DELETE FROM mld_melding
|
||||||
|
WHERE mld_melding_key = p_melding_key;
|
||||||
|
|
||||||
|
-- Van de volgende tabellen worden de records die naar deze p_melding_key
|
||||||
|
-- verwijzen met ON DELETE CASCADE ook verwijderd:
|
||||||
|
-- mld_melding_note
|
||||||
|
-- mld_kenmerkmelding
|
||||||
|
-- mld_melding_object
|
||||||
|
-- prj_scenario
|
||||||
|
-- In de volgende tabel wordt mld_melding_key leeg gemaakt bij het verwijderen van p_melding_key:
|
||||||
|
-- bes_bestelling
|
||||||
|
|
||||||
|
fac.remove_tracking('melding', p_melding_key);
|
||||||
|
END;
|
||||||
|
|
||||||
|
PROCEDURE remove_opdr(p_mld_opdr_key IN NUMBER)
|
||||||
CURSOR c_factuur(p_opdracht_key IN NUMBER) IS
|
CURSOR c_factuur(p_opdracht_key IN NUMBER) IS
|
||||||
SELECT fin_factuur_key
|
SELECT fin_factuur_key
|
||||||
FROM fin_factuur
|
FROM fin_factuur
|
||||||
WHERE mld_opdr_key = p_opdracht_key;
|
WHERE mld_opdr_key = p_opdracht_key;
|
||||||
|
|
||||||
|
CURSOR c_bijlagen(p_refkey IN NUMBER) IS
|
||||||
|
SELECT fac_bijlagen_key
|
||||||
|
FROM fac_bijlagen b
|
||||||
|
, mld_opdr r
|
||||||
|
, (SELECT k.mld_kenmerk_key kenmerk_key
|
||||||
|
FROM mld_kenmerk k
|
||||||
|
, mld_srtkenmerk s
|
||||||
|
WHERE k.mld_srtkenmerk_key = s.mld_srtkenmerk_key
|
||||||
|
AND k.mld_kenmerk_niveau IN ('O', 'P')
|
||||||
|
AND s.mld_srtkenmerk_kenmerktype IN ('F', 'M', 'E', 'X')
|
||||||
|
) k
|
||||||
|
WHERE b.fac_bijlagen_refkey = r.mld_opdr_key
|
||||||
|
AND b.fac_bijlagen_module = 'MLD'
|
||||||
|
AND b.fac_bijlagen_refkey = p_refkey;
|
||||||
|
|
||||||
BEGIN
|
BEGIN
|
||||||
IF (p_module = 'ORD')
|
FOR ref_factuur IN c_factuur(p_mld_opdr_key)
|
||||||
THEN
|
LOOP
|
||||||
FOR ref_factuur IN c_factuur(p_mld_opdr_key)
|
fin.remove(ref_factuur.fin_factuur_key);
|
||||||
LOOP
|
END LOOP;
|
||||||
fin.remove(ref_factuur.fin_factuur_key);
|
|
||||||
END LOOP;
|
|
||||||
|
|
||||||
DELETE FROM mld_opdr
|
FOR ref_bijlagen IN c_bijlagen(p_mld_opdr_key);
|
||||||
WHERE mld_opdr_key = p_mld_opdr_key;
|
LOOP
|
||||||
-- Van de volgende tabellen worden de records die naar deze mld_opdr_key
|
flx.deleteflexbijlage (ref_bijlagen.fac_bijlagen_key);
|
||||||
-- verwijzen met ON DELETE CASCADE ook verwijderd:
|
END LOOP;
|
||||||
-- mld_opdr_note
|
|
||||||
-- mld_kenmerkopdr
|
|
||||||
-- mld_opdr_materiaal
|
|
||||||
-- mld_opdr_uitvoeren
|
|
||||||
-- mld_opdr_uren
|
|
||||||
-- Hierdoor worden de afhankelijkheden in de volgende tabel ook verwijderd:
|
|
||||||
-- mld_opdruren_kosten
|
|
||||||
|
|
||||||
fac.remove_tracking('opdracht', p_mld_opdr_key);
|
DELETE FROM mld_opdr
|
||||||
ELSE
|
WHERE mld_opdr_key = p_mld_opdr_key;
|
||||||
FOR ref_melding IN c_melding(p_mld_opdr_key)
|
|
||||||
LOOP
|
|
||||||
mld.remove(ref_melding.mld_melding_key, 'MLD');
|
|
||||||
END LOOP;
|
|
||||||
|
|
||||||
FOR ref_opdracht IN c_opdracht(p_mld_opdr_key)
|
-- Van de volgende tabellen worden de records die naar deze mld_opdr_key
|
||||||
LOOP
|
-- verwijzen met ON DELETE CASCADE ook verwijderd:
|
||||||
mld.remove(ref_opdracht.mld_opdr_key, 'ORD');
|
-- mld_opdr_note
|
||||||
END LOOP;
|
-- mld_kenmerkopdr
|
||||||
|
-- mld_opdr_materiaal
|
||||||
|
-- mld_opdr_uitvoeren
|
||||||
|
-- mld_opdr_uren
|
||||||
|
-- Hierdoor worden de afhankelijkheden in de volgende tabel ook verwijderd:
|
||||||
|
-- mld_opdruren_kosten
|
||||||
|
|
||||||
DELETE FROM mld_melding
|
fac.remove_tracking('opdracht', p_mld_opdr_key);
|
||||||
WHERE mld_melding_key = p_mld_opdr_key;
|
|
||||||
|
|
||||||
-- Van de volgende tabellen worden de records die naar deze p_melding_key
|
|
||||||
-- verwijzen met ON DELETE CASCADE ook verwijderd:
|
|
||||||
-- mld_melding_note
|
|
||||||
-- mld_kenmerkmelding
|
|
||||||
-- mld_melding_object
|
|
||||||
-- prj_scenario
|
|
||||||
-- In de volgende tabel wordt mld_melding_key leeg gemaakt bij het verwijderen van p_melding_key:
|
|
||||||
-- bes_bestelling
|
|
||||||
|
|
||||||
fac.remove_tracking('melding', p_mld_opdr_key);
|
|
||||||
END IF;
|
|
||||||
END;
|
END;
|
||||||
|
|
||||||
END mld;
|
END mld;
|
||||||
|
|||||||
@@ -36,7 +36,7 @@ CREATE OR REPLACE PACKAGE res AS
|
|||||||
FUNCTION sprintf (ps IN VARCHAR2 , pres_rsv_ruimte_key IN NUMBER) RETURN VARCHAR2;
|
FUNCTION sprintf (ps IN VARCHAR2 , pres_rsv_ruimte_key IN NUMBER) RETURN VARCHAR2;
|
||||||
FUNCTION notifypool (pbez_bezoeker_key IN NUMBER, pcode IN VARCHAR2) RETURN NUMBER;
|
FUNCTION notifypool (pbez_bezoeker_key IN NUMBER, pcode IN VARCHAR2) RETURN NUMBER;
|
||||||
PROCEDURE notifybackoffice (prsvkey IN NUMBER, pcode IN VARCHAR2, ptype IN VARCHAR2 DEFAULT NULL, pkey IN NUMBER DEFAULT NULL);
|
PROCEDURE notifybackoffice (prsvkey IN NUMBER, pcode IN VARCHAR2, ptype IN VARCHAR2 DEFAULT NULL, pkey IN NUMBER DEFAULT NULL);
|
||||||
PROCEDURE remove(p_reservering_key IN NUMBER);
|
PROCEDURE remove(p_rsv_ruimte_key IN NUMBER);
|
||||||
END res;
|
END res;
|
||||||
/
|
/
|
||||||
|
|
||||||
@@ -2277,34 +2277,52 @@ AS
|
|||||||
END;
|
END;
|
||||||
END;
|
END;
|
||||||
|
|
||||||
PROCEDURE remove(p_reservering_key IN NUMBER)
|
PROCEDURE remove(p_rsv_ruimte_key IN NUMBER)
|
||||||
IS
|
IS
|
||||||
CURSOR c_reservering IS
|
CURSOR c_bijlagen(p_refkey IN NUMBER) IS
|
||||||
SELECT res_rsv_ruimte_key
|
SELECT fac_bijlagen_key
|
||||||
FROM res_rsv_ruimte
|
FROM fac_bijlagen b
|
||||||
WHERE res_reservering_key = p_reservering_key;
|
, res_rsv_ruimte r
|
||||||
|
WHERE b.fac_bijlagen_refkey = r.res_rsv_ruimte_key
|
||||||
|
AND b.fac_bijlagen_module = 'RES'
|
||||||
|
AND b.fac_bijlagen_refkey = p_refkey;
|
||||||
|
|
||||||
|
res_key res_reservering.res_reservering_key%TYPE;
|
||||||
BEGIN
|
BEGIN
|
||||||
FOR ref_rsv_ruimte IN c_reservering
|
fac.remove_tracking('reservering', p_rsv_ruimte_key);
|
||||||
LOOP
|
fac.remove_tracking('xreservering', p_rsv_ruimte_key);
|
||||||
fac.remove_tracking('reservering', ref_rsv_ruimte.res_rsv_ruimte_key);
|
|
||||||
fac.remove_tracking('xreservering', ref_rsv_ruimte.res_rsv_ruimte_key);
|
|
||||||
END LOOP;
|
|
||||||
|
|
||||||
DELETE FROM res_rsv_ruimte
|
SELECT res_reservering_key
|
||||||
WHERE res_reservering_key = p_reservering_key;
|
INTO res_key
|
||||||
-- Van de volgende tabellen worden de records die naar deze res_rsv_ruimte_key
|
FROM res_rsv_ruimte
|
||||||
-- verwijzen met ON DELETE CASCADE ook verwijderd:
|
WHERE res_rsv_ruimte_key = p_rsv_ruimte_key;
|
||||||
-- res_kenmerkwaarde
|
|
||||||
-- res_rsv_artikel
|
|
||||||
-- res_rsv_deel
|
|
||||||
-- In de volgende tabel wordt res_rsv_ruimte_key leeg gemaakt bij het verwijderen van res_rsv_ruimte:
|
|
||||||
-- bez_afspraak
|
|
||||||
-- mld_melding
|
|
||||||
|
|
||||||
DELETE FROM res_reservering
|
FOR ref_bijlagen IN c_bijlagen(p_rsv_ruimte_key)
|
||||||
WHERE res_reservering_key = p_reservering_key;
|
LOOP
|
||||||
|
flx.deleteflexbijlage (ref_bijlagen.fac_bijlagen_key);
|
||||||
|
END LOOP;
|
||||||
|
|
||||||
-- Geen tracking op res_reservering.
|
DELETE FROM res_rsv_ruimte
|
||||||
|
WHERE res_rsv_ruimte_key = p_rsv_ruimte_key;
|
||||||
|
|
||||||
|
-- Van de volgende tabellen worden de records die naar deze res_rsv_ruimte_key
|
||||||
|
-- verwijzen met ON DELETE CASCADE ook verwijderd:
|
||||||
|
-- res_kenmerkwaarde
|
||||||
|
-- res_rsv_artikel
|
||||||
|
-- res_rsv_deel
|
||||||
|
-- In de volgende tabel wordt res_rsv_ruimte_key leeg gemaakt bij het verwijderen van res_rsv_ruimte:
|
||||||
|
-- bez_afspraak
|
||||||
|
-- mld_melding
|
||||||
|
|
||||||
|
-- Als dit de laatste deelreservering in de reservering is mag de reservering ook weg.
|
||||||
|
DELETE FROM res_reservering
|
||||||
|
WHERE NOT EXISTS (SELECT 1
|
||||||
|
FROM res_rsv_ruimte
|
||||||
|
WHERE res_reservering_key = res_key
|
||||||
|
)
|
||||||
|
AND res_reservering_key = res_key;
|
||||||
|
|
||||||
|
-- Geen tracking op res_reservering.
|
||||||
END;
|
END;
|
||||||
|
|
||||||
END res;
|
END res;
|
||||||
|
|||||||
Reference in New Issue
Block a user