SAP Diccionario de datos ABAP (SE11)
⚡ Resumen inteligente
SAP El Diccionario de datos ABAP (SE11) centraliza todas las definiciones de metadatos utilizadas por SAP aplicaciones. Esta página explica los tres niveles reutilizables (dominios, elementos de datos y tablas), además de objetos agregados como vistas, ayudas de búsqueda y objetos de bloqueo.

¿Qué es el diccionario de datos?
El Diccionario de datos es una fuente central de información para los datos en un sistema de gestión de información. Su función principal es apoyar la creación y gestión de definiciones de datos (o “metadatos”).
In SAPEste repositorio central se denomina Diccionario ABAP y se gestiona mediante la transacción SE11. Cada tabla, campo, vista y bloqueo utilizado por un programa ABAP se describe aquí una sola vez y luego se reutiliza en todas partes, por lo que nunca es necesario repetir una definición dentro de los programas individuales.
La pantalla superior muestra la pantalla inicial de SE11, donde se selecciona cada tipo de objeto del diccionario antes de que se muestre o se modifique. Antes de examinar esos tipos de objetos, es útil comprender por qué. SAP Mantiene estos metadatos fuera de los programas que los utilizan.
Por qué es importante el Diccionario ABAP
El diccionario ABAP existe porque SAP Separa la descripción de los datos de los programas que los procesan. Un campo como el número de documento de compra se describe una sola vez, y todos los informes, pantallas y módulos de funciones que lo necesitan hacen referencia a esa única descripción.
Esta definición central ofrece cuatro beneficios prácticos. Se garantiza la coherencia, ya que cualquier cambio realizado en un dominio afecta inmediatamente a todos los campos que hacen referencia a él mediante un elemento de datos. Se elimina la redundancia, puesto que los desarrolladores reutilizan las definiciones existentes en lugar de crear otras nuevas. Integrity Está protegido, ya que los rangos de valores, las tablas de verificación y las claves foráneas se validan mediante el diccionario en lugar del código de la aplicación. Finalmente, el diccionario es independiente de la base de datos, por lo que una tabla definida en SE11 se crea automáticamente en la base de datos subyacente con los tipos nativos correctos.
El diccionario también está activo en tiempo de ejecución. Las pantallas leen las etiquetas de los campos, los textos de ayuda y los rangos de valores directamente de él, por lo que la ayuda F1 o la lista de valores F4 aparecen sin necesidad de añadir una sola línea de código. Los tres niveles que se describen a continuación explican cómo se organiza esta reutilización.
Diccionario ABAP 3 niveles
Los objetos en el Diccionario ABAP residen en tres niveles que respaldan su reutilización. Estos niveles son:
- Dominios
- Elementos de datos
- Mesas y estructuras
Cada nivel se basa en el anterior: un dominio proporciona los atributos técnicos, un elemento de datos les da un significado comercial y una tabla o estructura agrupa los elementos de datos en un registro. Analicemos cada uno en detalle.
Dominios
- Describe las características técnicas de un campo de tabla.
- Especifica un rango de valores que describe los valores de datos permitidos para los campos.
- Los campos que hacen referencia al mismo dominio (a través de los elementos de datos que se les asignan) se modifican cuando se realiza un cambio en el dominio
- Asegura la consistencia
Ex. Número de documento de compra (EBELN)
La pantalla de dominio anterior define únicamente el tipo y la longitud de los datos. El significado comercial de ese valor lo proporciona el siguiente nivel, el elemento de datos.
Elementos de datos
- Describe el papel que desempeña un campo en un contexto técnico.
- Los campos con el mismo significado semántico pueden referirse al mismo elemento de datos.
- Contiene la información del campo.
Ex. Número de documento de compra (EBELN)
La pantalla de elementos de datos contiene las etiquetas de los campos y la documentación que los usuarios ven en pantalla. A continuación, los elementos de datos se combinan en tablas.
Mesas
- Representa las tablas de la base de datos donde realmente residen los datos.
- Las tablas se pueden definir independientemente de la base de datos en el Diccionario ABAP.
- Los campos de la tabla se definen con sus (independientes de la base de datos) SAP tipos de datos ABAP y longitudes.
Estructuras
- Son declaraciones de registros que NO corresponden a una Tabla de Base de Datos.
- Al igual que el tipo de datos definido por el usuario.
- Se define como una tabla y luego se puede abordar desde programas ABAP.
- Las estructuras contienen datos sólo durante el tiempo de ejecución de un programa.
La tabla que aparece a continuación compara los tres niveles de un vistazo.
| Nivel | Lo que define | ¿Almacena datos? | Ejemplo típico |
|---|---|---|---|
| Dominio | Atributos técnicos: tipo de datos, longitud, rango de valores | No | EBELN (CARACTER 10) |
| Elemento de datos | Significado semántico: etiquetas de campo, documentación, ayuda F1 | No | EBELN — Número de documento de compra |
| Tabla | Un registro de campos que se crea en la base de datos | Sí, persistentemente | EKKO — Encabezado del documento de compra |
| Estructura | Un registro de campos utilizados únicamente dentro de un programa. | Sí, solo en tiempo de ejecución. | Área de trabajo para un mesa interna |
Objetos agregados del diccionario ABAP
Medios agregados que constan de varios componentes. En el Diccionario ABAP, los objetos agregados son objetos que provienen de varias tablas transparentes diferentes.
- Vistas
- Buscar Ayuda
- Bloquear objetos
Veámoslos en detalle.
Vistas
- Vistas en SAP – ABAP se utiliza para resumir datos que están distribuidos entre varias tablas.
- Los datos de una vista en realidad no se almacenan físicamente. En cambio, los datos de una vista se derivan de una o más tablas.
- Se adapta a las necesidades de una aplicación específica.
Buscar Ayuda
- Una ayuda de búsqueda es una herramienta que le ayuda a buscar registros de datos en el sistema.
- Una búsqueda eficiente y fácil de usar ayuda a los usuarios cuando se desconoce la clave de un registro.
Bloquear objetos
- Acceso simultáneo al mismo registro de datos por parte de dos usuarios en el mismo sistema. SAP El sistema está sincronizado mediante un mecanismo de bloqueo.
- Los bloqueos se establecen y liberan llamando a ciertos módulos de funciones. Estos módulos de funciones se generan automáticamente a partir de la definición de los llamados objetos de bloqueo en el Diccionario ABAP/4.
Módulos de funciones : Enqueue_ – para bloquear la tabla dequeue_ – para liberar el bloqueo
⚠️ Advertencia: Un bloqueo establecido con ENQUEUE y nunca liberado con DEQUEUE permanece activo hasta que finaliza la sesión del usuario. Siempre se debe llamar al módulo DEQUEUE, incluso en la ruta de error del programa.
Una vez comprendidos los tipos de objetos, la siguiente sección los aplica creando una tabla transparente en SE11.
Cómo crear una tabla transparente en SE11
Una tabla transparente es el objeto de diccionario más común, ya que tiene una relación uno a uno con una tabla física en la base de datos. Los pasos que se describen a continuación crean una desde cero.
- Abrir SE11: Ingrese la transacción SE11, seleccione la Tabla de base de datos botón de opción, escriba un nombre en el espacio de nombres del cliente (que comience con Z o Y) y elija Crear.
- Introduzca la breve descripción y la clase de entrega: En la Atributos pestaña, agregue un texto corto y configure la clase de entrega, que indica SAP cómo se comportan los datos durante una copia de cliente o una actualización. La clase de entrega A se utiliza para los datos de la aplicación y la C para los datos de personalización.
- Establezca el atributo de mantenimiento: Elija Se permite la exhibición y el mantenimiento. De esta forma, posteriormente se puede generar una vista de mantenimiento con SE55 o SM30.
- Defina los campos: En la Terrenos En la pestaña, agregue MANDT como el primer campo clave con el elemento de datos MANDT y, a continuación, agregue los campos clave de negocio. Cada campo está tipificado por un elemento de datos, que a su vez hace referencia a un dominio, por lo que los tres niveles descritos anteriormente se reutilizan en lugar de redefinirse.
- Mantener la configuración técnica: Haga clic en Configuración técnica (transacción SE13) y configure la clase de datos, por ejemplo APPL0 para datos maestros, junto con la categoría de tamaño esperada. Estos valores determinan el espacio de tablas y el tamaño inicial en la base de datos.
- Activar: Prensa ActivaLa activación genera la tabla física en la base de datos y hace que la definición sea utilizable en programas ABAP.
💡 Consejo: Cree claves foráneas para cada campo que deba validarse con una tabla de verificación. El diccionario se encargará automáticamente de establecer la relación, sin necesidad de código de validación en el programa.
Una vez que la tabla esté activa, se puede acceder a ella directamente desde un programa ABAP con Open SQLEl siguiente ejemplo lee la tabla de diccionario estándar SCARR en una tabla interna y muestra su contenido.
REPORT zdemo_ddic_read. * Internal table typed directly from the dictionary table SCARR DATA: lt_scarr TYPE STANDARD TABLE OF scarr, ls_scarr TYPE scarr. SELECT carrid carrname currcode FROM scarr INTO TABLE lt_scarr. LOOP AT lt_scarr INTO ls_scarr. WRITE: / ls_scarr-carrid, ls_scarr-carrname, ls_scarr-currcode. ENDLOOP.
Dado que la tabla interna está tipificada con TYPE STANDARD TABLE OF scarr, la longitud y el tipo de datos de cada campo provienen del diccionario. Si la definición de la tabla cambia, el programa detecta el cambio tras la activación sin necesidad de editarla.
Transacción del diccionario ABAP esencial Codes
Las siguientes transacciones abarcan el trabajo diario de definir, verificar y mantener los objetos del diccionario.
| transacción | Propósito |
|---|---|
| SE11 | Pantalla inicial del diccionario de datos (solo visualización SE12) |
| SE13 | Diccionario ABAP: Configuración técnica |
| SE14 | Utilidad de base de datos |
| SE15 | Sistema de Información del Repositorio |
| SE16 | Navegador de datos |
| SE17 | Exhibición general de la mesa |
| SE55 | Mantenimiento de la vista de tabla |
| SM30 | Mantenimiento de la mesa |








