Altova MapForce 2023 Enterprise Edition

Las relaciones locales son relaciones lógicas entre campos de BD que puede crear en MapForce, lo que le evita tener que cambiar la BD subyacente (consulte también Definir relaciones locales). Puede definir relaciones locales no solo para campos de BD sino también para procedimientos almacenados, en componentes tanto de entrada como de salida.

 

En componentes de entrada las relaciones locales permiten leer fácilmente datos de objetos relacionados, como leer IDs de una tabla de BD y llamar a un procedimiento almacenado con cada uno de estos IDs para obtener información al respecto. También se puede llamar a un procedimiento almacenado con datos obtenidos a partir de otro procedimiento.

 

En componentes de destino las relaciones locales permiten definir un orden jerárquico con el que se puede llamar a varios procedimientos relacionados. Por ejemplo, puede llamar primero a un procedimiento almacenado que cree un valor de ID y a otro que inserte información relacionada en una tabla. En las relaciones locales también se pueden mezclar procedimientos almacenados y tablas. Por ejemplo, puede hacer la inserción directamente en una tabla relacionada en lugar de llamar a otro procedimiento (véase Procedimientos almacenados para generar claves).

Para crear una relación local:

1.Haga clic con el botón derecho en la barra de título de un componente de BD y seleccione Componente | Agregar, quitar o editar objetos de la base de datos del menú contextual. Se abrirá el cuadro de diálogo "Agregar, quitar o editar objetos de la base de datos".

2.Haga clic en Agregar o editar relaciones.

3.Haga clic en Agregar relación y seleccione los objetos entre los que quiere crear esa relación.

mf_sp_19

Como ilustra la imagen anterior, una relación local consiste en un objeto de clave principal/única y un objeto de clave foránea. Piense en ello como una relación padre-hijo. En el componente de la asignación el objeto (tabla, vista, procedimiento, etc.) en el que está la clave principal/única aparecerá como objeto principal, mientras que el objeto en el que está la clave foránea aparecerá anidado debajo. Por ejemplo, en el componente de BD de la imagen siguiente se definió una relación local entre una columna de conjunto de registros (RS1.Department) y una columna de tabla (Department.Name). En consecuencia, la tabla Department aparece como subordinado al procedimiento almacenado de la asignación. Encontrará más detalles sobre este ejemplo en el apartado Relaciones locales en componentes de origen.

mf_sp_23

La siguiente tabla enumera todos los campos posibles entre los que puede definir relaciones locales. Es posible crear relaciones mixtas (por ejemplo, asignar los resultados de un procedimiento almacenado a una columna de BD). Los campos que forman parte de la relación deben tener el mismo tipo de datos o uno compatible.

 

Clave principal/única

Clave foránea

Columna de una tabla o vista de BD

Parámetro de salida o valor devuelto de un procedimiento almacenado (consulte también Procedimientos almacenados)

Columna de conjunto de registros devuelta por procedimiento almacenado*

Columna de una instrucción SELECT definida por el usuario (consulte también Instrucciones SQL SELECT como tablas virtuales).

Columna de tabla o vista de BD

Parámetro de entrada de un procedimiento almacenado

Parámetro de entrada de una instrucción SELECT definida por el usuario

 

* Se aplica si se llama al procedimiento almacenado como fuente de datos (sin parámetros) o como función (con parámetros de entrada y salida). Para que el conjunto de registros esté disponible y se pueda seleccionar debe ejecutar el procedimiento almacenado una vez para obtener ese conjunto de registros.

© 2017-2023 Altova GmbH