✒️ABAP El tratamiento de los Objetos
ABAP El tratamiento de los Objetos
TRATAMIENTO DE OBJETOS – LECCION 5-3
UTILIZACION DE OBJETOS
Los objetos son instancias de las clases, cada objeto tiene una identidad propia y tiene sus propios atributos, todos los objetos transitorios residen en el contexto de una sesión interna (área de memoria de un programa ABAP). Una clase tiene un número infinito de instancias.
NOTA, un objeto existe mientras se esté usando en programa, lo que quiere decir es, que existe siempre que al menos una referencia apunte a él, o al menos un método de objeto este registrado como método manejador de eventos
REFERENCIAS A OBJETOS, son punteros a los objetos ABAP
Las referencias a objetos se usan para acceder a un objeto desde un programa ABAP, los objetos siempre están contenidos en variables referenciadas.
Hay dos tipos principales de referencias, la referencia de clase y la referencia a interfaces,
Las referencias a clase se definen usando la siguiente adición:
TYPE REF TO <class>.
Ejemplo, DATA: v_alv TYPE REF TO cl_gui_alv_grid.
Esta adición se usa en la sentencia TYPE o DATA, una variable referenciada de este tipo se llama variable referenciada a clase o referenciada a clase simplemente
Una referencia a clase permite al usuario crear una instancia, es decir un objeto de la clase y acceder a un componente visible
CREF à COMP
CREACION DE OBJETOS
Antes de crear un objeto de una clase es necesario declarar una variable referenciada con la referencia de una clase, una vez que se ha declarado la referencia a la clase, se puede crear el objeto usando la sentencia CREATE OBJECT, esta sentencia crea una instancia de la clase y la variable referenciada contiene la referencia al objeto
COMO ACCEDER A LOS COMPONENTES DE UN OBJETO
Los programas solo pueden acceder a los componentes de las instancias usando las referencias de las variables referenciadas, la sintaxis es la siguiente, siendo REF la variable referenciada:
- Para llamar al método meth: CALL METHOD ref à meth
Para los componentes estáticos o independientes solo dependientes de clase, se puede usar tanto el nombre de la clase como la variable referenciada, también es posible acceder a los componentes estáticos de una clase antes de que un objeto de la clase haya sido creado
La sintaxis siendo la CLASS de la clase es la siguiente
- Para llamar al método estatico meth: CALL METHOD class àmeth
Dentro de una clase se puede acceder también a los componentes individuales mediante la referencia ME:
- Para llamar al metodo meth: CALL METHOD me àmeth
ASIGNACION DE REFERENCIAS
Se pueden asignar documentos a distintas variables referenciadas usando la sentencia MOVE, de esta manera se puede tener las referencias en varias variables referenciadas apuntando el mismo objeto.
Si escribimos la sentencia CREF1 = CREF2, las dos referencias tienen que tener el mismo tipo, esto es, tienen que referirse a la misma clase, o bien la clase CREF1 tiene que ser la clase predefinida como vacía, o sea OBJECT.
La clase object no tiene componentes y tiene la misma función para las variables referenciadas que el tipo de dato ANY para las variables normales, las variables referenciadas con el object pueden funcionar como contenedoras para pasar referencias
 
 
 
Sobre el autor
Publicación académica de Cristian Darwin Arteaga Diaz, en su ámbito de estudios para la Carrera Consultor ABAP.
Cristian Darwin Arteaga Diaz
Profesión: Abap Developer - Argentina - Legajo: GP81Q
✒️Autor de: 165 Publicaciones Académicas
🎓Cursando Actualmente: Master Funcional para Consultores ABAP
🎓Egresado de los módulos:
- Máster ABAP Orientado a Objetos
- Carrera Consultor ABAP Nivel Avanzado
- Carrera Consultor ABAP Nivel Inicial
Disponibilidad Laboral: FullTime
Presentación:
Me considero una persona responsable, siempre estoy investigando y capacitandome para adquirir nuevos conocimientos, tengo el gusto de iniciarme en el mundo de abap como desarrollador, es genial.
Certificación Académica de Cristian Arteaga