🚀PROMO #PLANCARRERA2024 - 🔥Bonificaciones, Precios Congelados y Cuotas

 X 

✒️ABAP El tratamiento de los Objetos

ABAP El tratamiento de los Objetos

ABAP El tratamiento de los Objetos

1 | La utilización 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 puede tener un número indefinido de instancias.

Un objeto existe mientras se esté usando en el programa, lo que quiere decir que existe siempre que al menos una referencia

apunte hacia él, o al menos un método del objeto esté registrado como método manejador de eventos.

2 | Las referencias a objetos

Son punteros a los objetos ABAP.

Las referencias a objeto se usan para acceder a un objeto desde un programa ABAP.

En ABAP los objetos están siempre contenidos en variables referenciadas.

Las variables referenciadas o bien contienen el valor inicial o bien contienen la referencia a un objeto ya existente.

La identidad de un objeto depende de su referencia. Una variable referenciada que apunta a un objeto es la que conoce la identidad del objeto.

Los usuarios no pueden acceder a la identidad del objeto directamente.

Las variables referenciadas en ABAP son tratadas como cualquier otro objeto de datos elemental.

Esto quiere decir que una variable referenciada puede contener una tabla interna o una estructura.

ABAP contiene un tipo de datos predefinido para las referencias, comparable a los tipos de datos para las estructuras o para las tablas internas.

El tipo de datos completo no está definido hasta la declaración en el programa ABAP.

El tipo de datos de la variable referenciada determina como el programa actúa con su valor, o sea, con la referencia al objeto.

Hay dos tipos principales de referencias, la referencia a clases y la referencia a interfaces, las cuales veremos más adelante en el curso.

Las referencias a clases se definen usando la siguiente adición:

TYPE REF TO <class>.

Imagen 2.1 - Sintaxis utilizada para definir referencias a interfases

Veamos un ejemplo:

DATA: v_alv TYPE REF TO cl_agui_alv_grid.

Imagen 2.2 - Ejemplo de la declaración de una variable referenciada

Esta adición se usa en las sentencias TYPES o DATA. .

Una variable referenciada de este tipo se llama variable referenciada a clase o referencia 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 de la siguiente manera:

cref->comp.

Imagen 2.3 - A través de la variable referenciada accedemos a los componentes de la clase

3 | La creación de objetos

Antes de crear un objeto de una clase es necesario declarar una variable referenciada con la referencia a la 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.

Veamos un ejemplo de creación de un objeto:

CLASS counter DEFINITION.

PUBLIC SECTION.

METHODS: set IMPORTING value(set_value) TYPE i,

increment,

get EXPORTING VALUE(get_value) TYPE i.

EVENTS: critical_value EXPORTING value(excess) TYPE i.

PRIVATE SECTION.

DATA count TYPE i.

ENDCLASS.

CLASS counter IMPLEMENTATION.

METHOD set.

count = set_value.

ENDMETHOD.

METHOD increment.

ADD 1 TO count.

ENDMETHOD.

METHOD get.

get_value = count.

ENDMETHOD.

ENDCLASS.

DATA number TYPE i VALUE 5.

DATA cnt TYPE REF TO counter.

START-OF-SELECTION.

CREATE OBJECT cnt.

Imagen 3.1 - Creación del objeto CNT

4 | ¿Cómo acceder a los componentes de un objeto?

Los programas sólo 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 acceder al atributo attr: ref->attr.

Para llamar al método meth: CALL METHOD ref->meth.

Para los componentes estáticos o independientes de instancia, sólo 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 class la clase es la siguiente:

Para acceder al atributo estático attr: class->attr.

Para llamar al método estático meth: CALL METHOD class->meth.

Dentro de una clase se puede acceder también a los componentes individuales mediante la referencia a sí mismo ME:

Para acceder al atributo attr en la propia clase: me->attr.

Para llamar al método meth en la propia clase: CALL METHOD me->meth.

5 | La asignación de referencias

Se pueden asignar referencias a distintas variables referenciadas usando la sentencia MOVE.

De esta manera se puede tener las referencias en varias variables referenciadas apuntando al mismo objeto.

Cuando se asigna una referencia a una variable referenciada distinta, sus tipos deben ser compatibles.

Cuando se usa la sentencia MOVE o el operador de asignación = para asignar variables referenciadas,

el sistema debe ser capaz de reconocer en el chequeo de la sintaxis si la asignación va a ser posible.

Esto mismo se aplica cuando se pasan variables referenciadas como parámetros a procedimientos.

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 de 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 datos ANY para las variables normales.

Las variables referenciadas con el tipo OBJECT pueden funcionar como contenedoras para pasar referencias.

De cualquier manera, nunca pueden ser usadas para acceder a objetos.

6 | Mi primer programa de objetos

Vamos a crear nuestro primer programa con orientación a objetos. El objetivo del programa será simular un contador. Para ello, definimos la clase CONTADOR con los métodos públicos y el atributo privado COUNT.

CLASS contador DEFINITION.

PUBLIC SECTION.

METHODS: set IMPORTING value(set_value) TYPE i,

incrementar_contador,

get EXPORTING VALUE(get_value) TYPE i.

PRIVATE SECTION.

DATA count TYPE i. "Atributo Dependiente de Instancia

ENDCLASS.

Imagen 6.1 - Definición de la clase CONTADOR

Luego creamos la implementación de la clase.

CLASS contador IMPLEMENTATION.

METHOD set.

count = set_value.

ENDMETHOD.

METHOD incrementar_contador.

ADD 1 TO count.

ADD 1 TO v_suma.

ENDMETHOD.

METHOD get.

get_value = count.

ENDMETHOD.

ENDCLASS.

Imagen 6.2 - Implementación de la clase CONTADOR

Declaramos las variables NUMBER de tipo i, inicializada con el valor cinco y CNT que será una referencia de la clase contador.

Luego creamos una instancia de la clase contador y ejecutamos el método set.

Finalmente, ejecutamos dentro de una iteración el método incrementar_contador el cual sumará 1 al contenido de la variable number,

obtenemos su nuevo valor y lo imprimimos en pantalla.

Imagen 6.3 - Visualizamos el resto de la lógica abap del programa

Si ejecutamos el programa veremos la siguiente salida por pantalla:

Imagen 6.4 - Salida por pantalla del programa


 

 

 


Sobre el autor

Publicación académica de Alex Francisco Lemos Collazos, en su ámbito de estudios para la Carrera Consultor ABAP.

SAP Expert


✒️+Comunidad Académica CVOSOFT

Continúe aprendiendo sobre el tema "El tratamiento de los Objetos" de la mano de nuestros alumnos.

SAP Expert


Tratamiento de objetos Utilización de objetos Los objetos son instancias de las clases. Un objeto existe mientras se este usando en el programa. Referencia a objeto Son punteros a los objetos ABAP. Se usan para acceder a un objeto desde un programa ABAP, Creación de objetos Se puede crear el objeto usando la sentencia CREATE OBJECT. Cómo 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.

Acceder a esta publicación

Creado y Compartido por: José Luis Zevallos Mamani

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Senior

TRATAMIENTO DE OBJETOS. 1.UTILIZACION DE OBJETOS. Cada objeto tiene una identidad propia y tiene sus propios atributos. Todos los objetos transitorios residen en el contexto de una sesion interna. UNa clase puede tener un numero indefinido de instancias. 2.REFERENCIAS A OBJETOS. Son punteros a los objetos ABAP. 3.CREACION DE OBJETOS. Antes en necesario declarar una variable referenciada con la referencia a la clase. Una vez declarado se pude crear el objeto usando la sentencia CREATE OBJECT. Esta crea una isntancia de la clase y la variable referenciada contien la referencia al objeto. 4.¿COMO ACCEDER A LOS COMPONENTES DE UN OBJETO? Los programas pueden acceder usando las referencias de las variables referenciadas. Para los componentes...

Acceder a esta publicación

Creado y Compartido por: Bruno Edgardo Gallinoto / Disponibilidad Laboral: FullTime + Carta Presentación

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Senior

TRATAMIENTO DE OBJETOS Utilización de objetos Los objetos son instancias de clases. Una clase puede tener instanciadas varios objetos. Los usuarios no pueden acceder a los objetos, es por ello que se vinculan con variables referenciadas las cuales contienen tablas internas o estructuras. 2. Referencia a objetos. Son punteros a los objetos ABAP. ABA¨contiene un tipo de datos predefinidos para las referencias, ya qye el tipo de dato no esta completo hasta la declaración en el programa Tipo de Referencia -,Referencia a clase se define con TYPE REF TO <clas> 3. Creación de Objetos Antes de crear un objeto, es necesario declarar una variable referenciada con la referencia de la clase. Una vez...

Acceder a esta publicación

Creado y Compartido por: Morela Silva

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Master

Tratamiento de Objetos. Los objetos son instancias de las clases, cada objeto tiene una identidad propia y tiene sus propios atributos, un objeto existe mientras se está usando en el programa lo que quiere decir que existe siempre que al menos una referencia apunte hacia é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 SAP, las referencias a objetos se usan para acceder a un objeto desde un programa ABAP en ABAP los objetos están siempre contenidos en variables referenciadas. Las variables referenciadas o bien contienen el valor inicial o bien contienen la referencia a un objeto ya existente. Las variables referenciadas en...

Acceder a esta publicación

Creado y Compartido por: Jesus Enrique Ramos Bello / Disponibilidad Laboral: FullTime + Carta Presentación

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Master

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 sesion interna (area de memoria de una programa abap) una clase puede tener un numero indefinido de instacias. referencias a objetos son punteros a los objetos abap las referencias a objetos se usan para cceder a un objeto desde un programa abap. en abao los objetos estan siempre contenidos en variables referenciadas. las variables referenciadas o bien contienen el valor inicial o bien contienen la referencia a un objeto ya existente. la identidad de un objeto depende de su referencia. una variable referenciada que apunta a un objeto es la que conoce...

Acceder a esta publicación

Creado y Compartido por: Oscar Sebastian Caicedo Carlier / Disponibilidad Laboral: PartTime + Carta Presentación

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Master

El tratamiento de los Objetos 1 - La utilizacion de objetos. Los objetos son instacias de clase. Cada objeto tiene identidad propia y tiene sus propios atributos. Una clase puede tener un nro indefinido de instancias. Un objeto existe mientras se use en el programa (una referencia apunte a el). 2 - Las referencias a objetos. Son punteros a los objetos ABAP. Se usan para acceder a un objeto desde un prog ABAP. Las variables referenciadas: tiene el valor inicial o la referencia de un objeto existente. Puede contener una tabla interna o una estructura. Las referencias a clase se definen con TYPE REF TO <class> DATA: v_alv TYPE REF TO cl_gui_alv_grid. 3 - La creacion de objetos. Una vez declarada la refeencia...

Acceder a esta publicación

Creado y Compartido por: Pablo Adrian Oggero

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Expert


TRATAMIENTO DE OBJETOS: Los objetos existen mientras esten en uso en el programa, es decir existe mientras al menos una referencia apunte hacia él o un método del objeto est´ñe registrado como manejador de eventos. REFERENCIAS A OBJETO: Son punteros a los objetos ABAP. Se utilizan para acceder a un objeto desde un programa ABAP. Los objetos ABAP siempre están contenidos en variables referenciadas, que ienen el valor inicial o la referencia a un objeto. Las referencias pueden ser a Clases TYPE REF TO <class> o a Interfaces. Ejemplo de declaración de una variable referenciada a Clase: DATA: v_alv TYPE REF TO c1_gui-alv_grid. Premiten crear una instancia: cref->comp CREACION...

Acceder a esta publicación

Creado y Compartido por: Juan Ignacio De Tejada Santiago / Disponibilidad Laboral: FullTime

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Expert


Unidad 5: Programación Orientada a Objetos. Lección 3: Tratamiento de Objetos. Audio tip 1: Si no existe una referencia que apunte a un objeto entonces el objeto no puede ser accedido sintácticamente. El GARBAGE COLLECTOR o recolector de basura, es una rutina del sistema que se inicia automáticamente cada vez que el sistema no tiene tareas más importantes que realizar y elimina los objetos no referenciados de la memoria principal liberando el espacio de la misma que permanecía ocupado. El propósito del recolector de basura es identificar y descartar los objetos que ya no son necesarios para un programa de manera que sus recursos puedan ser recuperados y re utilizados. Dada la referencia R_OBJETO...

Acceder a esta publicación

Creado y Compartido por: Brenda Castillo Domínguez / Disponibilidad Laboral: FullTime

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Expert


Tratamiento de objetos Utilización de los objetos Los objetos son instancias de las clases. Cada uno tiene una identidad propia y tiene sus propios atributos. Todos los objetos transitorios residen en el contexto de ua sesión interna (area de memoria de un programa ABAP). Una clase puede tener un numero indefinido de instancias. Referencias a objetos: Son punteros a los objetos ABAP. Las variables referenciadas o bien contiene el valor incial o bien contienen la referencia a un objeto ya existente. La identidad de un objeto depende de su referencia. Una variable referenicada que apunta a un objeto es la que conoce la identidad del objeto. Los usuarios no pueden acceder a la identidad del objeto directamente. ABAP contiene un tipo...

Acceder a esta publicación

Creado y Compartido por: Marvin Raul Lopez Morales / Disponibilidad Laboral: FullTime + Carta Presentación

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Expert


TRATAMIENTO DE OBJETOS UTILIZACION DE OBJETOS LOS OBJETOS SON INSTANCIAS DE LAS CLASES Y TIENE SUS PROPIOS ATRIBUTOS. UN OBJETOS EXISTE MIENTRAS SE ESTÉ USANDO EN EL PROGRAMAS. TODOS LOS OBJETOS TRANSITORIOS RESIDEN EN EL CONTEXTO DE UNA SESION INTERNA (AREA DE MEMORIA DE UN PROGRAMA ABAP). UNA CLASE PUEDE TENER UN NUMERO INDEFINIDO DE INSTANCIAS. REFERENCIAS A OBJETOS SON PUNTEROS A LOS OBJETOS ABAP, LAS REFERENCIAS A OBJETOS SE USAN PARA ACCEDER A UN OBJETO DESDE UN PROGRAMA ABAP. LA IDENTIDAD DE UN OBJETO DEPENDE DE SU REFERENCIA. UNA VARIABLE REFERENCIADA QUE APUNTA A UN OBJETO ES LA QUE CONOCE LA IDENTIDAD DEL OBJETO. LAS VARIABLES REFERENCIADAS EN ABAP SON TRATARDAS COMO CUALQUIER OTRO OBJETO DE DATOS ELEMENTAL. HAY DOS TIPOS...

Acceder a esta publicación

Creado y Compartido por: Oscar Guillermo Rodriguez Villate / Disponibilidad Laboral: FullTime

 


 

👌Genial!, estos fueron los últimos artículos sobre más de 79.000 publicaciones académicas abiertas, libres y gratuitas compartidas con la comunidad, para acceder a ellas le dejamos el enlace a CVOPEN ACADEMY.

Buscador de Publicaciones:

 


 

No sea Juan... Solo podrá llegar alto si realiza su formación con los mejores!