FCLT#63760 Bijlagen ook mee kopieren

svn path=/Database/trunk/; revision=52258
This commit is contained in:
2021-07-07 14:59:34 +00:00
parent f144a46a25
commit 3aa9cebe0d

View File

@@ -1894,6 +1894,58 @@ CREATE OR REPLACE PACKAGE BODY mld AS
cnd.process_mjb_score_effects(p_melding_key, NULL);
END IF;
-- Nu de diverse flexfiles van de melding naar de opdracht kopieren
-- voor zover het kenmerksoort overeenstemt
-- CopyFlexFolders("MLD", "M", mld_key, "O", opdr_key, flexsql) met flexsql hieronder
BEGIN
FOR ref_kenmerken IN (SELECT k_old.mld_kenmerk_key k_old, k_new.mld_kenmerk_key k_new
FROM mld_srtkenmerk t,
mld_kenmerk k_old,
mld_kenmerk k_new,
mld_stdmelding s_old,
mld_typeopdr s_new,
mld_discipline d_old
WHERE s_old.mld_stdmelding_key = l_mld_stdmelding_key
AND ( s_new.mld_typeopdr_key = l_mld_typeopdr_key
OR s_new.mld_typeopdr_key IS NULL)
AND s_old.mld_ins_discipline_key = d_old.ins_discipline_key
AND t.mld_srtkenmerk_kenmerktype IN ('F', 'E', 'M')
AND ( ( k_old.mld_stdmelding_key IS NULL
AND k_old.mld_kenmerk_niveau = 'A')
OR ( k_old.mld_stdmelding_key = s_old.mld_stdmelding_key
AND k_old.mld_kenmerk_niveau = 'S')
OR ( k_old.mld_stdmelding_key = s_old.mld_ins_discipline_key
AND k_old.mld_kenmerk_niveau = 'D')
OR ( k_old.mld_stdmelding_key = d_old.ins_srtdiscipline_key
AND k_old.mld_kenmerk_niveau = 'T'))
AND k_new.mld_typeopdr_key = s_new.mld_typeopdr_key(+)
AND k_new.mld_kenmerk_niveau IN ('P', 'O')
AND k_old.mld_kenmerk_verwijder IS NULL
AND k_new.mld_kenmerk_verwijder IS NULL
AND k_old.mld_srtkenmerk_key = t.mld_srtkenmerk_key
AND k_new.mld_srtkenmerk_key = t.mld_srtkenmerk_key
AND t.mld_srtkenmerk_verwijder IS NULL
AND k_old.mld_kenmerk_groep = k_new.mld_kenmerk_groep)
LOOP
BEGIN
FOR bijlagen IN (SELECT r.fac_bijlagen_key
, r.fac_bijlagen_disk_directory
FROM fac_bijlagen c
, fac_bijlagen r
WHERE c.fac_bijlagen_root_key = r.fac_bijlagen_key
AND c.fac_bijlagen_verwijder IS NULL
AND c.fac_bijlagen_refkey = p_melding_key
AND c.fac_bijlagen_kenmerk_key = ref_kenmerken.k_old
AND c.fac_bijlagen_module = 'MLD')
LOOP
BEGIN
flx.copyflexbijlage('MLD', l_new_opdr_key, ref_kenmerken.k_new, bijlagen.fac_bijlagen_key);
END;
END LOOP;
END;
END LOOP;
END;
-- Bij het automatisch aanmaken van een opdracht bij een melding is alleen de melding_key doorgegeven en dus niet de melding kenmerken.
-- Deze kenmerken zijn dus ook niet opgeslagen.
-- De melding kenmerken die overeenkomen met de opdracht kenmerken ophalen en opslaan voor de nieuwe opdracht.