✒️ABAP El desarrollo BOR
ABAP El desarrollo BOR
1 | El desarrollo en WorkFlows
Las áreas de la arquitectura Workflow donde se requiere programación son:
Imagen 1.1 - La programación dentro del sistema de workflow
En el desarrollo de Workflows se utiliza tecnología orientada
a objetos debido a que esta permite simplificar el proceso de modelado.
2 | Los tipos de objetos
Tipo de Objeto (OBJECT TYPE en inglés)
Es una definición genérica de un Business Object que describe las características generales
y atributos comunes de los Objetos de negocio de SAP.
Imagen 2.1 - Esquema del repositorio de objetos de SAP
Los tipos de objetos pueden consultarse en el Business Object Repository (BOR) a través la transacción SWO1.
Imagen 2.2 - La transacción estándar SWO1
Transacción SWO1 (Business Object Builder)
Utilizaremos el Business Object Builder correspondiente a la transacción estándar SWO1 para mantener
(crear, modificar, visualizar, copiar, etc) los objetos de negocio.
Los estados de un Tipo de Objeto son:
Modelado: En este estado el tipo de objeto no se puede “instanciar”. Es decir no se pueden generar objetos para este tipo.
Implementado: Solo para pruebas, uso interno o posiblemente inestable.
Liberado: Liberado para ser utilizado por el cliente. Solo se podrán realizar ampliaciones pero no modificar radicalmente el tipo.
Obsoleto: El tipo de objeto ha sido reemplazado por otro.
Business Object (Objeto de negocio)
Es una instancia de una Tipo de objeto SAP.
Un Business Object está definido por los siguientes elementos:
ID del Objeto: Identificador único.
Campo clave: Número.
Nombre: Designación semántica única.
Componentes: Estructura interna diferenciada para los objetos de relación “es parte de”.
Subtipos: Especialización de un objeto “es un” .
Atributo: Fecha de entrada, aprobado por, ingresado por, etc.
Métodos: Implementación de los métodos aplicable al objeto.
Eventos: Eventos que generan al objeto.
3 | El Business Object Repository
El BOR es un entorno de desarrollo y ejecución completo, que permite manejar los siguientes tipos de objetos:
Objetos del negocio: incluyen objetos como "Cliente", "Material", y "Código de Compañía".
Proveen tanto una visión de alto nivel orientada a los negocios como una interface de programación del sistema SAP.
Objetos técnicos: incluyen textos, notas, ítems de trabajo y documentos,
así como objetos de escritorio como textos, gráficos y hojas de cálculo.
Metaobjetos: cada objeto tiene un atributo “Tipo de Objeto” que hace referencia al metaobjeto al que está asignado.
Los métodos, atributos y eventos disponibles para un objeto en particular pueden ser recuperados desde su “Tipo de Objeto”.
Imagen 3.1 - El tipo de objeto 1006 correspondiente al interlocutor comercial
4 | Las Instancias
Para trabajar con un objeto de negocio, debe primero crearse una instancia del objeto.
Cuando se crea una instancia, existen dos tipos de objetos:
Persistentes: Los objetos persistentes contienen datos de las bases de datos R/3.
Tienen un identificador único determinado por el campo clave.
No Persistentes: Los objetos no persistentes no están ligados a entradas concretas de base de datos.
Por ejemplo, son utilizados para visualizar datos, o para crear nuevos objetos de negocio persistentes.
Imagen 4.1 - Las instancias y la persistencia de los datos
5 | Los Campos Clave
Un objeto se identifica unívocamente de otro a través de su clave. Un clave puede estar compuesta de uno o más campos.
Hacen referencia a un campo clave de una tabla de la aplicación subyacente.
El mandante no es necesario en las claves. Deben ser campos tipo carácter (CHAR).
Los campos clave concatenados pueden contener un máximo de 70 caracteres.
Imagen 5.1 - Los campos clave de los tipos de objeto
6 | Los Atributos
Un atributo de un objeto representa determinada característica que este objeto puede llegar a tener.
En SAP los atributos pueden ser de base de datos o virtuales.
En cuanto a su definición pueden estar relacionados a un tipo de dato de la base de datos
o a un tipo de objeto (para asociaciones o composiciones).
Pueden ser de una línea o varias líneas (single-line o multiple-line).
Imagen 6.1 - Los atributos de los tipos de objeto
Atributos Virtuales: Un atributo virtual es un atributo “calculado”,
es decir que se requiere programación para poder obtenerlo (no viene directamente de la base de datos).
El Business Object Builder no puede generar el código para un atributo virtual automáticamente
(como sucede con los atributos de base de datos) por lo que deben ser “explícitamente” codificados.
Ejemplos donde son necesarios atributos virtuales son:
Datos dependientes de lenguaje.
Datos dependientes del tiempo.
Referencias a objetos.
Calculo de valores netos - brutos.
Atributos Multi-lineales: Se corresponden a lo que en ABAP denominamos "tablas internas".
Pueden contener campos de base de datos u objetos.
7 | Los Métodos
Los métodos son las actividades que podemos llevar a cabo sobre un objeto. Estos pueden ser:
Sincrónicos: En los “Sincrónicos” el resultado es enviado directamente al programa que lo ejecutó.
Además es posible la utilización de excepciones.
Asincrónicos: En los “Asincrónicos” el resultado siempre es enviado de vuelta al programa llamador en la forma de un evento.
Solo se permiten algunas excepciones (restringidas). El método en si mismo no espera un posible evento finalizador.
Ambos tipos de métodos pueden recibir datos a través de parámetros (parámetros de importación).
Imagen 7.1 - Los métodos de los tipos de objeto
8 | Los Eventos
Un evento se utiliza principalmente para indicar que algo a sucedido.
Estos son indispensables para iniciar o terminar los workflows.
La definición del evento se hace a través del Business Object Builder,
pero su implementación se hace a través de otras herramientas,
por ello la documentación de los eventos es “indispensable”.
Los eventos llevan y traen parámetros. Los parámetros pueden ser definidos por el usuario (explícitamente)
o estándar los cuales no se definen (objeto lanzador, usuario que lanza el objeto, fecha, hora, etc.).
Imagen 8.1 - Los eventos de los tipos de objeto
El concepto de interfaces es el mismo que aprendimos en la unidad de Programación Orientada a Objetos.
 
 
 
Sobre el autor
Publicación académica de Alex Francisco Lemos Collazos, en su ámbito de estudios para la Carrera Consultor ABAP.
Alex Francisco Lemos Collazos
Profesión: Ingeniero en Sistemas - Colombia - Legajo: QS36A
✒️Autor de: 174 Publicaciones Académicas
🎓Cursando Actualmente: Master S/4HANA Material Management
🎓Egresado de los módulos:
- Máster Material Management en SAP S/4HANA LOGISTIC
- Carrera Consultor ABAP Nivel Avanzado
- Carrera Consultor ABAP Nivel Inicial
- Carrera Consultor en SAP SD Nivel Inicial