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

 X 

✒️ABAP POO El tratamiento de Objetos

ABAP POO El tratamiento de Objetos

ABAP POO El tratamiento de Objetos

Bueno, yo hice el ejercicio un poco diferente a como muestra la solución. Lo probé en SE38 y funciona bien.

Se los copio...esencialmente me salió igual. Lo bueno es que logré

IMPORTANTE. Cuando compilé, el control de sintaxis me indicó que para llamar a un método de un objeto debo hacerlo:

objeto->metodo( )

sin necesidad de usar CALL METHOD.

y si es de una clase, debo usar:

clase=>metodo( )

también sin usar CALL METHOD.

Debe ser por la versión de SAP que tengo.

Va el programa fuente. Funciona!!

SPAN { font-family: "Courier New"; color: #000000; background: #FFFFFF; } .L0S31 { font-style: italic; color: #808080; } .L0S32 { color: #3399FF; } .L0S33 { color: #4DA619; } .L0S52 { color: #0000FF; } .L0S55 { color: #800080; } .L0S70 { color: #808080; } *&---------------------------------------------------------------------*
*& Report ZPRUEBA_OBJETOS_RQ48L
*&
*&---------------------------------------------------------------------*
*&
*&
*&---------------------------------------------------------------------*

REPORT ZPRUEBA_OBJETOS_RQ48L.
include ZPRUEBA_OBJETOS_MAIN_RQ48L.
Data:
oAvion Type REF TO avion,
lista_aviones Type Table of REF TO avion.
Data:
cTipo Type SAPLANE-PLANETYPE,
cNombre Type String,
nCantAv Type I.

START-OF-SELECTION.
avion=>mostrar_n_o_aviones( ).

Do 3 times.
Case sy-index.
when 1.
cNombre = 'LH Berlin'.
cTipo = 'A321'.
when 2.
cNombre = 'AA New York'.
cTipo = '747-400'.
when 3.
cNombre = 'US Hercules'.
cTipo = '747-500'.
EndCase.
Create OBJECT oAvion.
oAvion->definir_atributos( pNombre = cNombre pTipoAv = cTipo ).
append oAvion to Lista_aviones.
oAvion->MOSTRAR_ATRIBUTOS( ).
ENDDO.

avion=>mostrar_n_o_aviones( ).
nCantAv = avion=>obtener_n_o_aviones( ).
Write:/ 'Cant.Aviones Leida:',nCantAv.

SPAN { font-family: "Courier New"; color: #000000; background: #FFFFFF; } .L0S31 { font-style: italic; color: #808080; } .L0S32 { color: #3399FF; } .L0S33 { color: #4DA619; } .L0S52 { color: #0000FF; } .L0S55 { color: #800080; } .L0S70 { color: #808080; } *&---------------------------------------------------------------------*
*& Include ZPRUEBA_OBJETOS_MAIN_RQ48L
*&---------------------------------------------------------------------*

CLASS AVION DEFINITION.
PUBLIC SECTION.
METHODS: DEFINIR_ATRIBUTOS
IMPORTING pNombre Type String
pTipoAv Type SAPLANE-PLANETYPE,
MOSTRAR_ATRIBUTOS.

CLASS-METHODS: MOSTRAR_N_O_AVIONES,
OBTENER_N_O_AVIONES
RETURNING VALUE(RE_COUNT) Type I.

PRIVATE SECTION.
DATA: NOMBRE Type String,
Tipo_avion Type SAPLANE-PLANETYPE.

CLASS-DATA: N_O_AVIONES Type I.


ENDCLASS.

CLASS AVION IMPLEMENTATION.
METHOD DEFINIR_ATRIBUTOS.
nombre = pNombre.
tipo_avion = pTipoAv.

me->N_O_AVIONES = me->N_O_AVIONES 1.
ENDMETHOD.

METHOD MOSTRAR_ATRIBUTOS.
Write: / NOMBRE, Tipo_avion.
ENDMETHOD.

METHOD MOSTRAR_N_O_AVIONES.
Write: / 'Cant.Aviones',N_O_AVIONES.
ENDMETHOD.

METHOD OBTENER_N_O_AVIONES.
re_count = n_o_aviones.
ENDMETHOD.


 

 

 


Sobre el autor

Publicación académica de Alfredo César, en su ámbito de estudios para el Máster ABAP POO.

SAP Senior

Alfredo César

Profesión: Analista de Sistemas - Argentina - Legajo: RQ48L

✒️Autor de: 33 Publicaciones Académicas

🎓Egresado de los módulos:

Certificación Académica de Alfredo César

✒️+Comunidad Académica CVOSOFT

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

SAP Senior

TRATAMIENTO DE OBJETOS UTILIZACION DE LOS COMPONENTES DE UN OBJETO Los programas solo pueden acceder a los componentes de las instancias. Para acceder al atributo: Para llamar al método de instancia encendido Cuando se llama de un método dentro de otro método de instancia se puede omitir la referencia. Para componentes estáticos o dependientes de instancia, solo dependientes de clase, se pueden 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. METODOS FUNCIONALES Son aquellos que poseen un parámetro returning, este parámetro siempre es pasado con...

Acceder a esta publicación

Creado y Compartido por: Daniel Fernando Yanez Guevara

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

1) Utilizacion de los componentes de un objeto: Para acceder al atributo color realizaremos lo siguiente: r_vehiculo->color. Para llamar el metodo de instancia encendido realizaremos lo siguiente: CALL METHOD r_vehiculo->encendido() o r_vehiculo->encendido() En el caso de los componentes estatios Para acceder al atributo color realizaremos lo siguiente: Vehiculo->color. Para llamar el metodo de instancia encendido realizaremos lo siguiente: CALL METHOD vehiculo=>encendido() o r_vehiculo=>encendido(). 2) Metodos funcionales. Son aquellos que tienen un parametro RETURNING, esto significa que devuelven un valor , el parametro RETURNING debe ser pasado con la adicion VALUE es decir debe pasar un valor. 3) Autoreferencia. Dentro...

Acceder a esta publicación

Creado y Compartido por: Juan Jose Pujol Diaz

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

SAP Expert


Para acceder a un atributo de un objeto, se usa la sentencia objeto->atributo y para llamar a un método CALL METHOD objeto->metodo( ). Los métodos funcionales son aquellos que tienen un parámetro RETURNING (devuelven un valor que se pasa mediante la adición VALUE). Para indicar la autoreferencia de un objeto se usa "me->".

Acceder a esta publicación

Creado y Compartido por: Daniel Alejandro Monteros Segura

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

SAP Senior

UTILIZACIÓN DE LOS COMPONENTES DE UN OBJETO Los programas solo pueden acceder a los componentes de las instancias usando las referencias de las variables referenciadas: Para acceder a un atributo: r_vehiculo->color. Para acceder a un método: CALL METHOD r_vehiculo->encendido() o r_vehiculo->encendido(). Para los componentes estáticos o independientes de instancia, solo dependientes de clase, se puede utilizar el nombre de la clase como variable referenciada. Para acceder al atributo estático: name_class->color. Para acceder al método estático: CALL METHOD name_class =>encendido() o name_class =>encendido(). METODOS FUNCIONALES Son aquellos que tienen un parámetro RETURNING,...

Acceder a esta publicación

Creado y Compartido por: Julio Villalta / 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!