best practice for an iterative approval

  • 11 August 2004
  • 8 replies
  • 16 views

Badge +1
Quick, straight forward question: What is the best practice for an approval that may go through n number of iterations... for example imagine the typical approval process however when it's declined it will be sent back to the requestor to modify and re-submit... it seems as though everything that I've seen provides for a 1 time pass through.

Suggestions.
Thanks,
Bryan

8 replies

Badge +8
AFAIK you can't route a process back from approval to the start page. In this case, we usually add another activity with the destination user as the originator and a looping flow between the new activity and the approval activity, with the relevant line rules set up to control the flow.
Badge +1
what if you don't know how many times it's going to need to be re-routed. for example, I can imagine a process where basically I could be a manager and I could reject a proposal (any given form) and send it back to my employee 1... infinite number of times. seems sort of wierd to have to add a new activity for each one of these, when it oculd be an arbitrarily high number of possible send backs.

I would be nice if there was a way to send it back to a previously used activity so basically I could have ActivityA connect to ActivityB, if approved AcctivityB sends to ActivityC otherwise ActivityB sends back to ActivityA.
Badge +8
could have ActivityA connect to ActivityB, if approved AcctivityB sends to ActivityC otherwise ActivityB sends back to ActivityA.

that's exactly what I meant. mail me at neiljohn at ananzi dot co dot za for an example...
Badge +1
Thanks,
I just sent a mail to: neiljohn@ananzi.co.za
that's exactly what I meant. mail me at neiljohn at ananzi dot co dot za for an example...

I'd love to see an example of it.

Bryan Baker (bryan.baker@neudesic.com)
Badge +4
icon-quote.gifbryan.baker:

I would be nice if there was a way to send it back to a previously used activity so basically I could have ActivityA connect to ActivityB, if approved AcctivityB sends to ActivityC otherwise ActivityB sends back to ActivityA.


Here's an example: User initiates, goes into an "auto validation check", manager approves, done. If validation check fails or manager declines, it goes back for rework to the originator, then back into auto validation, to the manager, etc. It keeps going in this loop until manager finally approves or user cancels.
Badge +1
If you clear the _K2:SN field in InfoPath you can re-submit as a new process over and over again.

I needed to kick-off a new notification process every time a user modified a form. Some other logic also handled different statuses, etc. Anyway, the form needed to be able to be re-submitted over and over and over again as a new workflow. Clearing the _K2:SN field worked for me.
Badge +1
I tried to clear the _K2:SN, but I just can not change its value. Your help will be highly appreciated.
I am using the following syntax to try to change its value to "tempValue", it does not give me an error but does not do anything either.
string strTemp2 = K2.ProcessInstance.XmlFields["K2InfoPathSchema"].Value;
K2.ProcessInstance.XmlFields["K2InfoPathSchema"].Value =
SourceCode.K2Utilities.XMLFieldMod.SetXMLValue(strTemp2, "my:myFields/my:_K2/my:SN", "tempValue");
I am using the following syntax to try to read _K2:SN value to DataFields["msSN"], but after running the code, the DataFields["msSN"] still contains the old value.
SourceField = SourceCode.K2Utilities.XMLFieldMod.GetXMLValue(K2.ProcessInstance.XmlFields["K2InfoPathSchema"].Value,"my:myFields/my:_K2/my:SN");
K2.ProcessInstance.DataFields["msSN"].Value = SourceField;
Badge +4
I've never tried to clear the K2:_SN value within a Server event. I've successfully cleared it within the Infopath code, however.

Reply