This document will show how you can create multilevel workflow using Block. Generally we are using Loop step to create Dynamic multilevel workflow. But Block step gives lot of advance feature like Deadline monitorin, Exception handling etc.
In this example User decision workitem will send to agent one by one i.e after first approver approve, second approver will get the User decision workitem.
So step by step as follows.
1. Create a multiline container element for UserList.
2. Create a container element for Exit condition from block.
3. Create a Block step. Select ForEach as Block Type.
4. Use your multiline User list element in Dynamic Processing tab. And give condition for exit from Block.
5. In the Block in Control tab Per Run Binding , bind the _LINE element with WF_PerForEach_Index element.
6. Now create a User Decision Step and put agent as &UserList[_UserList_line]&. It will send to User Decision step determined on perforeach loop index.
7. Add mail step for each outcome. And add Container Operation step in Reject outcome to exit from block if any user take decision to reject.
8. Final workflow design.
9. Now Test thew workflow . Pass User name in the UserList.
10. Now you can easily found that in this example User Decision will go first to BCUSER, then if BCUSER approved it, it will go to ANJAN.