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

 X 

✒️ABAP POO RTTS (Run Time Type Service)

ABAP POO RTTS (Run Time Type Service)

ABAP POO RTTS (Run Time Type Service)

RTTS ( RUN TIME TYPE SERVICE).

A partir de la versión de SAP Web as 6.10 los objetos ABAP permiten consultar los tipos de los atributos en tiempo de ejecución mediante las clases estándar de SAP. Este concepto es llamado RTTI ( información del tipo en tiempo de ejecución ).

En esta versión se ha mejorado este concepto para permitir la Creación de tipos en tiempos de ejecución conocida como RTTC.

La combinación de ambos conceptos forman RTTS ( Tipo de servicio en tiempo de ejecución ).

En conclusión podemos decir que:

RTTS = RTTI RTTC .

- RTTI (RUN TIME TYPE INFORMATION).

(Información del tipo en tiempo de Información) que podemos utilizar para determinar el tipo de atributos en tiempo de ejecución . En esto incluye todos los tipos de ABAP.

También cubre todas la funcionalidades que presentaban las sentencias DESCRIBE TABLE Y DESCRIBE FIELD.

La jerarquía de clases de descripción corresponde a la jerarquía de los tipos de datos ABAP.

Para obtener la referencia de un objeto de descripción de un tipo debemos utilizar métodos estáticos de la clase CL_ABAP_TYPEDESCR o los métodos de navegación de una clase de descripción especial.

Crearemos un programa utilizando RTTI utilizando la subclase CL_ABAP_STRUCDESCR

DATA: wa TYPE spfli,
r_descr
TYPE REF TO cl_abap_structdescr,
wa_comp
TYPE abap_compdescr.

START-OF-SELECTION.

r_descr ?= cl_abap_typedescr
=>describe_by_data( wa ).

LOOP AT r_descr->components INTO wa_comp .
WRITE wa_comp-name.
ENDLOOP.

Lo que hacemos es definir una referencia a la clase de descripción apropiada, la instancias de esta clase tienen un atributo COMPONENTS se utiliza para describir componentes individuales , El método devuelve la referencia de la instancia descripción de la estructura, la clase abstracta CL_ABAP_TYPEDESCR contiene el método estático DESCRIBE_BY_DATA.

La salida muestra los campos que componen la tabla SPFLI.

- RTTC (RUN CREATION AT RUN TIME ).

creación de tipos en tiempo de ejecución. Son implementadas a través de atributos de tipos de objetos. Significa que cada tipo tiene un tipo de objeto cuyo atributos describen las propiedades del tipo.

La clase de jerarquía del tipo de clases corresponde a la jerarquía de los tipos en el sistema de tipos de ABAP.

Los tipos de objetos pueden ser creador por el tipo de método de clase. Para obtener referencias a tipos de objetos se pueden llamar a métodos estáticos específicos de la clase CL_ABAP_TYPEDESCR o métodos de clases especiales (GET_I , GET_C , CREATE.)

Podemos utilizar RTTC Para crear tipos básicos de datos como también crear tipos de datos complejos como ESRTRUCTURAS Y TABLAS INTERNAS.

Ejemplo de programa RTTC

DATA: r_linetype TYPE REF TO cl_abap_structdescr,
r_tabletype
TYPE REF TO cl_abap_tabledescr,
key TYPE abap_keydescr_tab,
r_itab
TYPE REF TO data.

r_linetype ?= cl_abap_typedescr
=>describe_by_name( 'SPFLI' ).

APPEND 'CARRID' TO key.
APPEND 'CONNID' TO key.

r_tabletype
= cl_abap_tabledescr=>create(
p_line_type
= r_linetype
p_table_kind
= cl_abap_tabledescr=>tablekind_sorted
p_unique
= abap_true
p_key
= key
).


CREATE DATA r_itab type HANDLE r_tabletype.

Con el método créate , la clase CL_ABAP_TABLEDESCR nos permite crear un tipo de tabla interna en tiempo de ejecución , el parámetro P_LINE_TYPE es un parámetro formal del método estático. El cual describe la línea utilizando la referencia de una clase CL_ABAP_STRUCTDESCR en el ejempo es SPFLI como un tipo de línea y el método DESCRIBE_BY_NAME instancia un objeto.

En el CREATE DATA es una aplicación de tipo tabla recientemente creado onde creamos una tabla interna en tiempo de ejecución.


 

 

 


Sobre el autor

Publicación académica de Tobias Emanuel Mareco Rojas, en su ámbito de estudios para el Máster ABAP POO.

SAP Master

Tobias Emanuel Mareco Rojas

Profesión: Ingeniería en Informática - Paraguay - Legajo: QL24S

✒️Autor de: 92 Publicaciones Académicas

🎓Egresado de los módulos:

Disponibilidad Laboral: FullTime

Certificación Académica de Tobias Mareco

✒️+Comunidad Académica CVOSOFT

Continúe aprendiendo sobre el tema "RTTS (Run Time Type Service)" de la mano de nuestros alumnos.

SAP Expert


Acceder a esta publicación

Creado y Compartido por: Daniel Alejandro Monteros Segura

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

Acceder a esta publicación

Creado y Compartido por: Juan Jose Pujol Diaz

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

SAP Senior

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!