Showing results for 
Search instead for 
Did you mean: 

Agents in workflow

Former Member
0 Kudos


I'd like to know somehing about the agents in workflow.

As far as I know there are 3 types of agents:

1. Responsible Agents

2. Possible Agents

3. Actual Agents.

I want to know why there are 3 types of Agents and how they are dependent on each other? Please let me know in details...

Thanks and Regards,

Pritam Mohanty.

Accepted Solutions (1)

Accepted Solutions (1)

Active Contributor
0 Kudos

Actually, there's a fourth one too...

1. Possible agents are static and set up at <b>definition time</b> for the task, and are all people that are allowed to receive it in theory.

Example: Accounts dept org unit, or a security role for accounting.

2. Responsible agents (I prefer 'selected agents') can be dynamic and are evaluated at <b>runtime</b> according to the agent info you put against the step in the workflow builder. If you leave it blank it will determine all possible agents as responsibles.

Example: G/L accounts manager position, or a responsibility for company code.

3. Excluded agents are the guys you put under the excluded agents bit in the WF builder.

Example: WFINITIATOR could be excluded from an approval step to implement a "can't approve your own" policy.

4. The actual agents are the ones who really get the work item at <b>runtime</b>. Think of it as two intersecting circles - one containing possibles, the other responsibles. The guys in the intersecting bit are the actuals. Of course one set can be within the other entirely.

Ex: At runtime company code 2040 may evaluate to many agents, but only those who are in accounts (possible agents) - minus any excluded - will become actual agents. If no responsible agents are posssibles (no intersection between circles), WF reverts to sending it to all possibles.

Hope that helps.



Former Member
0 Kudos

Hi Mike,

thanks for the info. But I have a little doubt still in my mind.

Suppose I have the following setings :

Responsible Agents : X and Y

Possible Agents : X, Y and Z.

In this case the Actual Agents (Intersection) will be X and Y.

If I want a work item to be sent to X and Y, I can directly assign X and Y as possible agents without setting anything for responsible agents. Also we can assign the initiator as Excluded Agent. As there will be no intersection, workitem will be sent to both X and Y.

This was just an example. I wanted to clear my doubt about the same. Could you please help me out?

Thanks and Regards,

Pritam Mohanty.

Active Contributor
0 Kudos

Hi Pritham,

Yes you are correct. You would assign something in WF e.g. if it changes (using a rule based on company code for example) or if you have a task that is used in different parts of the flow with different agents.

The agent determination is very flexible and very powerful and there are many ways to do it. Some ways are good in some situations and bad in others and vice versa.

Remember that you CAN change possible agents in Production, but you can NOT change any assignments done in the WF template (unless it's via a rule).

Excluded agents - in your example, if Y is an excluded agent then the WI will only go to X:

possible = XYZ

selected = XY

Excluded = Y

Actual = selected - excluded = X

The excluded scenario is a little different from the way I think it should be designed: If <i>your agent determination</i> results in a blank for selected agents it will go to all possibles. The excluded bit is applied <i>afterwards</i> - it simply subtracts. So if your determination results in one agent which is also excluded then you have an orphaned WI with no agents. (Your WF admin will pick those up with SWI2_ADM1). Still, it's usually simple enough to design around.



Additional note: If you are using a rule you can set the flag 'Terminate if no result' - this will send the WF into error if no agents are found.

Message was edited by: Mike Pokraka - added note about rule.

Answers (0)