Enlace circular sucede cuando podemos navegar de una tabla a otra usando dos o más rutas diferentes. Esto significa que puede unir Table1 a Table2 directamente usando una columna, o también puede unir Table1 a Table3 primero y luego table3 a Table2. Esto puede conducir a un resultado incorrecto en la salida generada por el modelo de datos que carga estas tres tablas. QlikView evita que dichos datos se carguen en su memoria después de reconocer la referencia circular.
Echemos un vistazo a los siguientes tres archivos de datos CSV que se utilizan como entrada para más ilustraciones.
SalesCountries: ProductID,ProductCategory,Country,SaleAmount 1,Outdoor Recreation,Italy,4579 2,Clothing,USA,4125 3,Costumes & Accessories,South Korea,6521 4,Athletics,Japan,4125 5,Personal Care,Brazil,5124 6,Arts & Entertainment,China,1245 7,Hardware,South America,456 8,Home & Garden,Peru,241 9,Food,India,1247 10,Home & Garden,Singapore,5462 11,Office Supplies,Hungary,577 ProductCountry: ProductID, Country 3,Brazil 3,China 2,Korea 1,USA 2,Singapore 7,Sri Lanka 1,Italy
Cargamos la entrada anterior con un editor de secuencias de comandos que se invoca haciendo clic en Ctrl + E… Elige una opcion Archivos de tabla y busque el archivo de entrada.
Después de crear el script anterior, cargamos los datos en la memoria QlikView usando el comando Ctrl + R… Aquà es cuando obtenemos un error que menciona la presencia de un bucle circular en las tablas que se están cargando.
Para encontrar la causa exacta de la advertencia anterior, podemos echar un vistazo al modelo de datos usando el comando de menú para el visor de tablas: Ctrl + T… Aparece la siguiente pantalla con el enlace circular claramente visible. Aquà la conexión entre RegionCountry y SalesRegion se puede lograr directamente usando el campo Región… Esto también se puede lograr navegando primero a la tabla ProductCountry usando el campo El paÃs y luego mapear el ProdcutID a Salesregion.
La referencia circular anterior se puede resolver cambiando el nombre de algunas de las columnas en los conjuntos de datos para que QlikView no cree automáticamente enlaces entre tablas usando los nombres de las columnas. Para hacer esto, cambiaremos el nombre de la columna de paÃs en RegionCountry a SalesCountry. En el conjunto de datos ProdcuCountry, cambiamos el nombre de la columna PaÃs a ProductCountry.
El modelo de datos corregido después de cambiar el nombre de la columna anterior se puede ver con el comando Ctrl + T… Ahora podemos ver que las relaciones entre las tablas no forman un bucle.
Prensado Ctrl + R recargar los datos ya no nos da una advertencia y podemos usar estos datos para generar informes.
🚫