<html>
<head>
<style>
.hmmessage P
{
margin:0px;
padding:0px
}
body.hmmessage
{
FONT-SIZE: 10pt;
FONT-FAMILY:Tahoma
}
</style>
</head>
<body class='hmmessage'>
Hi Andy,<BR>
&nbsp;<BR>
A tricky alternative you might want to consider (and I borrowed this concept from Alon Raskin!)would be to build in a dynamic task step&nbsp;into your Parent Workflow that would derive the appropriate Sub Workflow Task ID at runtime, based on rules or code.<BR>
&nbsp;<BR>
The limitations with this approach would be the signature of whatever versions of your Workflows that could be called by this dynamic step would&nbsp; have to maintained consistently with the dynamic step binding.<BR>
&nbsp;<BR>
But at least in this way you could in theory allow the Workflow to start and derive for itself which Sub-Workflow to call at the same point without having to decide up front when the workflow is started.<BR>
&nbsp;<BR>
If you coupled this with a 'GetWorkflowID' Method on a&nbsp;BOR Object the Parent will always know about (e.g. the main object) then in theory the instance of the BOR Object could also influence how it was subsequently treated/used by the Parent Workflow when the step was invoked. This could allow for a complete change in treatment if, for example, by the time the Workflow executes the step the data has also significantly moved on.<BR>
&nbsp;<BR>
Regards,<BR>
&nbsp;<BR>
Mike GT<BR>
<BLOCKQUOTE>
<HR>
From: wug@workflowconnections.com<BR>To: sap-wug@mit.edu<BR>Subject: RE: "Grouping" workflow &amp; sub-flow releases<BR>Date: Tue, 20 May 2008 12:46:16 +0100<BR><BR>
<META content="Microsoft SafeHTML" name=Generator>
<STYLE>
.ExternalClass .EC_shape
{;}
</STYLE>

<STYLE>
.ExternalClass p.EC_MsoNormal, .ExternalClass li.EC_MsoNormal, .ExternalClass div.EC_MsoNormal
{margin-bottom:.0001pt;font-size:12.0pt;font-family:'Times New Roman','serif';}
.ExternalClass a:link, .ExternalClass span.EC_MsoHyperlink
{color:blue;text-decoration:underline;}
.ExternalClass a:visited, .ExternalClass span.EC_MsoHyperlinkFollowed
{color:purple;text-decoration:underline;}
.ExternalClass p
{margin-right:0cm;margin-left:0cm;font-size:12.0pt;font-family:'Times New Roman','serif';}
.ExternalClass span.EC_EmailStyle18
{font-family:'Calibri','sans-serif';color:#1F497D;}
.ExternalClass .EC_MsoChpDefault
{font-size:10.0pt;}
@page Section1
{size:612.0pt 792.0pt;}
.ExternalClass div.EC_Section1
{page:Section1;}

</STYLE>

<DIV class=EC_Section1>
<P class=EC_MsoNormal><SPAN style="FONT-SIZE: 11pt; COLOR: #1f497d; FONT-FAMILY: 'Calibri','sans-serif'">Hi Andy, </SPAN></P>
<P class=EC_MsoNormal><SPAN style="FONT-SIZE: 11pt; COLOR: #1f497d; FONT-FAMILY: 'Calibri','sans-serif'">&nbsp;</SPAN></P>
<P class=EC_MsoNormal><SPAN style="FONT-SIZE: 11pt; COLOR: #1f497d; FONT-FAMILY: 'Calibri','sans-serif'">Versioning is good as long as you are only making compatible (version-dependent) changes. This holds true for a single workflow and also applies to your scenario. </SPAN></P>
<P class=EC_MsoNormal><SPAN style="FONT-SIZE: 11pt; COLOR: #1f497d; FONT-FAMILY: 'Calibri','sans-serif'">&nbsp;</SPAN></P>
<P class=EC_MsoNormal><SPAN style="FONT-SIZE: 11pt; COLOR: #1f497d; FONT-FAMILY: 'Calibri','sans-serif'">To me it sounds like an incompatible change which would at the very least require a new subflow. I suppose you could build in some logic to detect what version it’s being called from but that’s a bit too much of a sledgehammer approach for my liking. Besides, it takes a couple of minutes to create a copy and plug that into your main flow. </SPAN></P>
<P class=EC_MsoNormal><SPAN style="FONT-SIZE: 11pt; COLOR: #1f497d; FONT-FAMILY: 'Calibri','sans-serif'">&nbsp;</SPAN></P>
<P class=EC_MsoNormal><SPAN style="FONT-SIZE: 11pt; COLOR: #1f497d; FONT-FAMILY: 'Calibri','sans-serif'">Cheers, </SPAN></P>
<P class=EC_MsoNormal><SPAN style="FONT-SIZE: 11pt; COLOR: #1f497d; FONT-FAMILY: 'Calibri','sans-serif'">Mike</SPAN></P>
<P class=EC_MsoNormal><SPAN style="FONT-SIZE: 11pt; COLOR: #1f497d; FONT-FAMILY: 'Calibri','sans-serif'">&nbsp;</SPAN></P>
<P class=EC_MsoNormal><SPAN style="FONT-SIZE: 11pt; COLOR: #1f497d; FONT-FAMILY: 'Calibri','sans-serif'">&nbsp;</SPAN></P>
<DIV style="BORDER-RIGHT: medium none; PADDING-RIGHT: 0cm; BORDER-TOP: medium none; PADDING-LEFT: 4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: blue 1.5pt solid; PADDING-TOP: 0cm; BORDER-BOTTOM: medium none">
<DIV>
<DIV style="BORDER-RIGHT: medium none; PADDING-RIGHT: 0cm; BORDER-TOP: #b5c4df 1pt solid; PADDING-LEFT: 0cm; PADDING-BOTTOM: 0cm; BORDER-LEFT: medium none; PADDING-TOP: 3pt; BORDER-BOTTOM: medium none">
<P class=EC_MsoNormal><B><SPAN lang=EN-US style="FONT-SIZE: 10pt; FONT-FAMILY: 'Tahoma','sans-serif'">From:</SPAN></B><SPAN lang=EN-US style="FONT-SIZE: 10pt; FONT-FAMILY: 'Tahoma','sans-serif'"> sap-wug-bounces@mit.edu [mailto:sap-wug-bounces@mit.edu] <B>On Behalf Of </B>Catherall, Andy M<BR><B>Sent:</B> 20 May 2008 11:53<BR><B>To:</B> SAP Workflow Users' Group<BR><B>Subject:</B> "Grouping" workflow &amp; sub-flow releases</SPAN></P></DIV></DIV>
<P class=EC_MsoNormal>&nbsp;</P>
<DIV>
<DIV>
<SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'">Hi all</SPAN> <BR>
<SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'">I'm curious to see if any cunning work-arounds have been developed for the following example scenario: </SPAN><BR>
<SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'">* I have a workflow with a sub-flow. </SPAN><BR><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'">* This subflow is called some-way through the main-flow, and hence there can be several instances of the main-flow active that have not yet got so far as to call the sub-flow.</SPAN><BR>
<SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'">* I would like to change the design of both the main-flow &amp; sub-flow in some way, such that the new sub-flow design is reliant upon the change in the main-flow design (eg A step in the main-flow does something, a step in the sub-flow now expects that that something has been done).</SPAN><BR>
<SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'">* If I release these two new workflows into production, there is the following risk:</SPAN> <BR><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'">A workflow instance which began when the old design was active now reaches the subflow, but calls the *new* version. As described above, the subflow expects that the mainflow has completed something, but as the old design of the mainflow was being used, this is not correct. Errors will probably now occur.</SPAN><BR>
<P class=EC_MsoNormal>&nbsp;</P>
<SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'">What would be great is if it were possible to associate subflow versions with mainflow versions so that we could effectively version up the package, rather than just the individual workflow templates. However, I'm not aware of this being available on any version.</SPAN><BR>
<SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'">Any ideas? </SPAN><BR>
<SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'">Cheers</SPAN> <BR><SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'HouschkaBold','serif'">Andy Catherall</SPAN> <BR><SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'HouschkaBold','serif'">Technical Analyst - SAP Workflow, IXOS &amp; DMS</SPAN> <BR><SPAN style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: 'Arial','sans-serif'"><IMG id=EC__x0000_i1025 alt="Picture (Metafile)" src="cid:image001.png@01C8BA77.7E59AD60"></SPAN><BR><SPAN style="FONT-SIZE: 7.5pt; FONT-FAMILY: 'HouschkaBold','serif'">Int: 751 0556</SPAN> <BR><SPAN style="FONT-SIZE: 7.5pt; FONT-FAMILY: 'HouschkaBold','serif'">Ext: +44 (0)121 415 0556</SPAN> <BR><SPAN style="FONT-SIZE: 7.5pt; FONT-FAMILY: 'HouschkaBold','serif'">Mobile: +44 (0)7813 025481</SPAN> <BR></DIV>
<DIV>
<DIV>
<P class=EC_MsoNormal>&nbsp;</P></DIV>
<DIV>
<P class=EC_MsoNormal style="LINE-HEIGHT: 150%; TEXT-ALIGN: center" align=center><B><SPAN style="FONT-SIZE: 10pt; COLOR: maroon; LINE-HEIGHT: 150%; FONT-FAMILY: 'Verdana','sans-serif'">Cadbury Cocoa Partnership – a historic alliance to secure the future of cocoa farming. Visit</SPAN></B><B><SPAN style="FONT-SIZE: 10pt; COLOR: black; LINE-HEIGHT: 150%; FONT-FAMILY: 'Verdana','sans-serif'"> </SPAN></B><B><U><SPAN style="FONT-SIZE: 10pt; COLOR: blue; LINE-HEIGHT: 150%; FONT-FAMILY: 'Verdana','sans-serif'"><A href="http://www.cadbury.com/" target=_blank>www.cadbury.com</A></SPAN></U></B><B><SPAN style="FONT-SIZE: 10pt; COLOR: black; LINE-HEIGHT: 150%; FONT-FAMILY: 'Verdana','sans-serif'"> </SPAN></B><B><SPAN style="FONT-SIZE: 10pt; COLOR: maroon; LINE-HEIGHT: 150%; FONT-FAMILY: 'Verdana','sans-serif'">to learn more</SPAN><SPAN style="COLOR: maroon"></SPAN></B></P>
<P class=EC_MsoNormal style="TEXT-ALIGN: center" align=center><B><SPAN style="FONT-SIZE: 10pt; COLOR: green; FONT-FAMILY: 'Verdana','sans-serif'">&nbsp;</SPAN><SPAN style="COLOR: maroon"></SPAN></B></P>
<P class=EC_MsoNormal><B><SPAN style="FONT-SIZE: 10pt; COLOR: green; FONT-FAMILY: 'Verdana','sans-serif'">Please support our Purple Goes Green commitments and consider the environment before you print this email</SPAN><SPAN style="COLOR: maroon"></SPAN></B></P>
<P class=EC_MsoNormal>&nbsp;</P></DIV></DIV></DIV>
<DIV>
<P class=EC_MsoNormal>-----------------------------------------</P>
<P class=EC_MsoNormal>&nbsp;</P>
<P class=EC_MsoNormal style="MARGIN-BOTTOM: 8pt; MARGIN-LEFT: 0cm; MARGIN-RIGHT: 0cm"><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Verdana','sans-serif'">This email (including any attachment) is confidential and may contain privileged information. If you are not the intended recipient or receive it in error, you may not use, distribute, disclose or copy any of the information contained within it and it may be unlawful to do so. If you are not the intended recipient please notify us immediately by returning this email to us at </SPAN><A title=mailto:mailerror@csplc.com href="mailto:mailerror@csplc.com"><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Verdana','sans-serif'">&lt;mailto:mailerror@csplc.com&gt;</SPAN></A><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Verdana','sans-serif'"> and destroy all copies.</SPAN></P>
<P class=EC_MsoNormal style="MARGIN-BOTTOM: 8pt; MARGIN-LEFT: 0cm; MARGIN-RIGHT: 0cm"><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Verdana','sans-serif'">Any views expressed by individuals within this email do not necessarily reflect the views of Cadbury Holdings Ltd or any of its subsidiaries or affiliates. This email does not constitute a binding offer, acceptance, amendment, waiver or other agreement, unless such intention is clearly stated in the body of the email. Whilst we have taken reasonable steps to ensure that this email and attachments are free from viruses, recipients are advised to subject this email to their own virus checking, in keeping with good computing practice. Please note that email received by Cadbury Holdings Ltd or its subsidiaries or affiliates may be monitored in accordance with applicable law. </SPAN></P>
<P class=EC_MsoNormal style="MARGIN-BOTTOM: 8pt; MARGIN-LEFT: 0cm; MARGIN-RIGHT: 0cm"><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Verdana','sans-serif'">Cadbury Holdings Ltd registered in England and Wales, no. 52457. <BR>Registered address: 25 Berkeley Square, London, W1J 6HB, United Kingdom<BR>Telephone: +44 (0) 20 7409 1313 Fax: +44 (0) 20 7830 5200</SPAN></P>
<P class=EC_MsoNormal><SPAN lang=EN-US>-----------------------------------------</SPAN></P></DIV></DIV></DIV></BLOCKQUOTE><br /><hr />Get 5GB of online storage for free! <a href='http://clk.atdmt.com/UKM/go/msnnkmgl0010000005ukm/direct/01/' target='_new'>Get it Now! </a></body>
</html>