Preface – This post is part of the Object Oriented ABAP series.
Table of Contents
Every year, more than 1 million custom objects are created by various industries using SAP ABAP technology. All these custom objects starts as a fresh requirement and needs the same monotonous approach of development. SAP hence came up with a new framework in SAP ABAP which focuses upon the individual business logic, rather than expending efforts on the development of application infrastructure. This framework in known as Business Object Processing Framework or SAP BOPF.
What is SAP BOPF
SAP BOPF is an Object Oriented ABAP based framework that provides a set of generic services and functionalities that helps to standardize, modularize and speed up the development process. A BOPF is capable of managing the entire life cycle of business objects as well as covers all the aspects of the business application development.
In simple words, BOPF replaces the work of SE24 class builder with all the custom CRUD operation. It acts as the transaction/application layer in SAP architecture. With the help of ABAP CDS (Core Data Services) it can be exposed directly over HTTPS and used via UI5 Applications.
SAP BOPF Architecture
A BOPF simplifies the entire business process by dividing it into small entities. The business object in BOPF is represented as a hierarchical tree of nodes. While each node includes a set of business logic attributes.
Here, each of the business logic attributes signifies a specific business logic part. In the diagram we have shown all the elements that are part of a Node of a BOPF:
The elements shown above are:
- Action: It is an important entity and is used to implement a service of Business object. It is responsible for all the actions the node performs.
- Alternative Keys: All the instances of BOPF are controlled via the keys as key plays important role during CRUD operation. Mainly the keys are GUID or UUID, hence it gets important to have alternative value that are human readable.
- Association: It is used to associate a node with another one.
- Authorization Checks: It is used to manage Authorization at node level.
- Determination: It is used to perform automatic execution of codes based on the trigger conditions.
- Query: It is the part where business queries are maintained.
- Validation: It is the part where validation related to the node is maintained.
Important BOPF Transaction Codes:
- BOBF: It stands for Business Object Building framework. Remember, it is not BOPF unlike the name of the framework.
- BOB: It stands for Business Object Builder
- BOBT: It stands for BO Test
- BOBX: It stands for Business Object Enhancement Workbench
Advantages of SAP BOPF
SAP BOPF comes with given advantage:
- It standardize, modularize and speed up the development process.
- With the help of BOPF, we get the entire application infrastructure and integration of various development components for free.
- BOPF allows us to rapidly build the applications on a stable and customer-provided infrastructure.