En SAP ABAP es muy habitual trabajar con dominios. Un dominio define qué valores son válidos para un campo, por ejemplo: estados, tipos, indicadores, flags, etc.
Muchas veces esos valores no solo se usan a nivel técnico, sino que también necesitamos mostrarlos al usuario, por ejemplo:
- En un desplegable en Fiori
- En una ayuda de valores
- Para validaciones
- Para mostrar textos descriptivos en lugar de códigos
En este artículo veremos las distintas formas de obtener los valores de un dominio en ABAP.
Dónde se guardan los valores de un dominio
Los valores fijos de un dominio se almacenan en tablas del Diccionario de Datos. La más importante es:
📌 DD07T – Textos de valores de dominio
Esta tabla contiene:
- El nombre del dominio
- El valor fijo
- El idioma
- El texto descriptivo
Campos clave:
DOMNAME→ Nombre del dominioDOMVALUE_L→ ValorDDLANGUAGE→ IdiomaDDTEXT→ Texto descriptivo
Opción 1: leer los valores directamente de DD07T
Esta es la forma más utilizada y sencilla, sobre todo para:
- Llenar combos
- Mostrar textos
- Lógica simple
Ejemplo básico
SELECT domvalue_l,
ddtext
FROM dd07t
INTO TABLE @DATA(lt_domain_values)
WHERE domname = 'Z_STATUS'
AND ddlanguage = @sy-langu.
👉 Muy útil para Fiori, ALV, validaciones y UI logic.
Opción 2: usar funciones estándar de SAP
SAP ofrece funciones estándar para obtener valores de dominios, lo cual es más robusto que leer directamente de tablas.
📌 DD_DOMVALUES_GET
Esta función devuelve los valores y textos de un dominio.
Ejemplo:
DATA lt_values TYPE TABLE OF dd07v.
CALL FUNCTION 'DD_DOMVALUES_GET'
EXPORTING
domname = 'Z_STATUS'
langu = sy-langu
TABLES
dd07v_tab = lt_values.
Ventajas:
- No dependes directamente de tablas técnicas
- SAP gestiona internamente textos y conversiones
- Más seguro ante cambios internos
👉 Buena práctica en desarrollos más limpios o reutilizables.
Dominios vs tablas de customizing
⚠️ Importante aclaración:
No siempre es buena idea usar dominios para listas largas o dinámicas.
Usa dominios cuando:
- La lista es pequeña
- Los valores son estables
- No cambian con frecuencia
- Representan estados o tipos
Usa tablas de customizing cuando:
- Los valores pueden cambiar
- El cliente debe mantenerlos
- Hay muchos registros
- Dependen del mandante
👉 Dominios ≠ tablas de configuración. Cada uno tiene su propósito.
Buenas prácticas
✅ Usa dominios para valores fijos y controlados
✅ Prefiere funciones estándar (DD_DOMVALUES_GET) en lugar de lecturas directas
✅ Filtra siempre por idioma (sy-langu)
✅ No abuses de dominios para listas grandes
✅ Reutiliza dominios en lugar de duplicar valores
Los dominios son una herramienta clave para garantizar consistencia en SAP.
Saber cómo obtener sus valores en ABAP te permite:
- Crear UIs más limpias
- Evitar hardcodes
- Centralizar la lógica de valores permitidos
- Integrar mejor backend y frontend (Fiori)
Ya sea leyendo DD07T o usando funciones estándar, dominar este tema te ahorra muchos problemas en proyectos reales.

