Macro DA# (4): Función macro DA# (3) -Reversa
Echemos un vistazo a la función Macro Reverse DA#.
Esta es una continuación del artículo anterior.
Macro DA# (3): Función de macro DA# (2) - Obtener/Establecer atributo
2.4. DA# Función de inversión de macros
2.4.1. Razones para crear la función Macro Reverse DA#
La función inversa de la herramienta de modelado de datos es una función que crea un modelo de datos de tipo ERD a partir de la base de datos utilizando técnicas de ingeniería inversa.
El método más común es acceder a la base de datos directamente y ejecutar la función inversa. Si es difícil acceder a la base de datos directamente o lleva mucho tiempo obtener la autorización, proporcione SQL para recopilar información del modelo de datos a la persona a cargo (generalmente DBA u operador de TI) que tiene autorización de acceso y exporte el resultado de la ejecución como un archivo de Excel La función inversa se puede ejecutar al recibirlo.
DA# proporciona tanto la función de invertir desde la base de datos como la función de invertir desde el archivo de Excel. Sin embargo, tiene las siguientes limitaciones y requiere mucho trabajo manual cuando se usa en el sitio del proyecto.
- Solo se puede procesar un modelo de datos a la vez.
- Si hay muchos modelos de datos (decenas a cientos), la función inversa debe ejecutarse repetidamente para cada modelo.
- Se crea como un diagrama de un solo tema y todas las entidades se colocan aleatoriamente.
- Es necesario crear un área temática y separar el área temática de cada entidad.
- En el diagrama de áreas temáticas, es necesario mover entidades, como agrupar entidades en áreas comerciales u organizar entidades relacionadas en un solo lugar.
Para superar las limitaciones anteriores tanto como sea posible y eliminar el trabajo manual tanto como sea posible, se creó una función inversa en la herramienta Macro DA#. Las siguientes funciones están disponibles.
- Se pueden invertir varios modelos a la vez
- Al designar el área temática de cada tabla, es posible ubicarla en el diagrama del área temática correspondiente.
- Designe un grupo de entidades dentro de un diagrama de área temática y organícelas en un lugar para cada grupo -> Función central
- Diseño definido por el usuario además del diseño proporcionado por DA# (planeado en una versión futura. Actualmente, solo se admite el diseño proporcionado por DA#)
2.4.2. Resumen de cómo usar la función inversa
- Cree un archivo de entrada de Excel, seleccione cada archivo en la hoja 'Reversa' y configure las opciones para ejecutar.
- El archivo Excel de entrada se crea ejecutando una consulta en la base de datos o utilizando el documento de definición de tabla que se está administrando.
2.4.3. fichero de entrada
- Lista de modelos: un archivo que crea una lista de modelos de destino inversa (obligatorio)
- Establecer DBMSTipo de modelo
- Solo se invierten los objetos cuyos nombres de modelo en la lista de la tabla y los modelos descritos en este archivo coinciden.
- Lista de tablas: el archivo que creó la lista de tablas de destino inverso (obligatorio)
- Lista de columnas: archivo que creó la lista de columnas de destino inverso (obligatorio)
- Lista FK: un archivo que crea una lista de claves foráneas (FK) para revertir (opcional)
- Notas sobre la creación de cada archivo de lista
- Las listas de modelo, tabla, columna y FK se pueden escribir en un archivo o guardar en archivos separados.
- La plantilla para cada lista debe prepararse utilizando el archivo adjunto en la parte inferior de la hoja "Reversa" de la macro DA# o como un archivo proporcionado por separado (debe escribirse en el formato prescrito)
2.4.4. Opciones inversas
- Modo de apertura del archivo de entrada: seleccione el modo (solo lectura, escritura) para abrir el archivo de entrada
- Si se cierra el archivo de entrada después del procesamiento: si se cierra después de leer todos los archivos de entrada y cargarlos en la memoria (Y: cerrar después de leer, N: mantener abierto)
- Método de organización de entidades: El método de organización proporcionado por DA# Menú > Formato > Organización automática. Actualmente, especifica uno de dos métodos: radial o HTree.
- Intervalo de disposición de grupo: intervalo horizontal y vertical entre grupos de entidades (unidad: píxel) (valor recomendado: 300 o más)
- Número de columnas de grupo en una fila: el número de grupos de entidades que se colocarán en una fila en el diagrama de área temática.
- Ejemplo: cuando hay 10 grupos de entidades en total
- Al establecer el número de columnas en 3: Dispuesto en 4 filas y 3 columnas (4×3)
- Al establecer el número de columnas en 5: Dispuesto en 2 filas y 5 columnas (2×5)
- Ya sea para usar la plantilla del modelo Reverse DA#: a continuación Ya sea para usar (crear un nuevo modelo sin usar una plantilla cuando se selecciona "N")
- Archivo de plantilla de modelo DA# inverso: Archivo de plantilla de modelo DA# inverso
- Designe un archivo en el que se guarden por adelantado las configuraciones predeterminadas del modelo
- Ejemplos de configuraciones predeterminadas del modelo: opciones de vista de nombre de objeto (ver nombres secundarios, ver sinónimos), escalado de página, etc.
- No se usa si la opción de uso anterior es "N"
- Valor de ejemplo: D:\Project\My\01.ExcelVBA\02.DA# Macro\test reverse file\template model.damx
- Ruta de almacenamiento del modelo DA# inverso: ruta para guardar el archivo del modelo DA# invertido (*.damx) (el nombre del archivo se crea de acuerdo con el formato a continuación)
- Formato de nombre de archivo del modelo: una cadena de formato que se aplica a los nombres de archivo del modelo.
- [Nombre del modelo]: nombre del modelo especificado en la plantilla de la lista de modelos
- [FECHA]: formato AAAAMMDD (por ejemplo, 20201228)
- [HORA]: formato HH24MISS (por ejemplo, 155621)
- Constante: nombre de la empresa del cliente, nombre del sistema, etc.
- Valor de ejemplo: Encore [nombre del modelo]_[FECHA]_[HORA].damx
- Si se debe crear un modelo físico: si se debe crear un diagrama de modelo físico para cada área temática
- "Y": Reverse tarda más en completarse, pero crea un modelo físico desde cero
- No crea el modelo de física "N" (el inverso se puede completar más rápido)
2.4.5. Archivo de plantilla: Modelo
- Nombre del modelo: el nombre del archivo del modelo que se guardará. Solo se invierte el modelo especificado aquí.
- Se utiliza en la opción "Modelo de formato de nombre de archivo".
- Debe coincidir con el nombre del modelo de tabla, columna y plantilla FK.
- DBMSType: especifica el tipo de DBMS que se asignará al modelo físico del modelo. Utilice uno de los siguientes valores. (Nota: a medida que se actualiza DA#, este valor puede agregarse o eliminarse)
- ALTIBASE
- GRAN CONSULTA
- CUBRIDO
- DB2UDB
- CIRUELA VERDE
- HANADB
- COLMENA
- IMPALA
- INFORMIX
- MARIA
- mysql
- NETEZZA
- BASE OCEÁNICA
- ORÁCULO
- POSTGRESQL
- DESPLAZAMIENTO AL ROJO
- SERVIDOR SQL
- SYBASEASE
- SYBASEIQ
- TERADATA
- tibero
- VERTICA
- Otros valores se especifican como ORACLE
- Definición: Una descripción del modelo.
2.4.6. Archivo de plantilla: Tabla
- Nombre del modelo: el nombre del archivo del modelo que se guardará. Solo se invierte el modelo especificado aquí.
- Nombre del área temática: Modelo de área secundaria temática para colocar cada tabla
- Nombre del grupo de entidades: las entidades con el mismo nombre de grupo se colocan en la misma posición en el diagrama del área temática.
- Antes de ejecutar Reverse, se analiza previamente el área de negocio de cada tabla (pedido, pago, etc.) o la naturaleza de la tabla (objeto (básico), detalle, código, histórico, temporal, relación, etc.), y el nombre del grupo se designa de antemano, y el grupo es Esto es útil si desea colocarlos en un solo lugar.
- Convierta el nombre del grupo de entidades en un cuadro de texto y recopile y organice las entidades debajo de él. (ver imagen abajo)
- Otros son los valores de los atributos asignados a la entidad objeto de DA# de la siguiente manera.
- nombre de la entidad
- nombre de la tabla
- sinónimo
- nombre auxiliar
- Propietario de la base de datos
- Clasificación: Una de Clave, Principal, Acción, Ninguna. Si no se especifica ningún valor, el valor predeterminado es 'Ninguno'.
- Nivel
- Niveles: ya sea esencial o práctico. Si no se especifica ningún valor, el valor predeterminado es 'práctico'.
- Tipo: Uno de Normal, Adicional, Drop, Externo o Pseudo. Si no se especifica ningún valor, el valor predeterminado es 'Normal'.
- Normalización: una de heredada, objetivo o no objetivo. Si no se especifica ningún valor, el valor predeterminado es 'heredar'.
- situación
- ciclo de ocurrencia
- cantidad mensual
- Período de retención (meses)
- número total de casos
- Justicia
- formulario de procesamiento de datos
- Unicidad
- Nota
- Etiqueta
- Nota: En el momento de escribir este artículo, no se admite la configuración de valores UDP.
2.4.7. Archivo de plantilla: Columna
- Nombre del modelo: el nombre del archivo del modelo que se guardará. Solo se invierte el modelo especificado aquí.
- Nombre de la entidad: Consulte el contenido del nombre de la tabla a continuación. No requerido.
- Nombre de la tabla: un valor que conecta a qué entidad pertenece la propiedad. Este es un valor requerido. Es difícil garantizar la unicidad de los nombres de las entidades y, a menudo, están vacíos, así que no los utilice como valores de conexión. Al extraer información inversa de la base de datos a través de una consulta, se puede garantizar que el nombre de la tabla sea único y no esté vacío, por lo que el nombre de la tabla se usa como valor de conexión.
- Los siguientes son los valores de atributos asignados al objeto Attribute de DA#.
- Nombre del Atributo
- nombre de la columna
- Justicia
- nombre auxiliar
- sinónimo
- mesa inversa
- Columna inversa
- Tipo inverso
- Longitud inversa
- PK: si la propiedad tiene PK (Y o nulo)
- NotNull: NotNull o no (Y o nulo)
- Tipo: Uno de Normal, Adicional, Drop, Sistema, Pseudo
- tipo de datos
- largo
- punto decimal
- por defecto
- Estado de la propiedad principal: (Y o nulo)
- Identificador esencial: (Y o nulo)
- Identificador secundario: (Y o nulo)
- Sincronización estándar: (Y o nulo)
- No herencia: (Y o nulo)
- Estandarización
- Si la información está protegida: (S o nulo)
- Nivel de protección de la información
- Cifrado: (Y o nulo)
- lucha
- Nota: En el momento de escribir este artículo, no se admite la configuración de valores UDP.
2.4.8. Archivo de plantilla: FK
- FK no es una entrada obligatoria, pero si la relación entre las entidades se conoce de antemano, es bueno escribirla e ingresarla tanto como sea posible.
- Nombre del modelo: el nombre del archivo del modelo que se guardará. Solo se invierte el modelo especificado aquí.
- nombre de la entidad principal, nombre de la entidad secundaria
- Debe coincidir exactamente con el nombre de la entidad especificado en la plantilla de la tabla.
- Entre las API de DA#, no existe una API que cree un FK en un modelo físico, por lo que se utiliza una API (Model.LinkRelation) que crea una relación en un modelo lógico.
- A continuación se muestran los valores de los atributos asignados al objeto Relación de DA#.
- nombre de la relación
- Justicia
- Tipo de Relación: Uno de Normal, Pseudo. Si no se especifica ningún valor o no se especifica ninguno, el valor predeterminado es 'Normal'.
- Se recomienda designar Normal si la relación entre dos entidades es cierta y Pseudo si no es cierta o para crear una relación con el fin de analizar el modelo de datos.
- En el caso de Normal, el identificador de la entidad principal lo hereda la entidad secundaria, pero en el modelo de datos real, la propiedad real del identificador puede quedar excluida o el nombre puede ser diferente, lo que puede dañar el modelo de datos.
- Ordinalidad (padre:hijo): uno de 1:1, 1:M o M:M. Si no se especifica ningún valor, el valor predeterminado es '1:M'.
- Selectividad (Padre: Hijo): Especifique como uno de los siguientes. Si no se especifica ningún valor, el valor predeterminado es 'O:M'. (O: Opcional, M: Obligatorio)
- O:M -> predeterminado
- O:O
- M:O -> Inadecuado pero provisto
- M:M
- Identificación: Uno de identificación o no identificación. Si no se especifica ningún valor, el valor predeterminado es 'no identificado'.
- Identificación: el identificador principal hereda el identificador secundario
- No identificable: el identificador principal hereda como propiedad general secundaria
- Verbo relacional de entidad principal, Verbo relacional de entidad secundaria: por lo general, un nombre de relación es suficiente, pero si se necesita una explicación adicional, se especifica un verbo de relación. Vea la imagen de abajo para el concepto.
![DA# 관계명, 부모 엔터티 관계동사 자식 엔터티 관계동사 예시](https://prodskill.com/wp-content/uploads/2022/09/image-235.png)
Hasta ahora, hemos visto la función Inversa entre las funciones Macro DA#. A continuación, veremos las precauciones y los puntos de referencia al usar la Macro DA#.
<< Lista de artículos relacionados >>
- Macro DA#(1): DA#, API DA#, descripción general de la macro DA#
- Macro DA# (2): Función macro DA# (1) - Función común, Entidad Get/Set
- Macro DA# (3): Función de macro DA# (2) - Obtener/Establecer atributo
- Macro DA# (4): Función macro DA# (3) -Reversa
- Macro DA#(5): Notas/notas de uso, descargas, funciones que se agregarán en el futuro, notas
- Macro DA#(6): API del modelador DA#
- Video de demostración de la función macro DA# (YouTube)
- Contenido de la descripción de la macro DA#, descarga