Skip to Content

Introduction to Business Object Processing Framework (BOPF)

Wouldn't you like to streamline and simplify the development process for your business applications?

Then you should get to know more about BOPF, our infrastructure for developing business objects that is available for the SAP Business Suite. With the Business Object Processing Framework, you will save time during the development cycle because you don't have to implement all the technical details yourself - details such as authorization control, low-level transaction handling, buffer management, provisioning of consumer API, or business logic orchestration. Using the model-driven approach in BOPF, you can instead focus your attention more on the actual business requirements themselves.

What does BOPF stand for?

The Business Object Processing Framework is an ABAP OO-based framework that provides a set of generic services and functionalities to speed up, standardize, and modularize your development. BOPF manages the entire life cycle of your business objects and covers all aspects of your business application development. Instead of expending effort for developing an application infrastructure, the developer can focus on the individual business logic. Using BOPF, you get the whole application infrastructure and integration of various components for free. This allows you to rapidly build applications on a stable and customer-proved infrastructure.

Who uses BOPF?

BOPF is not really a new framework. In fact, it is well established and broadly used in multiple SAP ByDesign and SAP Business Suite applications and products – for example, Transportation Management (TM), Environment, Health and Safety (EH&S), SAP Supplier Lifecycle Management, SAP Management of Change, SAP Quality Issue Management, to name but a few. Apart from its use in SAP internal development, BOPF is also used in customer development projects.

How can SAP customers use BOPF?

Due to increased interest, BOPF is also used in SAP customer development projects. It is released with SAP Business Suite EHP5 SP11, SAP Business Suite EHP6 SP05, and SAP Business Suite EHP7. Moreover, starting with the SAP NetWeaver 7.50 release, BOPF is available in the SAP NetWeaver standalone system - as part of the SAP BASIS layer.

What are the main components of the application infrastructure?

With BOPF, you have a framework at your disposal with which you can seamlessly integrate different components of business applications. You can use them out-of-the-box. The advantages of using BOPF are thus obvious:

When using BOPF you don’t have to care about the development of adapters or integration layers to consume the following components:

Figure: BOPF acts as a bridging unit between various components

User Interfaces and Consumption

Dynpro

BOPF provides a standard interface for consumption by the classic Dynpro UI.

Web Dynpro / Floor Plan Manager (FPM)            

The generation and configuration of complex user interfaces has never been as easy as it is today with the FPM. FPM is implemented as a Web Dynpro component and can be easily integrated with BOPF. BOPF provides configurable and codeless integration of FPM and enables you to seamlessly consume the services of BOPF Business Objects in a modification-free environment.

More: Floorplan Manager for Web Dynpro ABAP and Web Dynpro ABAP on SCN

SAPUI5

SAPUI5 is designed for building lightweight UIs for casual use.

More: UI Developer Center on SCN

Gateway (OData)

SAP NetWeaver Gateway is a technology that provides a convenient way to connect devices, environments, and platforms to SAP software based on market standards. The BOPF integration of the Gateway is based on REST and OData standards.

More: SAP NetWeaver Gateway on SCN

Business Object Layer & GenIL

The Business Object Layer (BOL) provides a generic API for accessing business data.

The Generic Interaction Layer (GenIL) enables uniform access to business data using a stateless request/response format. BOPF provides adapters for BOL and GenIL integration.


More: SAP CRM on SCN

Process Integration

Post Processing Workflow

With BOPF BOs, you can integrate business processes using the Post Processing Workflow.

More: Post Processing Framework (PPF) (on SCN )

Infrastructure Component

Archive Development Kit                 (ADK)  

With ADK you archive not only table records but also business instances. Using BOPF you can select which BO instances have to be archived and then trigger the archiving process for them.

More: Archive Development Kit on the SAP help portal

Change Documents

BOPF uses the SAP NetWeaver Change Documents solution for recording changes on business object data.

More: Change Documents on the SAP help portal

Application Logging

Application logging is used to record particular events during the execution of an application so that you can reconstruct them later, if necessary.

In BOPF, application logging is integrated with the help of the Application Log BO. This business object supports you when reading or writing application-specific log messages.

More: Application Log - Guidelines for Developers on the SAP help portal

Enterprise Search

The search service of SAP NetWeaver provides a framework for enterprise-wide indexing of and searching for structured (business objects) and unstructured data (documents).

BOPF design time provides you with a convenient way for enabling BOPF business objects for Enterprise Search. Using an existing BO model, you have the option of importing the BO data and, in this way, creating a corresponding Enterprise Search model.

More: Enterprise Search on SCN

Business Rules Framework plus (BRF+)

BRF+ is a rule engine. It provides a comprehensive API and user interface for defining and processing business rules and expressions.

With a BOPF-specific expression type, it is possible to create BO data retrieval expressions in BRF+. These expressions make data of BOs available in BRF+ environments that support any kind of rule processing.

More: Business Rule Framework plus on SCN

What are the elements of the programming model?

The business objects are the basic units of the BOPF-based programming model. Business applications or processes operate on certain business objects. A business object is represented as a hierarchical tree of nodes. A single node includes a set of semantically related business object data and the corresponding business logic. On the technical level, each node is implemented with a regular Dictionary table, where each node instance corresponds to a single table entry (table rows). Nodes, attributes, and alternative keys set up the data part of a business object. Again from a technical viewpoint, attributes form the columns of the table. A node serves as an anchor point for connecting the business logic of the business object.

For each node, several types of entities can be defined to form the specific business logic part of a business object.

Node Entity 

is used ...

Action

to implement a service (operation or behavior) of a business object. An action is explicitly triggered by a service consumer, such as the user interface.

Determination              

to provide functions that are automatically executed as soon as certain trigger conditions are fulfilled. A determination is triggered internally due to changes made to the instance of a business object.

Validation

to either validate whether a specific action can be executed on a specific node instance (action validations) or whether a set of node instances is consistent (consistency validations).

Query

to search for business object instances that meet certain search criteria.

Authorization Check

to provide an authorization concept for BO nodes (for their data and for the operations on their data).

Association

to connect business object instances that are located on different nodes.

Figure: Business object metadata model

What kind of development environment is available for BOPF?

Tool Support Features

SAP Internal Design Time Tools (BOBF)

These are internal SAP tools and utilities that provide developers with a comprehensive feature set for building BO-centered applications for SAP Business Suite.

BO Builder (BOB)

This tool targets simple enhancement scenarios.

Customers can enhance SAP business objects and also create their own simple business objects in the customer namespace. The creation of business objects, nodes, actions, determinations, queries, or validations is extensively supported by wizard-driven tools and utilities.
BO Builder is available through SAP GUI and is released for customers with SAP Business Suite EHP5 upwards

.

BO Builder for eXperts (BOBX)

This tool targets experienced BOPF developers.
It also provides SAP Business Suite customers with a comprehensive feature set for building BO-centered applications so that they can use it for their own development projects.

BO Builder for eXperts is available through SAP GUI and is released for customers with SAP Business Suite EHP6 upward.

(Eclipse-Based) ABAP Development Tools for BOPF

With SAP Business Suite EHP7 a new Eclipse-based client application

will be provided as part of an ABAP Development Tools installation. This set of tools runs on top of the Eclipse-based ABAP IDE and is aimed at supporting all kinds of BO-centric use cases: it allows both the creation of new BOPF-applications and the enhancement of existing ones.

BO Builder Test Environment (BOBT)

Starting from development environment, you can always test the current range of functions of each business object (or enhancement).

BO-Specific Debugging

Debugging on the business object entities level enables you to speed up the troubleshooting process:

You can set breakpoints for entities such as actions, determinations, and validations. Furthermore, you have the option of setting watchpoints for certain activities on the nodes (for example, to update a particular node attribute).

Integrated BO Test Infrastructure

BOPF supports test automation and test-driven development. From the outset, you can apply ABAP unit tests to test isolated units of business objects, such as actions, validations, or determinations. In addition, with the scenario testing function, you can extend the tests to processes that consist of several steps.

NOTE

As a SAP customer, you can use the BO Builder (BOB), the BO Builder for eXperts (BOBX), or the Eclipse-based client for the development of your own business objects. Here, you will benefit from that interoperability is ensured between these development tools. So you can, for example, create new business objects in the BOB tool and then edit them in another tool on.

How to get started?

Tags:

No comments