locked
Multi Level Approval OOB Workflow? RRS feed

  • Question

  • Hello,

    I have an infopath form with 6 possible approvers, 3 are always used and depending on certain form values, the other 3 may or may not be required. Its mostly the first 3 I'm wondering if its possible to use the out of the box approval workflow when the approvers aren't predefined?

    I have a fully developed SPD workflow for the form currently, but its pretty much junk and doesn't always work correctly. If I could utilize the OOB workflow for the first 3 approvals, the last 3 have relatively simple logic. I'd like to use that multiple Assigned To field (for sequential) like you can set up when using the OOB workflow, but assign those fields from the infopath form.

    I did find this example, where in infopath you can use the approval popup and assign approvers that way... http://msdn.microsoft.com/en-us/library/bb267332(office.12).aspx however, I have auto-generated form names, so having the user save it to the form library, and hitting "Start Workflow" etc.. just doesn't work for my situation.

    This seems like a pretty standard thing people would want to do, am I missing something? Do I need to go to visual studio?


    • Edited by ChrisC_26 Monday, December 12, 2011 11:15 PM
    Monday, December 12, 2011 11:14 PM

All replies

  • Hello Chris,

     

    Thank you for your post.

     

    This is a quick note to let you know that we are performing research on this issue.

     

    Thanks,

     


    Pengyu Zhao

    TechNet Community Support

    Monday, December 19, 2011 12:20 PM
  • Hi there,

     

    Here is a general outline of how to do what you want done and this is for InfoPath 2007 and Designer 2010 and SharePoint 2010.  Designer 2010 allows users to copy and customize the OOTB approval workflow.   While doing that, you can specify a look up to where the approver usernames are stored.  They can be stored in a SharePoint column in the format:  username; username; username      where username is in the format   domain\username.  I wasn’t able to get the function to work an InfoPath 2010 form, but I am still testing that.  If you only have Designer 2007, you will not be able to do what I am outlining below since you will have no way of using the OOTB approval workflow to add multiple users automatically.  That can only be done when starting the OOTB approval workflow manually in 2007 or specifying them ahead of time.

     

    1-Add a contact selector to your InfoPath form – You can add more than one user to this control when filling out the form, however it you promote this field, only the first user is promoted.  Here is link on how a contact selector works in InfoPath 2007:   http://blogs.msdn.com/b/infopath/archive/2007/02/28/using-the-contact-selector-control.aspx  

    2-Add a text field to the form and populate the default value using this function:   xdMath:Eval(xdMath:Eval(my:Person, 'concat(my:AccountId, ";")'), "..")

    3-This will add users entered into the contact selector to be in this format:     username; username; username      where username is in the format   domain\username

    4-If you run into an issue where the function doesn’t worked or has errors, it may be with the  “my:Person” field.   You can always have InfoPath populate that field directly and that will usually fix the issue.

    5-Publish the form to a SharePoint library and promote the text field to a list column in the format of single line of text

    6-Create a new Designer workflow in Designer 2010 and use the Approval Process as an action.  This is the OOTB approval workflow.  When you assign users, you can specify serial or parallel and you can use a lookup to a list column, more specifically to the column you promoted values to in step 5.

     

    Gregg


    MSFT
    Wednesday, December 28, 2011 9:53 PM
    Moderator