FCLT#63760: Automatisch opdrachten aanmaken ook in de workflow.
svn path=/Database/trunk/; revision=52429
This commit is contained in:
@@ -1894,61 +1894,14 @@ 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 workflow meldingen worden de bijlagen niet gekopieerd.
|
||||
-- De bijlagen van de parent melding worden bij de onderliggende workflow melding weergegeven (in de show mode)
|
||||
-- als de instelling/setting "mld_show_parent_attachments" is gezet.
|
||||
-- Bij het automatisch aanmaken van de opdracht bij een workflowmelding hoeven dus ook geen bijlagen te worden gekopieerd.
|
||||
|
||||
-- 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.
|
||||
-- De melding kenmerken die overeenkomen met de opdracht kenmerken (dezelfde omschrijving en srtkenmerk) ophalen en opslaan voor de nieuwe opdracht.
|
||||
INSERT INTO mld_kenmerkopdr (mld_opdr_key
|
||||
, mld_kenmerk_key
|
||||
, mld_kenmerkopdr_waarde)
|
||||
@@ -1963,7 +1916,8 @@ CREATE OR REPLACE PACKAGE BODY mld AS
|
||||
AND vk.mld_srtkenmerk_key = k.mld_srtkenmerk_key
|
||||
AND vk.mld_kenmerk_groep = k.mld_kenmerk_groep
|
||||
AND v.mld_kenmerk_key = vk.mld_kenmerk_key
|
||||
AND v.mld_kenmerkmelding_verwijder IS NULL),
|
||||
AND v.mld_kenmerkmelding_verwijder IS NULL
|
||||
AND COALESCE(vk.mld_kenmerk_omschrijving, vt.mld_srtkenmerk_omschrijving) = COALESCE(k.mld_kenmerk_omschrijving, t.mld_srtkenmerk_omschrijving)),
|
||||
k.mld_kenmerk_default) kenmerk_waarde
|
||||
FROM mld_srtkenmerk t
|
||||
, mld_kenmerk k
|
||||
@@ -1986,7 +1940,8 @@ CREATE OR REPLACE PACKAGE BODY mld AS
|
||||
AND vk.mld_srtkenmerk_key = k.mld_srtkenmerk_key
|
||||
AND vk.mld_kenmerk_groep = k.mld_kenmerk_groep
|
||||
AND v.mld_kenmerk_key = vk.mld_kenmerk_key
|
||||
AND v.mld_kenmerkmelding_verwijder IS NULL),
|
||||
AND v.mld_kenmerkmelding_verwijder IS NULL
|
||||
AND COALESCE(vk.mld_kenmerk_omschrijving, vt.mld_srtkenmerk_omschrijving) = COALESCE(k.mld_kenmerk_omschrijving, t.mld_srtkenmerk_omschrijving)),
|
||||
k.mld_kenmerk_default) IS NOT NULL
|
||||
AND COALESCE((SELECT MIN(v.mld_kenmerkmelding_waarde)
|
||||
FROM mld_kenmerkmelding v
|
||||
@@ -1997,7 +1952,8 @@ CREATE OR REPLACE PACKAGE BODY mld AS
|
||||
AND vk.mld_srtkenmerk_key = k.mld_srtkenmerk_key
|
||||
AND vk.mld_kenmerk_groep = k.mld_kenmerk_groep
|
||||
AND v.mld_kenmerk_key = vk.mld_kenmerk_key
|
||||
AND v.mld_kenmerkmelding_verwijder IS NULL),
|
||||
AND v.mld_kenmerkmelding_verwijder IS NULL
|
||||
AND COALESCE(vk.mld_kenmerk_omschrijving, vt.mld_srtkenmerk_omschrijving) = COALESCE(k.mld_kenmerk_omschrijving, t.mld_srtkenmerk_omschrijving)),
|
||||
k.mld_kenmerk_default) NOT LIKE '%##EXPR##%';
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user