53
Curso QlikView Avanzado Área Business Intelligence

curso qlikview avanzado

Embed Size (px)

Citation preview

Page 1: curso qlikview avanzado

Curso QlikView AvanzadoÁrea Business Intelligence

Page 2: curso qlikview avanzado

2

Curso QlikView Avanzado

Altair ConsultoresÁrea de Business Intelligence

El objetivo de este curso es repasar los puntos más importantes del análisis, diseño y desarrollo de aplicaciones en QlikView.

El curso está dirigido a usuarios con perfil técnico, ya familiarizados con el uso de la herramienta.

En Altair Consultores creemos firmemente en la transferencia de conocimiento como part e irrenunciable de todo proyecto de Business Intelligence y como el factor clave que permitirá a nuestros clientes lograr el éxito en sus ámbitos de actuación.

Queremos agradecerles la confianza depositada en nuestra empresa y estamos a su completa disposición para comentar con ustedes cualquier consulta que deseen hacernos.

2

Page 3: curso qlikview avanzado

CONTENIDO

1. Introducción2. Análisis y Diseño3. Desarrollo4. Problemas Reales, Soluciones Reales5. Referencias

Page 4: curso qlikview avanzado

Área Business Intelligence 1 Introducción

Page 5: curso qlikview avanzado

5

Curso QlikView Avanzado 1. Introducción

Introducción

1. ¿Qué es QlikView?

2. Productos QlikView

3. Proceso de Desarrollo de un Proyecto en QlikView

Page 6: curso qlikview avanzado

6

Curso QlikView Avanzado 1. Introducción

1. ¿Qué es QlikView?

La información es la base del conocimiento, y el conocimiento es la base de una acción apropiada: la ventaja competitiva que distingue a una empresa u organización.

QlikView permite analizar y generar informes de forma rápida y potente, proporcionando a sus usuarios una compresión clara y detallada de los datos, ayudándoles en la toma de decisiones.

Page 7: curso qlikview avanzado

7

Curso QlikView Avanzado 1. Introducción

2. Productos QlikView

SERVIDOR CLIENTE

Server• SBE• EE

User CALs• Named• Session• Usage

License• Standard• Enterprise

License Key

Publisher Server

Enterprise

Professional

Analyzer+

Analyzer

Page 8: curso qlikview avanzado

8

Curso QlikView Avanzado 1. Introducción

2. Productos QlikView: Trabajando en LocalDesarrolladores/ Usuarios avanzados.• La licencia QlikView completa para la creación de nuevas aplicaciones.• Acceso al script de carga del modelo de datos.• Permite conexiones con cualquier origen de datos (bases de datos, ficheros planos, etc.).• Acceso al diseño de informes.• Acceso recarga de datos.

Usuarios avanzados.• Acceso al script de carga del modelo de datos.• Permite conexiones con ficheros planos como origen de datos.• Acceso al diseño de informes.• Acceso recarga de datos.

Usuarios finales.• Permite navegar por los informes predefinidos.• Acceso recarga de datos.

Enterprise

Professional

Analyzer+

Page 9: curso qlikview avanzado

9

Curso QlikView Avanzado 1. Introducción

2. Productos QlikView: Trabajando en Remoto

SERVIDORESQlikView SBE Server es la licencia de servidor básica, diseñada para pequeños despliegues. Las limitaciones que presenta son:

Sólo admite Named User CALs hasta un máximo de 25.

No ofrece soporte para clientes AJAX.

No ofrece soporte para servidores adicionales.

No se ofrece soporte para crear y compartir objetos en el servidor.

Únicamente ofrece soporte para Active Directory de Windows con el fin de manejar seguridad y accesos.

QlikView EE Server es la licencia completa de servidor, diseñada para despliegues de mayor dimensión y más complejos.En un mismo QlikView EE Server pueden convivir distintos tipos de CAL: nominales, de uso y de sesión.

Page 10: curso qlikview avanzado

10

Curso QlikView Avanzado 1. Introducción

2. Productos QlikView: Trabajando en Remoto

CLIENTESQlikView Server puede desplegarse utilizando cualquiera de los siguientes clientes:

QlikView Analyzer como cliente local instalado (Enterprise, Professional o Analyzer+).

QlikView Analyzer cliente Plug-in. QlikView Analyzer cliente Java. La máquina virtual de Java tiene que

estar instalada en el servidor.QlikView Analyzer cliente AJAX (únicamente disponible en QlikView EE

Server). Es el cliente Zero Footprint.

Page 11: curso qlikview avanzado

11

Curso QlikView Avanzado 1. Introducción

2. Productos QlikView: Trabajando en Remoto

LICENCIASIndependientemente del cliente desde el que se acceda al QlikView Server, el usuario ha de tener una licencia disponible que autorice su acceso:

Named User CALs: Licencias nominales de usuario. El empleo de este tipo de CAL es obligatorio cuando se despliega una solución con QlikView Server.

Session CALs: Licencias de sesión que permiten el uso simultáneo de documentos QlikView. Son licencias de “usuario concurrente”. Se recomienda su uso en configuraciones donde hay un gran número de usuarios no habituales de documentos QlikView, puesto que una o más CALs de sesión pueden dar servicio a una amplia comunidad de usuarios.

Usage CALs: Garantizan el uso de cualquier documento QlikView una vez al mes y, al final del mes, todas las Usage CALs se reinician para poder ser reutilizadas el mes siguiente. Se recomienda su uso en la gestión de un amplia comunidad de usuarios no habituales.

Page 12: curso qlikview avanzado

12

Curso QlikView Avanzado 1. Introducción

3. Proceso de Desarrollo de un Proyecto en QlikView

1. Análisis de requisitos y especificación funcional

2. Análisis de las fuentes de datos

3. Elaboración del modelo de datos QlikView (script de carga)

4. Construcción del layout (interfaz gráfico de usuario)

5. Pruebas del sistema

6. Optimización del sistema y/o configuraciones de seguridad

7. Pruebas del usuario

8. Aceptación del sistema

Page 13: curso qlikview avanzado

13

Curso QlikView Avanzado

Área Business Intelligence 2 Análisis y Diseño

Page 14: curso qlikview avanzado

14

Curso QlikView Avanzado 2. Análisis y Diseño

Análisis y Diseño1. Consultas

2. Hojas y Objetos de Hoja

3. Diseño

4. Expresiones

5. El Menú Configuraciones

6. Selecciones Actuales y Marcadores

7. Generador de Informes

8. Alertas

9. Buenas Prácticas

Page 15: curso qlikview avanzado

15

Curso QlikView Avanzado 2. Análisis y Diseño

1. Consultas

1. Selecciones

1. Búsquedas de texto y búsquedas numéricas

2. Ir hacia delante y hacia atrás en la lista de selecciones

3. Bloquear y desbloquear selecciones

Page 16: curso qlikview avanzado

16

Curso QlikView Avanzado 2. Análisis y Diseño

2. Hojas y Objetos de Hoja

La hoja es unidad básica de diseño en QlikView.

Los objetos de hoja, a excepción

de los botones, los objetos de

texto y los objetos de línea/flecha,

pueden emplearse para realizar

selecciones en los datos. Todos los

objetos de hoja pueden utilizarse

para visualizar el resultado de las

selecciones.

Page 17: curso qlikview avanzado

17

Curso QlikView Avanzado 2. Análisis y Diseño

2. Hojas y Objetos de Hoja: Gráficos

Un gráfico se compone básicamente de dimensiones y de expresiones.

En QlikView tenemos una gran variedad de gráficos que van desde los

tradicionales gráficos de barra, hasta gráficos de rádar o indicador.

Gráfico de barras Gráfico de tarta

Page 18: curso qlikview avanzado

18

Curso QlikView Avanzado 2. Análisis y Diseño

2. Hojas y Objetos de Hoja: Gráficos

Gráfico de líneas Gráfico combinado

Page 19: curso qlikview avanzado

19

Curso QlikView Avanzado 2. Análisis y Diseño

2. Hojas y Objetos de Hoja: Gráficos

Gráfico de radar Gráfico de indicador

Page 20: curso qlikview avanzado

20

Curso QlikView Avanzado 2. Análisis y Diseño

2. Hojas y Objetos de Hoja: Gráficos

Gráfico de dispersión Gráfico de rejilla

Los ejes son expresiones. Los ejes son dimensiones.

Mínimo 1 dimensión y 2 expresiones Mínimo 2 dimensiones (una para

(una para cada eje). cada eje) y 1 expresión.

Page 21: curso qlikview avanzado

21

Curso QlikView Avanzado 2. Análisis y Diseño

3. Diseño

El gráfico de cambio rápido

Líneas de referencia y texto en gráfico

Configuraciones de título avanzadas

Plantillas

Page 22: curso qlikview avanzado

22

Curso QlikView Avanzado 2. Análisis y Diseño

4. Expresiones

DISTINCT - ALL - TOTAL

Funciones por Categorías

Page 23: curso qlikview avanzado

23

Curso QlikView Avanzado 2. Análisis y Diseño

4. Expresiones: Análisis de Conjuntos

Se pueden emplear conjuntos en las funciones de agregación. Una expresión de conjunto permite definir un conjunto de registros alternativo al de las selecciones actuales. Una expresión de conjunto va siempre encerrada entre llaves.

Identificadores de Conjuntos

{1} Representa el conjunto completo, con todos los registros.

{$} o {$0} Registros de la selección actual.

{1-$} Todo lo que la selección actual excluye.

{$1} Selección previa (paso atrás)

{$_1} Selección posterior (paso adelante)

{MiMarcador} Selección definida en el marcador

Operadores de Conjuntos: + - * /

Page 24: curso qlikview avanzado

24

Curso QlikView Avanzado 2. Análisis y Diseño

5. El Menú Configuraciones: Preferencias de Usuario

Desde las “Preferencias de Usuario” se pueden fijar las preferencias personales del

usuario en cuanto al comportamiento de QlikView en su ordenador.

Page 25: curso qlikview avanzado

25

Curso QlikView Avanzado 2. Análisis y Diseño

5. El Menú Configuraciones: Propiedades de Documento

Desde las “Propiedades de Documento” se pueden fijar las preferencias específicas

para el documento QlikView actual.

Page 26: curso qlikview avanzado

26

Curso QlikView Avanzado 2. Análisis y Diseño

5. El Menú Configuraciones: Propiedades de Hoja

Desde las “Propiedades de Hoja” se pueden fijar las preferencias específicas para

una de las hojas del documento QlikView actual.

Page 27: curso qlikview avanzado

27

Curso QlikView Avanzado 2. Análisis y Diseño

6. Selecciones Actuales y MarcadoresLos marcadores se utilizan para guardar estados de selección para referencias

posteriores.

Añadir Marcador: Crea un nuevo marcador para el estado de selección actual. El

programa sugerirá un nombre utilizando la fecha y un número consecutivo

comenzando por 1.

Marcadores Recientes: Muestra una lista con los últimos marcadores creados.

Seleccionando uno, se restaura el estado lógico de la selección en el tiempo de su

creación.

Más...: Muestra una lista con todos los marcadores del documento. Los

marcadores se almacenan y se recuperan como Marcadores de Documento o

como Mis Marcadores.

Page 28: curso qlikview avanzado

28

Curso QlikView Avanzado 2. Análisis y Diseño

7. Generador de Informes

El Editor de Informes QlikView ofrece la posibilidad de agrupar varios objetos de

hoja diferentes en una o varias páginas, con un control pleno del diseño de

página, incluyendo cabeceras, pies de página, etc.

Tipos de Informes

Informes de Documento

Informes de Usuario

Informes de Servidor Personales

Informes de Servidor Compartidos

Page 29: curso qlikview avanzado

29

Curso QlikView Avanzado 2. Análisis y Diseño

8. Alertas

Las alertas se utilizan para generar avisos automáticos en forma de mensaje en

pantalla (al abrir) y/o correo electrónico (al recargar), cuando se cumple una

determinada condición en los datos de un documento QlikView.

El problema de las alertas es que hay que definir un marcador para cada una.

El servicio de correo SMTP se configura en “Preferencias de Usuario” del menú

Configuraciones.

Page 30: curso qlikview avanzado

30

Curso QlikView Avanzado 2. Análisis y Diseño

9. Buenas Prácticas

UN MAL DISEÑO

Muy densoCon demasiados coloresCon colores oscurosIncoherencia en emplazamiento de objetosMala elección de los tipos de objetoObjetos situados unos encima de otrosObjetos situados fuera de la pantalla

Page 31: curso qlikview avanzado

31

Curso QlikView Avanzado 2. Análisis y Diseño

9. Buenas Prácticas

UN BUEN DISEÑO

DespejadoNítidoBien alineadoDe colores clarosConsistente en la colocación de objetos en las hojas

Page 32: curso qlikview avanzado

32

Curso QlikView Avanzado

Área Business Intelligence 3 Desarrollo

Page 33: curso qlikview avanzado

33

Curso QlikView Avanzado 3. Desarrollo

Desarrollo

1. Estructuras de Datos

2. Cargas de Datos

3. Script de Carga

4. Macros

5. Seguridad

6. Depuración

Page 34: curso qlikview avanzado

34

Curso QlikView Avanzado 3. Desarrollo

1. Estructuras de Datos: Tecnología AQL

Cada columna de una tabla de datos que se carga en QlikView, se convierte

en un campo en la base de datos asociativa de QlikView. Las columnas que

aparecen en más de una tabla y tienen etiquetas idénticas se asociarán.

Cada campo se puede presentar en forma de cuadro de lista. Cuando se hace

una selección en un cuadro de lista, QlikView busca conexiones lógicas en la base

de datos asociativa. Como resultado de esta búsqueda, se identifican los valores

asociados a su búsqueda.

Page 35: curso qlikview avanzado

35

Curso QlikView Avanzado 3. Desarrollo

2. Cargas de Datos

QlikView puede cargar e interpretar los siguientes tipos de datos:

El resultado de una consulta a una base de datos, hecha con SQL mediante

OLE DB/ODBC

Cualquier tipo de fichero de texto delimitado por caracteres, como por

ejemplo, ficheros separados por coma

Ficheros de formato fijo

Ficheros Excel en código BIFF estándar

Ficheros QlikView de previa creación (ficheros binarios)

Ficheros de datos QlikView (ficheros qvd)

Ficheros DIF (formato de exportación común desde AS/400)

Tablas HTML

Tablas XML

Fuentes de datos personalizadas (por ejemplo, servicios Web) vía plug-in.

Page 36: curso qlikview avanzado

36

Curso QlikView Avanzado 3. Desarrollo

2. Cargas de Datos: El Editor de Script

Page 37: curso qlikview avanzado

37

Curso QlikView Avanzado 3. Desarrollo

3. Script de Carga

LET – SETCONNECT - LOAD - SELECTDIRECTORY

QUALIFY - UNQUALIFYMAPPING LOADLOAD RESIDENTLOAD INLINELOAD AUTOGENERATEAUTONUMBER

RIGHT JOIN - LEFT JOIN - OUTER JOIN - INNER JOINCONCATENATE

UPPER - LOWER - LEFT – RIGHTTEXT - DATE - NUM - INTERVAL

Page 38: curso qlikview avanzado

38

Curso QlikView Avanzado 3. Desarrollo

3. Script de Carga: Sentencias de Control Repetitivas

LET a = 1;DO WHILE a < 10

LOAD * FROM fichero$(a).txtLET a = a+1;

LOOP

FOR EACH a IN 1, 3, 7, ‘xyz’LOAD * FROM fichero$(a).txt

NEXT

FOR a = 1 TO 9LOAD * FROM fichero$(a).txt

NEXT

Page 39: curso qlikview avanzado

39

Curso QlikView Avanzado 3. Desarrollo

3. Script de Carga: Sentencias de Control Selectivas

IF a = 1 THENLOAD * FROM Enero.txt

ELSEIF a = 2 THENLOAD * FROM Febrero.txt

ELSELOAD * FROM Meses.txt

END IF

UNLESS a = 1 LOAD * FROM Meses.txt;UNLESS a = 1 WHEN b=2 DROP TABLE Proveedores;

Page 40: curso qlikview avanzado

40

Curso QlikView Avanzado 3. Desarrollo

3. Script de Carga: Otras Sentencias

EXIT SCRIPT WHEN a = 1;

SLEEP 1000;

DROP TABLE Proveedores;

EXECUTE WinWord Macro.doc;

TRACE ‘Tabla proveedores cargada’;

Page 41: curso qlikview avanzado

41

Curso QlikView Avanzado 3. Desarrollo

3. Script de Carga: Ficheros QVD

Un fichero QVD (de datos QlikView) es un fichero que contiene una tabla de datos exportados desde QlikView. QVD es un formato propio de QlikView, muy compacto y optimizado para aumentar la velocidad al leer datos desde un script QlikView. Leer datos desde un archivo QVD es por lo general 10-100 veces más rápido que leer desde otras fuentes de datos.

Los archivos QVD se pueden emplear con numerosas finalidades:Incremento de la velocidad de cargaReducción de la carga en los servidores de las bases de datosConsolidación de los datos de múltiples aplicaciones QlikViewCarga incremental

Page 42: curso qlikview avanzado

42

Curso QlikView Avanzado 3. Desarrollo

4. Macros

En el Editor de Módulo se pueden programar en VBScript macros y funciones

definidas por el usuario.

Page 43: curso qlikview avanzado

43

Curso QlikView Avanzado 3. Desarrollo

5. Seguridad

Un documento QlikView es un fichero encriptado que consta de una base de datos, un script, un diseño, etc. El formato de fichero en sí mismo, proporciona una protección intrínseca, puesto que no es posible abrir el archivo sin QlikView. También se pueden definir niveles de acceso en el script de carga :

ADMIN: Administrador con acceso a todas las funciones en un

documento, desarrollo avanzado, edición del script y todas las

características permitidas en el programa según la licencia adquirida.

USER: Usuario que puede buscar en los datos cargados en QlikView y

utilizar las funciones permitidas por el administrador.

NONE: Sin acceso al documento QlikView.

Es importante realizar una copia de seguridad del documento QlikView antes de aplicar directivas seguridad.

Page 44: curso qlikview avanzado

44

Curso QlikView Avanzado 3. Desarrollo

5. Seguridad

REM ***** SEGURIDAD *****;

Section Access;

LOAD * INLINE [USERID, PASSWORD, ACCESS

DEMO, USER, USER

DEMO, ADMIN, ADMIN];

Section Application;

// Resto del Script de Carga

Page 45: curso qlikview avanzado

45

Curso QlikView Avanzado 3. Desarrollo

5. Seguridad

Lo primero que se ejecuta es la sección de acceso.

Los cambios en la sección de acceso no aplican hasta que se recarga el

documento QlikView.

Para poder recargar automáticamente el documento:

LOAD * INLINE [ACCESS, USERID, PASSWORD, SERIAL

ADMIN, , , 2300 2394 7111 8000

…];

BINARY: Restricciones de acceso heredadas.

Script oculto.

Page 46: curso qlikview avanzado

46

Curso QlikView Avanzado 3. Desarrollo

5. Seguridad

Reducción de datos basada en la sección de acceso.

Section Access;

Load * Inline [USERID,DEPT,ACCESSJUAN,FINANZAS,ADMINANA,TIC,USERPEDRO,FORMACION,USER];

Section Application;

Star is *;Load * Inline [ DEPT,CENTROCOSTEFINANZAS,*TIC,5020FORMACION,5040];

Los nombres de campos y valores se convierten a mayúsculas en la sección de acceso.

Page 47: curso qlikview avanzado

47

Curso QlikView Avanzado 3. Desarrollo

6. Depuración

El script se puede ejecutar en 3 modos diferentes:

1. Ejecutar: Modo normal de ejecución del script.

2. Animar: El script se ejecuta normalmente, pero con una especie de pausa

tras cada sentencia.

3. Paso a paso: El script se ejecuta paso a paso, una sentencia cada vez.

Las cargas limitadas son una manera muy práctica de rentabilizar el tiempo.

Al “Finalizar Aquí” se sale del depurador manteniendo los datos que ya se han cargado. Al “Cancelar” se detiene la ejecución y se descartan los datos cargados.

Se recomienda consultar el archivo de registro de ejecución del script.

Page 48: curso qlikview avanzado

48

Curso QlikView Avanzado

Área Business Intelligence 4 Problemas Reales, Soluciones Reales

Page 49: curso qlikview avanzado

49

Curso QlikView Avanzado 4. Problemas Reales, Soluciones Reales

Tablas de Clave Sintética: Tablas asociadas por más de 1 campo.

PROBLEMA: Mayor consumo de recursos y ralentización de los cálculos

SOLUCIÓN: AutoNumber(OrderId & ’-’ & LineNo) AS OrderLineKey;

Referencias Cíclicas: Son una estructura en el modelo de datos en la que las

claves de al menos tres tablas forman un círculo.

PROBLEMA: Interpretación ambigua de los datos.

SOLUCIÓN:

Renombrar campos

Duplicar campos

Crear tabla intermedia de enlace

Desconexión parcial de tablas (es la solución de QlikView en

tiempo de ejecución del script de carga)

Page 50: curso qlikview avanzado

50

Curso QlikView Avanzado 4. Problemas Reales, Soluciones Reales

Tablas de Correspondencia: Permiten añadir campos aislados a una tabla.

Cuatrimestres:

MAPPING LOAD RowNo() AS Mes,

‘Q’ & Ceil(RowNo()/3) as Cuatrimestre

AutoGenerate(12);

ApplyMap(‘Cuatrimestres’, OrderMonth, Num(Month(OrderDate))) AS OrderQ

Botones Invisibles: Colocándolos encima de un objeto, permiten enlazar con

otra hoja u objeto.

Recargas Parciales: Una recarga total borra la nube de datos y ejecuta el

script. Una recarga parcial ejecuta el script sin borrar la nube de datos. Los LOAD

no se evalúan, se utilizan:

ADD LOAD: Para añadir valores a los campos de una tabla.

REPLACE LOAD: Borra la tabla y ejecuta el LOAD.

Page 51: curso qlikview avanzado

51

Curso QlikView Avanzado

Área Business Intelligence 5 Referencias

Page 52: curso qlikview avanzado

52

Curso QlikView Avanzado 5. Referencias

Referencias

1. Ayuda en línea

2. Archivos de Programa > QlikView >Tutorial

3. Material Cursos QlikView Professional y Enterprise

4. Archivos de Programa > QlikView > Documentación

QlikView Manual de Referencia.pdf

QlikView Automation Reference.pdf

APIguide.qvw

5. Archivos de Programa > QlikView > Plantillas

6. Archivos de Programa > QlikView > Ejemplos

Page 53: curso qlikview avanzado

53

Curso QlikView Avanzado 5. Referencias

7. Sitios Web de Referencia:

http://www.qlikview.com

http://ftp.qliktech.com/qvwebdownloads

http://www.qlikcommunity.com

http://www.orientstar.co.id/demo.html

http://www.desirabelles.com (Ejemplo cliente Zero Footprint)