Diferencia entre Tipo Tabla - Estructura

pues exáctamente eso, a la hora de entrar a la SE11 y crear un Tipo de Datos, se puede elegir

  • Elementos de Datos
  • Estructura
  • Tipo Tabla

Cual es exactamente la diferencia entre ellos y cuando es conveniente utilizarlos?

Este año se habló de ésto en algunos debates, y aquí:

Hay también un PDF sobre tablas internas en español aquí:
https://foros.consultoria-sap.com/t/tablas-internas/6928 (requiere nivel 3 de confianza, o ser VIP)

Los elementos de datos te sirven para definir el tipo de campo que estás declarando, normalmente utilizamos los estándar, por ejemplo gjahr (ejercicio), bukrs (sociedad) y ya tienen definidos su longitud y tipo, por ej. char 4, sin embargo, habrá ocasiones en los que tendrás que crear elementos de datos Z si te piden digamos, decimales, nueva descripción, etc., que los que son estándar no cumplan.

Una estructura te permitirá declarar un conjunto de campos ya sea en la se11 o en tu código (en la se11 similar a una tabla y en código con el comando TYPES), la podrás utilizar tanto para declarar una tabla interna o una work area con el mismo mapeo de campos de la estructura (muy útil en consultas para evitar utilizar el SELECT * y mejorar el rendimiento, o para declarar parámetros de un módulo de funciones, por ejemplo.

Por último el tipo tabla es el objeto de los 3 que menos he utilizado, cuando lo creas le pasas a su vez una estructura para que tome este mapeo (como lo puse arriba), la única utilidad que yo le he dado hasta ahora es en la creación de módulos de funciones, más específicamente cuando necesitas uno con una tabla como parámetro, en la sección de tablas declaras una y le pasas el tipo tabla, porque si le pasarás una estructura lo tomaría como si fuera una work area.

Espero les sea de utilidad, saludos!

4 Me gusta

Hola.
Espero explicarme de una manera que puedas entender:
Una estructura es un conjunto de campos, velo como una linea de una tabla.
Un tipo tabla, es como una estructura pero que se comporta como tabla, osea que puede tener varias lineas de la misma estructura, sólo se ocupa de manera lógica no física, osea que sólo la ocupas como tabla dentro de los programas o funciones, por lo tanto no guarda datos en la base de datos física.

1 me gusta

Este tema se cerró automáticamente 91 días después del último post. No se permiten nuevas respuestas.