Pregunta Multi-level review workflow algorithm

  • martes, 27 de julio de 2010 15:52
     
     

    Hello fellow coders,

    We all know of a lot of nice examples on how to implement a multi-level approval workflow but as far as i have seen until now they only 2 actions: approve or reject.

     Has anyone ever coded a workflow with a multilevel review?, that is 3 actions on each level: approve, review or reject.

    I am trying to figure out the algorithm needed to make the workflow loop back more than one level and i am going crazy on this.

    Not sure if i am explaining the case, my problem is that using while's and so on i can't make the workflow return to the first level for review...

    Example

    1 - Originator approves.

    2 - 1st level approver approves.

    3 - [conditions for infopath data begin, based on these data the workflow tree is rooted]

    4 - 2nd level approver marks the task for review

    5 - the task returns to 1st level approver.

    6 - 1st level approver is so lazy that marks for review the task in order to pass it to originator.

    7 - Originator makes the required changes and submits again the item.

    8 - 1st level approver is happy with it and approves.

    9 - [As the item data has changed conditions should be at this time reevaluated because based on these data the workflow tree is rooted]

    10 - and so on until 2nd level approver is kind enough to approve and complete the workflow.

    If any of you guys knows how to solve this situation i will declare him/her publicly master of the workflow algorithms and my MVLF hero (most valuable life saver).

    Cheers!

    Jaume

       

Todas las respuestas

  • viernes, 22 de octubre de 2010 21:03
     
     

    hi Jaume,

    On scenarios where you need a multilevel workflow, generally you set the different approval levels in dynamic way, you can use an activity that store the info of each level and use a Repeater activity for each one, you can use a basic State Machine workflow on Net 3.5, or if you wants play with WF 4.0 just use a for conditional activity binding to the same activity described above.

    Regards,

     

     



    Juan Mestas
    Microsoft Regional Director
    MCPD/MCTS/SCJP/ITIL