I had been told that WF tasks could be set up to run in parellel, or with dependencies.
Example: You have 3 tasks. #1 and #2 can be done in parellel, but #3 needs to wait until #2 is completed or skipped.
I played around awhile back trying to get dependencies to work, but couldn't figure it out. Does anyone know how this can be done?
Classic Workflow can do simple parallel processing, but that's pretty much about it. There is a special "Group Start" and "Group End" Workflow Task, and everything between those marks is conducted "in parallel."
For your example:
10. This is my workflow task "1"! << It is executed by itself, first.
20 Group Start. << This starts only when 10 is complete.
30 My parallel task "2". << This can be done at any point.
40 My parallel task "3". << This can be done at any point.
50 Group End << Only completes when both 30 and 40 are done.
60 Another workflow task << Only when Group End is finished.
Hi Kyle, thanks for the response. Yes, we have several that have parallel tasks. But I was told they could be done with dependencies. In your example, task 60 has to wait for both #2 and #3 to be completed before launching. I was trying to get a task to only be dependent on one of the other tasks.
So just to clarify, you're saying the only way to have task #3 be dependent on task #2 is to also have it dependent on task #1 -- like this?
10. Approval Task
20. Group Start
30. Task #1
40. Task #2
50. Group End
60. Task #3
And something like this would work if you needed task #2 and #3 to be dependent on Task #1 ?
20. Task #1
30. Task #2
40. Task #3
Yes, those flows would work.
It is the way that the "Classic" system wishes you to work - simple "consecutive" tasks, or group "parallel" tasks.
For anything more complex, we would be steering you towards CA Process Automation (CA PAM, old name ITPAM) which has full workflow control.
It has a steep learning curve when compared to the very easy Classic, but is full featured and it is applicable across several CA products. (To others - we do run a pretty good Education Course on it.)
Thanks Kyle... We don't use ITAM at this point, but I'm sure that once we fully implement change mgmt, we'll need to go there. Right now we only have our onboarding/offboarding process set up using CO/WF tasks. I just get asked from time to time about the ability to do simple dependencies, and remembered being told it could do that so I wanted to be prepared. One more question regarding your simple 'consecutive' tasks comment. If you have 3 tasks that you don't want any of them done in parellel, you can just set them up without any group start/group end tasks and they will all be dependent on the one before it? Like this:
20. Task #1 (waits for approval task to be approved)
30. Task #2 (waits for #1 to be done)
40. Task #3 (waits for #2 to be done)
I don't think this answers your question but it may help a little.
I do not know how to change the status of one task from within another task or to delay another task.
However, one thing that I use a lot in the classical workflow is to automatically skip a task depending upon an attribute.
I set a behaviour on the Task Status of Pending.
If a certain condition is met such as Change Order Type = Emergency, then the status of the task is set to Skip.
Thanks, Terry -- good to know.