Contenido
1. Creación de objetos del diccionario de datos
3. RS_COMPLEX_OBJECT_EDIT Function module
Contenido
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
Vista Eclipse
La siguiente estructura que creamos es “YST_AREA_LOGALI” con los siguientes campos:
Vista SAP GUI
Vista Eclipse
Definimos un tipo tabla llamado “YTT_EMP_LOGALI” que tendrá como tipo, la estructura anteriormente creada “YST_EMP_LOGALI – Employee address structure”.
Vista Eclipse
Vista SAP GUI
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
Vista SAP GUI
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.
Añadimos la información mediante el operador VALUE a las estructuras “GS_EMP” y “GS_ADD”, esto para el registro del empleado 1.
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.
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.
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.
Activamos todo el programa y ejecutamos para obtener la siguiente salida:
Si ingresamos a el último campo, obtendremos toda la información de las direcciones del empleado, representado en una tabla. Empleado 1
Empleado 2