✒️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
1- Los datos en el sistema SAP, se clasifican en tres tipos:
- Datos maestros: son datos que no se modifican muy a menudo. Ej. datos de materiales, cuentas, bancos, clientes, etc.
- Datos de movimientos: son datos muy volátiles y con gran volumen de generación. Ej. datos de facturas, pedidos, etc.
- Datos del sistema o de control: son datos que tienen que ver con la configuración del sistema.
2- ¿Que es el diccionario de datos?: nos permite la administración de todas las definiciones de datos usadas en el sistema SAP. Se accede a el a través de la transacción SE11. Aquí podemos crear, modificar y visualizar tablas base de datos, vistas, estructuras, elementos de datos, grupos de tipos, dominios, ayudas para búsqueda y objetos de bloqueo.
Transacción SE11: es la transacción estándar SE11 corresponde al Diccionario de datos ABAP. Esta es una de las transacciones mas utilizadas tanto por los Consultores Técnicos ABAP como por los Consultores Funcionales de los distintos módulos.
3- ¿Cómo crear una tabla base de datos, un elemento de datos y dominio?
Creamos la tabla ZTABLA_USUARIOS ingresando el nombre de la nueva tabla a la derecha del texto "Tabla base datos" y presionamos el botón Crear. Completamos la Descripción breve de la nueva tabla con el texto "Tabla de usuarios". En la solapa Entrega y actualización completamos la Clase de entrega con "A" que significa que la tabla es de aplicación y que tiene datos maestros y de movimientos. Existen otras opciones que podremos ver si presionamos el botón que aparece al posicionar el cursor en el cuadro de texto.
Audio Tips 1: a parte de la clase de entrega "A" que corresponde a datos maestros y de movimiento otra clase muy utilizada es la C que se utiliza para la configuración del sistema, la particularidad que tiene esta clase de entrega es que cada vez que generamos una nueva tabla con clase de entrega C el sistema nos permite guardar dicha entrada en una orden de entrega de CUZTOMIZING.
En Browser datos/Actual. vista tabla elegiremos la opción "Visual./Actuali.permitida" esto significa que se podrá actualizar el contenido de la tabla mediante la transacción SM30.
Transaccion SM30: la transacción estándar SM30 se utiliza para actualizar los registros de una tabla base de datos.
En la solapa "Campos" ingreso los campos que va a tener la tabla, estos van a ser DNI, NOMBRE_APE, ESTADO_USU y el MANDANTE que no debe faltar en ninguna tabla.
Recordatorio: Todas las tablas base de datos que creemos deben tener el mandante como primer campo de la tabla. Este debe ser parte de la clave.
A cada campo de la tabla se le puede asignar un tipo instalado seleccionando la línea del campo y presionando el botón Tipo Instalado, como podría ser CHAR de 30 posiciones o crear un elemento de datos para cada campo.
En nuestra tabla, crearemos los elementos e datos Z_DNI, Z_NOMBRE_APE y Z_ESTADO_USU
Tambien es posible utilizar elementos de datos que ya existen en el sistema, como es el caso del MANDT.
Para crear el elemento de datos Z_DNI haremos doble clic sobre el elemento, el sistema nos ofrecerá guardar la tabla diremos que si y le asignaremos como paquete objeto local. Luego nos aparecerá la siguiente ventana de diálogo, presionamos la opción "SI", en la descripcion breve completamos una descripción del contenido del campo. Luego podemos elegir entre crear un dominio para este campo, utilizar un tipo instalado o predefined type ya existente en el sistema o utilizar un tipo de referencia o reference type.
En este caso utilizaremos un tipo instalado y le asignaremos el tipo de datos NUMC de 8 posiciones.
Luego iremos a la solapa Denom.campo (Field Label) y actualizaremos los denominadores de campo que son los títulos con los que se verá el campo cuando se visualice en una transacción o reporte.
En este caso los denominadores de campo son todos iguales pero la idea es dar una descripción mas detallada del breve a la cabecera. Por último activaremos el elemento de datos mediante el botón y nos aparecerá una nueva ventana de diálogo donde confirmaremos la activación seleccionando el elemento a activar y presioonando el botón de tilde.
Audio Tips 2: al momento de escribir los textos correspondientes a los denominadores de campo, breves, mediano, largo y cabeceras no debemos preocuparnos por completar las longitudes de cada uno de ellos a la izquierda de la pantalla ya que eso lo realiza automaticamente el sistema en base a la cantidad de caracteres que introduzcamos para cada texto.
Para el campo NOMBRE_APE crearemos el elemento de datos Z_NOMBRE_APE tal como hicimos con Z_DNI.
Para el campo ESTADO_USU, crearemos el elemento de datos Z_ESTADO_USU tal como hicimos con Z_DNI y tambien crearemos el dominio ZZ_ESTADO_USU para asociarle el ámbito de valores: A=Activo, I=Inactivo y N=Anulado.
Objetivos: de crear un dominio es asociarle un ámbito de valores, sino es preferible utilizar un tipo instalado.
Si hacemos doble clic sobre ZZ_ESTADO_USU el sistema nos preguntará en una ventana de diálogo si deseamos crear dominio. Conestaremos que si y veremos la siguiente pantalla: (Dict: Actualizar dominios). COmpletamos la Descripción breve del dominio con "Estado del usuario". EL tipo de datos será CHAR de 1 posición. Luego en la solapa Value Range o Ambito de valores completaremos el ámbito de los valores de dominio. Por último activamos el dominio ZZ_ESTADO_USU luego activamos el elemento de datos Z_ESTADO_USU y finalmento lo que nos queda antes de activar la tabla ZTABLA_USUARIOS es configurar las opciones técnicas de la tabla presionando el botón Opciones Técnicas (Technical Settings).
Audio Tips 3: si queremos que un campo de una tabla base de datos tome una lista de valores de otra tabla de base de datos maestra entonces en el dominio de ese campo colocaremos en la tabla de valores la tabla maestra de donde se tomarán los datos.
Aquí completaremos la clase de datos con APPL0 que es la corespondiente a Datos maestros, tablas transparentes y la Categ.tamaño con "3" que es el valor correspondiente a una tabla de 78.000 a 310.000 registros de datos. Luego activamos la tabla ZTABLA_USUARIOS y veremos la siguiente ventana de diálogo donde el sistema informa si existen mensajes de advertencia. Aquí nos presentan dos opciones: si presionamos NO la tabla se activará sin importar los mensajes de advertencia, si presionamos SI el sistema nos dirá cuales son las advertencias para que las corrijamos previamente a la activación de la tabla. Dado que nuestro objetivo como desarrolladores ABAP siempre será priorizar la calidad presionaremos SI. En la siguiente pantalla el sistema nos informa que falta definir la Categoria de Ampliación de la tabla base de datos que acabamos de construir.
NUevo concepto: CATEGORIA DE AMPLIACION: Determina si la tabla base de datos será ampliable en el futuro. Este concepto está muy ligado con las llamadas Estructuras Append.
Para definir categoría de ampliación seleccionamos la opción del menú Detalles/categoría de ampliación. Luego visualizamos la siguiente ventana de diáliogo donde el sistema nos informa que la categoría de ampliación de la tabla no se encuentra clasificada. Presionamos el botón tilde verde.. Finalmente seleccionamos la opción AMpliable de cualquier manera y presionamos el botón Tomar.
 
 
 
Sobre el autor
Publicación académica de Claudio Marcelo Dario Haikel, en su ámbito de estudios para la Carrera Consultor ABAP.
Claudio Marcelo Dario Haikel
Profesión: Funcional Sap - Argentina - Legajo: HM94J
✒️Autor de: 58 Publicaciones Académicas
🎓Egresado del módulo:
Certificación Académica de Claudio Haikel