ABAP Object

ABAP Object

ABAP Object – En ABAP (Advanced Business Application Programming), un objeto se puede entender cómo un componente de dentro del programa que integra datos y funcionalidades relacionadas. Ciertamente, un ABAP Object se crea a partir de una clase, la cual es similar a una plantilla o molde que establece la estructura y el comportamiento del objeto.

A cada ABAP Object se le asigna, al igual que una variable, un nombre y un tipo relacionado a una clase. Adicional, los objetos pueden estar compuestos de variables y métodos que se utilizan para manipular los datos almacenados en el objeto. No obstante, los objetos pueden interactuar con otros objetos, permitiendo la creación de arquitecturas complejas y estructuradas.

Algunos ejemplos de objetos en ABAP pueden consistir de referencias a base de datos que emulan a tablas o vistas de base de datos, objetos de interfaz de usuario que representan pantallas o controles de usuario, objetos de función que representan módulos de función reutilizables y objetos de clase que representan objetos complejos con métodos y propiedades.

Ejemplo de objetos en ABAP

Lo primero que hay que hacer es definir una clase para representar una cuenta bancaria. Para ello, definimos la clase de la siguiente manera:

CLASS account DEFINITION.
  PUBLIC SECTION.
    METHODS:
      constructor IMPORTING initial_balance TYPE i,
      deposit IMPORTING amount TYPE i,
      withdraw IMPORTING amount TYPE i,
      get_balance RETURNING VALUE(balance) TYPE i.
  PRIVATE SECTION.
    DATA:
      balance TYPE i.
ENDCLASS.

CLASS account IMPLEMENTATION.
  METHOD constructor.
    balance = initial_balance.
  ENDMETHOD.

  METHOD deposit.
    balance = balance + amount.
  ENDMETHOD.

  METHOD withdraw.
    balance = balance - amount.
  ENDMETHOD.

  METHOD get_balance.
    balance = balance.
  ENDMETHOD.
ENDCLASS.

En este ejemplo, hemos definido una clase llamada account, que incluye cuatro métodos: constructor, deposit, withdraw y get_balance. Adicional, hemos creado una variable privada llamada balance que almacena el saldo de la cuenta.

El método constructor sirve para crear una nueva instancia de la clase account con un saldo inicial. Ciertamente, el método deposit se utiliza para añadir una cantidad en la cuenta, el método withdraw se utiliza para retirar un importe de la cuenta y el método get_balance se utiliza para retornar el saldo actual de la cuenta.

Una vez definida la clase, podemos crear un objeto de la misma utilizando el siguiente código:

DATA my_account TYPE REF TO account.
my_account = NEW account( initial_balance = 100 ).

Documentación oficial de SAP

Para más información da clic en el siguiente enlace