Rule

Use

You use Rules in the following cases:

  • In a workflow, you want to specify the responsible agent of a step or the recipient of a single-step task. If you assign steps to organizationally suitable employees, responsibilities and authorizations are managed efficiently, and bottlenecks are avoided.

You want to forward Mr. Smith’s notification of absence to his head of department. All heads of department at your enterprise are possible agents for a notification of absence. However, you do not want every head of department to receive Mr. Smith’s notification of absence. At runtime, the Rule to Determine a Manager enables you to evaluate assignments (relationships) within an organizational plan. The system uses relationships to determine that Ms. Miller is Mr. Smith’s head of department. The task is forwarded to Ms. Miller.

Further examples:

Rule to Determine Design Office

Rule to Determine Organizational Unit of a User

The result produced by a rule does not have to be a user. All Organizational Management Objects can be the result of a rule.

  • Within a Web Activity, you want to specify the necessary parameters dynamically at runtime. To do this, you can use various WebFlow rules.

Rules for Defining Single-Step Tasks

When defining Single-Step Tasks, you can use a rule to specify particular agents or recipients in the following instances:

  • Agent for task (default rule)
  • Recipient for completion
  • Recipient for missed latest end
  • Recipient for missed start
  • Recipient for missed end

Specifying rules for a single-step task is always optional. If rules are specified, you may need to define binding from the task container to the rule container.

Rule resolution is performed before the single-step task is executed.

If the single-step task is used as a step in a workflow definition, resolution is only performed for rules if the workflow definition contains no other information with regard to responsibilities or recipients.

As a general rule, a single-step task can only be executed by its possible agents (or a subset thereof) when it is processed.

Specifying a rule restricts these agents to the recipients you selected. This method cannot be used to authorize new agents to execute a task.

Rules within a Workflow Definition

When defining Workflow Definition steps that require user interaction, you can use a rule for agent determination to enter the responsible agents and the recipients for missed deadline or completion.

These specifications only have local validity for the respective workflow definition, and they are optional.

Specifying a rule is just one of several methods that can be used to specify the responsible agents and the recipients for missed deadline or completion. It is also possible to specify responsibility by using a suitable organizational object (job, position, organizational unit) or by using an Expression with reference to the workflow container, or possibly by using a Role.

When defining a Web activity, you can use WebFlow rules to define the elements of the Web activity at runtime. You can determine the following elements using a WebFlow rule:

  • URL determination
  • Preparation of the XML document
  • Authentication
  • Sending
  • Transfer format (if group)

Features

There are various ways of defining rules:

  • Determining agents using function modules

You use a function module if the responsible agent for a task must be found according to extremely complex selection criteria. If you define rules using function modules, the system executes the function. How the information is determined varies from function to function. You can use predefined functions, or create your own functions. Execution can be synchronous or asynchronous.

  • Determining agents using evaluation paths

You use an evaluation path to determine an Organizational Management object starting from another Organizational Management object.

  • Determining agents using organizational data

You use organizational data if your business processes are managed on the basis of your organization model. If you define rules using organizational data, rule resolution determines the responsible agents for a task by using the relationships between the task, the objects in Organizational Management, and the SAP organizational objects.

  • Determining agents using responsibilities

You use responsibilities if you need more precise selection criteria to find agents, but do not want to use function modules. You can also use the organization model to find responsible agents using jobs, positions, and so on.

  • Determining agents using the organization model

For further information on this option, see the Customer Relationship Management documentation, under Customer Relationship Management -> Organizational Management in CRM -> Determining Organizational Data -> Rule Resolution using the Organization Model.

  • WebFlow rules

These rules determine Web activity parameters in a WebFlow. For this option, you must define an ABAP class that implements a specific interface for the WebFlow rule.

Each rule has a rule container that includes the values on which rule resolution is based.

Rules are always defined across clients, and they are always connected to the transport system as cross-client transport objects.

When saved, each rule is assigned an eight-digit number by the system that is preceded by AC, which is used for identification purposes.