1. GENERAL INFORMATION
Business Rule Framework plus (BRFplus) is a powerful rule engine which enables users to define, test and process rules for various business scenarios. It supports features like rule trace, simulation, transport and XML import/export. The computational power of BRFplus includes many different expression types, such as decision trees and tables, value ranges, formulas and functional calls.
In the Incident Management scenario of SAP Solution Manager 7.1, the Business Rule Framework plus can be used to define rules for support team determination based on criteria like SAP component, system id, client, region or country. BRFplus can also be used in the Change Request Management to enable the automatic determination of business partners, such as Change Advisory Board or Change Manager.
To use the BRFplus workbench, the administrator should have the following authorizations:
The SAP standard role SAP_SUPPDESK_ADMIN contains all necessary authorization to run the workbench.
2.2 WebDynpro Configuration
The ICF service /sap/bc/webdynpro/sap/fdt_wd_workbench should be activated.
For more information on how to activate services, please refer to SAP Note 1088717.
2.3 SAP WebClient
To access the SAP WebClient, your user needs the business role SOLMANPRO.
Further, the following web service should be activated: /sap/bc/bsp/sap/mdomm_orgdata/
For more information on how to activate services, please refer to SAP Note 1088717.
3. CONFIGURATION OVERVIEW
This chapter provides an overview of the configuration steps required to set up support team determination. Furthermore, a reference to the corresponding transactions is provided.
The next chapters of this guide explain the configuration activities in more detail by providing a step-by-step description of how to set up support team determination based on SAP components. In this example, there will be three support teams available:
- CRM Team: responsible for all CRM components
- BC Team: responsible for all BC components
- 1st Level Support Team: responsible for all other components
4. CREATE ORGANIZATIONAL MODEL
An organizational model enables you to represent your enterprise’s functional organizational structure.
Two fundamental elements are available:
- Organizational units, which represent how the company is structured in terms of function
(such as support team)
- Positions, which represent how different functions/tasks are assigned to individual posts (such
as message processor)
The figure below shows an example of an organizational model for the Service Desk.
The set-up of the organizational model is a very important configuration step, since support teams are represented by organizational units.
SAP delivers a standard organizational model that can be accessed in the SAP WebClient under Service Operations -> Organization Model
4.2.1 Create an Organizational Root
To create the initial organizational root for a new organizational structure, please proceed as follows:
- Call transaction CRM_UI.
- Go to Service Operations -> Organization Model, as shown in the figure below.
- Select Root Organizational Unit.
- Enter the organizational unit details and continue with Save.
4.2.2 Create Organizational Units
You can define the levels of the organizational model by creating organizational units. The organizational structure is specified in the page area Organizational Unit.
To create a new organizational unit, select the unit under which the new one should be placed and go to Organizational Unit, as shown in the next figure.
4.2.3 Assign Positions to Organizational Units
To assign a position to an organizational unit, select the corresponding unit and go to Position, as shown in the figure below.
4.2.4 Assign Business Partners / Users to Positions
Similar to 4.2.3, you can assign business partners (1) or users (2) to the positions, as shown below.
5. CONFIGURATION IN THE BUSINESS RULE FRAMEWORK PLUS
This section provides detailed information about the configuration steps to be performed in the Business Rule Framework plus.
5.1 Create New Application
In the first step, you create an application which is a node at the highest level in the Business Rule Framework plus. It contains sub-nodes, such as expressions and rule sets.
The BRFplus workbench can be accessed via the transaction BRFPLUS. In the menu bar, you create a new application by choosing Workbench -> Create Application, as shown in the figure below.
In the Create Application dialog box which appears, you can enter the relevant information in the Name, Storage Type and Development Package fields.
There are three storage types available:
- System: transportable objects which should not be changed in your system environment
- Customizing: transportable objects which allow changes
- Master Data: objects which are local by default and cannot be transported
In the example below, the application SERVICE_DESK of storage type Customizing is created locally.
Activate the new application by choosing Activate, as shown in the figure below.
5.2 Create Ruleset
A ruleset contains one collection of rules to be processed in a given order. To create a ruleset, use the context menu (via right mouse button) of the corresponding application, e.g. SERVICE_DESK.
In the Create Ruleset dialog box, you specify the general data of the ruleset. In the field Short Text, you define the display name of the ruleset in the repository tree, as shown in the example below.
The new ruleset will appear in the repository tree, as shown in the following figure.
Another very important step is to assign the function SUPPORT_TEAM to your ruleset. This function triggers the processing of the ruleset for support team determination.
To assign a function to your ruleset, go to the Detail screen of the ruleset and choose Assign Function, as shown in the figure below.
To find the function SUPPORT_TEAM, enter SOLMAN as application and choose Search, as shown in the figure below.
Save your changes. Now the Ruleset should look like the screenshot below.
5.3 Create Decision Table
Decision tables consist of condition and result columns. They are processed sequentially and if all conditions in a row are met, the corresponding result values are returned. A decision table can be processed in two modes:
- single match mode: the sequential processing stops at the first matching row (a single result is returned)
- multiple match mode: all rows are processed (a table with all matching rows is returned)
In this support team determination example (described in chapter 3), the decision table is processed in single match mode.
To create a decision table, use the context menu (via right mouse button) of the corresponding application, e.g. SERVICE_DESK. From the context menu, choose Create -> Expression -> Decision Table, as shown in the following figure.
In the Create Decision Table dialog box, you specify general data, such as name and short text.
The decision table will appear in the repository, as shown below.
Next, you specify the conditions and result columns of the new decision table in the dialog box Table Settings.
To define a condition column for the SAP component and a result column for the support team, please do the following:
- Select Insert Column and choose From Context Data Objects from the drop-down list.
2. Search for context data objects which belong to the application SOLMAN, as shown below.
3. Choose the parameter SAP_COMPONENT from the query results.
4. Analog to the condition column, define the result column for the support team.
The following figure shows the list of the created condition and result columns.
5. Continue with OK.
After you defined the decision table, you must add rows to it where you specify conditions and results to be returned if the conditions are met.
In the following example, three table rows will be inserted:
- The first row includes the condition for CRM components and specifies which support team should be returned as a result if the condition is met
- The second row includes the condition for BC components and defines which team should be selected if the condition is met.
- The third row indicates which team is responsible for all other components.
The following figure shows how to add a new row to the decision table.
You specify the value of the SAP Component cell by selecting Direct Value Input from the context menu.
You define the condition for CRM components, as shown below.
Next, you specify which support team should be selected if the condition defined previously is fulfilled. In the following example, the support team with Business Partner ID 402 should be
selected in case the SAP component of an incident is a CRM one. The business partner number of the support team corresponds to an organizational unit.
Analog to the CRM components row, you can insert a row for BC components and a row for all other components. After that, the decision table should look like this:
- Activate the decision table.
- Activate the decision table.
5.4 Create Rule
After you defined a decision table for support team determination, you are ready to create a rule to process this decision table.
To create a rule, select Insert Rule in the Rules screen of the ruleset and choose Create…, as shown in the following figure.
Generally, a rule consists of a condition and two actions, true action (Then branch) and false action (Else branch). If the condition is true then the true action is processed, otherwise the Else branch is processed.
To process a decision table in a rule, you should specify this in the Then branch of the rule. In this case, no rule condition needs to be specified because the conditions are already stored in the decision table.
The figure below shows how to add the decision table Support Team DT to the Then branch of the support team determination rule.
If the decision table created previously does not appear in the quick selection, you can search for it by choosing Select… from the context menu.
This rule processes the rows of the decision table Support Team DT sequentially and stops at the first matching row (i.e. the condition in the row is met). The return value (business partner number of the support team) is assigned to the Support Team partner function of the message.
After you defined the rule, you need to activate the ruleset, as shown in the following figure.
5.5 Simulate Rule
The BRFplus workbench provides a simulation tool which tests and runs the created rules. It generates results after the rules are processed. The tool can be accessed via the menu bar by selecting Tools -> Simulation.
To simulate the rule created previously, you must choose the function SUPPORT_TEAM, as shown below.
Generally, a simulated function has context values (input data) and a result object (output data).
To simulate the rule for support team determination you specify a SAP component, e.g. the component CRM-MD-ORG.
The simulation can be run in two modes:
- Show only Result
- Show also Results of Intermediate Steps
Check the option Show only Result and go to Run Simulation, as shown in the figure below.
The figure below shows the result of the example simulation. It is support team with Business Partner ID 402 which corresponds to the team specified in the decision table.
6. ACTIVATE ACTION FOR SUPPORT TEAM DETERMINATION FOR SERVICE
In this step, you have to activate the action which triggers the support team determination based on the rule defined in BRFplus. In the SAP Solution Manager standard delivery, this action is set to inactive.
- Go to transaction SPPFCADM and select the application CRM_ORDER.
- Select Define Action Profile and Actions.
3. Highlight action profile SMIN_STD and choose Action Definition.
In this example, the standard Solution Manager action profile for incidents is used. SAP recommends customers to copy the standard action profile into the customer naming space
which must begin with Z or Y.
4. Activate the action SMIN_STD_FIND_PARTNER_FDT (support team determination based on BRFplus) and deactivate the action SMIN_STD_FIND_TEAM_SEND_EMAIL (support team
determination based on responsibilities, PFAC rule 35000139).
7. BEST PRACTICE / FAQ
7.1 For Further Reading
Business Rule Framework plus in SAP Developer Network (SDN):
For an overview on BRFplus have a look at the following documents available in SAP SDN:
- Business Rules Framework plus – The Very Basics
- About BRF and BRFplus
- BRFplus Screencast (eClass)
7.2 Dispatching of Business Transactions
Dispatching allows you to forward business transactions (such as incidents, problems or change requests) to other employees or support teams. This section provides an overview of possibilities for message dispatch which are summarized in the figure below.
7.2.1 CRM Standard Dispatch
The SAP WebClient provides a standard CRM dispatch functionality based on rule policies.
In Incident Management, the dispatch functionality can be used to route a transaction to a support team based on attributes such as status, priority or multilevel categorization.
In Change Request Management, the dispatch functionality can be used to determine approval procedure and partners (to approve or reject a change request) automatically.
Rules for dispatching are set up in the Rule Modeler which is accessed in the SAP WebClient via Service Operations -> Rule Policies, as shown in the figure below.
For more information on the Rule Modeler please refer to the SAP Online Help: http://help.sap.com/saphelp_crm70/helpdata/EN/fd/5a583275f24f9282a0b4f3c6334f73/content.htm
To activate the dispatch functionality for a specific transaction type, e.g. SMIN, go to IMG activity Assign Dispatching Rule Profile to Transaction Types. In this activity, you define the dispatching service manager profile for transactions. The service manager profile specifies the rule policy for dispatching. For more information on this topic, please refer to the documentation of the IMG activity Assign Dispatching Rule Profile to Transaction Types.
After you activated the dispatch functionality for a transaction type (e.g. SMIN) the button Dispatch should appear in the work area toolbar, as shown in the figure below.
7.2.2 Support Team Determination via Responsibilities
Via the rule 35000139 (AGS_ICT) in transaction PFAC, you can define support team determination based on responsibilities which is a former functionality of SAP Solution Manager 7.0. However, it is also supported by the new transaction type SMIN in SAP Solution Manager 7.1.
You define the responsibility ‘Support for CRM Components’, where you specify that the support team with business partner number 220 will be assigned to each incident created on a CRM component.
Support team determination based on responsibilities is triggered via the action SMIN_STD_FIND_TEAM_SEND_EMAIL which is delivered as active in SAP Solution Manager 7.1.
For more information on how to set up support team determination based on responsibilities, please see the eBook Team Determination available at https://service.sap.com/rkt -> SAP Solution Manager -> SAP Solution Manager 7.0 – EHP1 -> Operations with SAP Solution Manager -> Monitoring of Mission-critical Processes: Incident Management -> Incident Management – Team Determination.
7.2.3 SAP Solution Manager Standard Dispatch
Via the action SMIN_STD_MSG_DISPATCH, you forward a message to another support team based on the responsibility rule AGS_ICT (35000139). This rule is maintained in transaction PFAC.
The action also deletes the processor of a message and sets a new user status specified in the corresponding container parameter of the action. The message dispatch is triggered manually via the action toolbar.