Project (Workflow) wait for other projects to close

Jonathan LaRose 2 months ago in Productivity Management updated 2 months ago 3

The below workflow was created for a Creative Team. The work request for this workflow (project) allows the requester to dictate the content type which also determines which teams are engaged. More than one team will be engaged if more than one Delivery Channel is selected. Each content type (Delivery Channel) has its own project and team with independent due dates.

The workflow below works well to engage the teams through the first column of tasks. Each of those tasks identify the Delivery Channel selected and launches that team’s project as an output.

The problem with this approach is there is no way to “tie together” all the projects before closing the Activity. Once the individual assets project launches, the main workflow seen here continues to process without any regard to the subsequent projects. So all the required work is launched however the Activity will close out and send a notification to the requester right away even though all the assets (and workflows) are just beginning.

James Miller and I worked together to create this solution. It isn’t ideal but it does work. Any Delivery Channel selected will kick off its own workflow then go into an iterative loop until an EA called Project Closed changes the value to “Yes” at the end of the workflow.

The good news is this works however it’s not clean. The audit trail and task worksheet for the main workflow is riddled with these iterative loop steps making it very difficult for our users to read the task worksheet. Also, we had to put a 24 hour dwell in this loop to minimize the trail of iterative loop steps. That slows down the list however it also puts a delay of up to 23 hours and 59 minutes to properly close out an activity as well as send the requester the proper notification.

I’d like Aprimo to develop a “Dwell Timer” or some sort of “wait for a project to close” option so I don’t have to use this design. It is effective but not ideal.


Hi Jonathan,

Two parts in my response.

Part 1:  Regarding your ask, I would think the simpler option would be to have a setting on the "End Step" of Projects that is something like "If all other projects in the Activity are closed, then Close the Activity".  Might need to implemented another way but basically that is what you want right?  Then you can just set that on the end steps of projects where you want that to happen.  Let me know if I am missing something but that seems cleaner that building out the logic into the template like you have done.

Part 2:  Regarding your design above, I think the iterative steps are not needed.  Unless I am remembering wrong or something changed, you can have steps in the workflow that are simply stuck in "Pending" so they hit a branch in the process and they do NOT qualify to go down either path so they are basically just stuck.  When this happens the workflow will keep checking to see if Task can move forward or not.  Once it can, it will then continue processing.  When we see something stuck over time we stop checking it as often but we do keep checking it periodically.  So in this case you would not have to spawn a new task every 24 hours and crowd the Task List with so many fake tasks.  So you build the ports so the only path forward is if the EA has a value of "Yes".  Until the other processes complete and set that value to "Yes" the tasks will just be stuck in "Pending" status.  Did you explore this?  You might have to have the one task that creates each project still close and then follow that task with another auto close tasks that then has the "Yes" only output port on it so that the workflow launching task can close and trigger the workflow and then that next auto close step is the one that gets stuck in Pending.

Hi Eric. Your comments in Part 1 are accurate. "If all other projects in the Activity are closed, then Close the Activity" is exactly the ask.

For Part 2, I did create the workflow as you described the first time and it stuck without moving forward. However, I found out later I made the mistake of creating the EA's with project level EA's. Those "flags" or triggers wouldn't have allowed the main workflow to move forward. I need to build another template to test that again. Thank you.

“We have had to build logic on every channel specific project final task to see if all other projects have been closed out. If this was a base Aprimo feature, that would be very helpful.”