Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Hola a todos! tal como lo indica el título, quiero hacer una unión entre entre 3 documentos qlikview que tengo.
Supongamos que la empresa tiene 3 sucursales y tengo 1 documento para cada sucursal, ya que tengo 3 bases de datos en SQL.
Cada documento contiene exactamente lo mismo, las mismas tablas, los mismos campos, etc. Lo único que cambia son los datos obviamente. Ahora bien, como hago para unir toda esta información de manera tal pueda crear un 4to. documento con los movimientos de la empresa en su conjunto???.
Ejemplo a pequeña escala:
Sucursal 1:
Clientes:
LOAD
Id_Cliente,
Nombre,
Activo
from ....
Ventas:
LOAD
Id_Ventas,
Cantidad,
Precio,
from...
Artículos:
LOAD
Id_Ventas,
Id_Articulo,
Nombre_Articulo,
from...
Vendedores:
LOAD
Id_Vendedor,
Id_Ventas,
Id_Cliente,
Nombre_Vendedor,
from....
Sucursal 2:
Clientes:
LOAD
Id_Cliente,
Nombre,
Activo
from ....
Ventas:
LOAD
Id_Ventas,
Cantidad,
Precio,
from...
Artículos:
LOAD
Id_Ventas,
Id_Articulo,
Nombre_Articulo,
from...
Vendedores:
LOAD
Id_Vendedor,
Id_Ventas,
Id_Cliente,
Nombre_Vendedor,
from....
Sucursal 3:
Clientes:
LOAD
Id_Cliente,
Nombre,
Activo
from ....
Ventas:
LOAD
Id_Ventas,
Cantidad,
Precio,
from...
Artículos:
LOAD
Id_Ventas,
Id_Articulo,
Nombre_Articulo,
from...
Vendedores:
LOAD
Id_Vendedor,
Id_Ventas,
Id_Cliente,
Nombre_Vendedor,
from....
*******************************
Las tablas en las 3 sucursales son idénticas. Como las unifico para ver todo en un mismo documento?
puedo crear una tabla "Sucursales" para elegir los datos de qué sucursal quiero ver?
Gracias desde ya...
Dos opciones:
a) Generar el 4º documento leyendo las 3 bases de datos concatenando cada tabla para que sea cada una de ellas la misma como suma de las tres
Sería así:
Clientes:
// ---- Sucursal 1
LOAD
Id_Cliente,
Nombre,
Activo
from ....
//--- Sucursal 2
Clientes:
LOAD
Id_Cliente,
Nombre,
Activo
from ....
//--- Sucursal 3
Clientes:
LOAD
Id_Cliente,
Nombre,
Activo
from ....
Si los nombres son iguales QV generará una sóla tabla de clientes que será la agregación de las tres. Si no fueran exactamente iguales debes utilizar la sentencia CONCATENATE
Y así sucesivamente con todas las tablas.
b) Generar un fichero QV partiendo del 1º que en su carga lea el 2º (debe ser la primera sentencia). Ahora tendremos 2 sucursales juntas. repetir el proceso partiendo del tercero, leyendo el fichero QV generado anteriormente. Como la carga de un fichero QV ya generado es muy rápida, esta opción suele ser mucho mas veloz.
Aquí tienes un ejemplo de como cargar un fichero QV en otro. Recuerda que debe ser la primera sentencia.
Hola Walterlh:
Puedes crear un campo 'Sucursal' en la tabla de hechos (Ventas) de forma que se rellene de forma única en cada documento. Al unir las tablas permitiría al usuario seleccionar la sucursal y por tanto los datos exclusivos de esa sucursal o todas ellas para consolidar datos:
Ventas1:
'Sucursal 1' as Sucursal,
...
Si además generas archivos QVD de cada tabla que se una al modelo puedes concatenarlas en el cuarto documento con una carga muy rápida y un script sencillo:
En cada documento original:
store Ventas1 into Ventas1.qvd (qvd);
En el cuarto documento:
Ventas:
Load * from Ventas1.qvd (qvd);
concatenate (Ventas) load * from Ventas2.qvd (qvd);
concatenate (Ventas) load * from Ventas3.qvd (qvd);
En cuanto al diseño del cuarto documento puede ser idéntico a los anteriores porque el modelo de datos no cambia sólo se añade un campo adicional que permite al usuario seleccionar la sucursal.
Espero que te sea útil.
Un saludo