Skip to Content
Author's profile photo Former Member

Workflow Self Study Notes Part 2 (Theory) – Agents

There are mainly 3 groups of Agents:

  • Possible Agents
  • Responsible Agents
  • Excluded Agents

Apart from these 3 groups, there are 2 other categories of agents:

  • Recipients
  • Actual Agents

Possible Agents

  • These are people who can execute a task.
  • Defined in the “Task” level
  • Best practice to assign possible agents, is to sync with Security Roles
  • A task can be marked as “General Task” to allow anyone to execute the work item.
  • There are different ways to assign possible agents.
    • For SAP provided workflows, we can assign possible agents using IMG.
    • When we are displaying a task, we can use the following menu path
      • Additional data –> Agent assignment –> Maintain
      • The transaction is PFTC_DIS.
    • From task profile section of organization plan
    • From profile generator (Roll Maintenance);  Transaction PFCG
    • From workflow builder during step definition.

Responsible Agents

  • Responsible agents are people who you want to execute a particular work item.
  • Responsible agents are usually assigned in workflow step level, but can also be assigned at the task level via default agent determination rules
  • Usually responsible agents are determined during runtime using two main ways
    • Expressions
      • In expressions, the data needed for agent determination is stored in workflow containers, which later is used in computations and agent is determined based on container values.
    • Rules
      • In rules, agents are determined dynamically when work items are created.
      • We can bind data from workflow to the rules to provide data for agent determination computations.
  • For a work item to be forwarded to a responsible agent, the agent should also be a possible agent.

Excluded Agents

  • Excluded agents are people who should not receive the work item for execution
  • Excluded agents are always assigned by an expression to the workflow step
  • Typically we put all excluded agents in a multi-line container in the workflow container, and use an expression to assign the list of excluded agents to a particular step.

Recipients

  • Recipients are agents who receive a work item.
  • Recipients are
    • Possible Agents
    • Responsible Agents
    • Are Not Part of Excluded Agents
  • If there are no possible agents, then nobody will receive the work item.
  • If no responsible agents are determined, the system checks to see if any default agents are defined in the task level.
  • Recipients can forward work items to another agent. Whether or not the recipient can forward the work item is determined by the attribute of task.
    • General Task
      • Work item can be forwarded to anyone and executed by anybody
    • General Forwarding
      • Work item can be forwarded to any user.
    • No General Forwarding
      • Work item can only be forwarded to possible agents.
    • No Forwarding
      • Work item cannot be forwarded.

Actual Agent

  • Actual agent is the agent that is currently processing a work item or the user who has last processed a work item.

Assigning Multiple Agents to Work Items

  • Many agents can be assigned to a single work item.
  • The work item shows up in all agents inbox, and disappears from everyone else when one agent reserves or executes a work item.
  • Sometimes we need every agent to make an active decision from particular process. To do this, we can create one work item per agent.

Deadline and Notification Agents

Deadline Agents

  • Deadline agents are people who receive work item when a deadline has exceeded for a work item
  • These agents are entered in the deadline Of workflow step.

Notification Agents

  • Notification agents are people who are notified when a work item is completed.
  • Usually entered in notification tab of workflow step.

Agent assignment using organizational structure

  • Every workflow agent must have a userid.
  • Assigning userid directly for task may be very high maintenance.
  • Organizational plan helps in simplifying this issue.
  • Every SAP application server comes with basic organizational plan

Basic organization Plan

Organizational Units

  • Represents a group of people such as 18, section, Department, work area, lab, help desk, or shared service Centre.

Jobs

  • A job described functional role within the organization.

Positions

  • Position represents a headcount placement.

Users

  • Users is the actual userid of a person.
  • Workflow task can be linked to one or more Organization units, positions, jobs, or users.

Extended Organization Plan

  • SAP my HR comes with extended organization plan
  • Extended organizational plan includes personal numbers
    • A person represents a PERNR
    • a person may be assigned to one or more positions.
    • A user is assigned to a person by setting up info type 105 (Communication)
  • From workflow perspective, extended organizational plan has following benefits
    • Much more data in organizational plan to help make decisions.
    • “Evaluation paths” can be custom built and used as rules to find organization objects.

Reassign Work Items from One Agent to Another

  • If a user changes job or position, existing work item may need reassignment.
  • Typically, only served work item needs reassignment.
  • We can find outstanding work items for the user using transaction : SWI5. This transaction should be run before removing the user
  • We can find orphaned work items using transaction : SWI2_ADM1

Temporary Substitution of Agents

Sometimes will need to temporarily substituted the agent. This can be done in two ways:

  • The HR substitute relationship A210
  • User Substitution (Table: HRUS_D2)

The HR substitute relationship A210

  • We create substitute for a position using A210 relation between position and substitute.
  • All work items for that position are made available to the substitute.

User Substitution Using Table HRUS_D2

  • This is usually maintained from user’s inbox using menu path

   Inbox –> Settings –> Workflow Settings –> Maintain Substitutes

  • We can also create entries directly using ABAP

Substitute itself can be of two types:

Active Substitutes

  • In active substitution, work items are automatically forwarded or appear in the substitutes inbox.

Passive Substitute (also called adopt Substitute)

  • Require the substitutes to explicitly choose to see original agents work item

Refreshing Organisational Plan an Environment

  • The organisation plan is buffered for efficiency.
  • Changing an organisation plan will not immediately be updated in the buffer, and hence can create confusion especially for workflows using the plan for agent determination.
  • Typically buffer is refreshed at midnight.
  • Alternatively, in development systems, we can trigger refreshing of buffer using transaction: SWU_OBUF
  • It should be noted that the buffer afresh is a resource intensive process
  • When writing your own programs for buffer afresh, following function modules can be handy:
    • RH_WF_OM_INDICES_TIMESTAMP_RFS
    • RH_TASK_INBOX_VIEW_REFRESH
    • RH_TASK_AGENTS_INDEX_REFRESH


Assigned tags

      4 Comments
      You must be Logged on to comment or reply to a post.
      Author's profile photo swadhin ghatuary
      swadhin ghatuary

      Thanks for your contribution and your effort for Workflow Learner.

      Author's profile photo Former Member
      Former Member

      sir your detail is very useful for bigger

      Author's profile photo Raghavendra M
      Raghavendra M

      Good article

      Author's profile photo Former Member
      Former Member

      Great work Mr. Gopal Nair  many thanks.