<< Clic para mostrar Tabla de Contenidos >> Consideraciones con llaves primarias y de negocio |
Importante
La virtualización de datos está deprecada.
El acceso a una fuente de datos externa a través de Internet depende inherentemente de diferentes factores que están fuera del control de Automation Service, tales como: una mayor latencia en la transmisión de datos, fluctuaciones, interferencias y congestión que afectan la velocidad del canal, la calidad de las redes utilizado durante la transmisión, etc. Todos estos factores pueden afectar la experiencia general del usuario y, por lo tanto, deberá mitigarlos.
Dado lo anterior, el uso de la virtualización tiene un alto riesgo de generar time-out al realizar la búsqueda de datos en las tablas externas, en tiempo real, generando finalmente un bloqueo de la base de datos.
Se debe encontrar opciones alternativas. Evaluar si la virtualización se puede cambiar a una replicación. De lo contrario, se debe considerar una alternativa, como invocar una interfaz.
Introducción
Para mantener sus datos normalizados y organizados, el uso de llaves primarias y de negocio es muy importante. Cuando virtualiza entidades, debe configurar y asignar sus llaves, de modo que la información se mantenga en el sistema externo teniendo en cuenta las llaves de los datos externos. Este artículo menciona consideraciones sobre la configuración de la llaves en la virtualización.
Diferencias entre llaves primarias y de negocio
Para comprender completamente la configuración de una entidad virtualizada, debe considerar las diferencias entre una llave primaria y una llave de negocio. Una llave primaria es una columna que identifica de forma exclusiva un registro o instancia dentro de una tabla. Por lo tanto, los valores son únicos para cada fila y no pueden contener valores nulos.
En los proyectos de Bizagi, las llaves primarias se crean automáticamente, por lo que cada entidad en un proyecto de Bizagi tiene una llave primaria administrada por Bizagi. Entonces, si necesita establecer una columna con valores únicos, por ejemplo, un número de identificación de clientes, debe definir una llave de negocio. Una llave de negocies un concepto en Bizagi para definir atributos como columnas con registros únicos. Ver llaves de negocios.
Entonces, la diferencia entre una llave primario y una llave de negocio en Bizagi es que la llave primaria es un número consecutivo definido automáticamente por Bizagi, y una llave de negocio es un atributo de una entidad con valores únicos, que es definida por los usuarios.
Llaves en bases de datos externas
En bases de datos externas, el concepto de llave de negoci no existe. Lo que generalmente se configura son llaves primarias. Lo que significa que puede configurar varias llaves (llaves compuestas) para trabajar juntas como identificadores únicos de un registro.
Mapeando llaves en virtualización
Cuando asigne atributos en la configuración de virtualización, consulte Uso de la configuración avanzada. Debe asegurarse de asignar un atributo en Bizagi con una columna en la tabla externa que se considera la llave primaria. Este atributo también debe ser establecido como una llave de negocio por el usuario. El siguiente diagrama muestra cómo se debe mapear:
En la configuración avanzada de la virtualización se muestra de la siguiente manera:
Y en las propiedades de la tabla:
Creando nuevos registros en la tabla externa desde Bizagi
Cuando utiliza un control de búsqueda, puede agregar registros desde el control utilizando la propiedad Permitir nuevos registros. Cuando asocia el control de búsqueda con una entidad virtualizada, también se crean nuevos registros creados a partir del formulario en la tabla externa. Bizagi alerta a los usuarios cuando el valor de un atributo establecido como llave de negocio, o un atributo asignado con una llave primaria está vacío.
Cuando un atributo definido como llave de negocio está vacío
Cuando un atributo definido como llave de negocio está vacío en la forma de adición, Bizagi muestra el siguiente mensaje :
Cuando un atributo mapeado con una llave primaria está vacío
Si el atributo que asignó con la llave primaria de la tabla externa está vacío, Bizagi muestra un mensaje de advertencia, porque las llaves primarias no pueden ser nulas en la tabla externa:
Cuando la llave primaria es auto generada
Es común que las aplicaciones externas administren llaves primarias con números consecutivos generados automáticamente. Cuando mapea un atributo con una llave primaria que se genera automáticamente, debe activar la opción de autocompletar:
Hay dos opciones para generar un atributo automáticamente:
•Usando un identificador único
Si usted quiere virtualizar una entidad con un identificar único, usted debe configurarla en la configuración avanzada de virtualización. No puede usar el asistente de configuración. |
•Usando un atributo como identidad e incremento
Es importante tener en cuenta que no necesita incluir atributos que son auto generados en una fuente externa, dentro de las formas de adición del control de búsqueda. |
Cuando dos o más entidades relacionadas son virtualizadas
Cuando virtualiza una entidad, y la entidad tiene relaciones, todas sus entidades relacionadas deben virtualizarse. La razón es que las llaves externas de las relaciones son manejadas por la base de datos externa.
Analicemos el siguiente ejemplo. Las entidades Entidad 1 y Entidad 2, y virtualizar la Entidad 1:
La llave foránea con la segunda entidad debe ser también parte de la configuración de virtualización.
En la tabla externa, este atributo debe ser configurado como una llave foránea.
Además, es muy importante que la entidad relacionada, en este ejemplo Entidad 2, tenga la llave primaria virtualizada y configurada en Bizagi como llave de negocio:
Todas las llaves de la tabla externa relacionada, deben ser virtualizadas.
Si habilita la adición de registros de la entidad 1, le recomendamos que utilice en el formulario de agregar un control de búsqueda de la entidad 2, para asegurarse de que el registro en la entidad 2 exista y que no tenga problemas con llaves foráneas inexistentes.
Last Updated 1/23/2023 10:31:24 AM