![](/cvo_files/imgs_sap_abap/logos/logo_cvo_academy_it.png)
✒️ABAP El desarrollo BOR
ABAP El desarrollo BOR
![ABAP El desarrollo BOR ABAP El desarrollo BOR](https://www.cvosoft.com/cvo_files/imgs_sap_abap/og-images/129.jpg)
ABAP Development: Business Object Repository (BOR)
Workflow Development
In the architecture of Workflow, programming is required in the following areas:
- Organization
- Processes
- Business Objects
Object-oriented technology is used in Workflow development because it simplifies the modeling process.
Types of Objects (Object Type)
It's a generic definition of a Business object that describes the general characteristics and common attributes of SAP business objects.
Object types can be consulted in the Business Object Repository (BOR) via transaction SWO1.
The states of an object type are:
- Modeling: In this state, the object type cannot be "instantiated". In other words, objects cannot be generated for this type.
- Implemented: Only for testing, internal use, or possibly unstable.
- Released: Released for use by the client. Only extensions can be made, but the type cannot be radically modified.
- Obsolete: The object type has been replaced by another.
Business Object
It's an instance of an SAP object type.
A Business Object is defined by the following elements:
- Object ID: Unique identifier
- Key field: Number
- Name: Unique semantic designation
- Components: Internal structure differentiated for "is part of" relationships
- Subtypes: Specialization of an object, "is a"
- Attribute: Entry date, approved by, entered by, etc.
- Methods: Implementation of applicable methods to the object
- Events: Events that generate the object
Business Object Repository (BOR)
BOR is a complete development and execution environment that allows handling the following types of objects:
- Business objects: Include objects such as client, material, and company code. They provide both a business-oriented high-level view and a SAP system programming interface.
- Technical objects: Include texts, notes, work items, and documents, as well as desktop objects such as texts, graphics, and spreadsheets.
- Metaobjects: Each object has an attribute "object type" that refers to the metaobject to which it is assigned. The methods, attributes, and events available for a particular object can be retrieved from its "object type".
Instances
To work with a business object, an instance of the object must first be created. When an instance is created, there are two types of objects:
- Persistent: Persistent objects contain R/3 database data. They have a unique identifier determined by the key field.
- Non-persistent: Non-persistent objects are not tied to specific database entries. For example, they are used to display data or to create new persistent business objects.
Key Fields
An object is uniquely identified from another through its key. A key can be composed of one or more fields. They refer to a key field of a table of the underlying application.
The client is not necessary in the keys. They must be character type (CHAR) fields. Concatenated key fields can contain a maximum of 70 characters.
Attributes
An object attribute represents a certain characteristic that this object may have.
In SAP, attributes can be database or virtual. Regarding their definition, they can be related to a database data type or to an object type (for associations or compositions). They can be single-line or multi-line attributes (single-line or multiple-line).
- Virtual Attributes: A virtual attribute is a "calculated" attribute, meaning that programming is required to obtain it (it does not come directly from the database). The business object builder cannot generate code for a virtual attribute automatically (as with database attributes), so they must be "explicitly" coded. Examples where virtual attributes are necessary include language-dependent data, time-dependent data, object references, and net-gross value calculation.
- Multi-line Attributes: These correspond to what SAP calls "internal tables". They can contain database fields or objects.
Methods
Methods are the activities that can be carried out on an object. These can be:
- Synchronous: The result is sent directly to the program that executed it. Additionally, the use of exceptions is possible.
- Asynchronous: The result is always sent back to the calling program in the form of an event. Only some exceptions (restricted) are allowed. The method itself does not wait for a possible finalizing event. Both types of methods can receive data through parameters (import parameters).
Events
An event is mainly used to indicate that something has happened. These are indispensable for starting or ending workflows.
The event definition is done through the Business Object Builder, but its implementation is done through other tools, so documentation of events is "essential".
Events carry and bring parameters. Parameters can be defined by the user (explicitly) or standard ones which are not defined (triggering object, user who triggers the object, date, time, etc.).
 
 
 
Sobre el autor
Publicación académica de Jaime Eduardo Gomez Arango, en su ámbito de estudios para la Carrera Consultor ABAP.
Jaime Eduardo Gomez Arango
Profesión: Ingeniero de Sistemas y Computación - España - Legajo: SW34C
✒️Autor de: 149 Publicaciones Académicas
🎓Egresado de los módulos:
- Carrera Consultor en SAP Fiori
- Carrera Consultor ABAP Nivel Avanzado
- Carrera Consultor ABAP Nivel Inicial
Disponibilidad Laboral: FullTime
Presentación:
Ingeniero de sistemas y computación con 8 años de experiencia el desarrollo frontend & backend (react/node) y en cloud (aws), actualmente desarrollando habilidades en sap btp, ui5, abap y fiori.
Certificación Académica de Jaime Gomez