Realizaremos un ejercicio de Carga y modelado de datos directamente en nuestra aplicación QlikView, para esto es necesario tener en cuenta que los datos llegan directamente de una fuente de datos SQL y serán modificados de acuerdo a la necesidad para lograr un modelo asociativo de datos optimo haciendo el uso de la LinkTable para relacionar nuestras Tablas de Hechos y sus dimensiones correspondientes.
Tenemos las siguientes tablas de una base de datos de un esquema SQL previamente creado.
*********************************************************************************
SELECT categoriaid, nombrecat
FROM categorias;
*********************************************************************************
SELECT clienteid, cedula_ruc, nombrecia, nombrecontacto, direccioncli,fax, email, celular, fijo
FROM clientes;
*********************************************************************************
SELECT ordenid, detalleid, productoid, cantidad
FROM detalle_ordenes;
*********************************************************************************
SELECT empleadoid, nombre, apellido, fecha_nac, reporta_a, extension
SELECT empleadoid, nombre, apellido, fecha_nac, reporta_a, extension
FROM empleados;
*********************************************************************************
SELECT ordenid, empleadoid, clienteid, fechaorden, descuento
SELECT ordenid, empleadoid, clienteid, fechaorden, descuento
FROM ordenes;
*********************************************************************************
SELECT productoid, proveedorid, categoriaid, descripcion, preciounit, existencia
SELECT productoid, proveedorid, categoriaid, descripcion, preciounit, existencia
*********************************************************************************
SELECT proveedorid, nombreprov, contacto, celuprov, fijoprov
SELECT proveedorid, nombreprov, contacto, celuprov, fijoprov
FROM proveedores;
*********************************************************************************
Lo siguiente en este caso y tipo de estructura sera llamar las tablas colocando los selects en el editor de script de QlikView, lo recomendable es que mientras se realice este proceso se haga su debido modelado de datos, es decir convertiremos el modelo relacional de la base de datos al modelo asociativo de QlikView, haremos énfasis en el uso de la LinkTable y llegaremos a una solución correcta.
H.Clientes:
LOAD
AutoNumberHash256(clienteid) AS CK.LlaveCompuesta,
clienteid AS Cliente.Id ,
cedula_ruc AS Cliente.Cedula,
nombrecia AS Cliente.Compañia,
nombrecontacto AS Cliente.Contacto,
direccioncli AS Cliente.Direccion,
fax AS Cliente.Fax,
email AS Cliente.Email,
celular AS Cliente.NumeroCelular,
fijo AS Cliente.NumeroFijo;
SQL
SELECT * FROM clientes;
Lo que hicimos en este caso fue llamar una tabla de la fuente de datos y crearemos una llave única con la sentencia AutoNumberHash256( ) especificando que la llave se genere por el Campo_Id para así poder realizar en enlace entre las otras tablas de hechos, hablando en otros términos en este caso usaremos la llave primaria con la cual aremos relación entre las otras tablas.
De esta manera y enlazando las tablas por su llave compuesta podremos realizar la asociación de tablas teniendo en cuenta los campos en común que permitirían esta asociación, el modelo de QlikView toma todos los campos con nombre igual como 1 solo y por ende realizara la asociación por los campos de nombres iguales en las tablas, veamos este ejemplo.