Technology Blogs by Members
Explore a vibrant mix of technical expertise, industry insights, and tech buzz in member blogs covering SAP products, technology, and events. Get in the mix!
cancel
Showing results for 
Search instead for 
Did you mean: 
Former Member

Hello and welcome to the 5th episode of this serie.

Today we will see what is a rule based workflow and how to configure it using BRF+.

What is rule based workflow?

Unlike the "standard" workflow, where you model in each step which is the action to take, i.e. change request status change and the related statuses/step number andstep type, as shown below

In the rule based workflow you define the actions to take and the parameters (statuses, step types, step numbers, etc.) in a special set of customizing tables that you can configure in BRF+. The workflow is modeled in the following (much semplified) way:

loop

     read the customizing tables

     read the actual change request parameters

     perform actions changing the change request parameters based on customizing tables

endloop

How to configure the "standard workflow" (just for reference)


first of all have a look at the change request customizing table, where you can see which workflow is specified for your change request. SAP provides many templates for each different MDG application (MDG-F, MDG-C, etc.). Have a look at the official help for more informations.

you can also review the change requests status table

Well, now it's time to review the step types table and assign the related actions

And finally let's review at the change request step number and their settings:

Note that all these parameters such as status, step no, step type, in a particular step of the workflow, are fixed and hard coded in the workflow task binding with the workflow item or in the task container.

The last step is to define the processor for the step.

How to configure the "rule based workflow"


With the rule based workflow, as I said before, you have more flexibility. First of all if you want to change the steps and statuses you don't need to create a custom workflow because these parameters are not hard-coded but are decided with a BRF+ customizing table set.

In addition you can decide different behavior for different change requests even if they are using the same workflow, using the correct customization in BRF+.

Let's see now what do you need to set it up.

Part one - in the system

First of all have a look at the change request customizing table. You need to change the workflow assignment with the standard rule based workflow delivered by SAP that is WS60800086.

you can also review the change requests status table

Well, now it's time to review the step types table and assign the related actions

And finally let's review at the change request step number and their settings (i am under a different node from the standard workflow screenshot)

The last step is to define a service name for rule-based workflow, we will see later what does it mean

Part two - in BRF+


Click here, BRF+ will open


Select the change request and continue

Here you have three tables.

The first one isfor actions that does not require a processor, such as activation or rollback. This table allows you to specify for each "condition alias" which is the action to take (there is a set of predefined actions from SAP).

The second one is for actions that require a processor, so you use this table to determine which is the next processor. This table allows you to specify for each "condition alias" which is the next processor and the next step type.

The last table is the most important, it defines which is the "flow" of the workflow. Here you can, for each prev. status and action taken of the change request, define:

1) the condition alias (that will match with the two tables we saw before)

2) the new change request step number

3) the new cr status

4) finally you can specify the service (the one we specified on the system as last step). If this service is specified, the system will call a BADI implementation to determine which is the next processor (and inside you can also perform some actions, such as email sending, log and so on).

To implement the badi see the screenshot below

I hope this episode was helpful for you. Write in the comments if you need further explanation.

Labels in this area