BRF+ stands for Business Rules Framework. It is a standard tool from SAP with the intention of separating
business rules from the coding. All the config tables like TVARVC etc potentially fit into this.
Historically we have tried to fit all the business rules into tables. By using BRF+ we can maintain config
only in a table format, known as Decision Table in BRF+, but also in other formats Boolean expression,
Table, Decision Tree, Case statement etc.
BRF+ provides inbuild versioning capability for almost all of the object types from Application to Expression. Versioning comes with capabilities like comparison, activating a previous version etc.
Multiple Rules in a Rule Set
Each ruleset can be assigned with multiple rules and can be processed in a sequence.
Each rule in a rule set can process a different type of expression.
Each rule can be activated, processed based on a condition.
Each rule can be set to be active only for a particular date range.
Upload and download features on Decision Tables
Provides inbuilt excel upload and download functionality for Decision Table expression.
Every rule set can be tested via assigned Function, before activation, to make sure the new config is behaving as expected.
There are a few different types of objects in BRF+ but the important ones are
- Rule Set
This is the top most element which defines the context of our business function. In other words the context is the input and output parameters. This is a developers job and we move this change via transport.
The context involves Date, Site, Commodity etc.
Defines the set of rules that are assigned to a function. One function can have only one rule set. we can define priority of a rule set. Enable or disable a rule set.
The business rules where we define our rule logic. Any number of rules can be assigned to a rule set. Each rule can have an optional validity period.
There are many different expressions in BRF+ like below. These are different ways we can define the business rules.
- Decision Table
- Decision Tree
- DB lookup
- Loop etc
Senior SAP Solution Developer
GrainCorp Operations Limited
M: +61 470286422| firstname.lastname@example.org