KFHT#41490 data van overige wf-stappen in xml opnemen (met setting)
svn path=/Database/trunk/; revision=36189
This commit is contained in:
@@ -4544,6 +4544,7 @@ AS
|
||||
v_rsv_ruimte_key mld_melding.res_rsv_ruimte_key%TYPE;
|
||||
v_kto_type mld_melding.mld_melding_kto_type%TYPE;
|
||||
v_kto_key mld_melding.mld_melding_kto_key%TYPE;
|
||||
l_isrootmelding NUMBER(1);
|
||||
|
||||
CURSOR c1
|
||||
IS
|
||||
@@ -4561,6 +4562,17 @@ AS
|
||||
SELECT bes_bestelling_key
|
||||
FROM bes_bestelling
|
||||
WHERE mld_melding_key = p_key;
|
||||
-- De andere workflowstappen in deze workflow (if any)
|
||||
CURSOR c4
|
||||
IS
|
||||
SELECT ms.mld_melding_key,
|
||||
ms.mld_melding_start_key,
|
||||
ms.mld_workflowstep_key
|
||||
FROM mld_melding ms, mld_melding m1
|
||||
WHERE ms.mld_workflowstep_key IS NOT NULL
|
||||
AND ms.mld_melding_start_key = m1.mld_melding_start_key
|
||||
AND ms.mld_melding_key <> p_key
|
||||
AND m1.mld_melding_key = p_key;
|
||||
BEGIN
|
||||
IF p_key IS NOT NULL
|
||||
THEN
|
||||
@@ -4755,18 +4767,42 @@ AS
|
||||
LOOP
|
||||
create_bes_bestelling_node (rec3.bes_bestelling_key, FALSE); -- concise bevat geen artikelen
|
||||
END LOOP;
|
||||
-- Voor een workflow kunnen de andere stappen ook interessant zijn
|
||||
-- Dit doen we niet voor adhoc vervolgmeldingen (daarom v_workflowstep_key is not null)
|
||||
-- We nemen alle *andere* stappen hier op, afhankelijk van het moment kunnen daar ook
|
||||
-- toekomstige meldingen bij zijn, het zijn alle meldingen met dezelfde root (incl. de root zelf).
|
||||
-- Omdat dit tot veel balast kan leiden wat jammer is als je deze info toch niet
|
||||
-- in je bonnen oid gebruikt, gebruiken we een setting die default uit staat(!).
|
||||
-- We doen dit alleen indien p_withchildren anders worden we oneindig groot.
|
||||
IF v_workflowstep_key IS NOT NULL AND fac.getsetting('mld_workflowstep_in_xml')= '1'
|
||||
THEN
|
||||
createopentag ('workflowsteps');
|
||||
FOR rec4 IN c4
|
||||
LOOP
|
||||
IF rec4.mld_melding_start_key = rec4.mld_melding_key
|
||||
THEN
|
||||
l_isrootmelding := 1;
|
||||
ELSE
|
||||
l_isrootmelding := 0;
|
||||
END IF;
|
||||
createopentagattributes ('workflowstep',
|
||||
'stepkey',
|
||||
rec4.mld_workflowstep_key,
|
||||
'root',
|
||||
l_isrootmelding,
|
||||
NULL,
|
||||
NULL,
|
||||
NULL,
|
||||
NULL);
|
||||
create_mld_melding_node (rec4.mld_melding_key, p_extra_key, FALSE); -- is die p_extra_key hier nog van belang??
|
||||
createclosetag ('workflowstep');
|
||||
END LOOP;
|
||||
createclosetag ('workflowsteps');
|
||||
END IF;
|
||||
END IF;
|
||||
|
||||
create_mld_melding_node (v_parentkey, p_extra_key, p_withchildren); --Zou zomaar NULL kunnen zijn, geeft niks.
|
||||
-- Voor een workflow kan de (ene) root interessant zijn
|
||||
-- Dit doen we niet voor adhoc vervolgmeldingen
|
||||
-- Er is geen aanduiding bij de tag dat dit de root is, mocht dat
|
||||
-- nodig worden, dan tzt een attribuut-parameter introduceren bv.
|
||||
IF v_workflowstep_key IS NOT NULL AND v_start_key <> p_key
|
||||
THEN
|
||||
createxmltagvalue ('workflowstep', v_workflowstep_key); -- als boolean te gebruiken
|
||||
create_mld_melding_node (v_start_key, p_extra_key, FALSE);
|
||||
END IF;
|
||||
|
||||
IF v_rsv_ruimte_key IS NOT NULL
|
||||
THEN
|
||||
create_res_rsv_ruimte_node (v_rsv_ruimte_key, TRUE);
|
||||
|
||||
Reference in New Issue
Block a user