Deep Structure en ABAP: guía práctica

Deep structure

Una Deep Structure en ABAP combina estructuras y componentes internos, como tablas anidadas, para modelar datos complejos. Esta guía muestra cómo definirla en el Diccionario, cargar información y trabajar con sus objetos de forma ordenada.

Contenido

1.     Creación de objetos del diccionario de datos

2.     Inserción de datos

3.     RS_COMPLEX_OBJECT_EDIT Function module

1. Creación de objetos del diccionario de datos

Comenzaremos este desarrollo con la definición de la estructura “YST_EMP_LOGALI – Employee address structure”, esta estructura constará de los siguientes campos:

Vista SAP GUI

Deep Structure en ABAP: guía práctica 1

Vista Eclipse

Deep Structure en ABAP: guía práctica 2

La siguiente estructura que creamos es “YST_AREA_LOGALI” con los siguientes campos:

Vista SAP GUI

Deep Structure en ABAP: guía práctica 3

Vista Eclipse

Deep Structure en ABAP: guía práctica 4

Definimos un tipo tabla llamado “YTT_EMP_LOGALI” que tendrá como tipo, la estructura anteriormente creada “YST_EMP_LOGALI – Employee address structure”.

Vista Eclipse

Deep Structure en ABAP: guía práctica 5

Vista SAP GUI

Deep Structure en ABAP: guía práctica 6

Posteriormente, empezamos con la creación de la estructura anidada “Deep structure” que llamaremos “YST_DEEP” esta tendrá campos de información general del empleado, adicional, tendrá dos campos con tipos complejos, el primero “EMPLOYEE_AREA” tendrá el tipo de estructura “YST_AREA_LOGALI” y el segundo tendrá el tipo tabla “YTT_EMP_LOGALI”.

Vista Eclipse

Deep Structure en ABAP: guía práctica 7

Vista SAP GUI

Deep Structure en ABAP: guía práctica 8

1.       Inserción de datos

Realizamos la codificación para insertar datos en una tabla interna SORTED del tipo de la estructura compleja “YST_DEEP” con clave única por el campo “ID_EMPLOYEE”.

Declaramos las estructuras y la tabla interna.

Deep Structure en ABAP: guía práctica 9

Añadimos la información mediante el operador VALUE a las estructuras “GS_EMP” y “GS_ADD”, esto para el registro del empleado 1.

Deep Structure en ABAP: guía práctica 10

Insertamos los datos de la dirección del empleado a el campo tipo tabla de la estructura de los datos del empleado.

Posteriormente, insertamos los datos de la estructura compleja a la tabla interna sorted, debemos pasarle el índice.

Deep Structure en ABAP: guía práctica 11

Realizamos el mismo procedimiento para ingresar otro registro, del empleado 2, por ejemplo.

Este registro lo insertamos en el índex dos, recordemos que al ser clave única por el campo de “ID_EMPLOYEE”, no podemos repetir este valor en los registros.

Deep Structure en ABAP: guía práctica 12

1.       RS_COMPLEX_OBJECT_EDIT Function module

Ahora usaremos el módulo de funciones “RS_COMPLEX_OBJECT_EDIT” el cual nos permitirá mostrar una estructura profunda con todos sus niveles.

Deep Structure en ABAP: guía práctica 13

Activamos todo el programa y ejecutamos para obtener la siguiente salida:

Deep Structure en ABAP: guía práctica 14

Si ingresamos a el último campo, obtendremos toda la información de las direcciones del empleado, representado en una tabla. Empleado 1

Deep Structure en ABAP: guía práctica 15

Empleado 2

Deep Structure en ABAP: guía práctica 16

Preguntas frecuentes

¿Qué es una Deep Structure en ABAP?

Es una estructura que contiene al menos un componente profundo, por ejemplo una tabla interna, una referencia o una cadena dinámica.

¿Cuándo conviene usar una estructura profunda?

Cuando necesitas representar una entidad con datos de cabecera y varias líneas relacionadas, o intercambiar información compleja entre programas y servicios.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *