✒️ABAP Las tablas bases de datos, los elementos de datos y los dominios
ABAP Las tablas bases de datos, los elementos de datos y los dominios
Unidad n°3: El diccionario de datos
Lección n°3: Las tablas base de datos, los elementos de datos y los dominios
Los datos en el sistema SAP:
SAP se compone por diferentes datos:
- Datos maestros: datos que no se modifican muy a menudo (datos de materiales, cuentas, bancos, etc).
- Datos de movimiento: datos muy volátiles y con gran volumen de generación (datos de facturas, de pedidos, etc).
- Datos del sistema o de control: datos que tienen que ver con la configuración del sistema.
Estos datos se guardan en tablas base de datos (tbd).
¿Qué es el Diccionario de datos ABAP (DICC)?
Es una herramienta que permite administrar todas las definiciones de datos existentes en el sistema SAP.
Cuando decimos todas las definiciones son las estándar del sistema y las creadas por el usuario.
El DICC está integrado en el Workbench ABAP que es un conjunto de herramientas que se usa para el desarrollo, testing y ejecución de programas que tienen acceso a las definiciones almacenadas en el DICC.
Usaremos la trans SE11 para entrar al DICC.
Dentro, podremos crear, modificar y visualizar los siguientes objetos:
- Tablas base de datos (tbd): objeto en el que se almacena permanentemente la info. Es el componente central de DICC. El conjunto de tablas forman una "base de datos del sistema".
Una tbd es sinónimo de Tabla transparente. Cada tbd está formada por filas (registros) y columnas (campos). - Vistas: objeto que consiste en la unión de dos o más tbd existentes en el DICC, usando condiciones de unión y selección, que permite ver datos pertenecientes a varias tbd en la única selección de datos.
Las vistas tienen la misma estructura que las tbd (filas y columnas), con la diferencia de que solo se almacena de ellas la definición y no los datos. - Tipos de datos: tipos de datos que se pueden crear dentro del DICC, no almacenan info, si no que se usan como referencia para definir datos en programas o en tbd o para configuración.
Se pueden crear tres diferentes tipos de objetos:
Elemento de datos: define el tipo de datos de una variable en un programa o de un campo dentro de una tbd.
Estructura: no almacena info, es un tipo de datos complejo que tiene varios campos. Se puede usar una estructura definida en el DICC en un programa como referencia para declarar otros tipos de datos.
Tipo de tabla: por el cual se puede crear un tipo de ti usando el formato de una estructura. Se usa en casos específicos. - Grupos de tipos: se puede crear para definir dentro todos los tipos de datos usados comúnmente en nuestros programas, de modo de poder incluir este grupo en nuestros desarrollos y no tener que definir todo. Funciona como un INCLUDE de tipos de datos.
- Dominios: consiste en la especificación técnica de un campo de una tbd y define lo que se conoce como estructura de campo. Es reutilizable para otros campos. Un dominio tiene asociado un ámbito de valores posibles.
- Ayuda para la búsqueda: para definir posibles valores de ayuda de un campo de una tbd o un campo de una pantalla SAP. Comúnmente todos los parámetros de la pantalla de selección de un programa ABAP presentan ayuda de búsqueda.
- Objetos de bloqueo: se puede crear para permitir que varios usuarios puedan actualizar datos de una tbd recurrentemente, sin que se pierda info, de modo de garantizar la consistencia de los datos.
Cuando modificamos un objeto del DICC, automáticamente cambia su referencia al nuevo estado del objeto la próx. vez que se ejecute.
¿Cómo crear una tbd, un elemento de datos y un dominio?
- Entrar al DICC y en tbd escribir "Z_TABLA_USUARIOS" y clic en crear.
- En la prox. pantalla completamos donde dice Descripción breve con el texto "tabla de usuarios".
- En la solapa Entrega y actualización completamos la Clase de entrega con una "A" que significa que la tabla es de aplicación y que tiene datos maestros y de movimientos.
- En el campo Browser datos/... elegir la opción "Visualización/Actualización permitida", que significa que se podrá actualizar el contenido de la tbd con la trans SM30.
*Trans. SM30: se usa para actualizar los regustris de una tbd. - En la solapa campos ingresamos los campos que tendrá nuestra tbd:
Mandante
DNI
Nombre_Ape
Estado_usu
Direccion
Fnacimiento
Nacionalidad
Todas las tbd deben tener el mandante como 1er campo de la taba, ya que los datos almacenados en las tbd dependen de los mandantes.
- Luego de definir los campos, hay que tildar los que serán campos claves de la tabla, los cuales no podrán repetirse ni tener valores iniciales o en blanco.
Tildaremos el "Mandante" y el "DNI" que corresponde al documento nacional de identidad del usuario (es único). - Definir los tipos de datos de cada campo, para ellos hay dos opciones:
Se le puede asignar un tipo instalado seleccionando la línea del campo y clic en el botón "Tipo instalado"
Crear un elemento de datos para cada campo. - En "Elementos de datos" crearemos los elementos de datos haciendo:
Z_ DNI
Z_NOMBRE_APE
Z_ESTADO_USU
Z_DIRECCION
Z_FNACIMIENTO
Z_NACIONALIDAD
También podemos usar elementos de datos existentes en el sistema como el MANDT. - Para crearlos, hacemos doble clic sobre ellos y el sistema guardará los cambios a la tbd, y le asignaremos como paquete el objeto local.
- Nos aparecerá una ventana de diálogo para crear el elemento de datos, clic en SI.
- Aparecerá una pantalla donde tenemos que poner una descripción breve.
Para definir el tipo de elemento de datos podemos elegir entre crear un dominio, usar un tipo instalado ya existente o usar un tipo referencia.
Siguiendo nuestro ejemplo elegimos el tipo instalado y le asignamos el tipo de datos NUMC de 8 posiciones.
Ir a la solapa denominadores de campo y actualizar los denominadores que son los títulos con los que se verá el campo cuando se visualice en la trans o reporte.
Finalmente activar el elemento de datos con el botón de activación, donde en una nueva ventana debemos confirmar la activación seleccionando el elemento a activar.
Para los demás elementos haremos lo mismo, además crearemos el dominio ZZ_ESTADO_USU para asociarle el ámbito de valores: A (activo), I (inactivo) y N (anulado).
- Si hacemos doble clic en el dominio ZZ_ESTADO_USU el sistema nos preguntará si deseamos crear el dominio y damos clic en SI.
- En la prox. pantalla completar la descripción breve del dominio con el Estado del usuario y el tipo de datos será CHAR de 1 posición.
- En la solapa Ámbito de valores, completamos el ámbito de valores del dominio.
- Activar el dominio y luego el elemento de datos Z_ESTADO_USU.
Hacer lo mismos pasos para crear los elementos de datos Z_DIRECCION, Z_FNACIMIENTO y Z_NACIONALIDAD.
Ahora configuraremos las opciones técnicas de la tbd ZTABLA_USUARIOS presionando el botón Opciones Técnicas:
- Completar la clase de datos con APPL0 que corresponde a Datos maestros, tablas transparentes.
- En categoría de tamaño completar con 3 (valor correspondiente a una tabla de 78.000 a 310.000 registros de datos).
- Activar la tbd.
- En la prox. ventana el sist nos informa que existen msjs de advertencia donde daremos clic en Si deseo ver el log de activación.
- En la porx. pantalla el sistema informa que no definimos la Categoría de Ampliación de la tbd que construimos.
*Categoría de ampliación: determina si la tbd será ampliable en un futuro.
Para definirla vamos a la opción del menú Detalles -> Categoría de ampliación.
Veremos la prox ventana que el sistema informa que la categoría de la tabla no se ha clasificado y hacemos clic en la tilde.
Seleccionamos la opción "Ampliable de cualquier manera" y clic en Tomar.
Ahora podemos activar la tbd sin advertencias.
 
 
 
Sobre el autor
Publicación académica de Candela Estefanía Calzada, en su ámbito de estudios para la Carrera Consultor ABAP.
Candela Estefanía Calzada
Profesión: Técnica Electrónica - Argentina - Legajo: JW91W
✒️Autor de: 160 Publicaciones Académicas
🎓Egresado de los módulos:
Disponibilidad Laboral: FullTime
Presentación:
Me encuentro estudiando la ingeniería en sistemas de información. poseo amplia experiencia en edición de videos. tengo bases entorno a la programación que quiero continuar consolidando.
Certificación Académica de Candela Calzada