Consideraciones con llaves primarias y de negocio

<< Click para mostrar Tabla de Contenidos >>

Navegación:  Bizagi Studio > Asistente de Procesos > Modelar Datos > Conexiones con fuentes de datos externas > Virtualización de datos >

Consideraciones con llaves primarias y de negocio

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.

 

Data_virtualization_3

 

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.

 

Data_virtualization_2

 

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:

 

Data_virtualization_4

 

En la configuración avanzada de la virtualización se muestra de la siguiente manera:

 

Data_virtualization_5

 

Y en las propiedades de la tabla:

 

Data_virtualization_6

 

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 :

 

Data_virtualization_7

 

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:

 

Data_virtualization_8

 

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:

 

Data_virtualization_9

 

Hay dos opciones para generar un atributo automáticamente:

 

Usando un identificador único

Data_virtualization_10

 

note_pin

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

 

Data_virtualization_11

 

 

note_pin

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:

 

Data_virtualization_12

 

La llave foránea con la segunda entidad debe ser también parte de la configuración de virtualización.

 

Data_virtualization_13

 

En la tabla externa, este atributo debe ser configurado como una llave foránea.

 

Data_virtualization_14

 

 

Además, es muy importante que la entidad relacionada, en este ejemplo Entidad 2, tenga la lllave primaria virtualizada y configurada en Bizagi como llave de negocio:

 

Data_virtualization_16

 

Todas las llaves de la tabla externa relacionada, deben ser virtualizadas.

 

Data_virtualization_17

 

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.

 

Data_virtualization_15