Telechargé par rhoumameriam15

Support fromation Qlik View Designer-Standard - V1

publicité
Business & Management Consulting
FORMATION QLIKVIEW
DESIGNER - STANDARD
1
SOMMAIRE
00
Objectif de la formation
3
01
Architecture QlikView
6
1.
2.
3.
02
Description Générale de QlikView
Définitions et Terminologies
Composants majeurs de QlikView
Présentation de l’interface QlikView
1.
2.
3.
4.
04
1.
2.
05
13
Principes et description
Méthodologie : les étapes à suivre
Utilisation
Mettre en œuvre une feuille
Créer des Objets
1.
2.
3.
Utiliser des objets
Charger et exploiter les données
Créer et utiliser des onglets
49
3.
4.
85
Les jauges
Les boutons
Liste de sélection
Zone statistiques
Les objets glissières / calendrier
Gérer les rapports QlikView
1.
2.
77
Mettre en œuvre des tableaux pivots
Implémenter des tableaux simples avec
des expressions multiples
Objets Complémentaires
1.
2.
3.
4.
5.
06
03
Objets Multidimentionnels
Mettre en œuvre des calculs
Mettre en œuvre la recherche
associative
Intégrer et gérer les information
internes
Propriétés du Document
101
Objectifs de la formation
Notre Objectif lors de cette formation est de vous apprendre à
manipuler
différentes
les
Dashboards
fonctionnalités
QlikView en
proposées
:
exploitant
Filtres,
les
travail
collaboratif, etc. et à créer des applications QlikView
3
Premiers Pas avec
QlikView - Designer
1.
Architecture QlikView
2.
Présentation de l’interface
QlikView
3.
Créer des Objets
4.
Exploiter les Objets
multidimensionnels
5.
Les Objets complémentaires
6.
Créer/Gérer les rapports
QlikView
4
Créer avec QlikView Desktop
Pour la partie développement et création des Dashboards,
nous allons utiliser QlikView Desktop.
Dans ce qui suit, nous verrons brièvement, son architecture et
ses spécificités, ensuite nous découvrirons les fonctionnalités
qu’il propose.
5
Architecture
1.
Description Générale de
QlikView
2.
Définitions et terminologies
3.
Composants majeurs de
QlikView
6
A propos de Qliktech
Historique
• Fondée en 1993 en Suède
• R&D basée à Lund, Suède
• Brevets détenus pour la technologie associative
in-memory
• La premiére version de Qlik Sense est sortie
fin 2013
• Le produit Qlik Sense a connu 5 versions majeures
• La dernière version étant Septembre 2017
Board
• Paul Wahl, ancien COO Siebel et CEO SAP America
• Alex Ott, JVP, ancien Président Siebel North America
• Bruce Golden, Accel, ancien Dirigeant de Sun, Illustra
et Informix
• Claes Bjork, ancien CEO Skanska
• Måns Hultman, Chairman de QlikTech
• Conduit par des investisseurs – Accel Partners and
JVP
Organisation
• Equipe Dirigeante :
– Anciens Dirigeants venus de SAP, Siebel,
Oracle, PA Consulting, Mactive, Intentia
• 463 employés répartis dans 20 bureaux dans 12 pays
• Près de 500 partenaires
• Siège aux Etats-Unis (Radnor, Pennsylvanie)
Résultats
• Leader des solutions de BI de nouvelle génération
• Editeur de logiciel de BI connaissant la plus forte
croissance au monde pour deux années
consécutives (2005 – 2006) selon IDC
• Profitable, croissance annuelle du CA d‟environ 80%
• 45,000 clients dans 90 pays
• 14.3 nouveaux clients chaque jour
• 449 000 utilisateurs actifs
7
Architecture
Description Générale
Analyses Visuelles :
QlikView est une application de visualisation de données et
d’analyses en libre- service de nouvelle génération, qui permet
aux utilisateurs métier de créer facilement et d’une manière
intuitive
un
vaste
choix
de
visualisations
flexibles
et
interactives, qui stimulent l'exploration et la découverte.
8
Architecture
Description Générale
Création en mode
libre-service
• Business Users
- Cliquer et rechercher
- Modifier et éditer
• Business Analysts
- Commencer à partir
de zéro
Des analyses
guidées
• Applications
opérationnelles,
Applications exécutives,
KPIs critiques pour
l’entreprise
• Données actualisées
chaque heure, jour,
semaine, mois
• "Un à plusieurs":
Créateur Consommateur
Intégrer les
analyses
• Créez des applications
d'analyse guidées,
entièrement intégrées à
des pages Web,
CRM,ERP grâce à
l'emploi des mashups,
des extensions et des
API.
Applications analytiques
customisées
• Créez des applications
Web très modernes et
attrayantes en se
basant sur le moteur
QIX
• S’adaptent à tous
types de terminal (PC,
Tablette, Téléphone
mobile..)
• Conçues et crées par
des développeurs Web
Reporting et
collaboration
• Des rapports PixelPerfect centralisés
- PDF, Excel, PPT
formats
• Data Storytelling fournit
des rapports PowerPoint
dynamique
9
Architecture
Description Générale
QlikView Desktop permet aux développeurs de créer des applications dont l'extension est .qvw.
Ces QVW seront par la suite publiés sur le serveur afin de :
•
Planifier leurs tâches de rafraichissement .
•
Attribuer les droits d'accès nécessaires, pour pouvoir les consulter en mode Web.
10
Architecture
Terminologie QlikView Desktop
.QVD: données QlikView. Utilisé comme un fichier intermédiaire optimisé entre QlikView et des
sources de données externes.
.QVW: application QlikView. N'inclut que les données frontales (objets de feuille, rapports, etc.)
.QVX: échange de données QlikView. Format de fichier / flux pour la saisie de données hautes
performances dans QlikView.
Feuille: page d'une application QlikView contenant des objets de feuille, etc.
Onglet: Utilisé pour naviguer entre les feuilles.
Tableau de bord: une feuille spécifique au sein d'une application QlikView affiche des
informations détaillées relatives à cette application QlikView.
11
Architecture
Les Composants QlikView Desktop
Pagededémarrage
Aperçu de l’application
Il s'agit de l'endroit où se trouvent toutes vos documents récents.
Vous pouvez y ajouter des raccourcis.
Lorsque vous ouvrez un document .qvw, vous accédez à
l'aperçu de l'application. Vous pouvez visualiser et gérer tout le contenu
de l'application (les différentes feuilles) depuis l'aperçu.
Éditeur de script
L'éditeur de script permet de créer, d'éditer et d'exécuter
le script qui charge les données dans votre application.
Visionneur de tables
Le visionneur de tables permet d'obtenir une vue d'ensemble
des données que vous avez chargées dans votre application.
Grille de conception
Vous accédez au mode grille pour développez et analysez
vos applications.
12
Interface
1.
Principes et description
2.
Méthodologie : les étapes à
suivre
3.
Utilisation
4.
Mettre en œuvre une feuille
13
Interface
Principes et Description
C
B
D
A
E
14
Interface
Principes et Description
• La :barre d'outils contient le menu de
navigation, le menu global et le menu
conception.
Menu de navigation comprenant les
options Effacer, Précédent, Suivant.
A
Menu global comprenant les
options Ajouter une feuille,
Enregistrer, Chargement, Aide et À
propos.
Menu Conception comprenant l’ajout
des objets, pour éditer les informations
sur l'application ou ouvrir les options
afin de redéfinir le style de cette
dernière.
15
Interface
Principes et Description
B
C
D
E
Basculez l'aperçu de l'application entre le mode grille de
conception et le mode standard, selon vos préférences.
Permet d'accéder au script de chargement des
données.
Permet d’accéder au modèles de tables des données.
La feuille comprend des visualisations de données, par
exemple des graphiques et des tables pour présenter des
données dans des états de sélection précis..
16
Interface
Utilisation
Structure d’une application
Vue d’ensemble
Une application QlikView est un ensemble de:
•
Structure et Eléments visuels (Onglets  Feuilles)
•
Base (Script  Modèle de données  mesures+ dimensions )
17
Interface
Utilisation
•
Structure et Eléments visuels / Base:
Feuilles
Les feuilles comprennent des visualisations de
données, par exemple des graphiques et des tables
Script de chargement de
données
Un script de chargement de données vous permet
de charger des données dans l'application. Le script
se connecte à une source de données (base de
données, feuille Excel, etc.) et récupère les données.
Modèle de données
Les données chargées sont structurées dans un
modèle de données. Vous éditez le script de
chargement de données puis rechargez les
données afin de créer le modèle de données que
vous estimez être le plus adapté à votre application.
18
Interface
Mettre en œuvre une feuille
A
C
D
B
19
Interface
Mettre en œuvre une feuille
Création d’une nouvelle feuille
A
Créer une feuille
Vous pouvez créer une nouvelle feuille dans l'application à partir de l'aperçu de
l'application ou du navigateur de feuilles.
B
Ouvrir et éditer
Accéder à une feuille
Enregistrer la feuille
C
Enregistrer
Vous pouvez enregistrer une nouvelle feuille dans l'application à partir de l'aperçu de
l'application ou du navigateur de feuilles, avec un simple clic droit ensuite Supprimer
Favoriser la feuille
Favoris
D
Favoriser une feuille a pour objectif de vous faire gagner du temps en réutilisant
un contenu existant. Elle vous permet également de modifier la feuille afin de
l'adapter à des besoins spécifiques.
20
Interface
Mettre en œuvre une feuille
Sélection de Données
▫ Émettre des requêtes = sélectionner des valeurs
▫ Il suffit de cliquer sur un élément ≪ valeur ≫
▫ QV affiche alors toutes les valeurs du document
liées a la valeur sélectionnée en VERT
▫ Cellule VERTE= valeur sélectionnée
▫ Les cellules des valeurs de champ associées
sont BLANCHES
▫ Une cellule dont le contenu n'est pas associe (dont
les valeurs ne sont pas combinées avec celle de
l’élément sélectionnée) est dite exclue.
▫ Les cellules de valeurs exclues sont GRISES
21
Interface
Mettre en œuvre une feuille
Sélection multiple
▫ Dans la même liste
maintenir la touche CTRL
et sélectionner d’autres valeurs
▫ Si les éléments à sélectionner sont adjacents:
utiliser souris / bouton gauche
▫ Il est possible d’inverser la sélection en
sélectionnant
les valeurs exclues
*Clic droit / Sélectionner les valeurs exclues
Annuler la(les) sélection(s)
▫ Cliquer a nouveau sur la cellule sélectionnée
▫ Ou cliquer sur le bouton Effacer
22
Interface
Mettre en œuvre une feuille
Combinaison de sélections
▫ Permet de sélectionner une valeur
facultative d’une autre liste de sélection, en
plus de la valeur sélectionnée
23
Interface
Mettre en œuvre une feuille
Suivi des sélections
▫ Comment suivre de multiples sélections ?
*La zone ≪ Sélection Active ≫ (si implémentée
dans le document)
*La fenêtre ≪ Sélections actives ≫, via le bouton
24
Interface
Mettre en œuvre une feuille
Retour aux sélections
précédentes ou suivantes
▫ QVW mémorise les 100 dernières sélections
▫ Il est possible de naviguer dans cette liste:
*Afficher (et recalculer) la précédente sélection:
*Afficher (et recalculer) la sélection suivante:
▫ Ces boutons s’appliquent uniquement aux sélections,
les modifications apportées aux objets ou aux feuilles
n’étant pas concernées
25
Interface
Mettre en œuvre une feuille
Verrouillage de sélections
▫ Par défaut, QVW remplace la sélection précédente par la
nouvelle sélection si elles sont incompatibles
▫ Les sélections peuvent être verrouillées
*Verrouiller une sélection:
▫ Les cellules verrouillées apparaissent en BLEU:
26
Interface
Mettre en œuvre une feuille
Déverrouillage de sélections
▫ Les sélections restent verrouillées dans que l’ordre
inverse n’est pas donne
▫ Toutes les sélections verrouillées peuvent être
Déverrouillées
*Déverrouiller une sélection:
27
Interface
Mettre en œuvre une feuille
Recherche de valeurs
La recherche textuelle permet de chercher des
valeurs dans les listes de sélection
▫ Activer une liste de sélection (par clic) et entrer une suite de
caractères permet de d’ouvrir une zone de recherche sur cet
motif
▫ QVW affiche alors les
valeurs éligibles:
▫ Menus équivalents: Edition/rechercher ou Clic
Droit/ Rechercher
28
Interface
Mettre en œuvre une feuille
Recherche de valeurs
L’utilisation de caractères génériques permet
d’étendre les résultats:
▫ Le caractère générique * représente un ou
plusieurs caractères arbitraires
▫ Ex: utilise en début, au milieu ou en fin de
chaine de recherche :
29
Interface
Mettre en œuvre une feuille
Recherche de valeurs
De la même manière, la recherche sur un champ
numérique accepte les caractères > et < :
▫ Ci-dessous, une recherche sur le champ
≪ Year ≫ permet de sélectionner les années
antérieures a 2010:
30
Interface
Mettre en œuvre une feuille
Recherche de valeurs
Un objet QVW spécifique appelé ≪ objet de
recherche ≫ permet de parcourir simultanément
tous les champs du document
▫ L’entrée d’une chaine de caractères dans ce type
d’objet permet l’affichage de toutes les valeurs
éligibles contenues dans tous les champs du
document:
▫ Il est ensuite possible d’activer la sélection en
cliquant sur une ou plusieurs valeurs proposées
31
Interface
Mettre en œuvre une feuille
Favoris de sélection
▫ Il est possible d’enregistrer un ensemble de sélections (10
maximum) pour le réutiliser ultérieurement
* Effectuer un ensemble de sélections puis utiliser le
bouton ≪ Ajouter un favori ≫
* La boite de dialogue permet de configurer le favori ainsi
enregistre
* La sélection peut être appelée via
le menu Favoris
32
Interface
Mettre en œuvre une feuille
Enregistrement
L’application QVW peut être sauvegardée en
l’état
▫ L’enregistrement sauvegarde les données stockées,
les sélections courantes et les favoris.
▫ Utiliser le menu ≪ Fichier / Enregistrer Sous ≫ afin
d’afficher la boite de dialogue correspondante
▫ Les applications sont stockées sous forme de
fichiers d’extension .QVW
33
Interface
Méthodologie
1. Création d’une application simple
La première étape de la création d'une application consiste à définir un espace réservé vide à son intention.
Pour créer cet espace réservé à l'application.
Procédez comme suit :
1.Dans la page de démarrage, cliquez
sur Nouveau document.
2.Un assistant de mise en route vous
accompagnera.
3.Cliquez sur Créer.
L'application a été créée.
4.Cliquez sur Ouvrir l'application.
L'application s'ouvre en mode Aperçu de l'application.
L'étape suivante consiste à ajouter des données à la nouvelle application.
34
Interface
Méthodologie
2. Ajout de donnée
1.
Établir la connexion
Connexion OLE DB
Connexion ODBC
35
Interface
Méthodologie
Établir une connexion OLE DB
36
Interface
Méthodologie
Établir une connexion ODBC
Choisir le chemin de votre fichier local (QVD, ACCESS, EXCEL …)
37
Interface
Méthodologie
Contenu d’une feuille
Lorsqu’on est en mode Edition d’une feuille, on procède comme suit :
1.
Clique droite
2.
<Nouvel objet de feuille>
3.
Une librairie de graphiques s’affiche qu’on peut utiliser dans la conception d’un rapport. .
38
Interface
Méthodologie
Création de documents et de graphiques
Lorsque vous ajoutez des tables et des graphiques sur des feuilles, tenez compte des recommandations
suivantes :
*L'emploi homogène de couleurs, de noms et de styles aide l'utilisateur à parcourir et à comprendre le
document.
*Structurez la feuille de façon ordonnée autour des tables et des graphiques.
*Focalisez-vous sur quelques mesures significatives (indicateurs KPI) par feuille et organisez-les par
ordre de priorité.
*Assurez-vous que l'utilisateur peut descendre dans la hiérarchie des données. Créez, par exemple,
des dimensions pour la date et l'heure afin de faciliter la descente dans les groupes hiérarchiques
année, mois, semaine et jour.
39
Interface
Méthodologie
Éditeur de script
L’éditeur de script vous permet d'ajouter et de gérer des données provenant de vos propres sources
de données , en vue de les utiliser dans votre application.
40
Interface
Méthodologie
En général, la manière dont vous chargez des données dans le document peut être expliquée par les
processus d’extraction, de transformation et de chargement:
Extraction
La première étape consiste à extraire des données du système de source de données. Dans le script, vous
utilisez les instructions SELECT ou LOAD pour définir cela. Les différences entre ces déclarations sont les
suivantes:
o
SELECT est utilisé pour sélectionner les données d'une source de données ODBC ou d'un fournisseur
OLE DB. L'instruction SELECT SQL est évaluée par le fournisseur de données et non par QlikView.
o
LOAD est utilisé pour charger des données depuis un fichier, des données définies dans le script, d'une
table précédemment chargée, d'une page Web, du résultat d'une instruction SELECT ultérieure ou en
générant automatiquement des données.
41
Interface
Méthodologie
Transformer
L'étape de transformation implique la manipulation des données à l'aide de fonctions de script et de règles
pour dériver la structure de modèle de données souhaitée. Les opérations typiques sont:
o
Calcul de nouvelles valeurs
o
Traduire des valeurs codées
o
Renommer des champs
o
Tables de jonction
o
Valeurs d'agrégation
o
Pivotant
o
La validation des données
42
Interface
Méthodologie
Charger
Dans la dernière étape, vous exécutez le script pour charger le modèle de données que vous avez défini
dans le document.
Votre objectif doit être de créer un modèle de données permettant une gestion efficace des données dans
QlikView. Cela signifie généralement que vous devez viser un schéma en étoile ou un flocon de neige
raisonnablement normalisé, sans aucune référence circulaire, c'est-à-dire un modèle dans lequel chaque
entité est conservée dans un tableau séparé. En d'autres termes, un modèle de données typique
ressemblerait à ceci:
o
Une table de faits centrale contenant les clés des dimensions et des nombres utilisés pour calculer les
mesures (telles que le nombre d'unités, les montants des ventes et les montants du budget).
o
Des tables environnantes contenant les dimensions avec tous leurs attributs (tels que produits, clients,
catégories, calendrier et fournisseurs).
43
Interface
Méthodologie
Visionneur de modèle de données
Le visionneur de modèle de données offre une vue d'ensemble de la structure des données de l'application .
Vous pouvez afficher un aperçu des données contenues dans les tables et les champs dans le visionneur
de modèle de données.
44
Interface
Méthodologie
Dans de nombreux cas, il est possible de résoudre une tâche, par exemple des agrégations;
* Soit en créant un modèle de données plus riche dans le script de chargement,
* Soit en effectuant les agrégations dans les expressions de graphique.
En règle générale, vous obtiendrez de meilleures performances si vous conservez les transformations
de données dans le script de chargement.
Conseil: Il est recommandé d’esquisser votre modèle de données avant le déployer. Cela vous aidera
en fournissant une structure pour quelles données à extraire et quelles transformations à effectuer.
45
Interface
Méthodologie
Mises en production de l’application
Vous avez plusieurs méthodes de mise en production.
- En local
- Sur un Serveur
o A distance
o Web
La méthode la moins bonne est en mode local, c’est-à-dire installer directement l’application sur l’ordinateur
de l’utilisateur concerné.
Cela implique un maintien de l’application plus complexe, car à chaque modification ou problème il faudra
intervenir sur son poste. De plus un rechargement des données devra être fait manuellement par l’utilisateur.
46
Interface
Méthodologie
Mises en production de l’application
Avec QlikView Professionnel, nous avons la possibilité d’installer le centre de management sur un serveur.
Ce centre de maintenance permet de gérer les applications mais aussi les utilisateurs.
-
Les applications : pour chacune installé sur le serveur, il est possible de régler leur rechargement
automatique selon ce qu’on désire (chaque heure, une fois par jour, ou encore une fois par mois). De
plus nous pouvons régler les droits d’utilisations.
- Les utilisateurs : pour chacun, nous les affectons sur les applications que nous voulons. Pour cela il nous
faut des licences.
2 types de licences :
- Licence Simple : 1 utilisateur = accès à 1 application désignée
- Licence Multiple : 1 utilisateur = accès à toutes les applications possibles
47
Interface
Méthodologie
Mises en production de l’application
De plus, lorsque que vous installé vos applications sur le serveur, il est conseillé de les classer dans des
dossiers car vous aurez la possibilité de mettre des droits d’accès sur ces dossiers. Cela permettant aux
utilisateurs non concernés de ne pas voir les autres applications QlikView.
Lorsque l’application est sur le serveur, nous avons donc 2 méthodes d’accès. Les 2 ayant des avantages et
inconvénients. Il reste donc à la charge du service et des utilisateurs de choisir la meilleure méthode pour
eux.
- Connexion via le client lourd de QlikView installé en local sur son ordinateur. On se connectera à partir
de là au serveur.
- Connexion via le web. L’explorateur recommandé est Internet explorer qui permet d’avoir les mêmes
fonctionnalités et design que sur le client lourd. Mais toute autre marche aussi bien.
Pour se connecter à l’application, il faudra rentrer ses identifiants et mot de passe pour les 2 méthodes
d’accès. Vous avez la aussi plusieurs méthodes.
- Soit vous configurer la connexion via leur authentification de session. Cela permet une plus grande
rapidité d’utilisation et une non perte d’identifiant.
-
Soit vous configurer de nouvelle authentification. Cela permet un meilleur niveau de sécurité.
48
Objets
1.
Utiliser des objets
2.
Charger et exploiter les données
3.
Créer et utiliser des onglets
49
Objets
Utiliser des objets
1. Objectif
L'intérêt d’un objet est de transmettre des données de manière rapide et convaincante tout en restant précise
à 100 %. Un objet doit normalement servir un objectif clair et ne pas noyer les utilisateurs sous un flot de
détails inutiles. Dans la mesure du possible, une visualisation doit être conçue de manière à encourager les
utilisateurs à comparer ses divers éléments pour dégager des réflexions à partir des données brutes.
2. Compréhension des données
Pour concevoir une visualisation efficace dont l'objectif est clair, assurez-vous de bien comprendre les
données elles-mêmes. Référez-vous aux points suivants pour identifier plus facilement les informations à
transmettre au travers de vos données :
•
•
De quel type de données s'agit-il ? Des données nominales, ordinales, d'intervalle ou de taux ?
Quel message souhaitez-vous transmettre à l'aide de ces données ?
50
Objets
Utiliser des objets
Ajout d’un objet:
Pour ajouter un graphique il suffit de glisser un élément du panneau de ressources et le
déposer sur la zone indiquée
Graphiques
disponibles
Déposez le dans la zone
souhaité
51
Objets
Utiliser des objets
3. Les types d‘objets
QlikView inclut des objets dont vous pouvez vous servir pour créer des visualisations. Vous pouvez passer
d'un type de visualisation à un autre en faisant glisser un nouveau objet sur une visualisation d'une feuille.
52
Objets
Utiliser des objets
3.1. Graphe : Histogramme
L'histogramme convient parfaitement pour établir des comparaisons entre plusieurs valeurs. L'axe des
dimensions affiche les éléments de catégorie faisant l'objet d'une comparaison tandis que l'axe des mesures
indique la valeur associée à chaque élément de catégorie. Sur l'image, les valeurs de dimension
correspondent à différentes régions : Nordic, USA, Japan, UK, Spain et Germany. Chaque région représente
une valeur de dimension et se voit attribuer une barre. La hauteur de chaque barre correspond à la valeur de
mesure (sales) associée aux différentes régions.
Vous pouvez effectuer des comparaisons de données plus complexes en groupant ou en empilant les barres.
Les barres groupées vous permettent de comparer facilement deux éléments ou plus d'une même catégorie.
Les barres empilées combinent les barres de différents groupes les unes sur les autres ; la hauteur totale de
la barre obtenue représente le résultat combiné.
53
Objets
Utiliser des objets
3.1. Graphe : Histogramme
Sélections dans un graphique
▫ Il est possible de sélectionner des données dans un objet graphique
▫ La sélection d’une zone sur un objet graphique (sur les étiquettes ou dans la zone de trace) rend
effective la sélection sur les valeurs de la zone
54
Objets
Utiliser des objets
3.1. Graphe : Histogramme
Changement rapide de type de graphique
▫ Certains graphiques peuvent être conçus pour pouvoir être affiches sous plusieurs formes
▫ Une petite icone le signale
* soit dans la barre de titre du graphique
* soit dans le graphique lui-même.
55
Objets
Utiliser des objets
3.2. Graphe : Graphique en courbe
Le graphique en courbes permet d'afficher les tendances au fil du temps. La dimension se trouve
toujours sur l'axe des abscisses tandis que les mesures sont situées sur l'axe des ordonnées. Il ne peut pas
être orienté à la verticale.
Un graphique en courbes nécessite au moins une dimension et une mesure. Le tableau suivant illustre les
limites maximales. Si vous utilisez plus de trois mesures, le graphique risque d'être difficile à interpréter.
56
Objets
Utiliser des objets
3.3. Graphe : Graphique combiné
Il convient d'utiliser un graphique combiné dans le cas d'une comparaison entre deux ensembles de
valeurs de mesure généralement difficiles à comparer en raison des différences d'échelle
employées. Comme exemple type, prenons le cas d'un histogramme comprenant des chiffres de vente que
vous souhaitez associer aux valeurs de marge (en pourcentage). Dans un histogramme classique, les
barres correspondant aux ventes seraient affichées de la façon habituelle, mais les valeurs de marge
seraient presque invisibles en raison de la différence très importante entre les valeurs numériques des
ventes et de la marge.
Un graphique combiné vous permet d'associer ces valeurs, par exemple au moyen de barres pour les
valeurs des ventes et d'une courbe pour les valeurs de marge. Par défaut, les barres disposent d'un axe des
mesures à gauche tandis que les valeurs de marge sont dotées d'un axe distinct à droite. Les deux mesures
utilisent la même dimension (YearMonth).
57
Objets
Utiliser des objets
3.4. Graphe : Blocks:
Les Blocks affichent des données sous forme hiérarchique en recourant à des rectangles imbriqués, c.- àd. de petits rectangles insérés au sein d'un rectangle plus grand.
Sur cette image, vous observez plusieurs groupes de produits, tels que Produce, Canned Products,et
Frozen Foods. Chaque groupe de produits constitue un grand rectangle. Les groupes de Produits
Peuvent être considérés comme les branches de l'arbre. Lorsque vous sélectionnez un groupe de produits,
vous descendez dans la hiérarchie pour atteindre le niveau inférieur suivant, le type de produit.
58
Objets
Utiliser des objets
3.5. Graphe : Nuage des points:
Le nuage de points présente des valeurs issues de deux ou trois mesures. Ce type de graphique s'avère
utile pour afficher des données où chaque instance comporte deux nombres , par exemple la
relation entre les ventes (Sales) et la quantité (Quantity) par Client (Customer).
Dans le nuage de points suivant, une troisième mesure, le coût (Cost) est utilisée pour générer la taille des
bulles.
•
Nombre de dimensions et de mesures
Dans un nuage de points, vous devez spécifier une dimension et au moins deux mesures. Vous pouvez
spécifier une dimension et trois mesures au maximum, où la troisième mesure est visualisée sous forme
de taille de bulles.
59
Objets
Utiliser des objets
3.6. Objet texte:
La visualisation avec texte et image vient compléter les autres types de visualisation en proposant des
options d'ajout de texte, d'images, de liens hypertexte et de mesures.
Vous pouvez formater et mettre en couleur le texte, ainsi qu'aligner les paragraphes. L'image d'arrière-plan
est assortie d'options de dimensionnement et de positionnement. Vous pouvez également définir le
comportement réactif pour le texte et les images.
.
60
Objets
Utiliser des objets
3.6. Objet texte: Propriétés générales.
61
Objets
Charger et exploiter les données
▫ Les données d’un document QWV proviennent d’une ou plusieurs sources
▫ Ces sources sont des bases de données relationnelle ou des fichiers (.txt, .xls, .xml,…) contenant des tables
de données.
▫ Cette extraction repose sur l‘écriture et l‘éxécution d'un script,
dans lequel sont spécifies:
*La base de données,
*Les tables et les champs a récupérer.
▫ Le script peut être génère automatiquement a l'aide des outils
inclus dans QlikView..
62
Objets
Charger et exploiter les données
▫ L’accès au module se fait via le menu ≪ Fichier / Éditer le script ≫ ou par le bouton spécifique
▫ Par défaut, l’éditeur contient les variables d’environnement (format de date, séparateur de milliers,…)
63
Objets
Charger et exploiter les données
Raccourcis utiles
▫ CTRL + E: ouvrir l’éditeur de script
▫ CTRL + R: recharger le script
▫ CTRL + T: éditer le visionneur de tables
64
Objets
Charger et exploiter les données
Utilisation d’onglets
▫ La création d’onglets permet de structurer le code
▫ Qlikview exécutera le script par les onglets de gauche a droite
65
Objets
Charger et exploiter les données
Utilisation de l’assistant
▫ L’assistant permet de générer du code de façon automatique
▫ En particulier, il permet l’écriture de scripts de chargement ≪ simples ≫
▫ Il est ensuite nécessaire d’enrichir le code ≪ manuellement ≫ pour traiter les
fonctionnalités avancées
▫ L’assistant se situe dans la zone inferieure du script:
66
Objets
Charger et exploiter les données
Utilisation de l’assistant
67
Objets
Charger et exploiter les données
Utilisation de l’assistant : Interprétation d’un fichier
68
Objets
Charger et exploiter les données
Utilisation de l’assistant : Étapes de transformation
69
Objets
Charger et exploiter les données
Utilisation de l’assistant : Production du script
70
Objets
Charger et exploiter les données
Quelques instructions
▫ LOAD
Cette instruction permet de charger les champs a partir d’un fichier ou a partir du
résultat d’une instruction SELECT
▫ FROM
• Cette instruction permet d’identifier les tables ou les fichiers a partir desquelles
les champs sont extraits
▫ CONNECT
• Permet d’établir la connexion a une base de données.
• Des que la connexion est établie, elle est utilisée jusqu’a ce qu’une nouvelle
instruction CONNECT soit définie
▫ DIRECTORY
• Une instruction qui utilise un chemin relatif est précédée de cette instruction
71
Objets
Charger et exploiter les données
Exploiter les données
▫ Il est nécessaire de lancer explicitement le chargement des données
▫ L’ensemble des champs extraits est alors exploitable
▫ Ces champs sont accessibles dans la rubrique ≪ champs ≫ des
diffèrent objets graphiques
72
Objets
Crée et utiliser des onglets
• Les feuilles: composant de base de QVW
▫ Une feuille contient les objets graphiques
▫ Un document contient de 1 a n feuilles Toute feuille comporte un onglet permettant
d’activer la feuille associée
▫ Les feuilles restent connectées logiquement:
une sélection affecte toutes les feuilles
* Un indicateur vert signale une feuille sur laquelle une sélection a été posée.
73
Objets
Crée et utiliser des onglets
• Ajout d’une feuille
▫ Par défaut, une nouvelle application contient une feuille nommée ≪ Principal ≫
▫ Choisir le menu ≪ Disposition / Ajouter une feuille ≫
▫ La boite de dialogue s’affiche et permet le paramétrage de l’objet Feuille
*Paramètres d’affichage (≪ General ≫)
*Liste des champs disponibles et affiches (≪ Champs ≫)
*Liste des objets contenus dans la feuille (≪ Objets ≫)
*Paramètres de sécurité sur la feuille (≪ Sécurité)
*Évènements déchenchables en entrée et sortie de la feuille (≪ Déclencheurs ≫)
74
Objets
Crée et utiliser des onglets
• Paramètres généraux d’une feuille
75
Objets
Crée et utiliser des onglets
• Gestion d’une feuille
▫ L’ordonnancement des feuille (déplacement des onglets) se fait par le menu ≪ Disposition / Promouvoir ou
Abaisser la feuille ≫ depuis la feuille active
▫ Suppression de feuille active: utiliser le menu ≪ Disposition / Supprimer la feuille ≫
▫ Copie (duplication) de feuille active: ≪ Clic droit / Copier la feuille ≫
▫ Annulation/rétablissement de modification sur une feuille:
* utiliser les boutons dédies:
76
Objets Multidimensionnels
1.
Mettre en œuvre des tableaux
pivots
2.
Implémenter des tableaux
simples avec des expressions
multiples
77
Objets Multidimensionnels
Mettre en œuvre des tableaux Pivots
Tableau croisé dynamique:
Le tableau croisé dynamique présente les dimensions et les mesures sous forme de lignes et de colonnes
dans un tableau. Dans un tableau croisé dynamique, vous pouvez analyser les données par plusieurs
mesures et dans plusieurs dimensions à la fois. Vous avez la possibilité de réorganiser les mesures et les
dimensions pour obtenir différentes vues des données. L'activité consistant à déplacer des mesures et des
dimensions de manière interchangeable entre les lignes et les colonnes est appelée « pivotement ».
.
78
Objets Multidimensionnels
Mettre en œuvre des tableaux Pivots
Spécificités du tableau croise dynamique
▫ Fonction de plier/déplier
▫ Déplacement des dimensions
* Par glisser / déposer depuis l’entête de champ
* Une ligne bleue signale la position cible
* Déplacement vertical ou croise.
79
Objets Multidimensionnels
Mettre en œuvre des tableaux Pivots
Fonctionnalités
▫ Les colonnes peuvent être dimensionnées en plaçant le curseur sur la ligne de séparation:
▫ Des sommes partielles peuvent être affichées sur la dimension souhaitée
* Onglet Présentation / Afficher des sommes partielles
80
Objets Multidimensionnels
Implémenter des tableaux simples
Table:
La table affiche simultanément plusieurs champs où le contenu de chaque ligne est connecté de façon
logique. Généralement, une table se compose d'une dimension et de plusieurs mesures.
Les tables sont utiles lorsque vous avez besoin d'afficher des valeurs précises (au lieu des visualisations
de valeurs) et lorsque vous voulez comparer des valeurs entre elles. Les tables sont particulièrement utiles
lorsque des groupes hiérarchiques sont utilisés comme dimensions.
81
Objets Multidimensionnels
Implémenter des tableaux simples
Spécificités du tableau simple
▫ Il ne peut pas afficher de sous-totaux
▫ Chacune de ses lignes contient une combinaison de dimension(s) + expression(s)
▫ Les possibilités de tri sont supérieures:
* Sur une colonne: clic droit / trier
* Ou double-clic sur l’entête de colonne
82
Objets Multidimensionnels
Implémenter des tableaux simples
Indicateurs visuels
▫ Permettent de faire ressortir des valeurs d’expression dans les tableaux
▫ Accessible par le menu ≪ indicateurs visuels ≫ des propriétés
▫ 3 critères différents accessibles
▫ Options d'Edition possibles pour une expression:
* Colorimétrie de la Police
* Colorimétrie de l’arrière-plan
* Gras ,souligne et italique
83
Objets Multidimensionnels
Implémenter des tableaux simples
Sélection par menu déroulant
▫ Permet de sélectionner une valeur depuis une liste activable dans l’entête de colonne:
▫ Activer l’option depuis le menu ≪ Présentation / Sélection par menu déroulant ≫
84
Objets Complémentaire
1.
Les jauges
2.
Les boutons
3.
Liste de sélection
4.
Zone statistiques
5.
Les objets glissières / calendrier
85
Objets Complémentaire
Jauges
1. Jauge :
La jauge est conçue pour afficher une seule valeur de mesure et visualiser la manière dont celle-ci
doit être interprétée.
•
Paramètres par défaut d'une jauge
•
•
•
•
•
une jauge radiale ;
une seule couleur (le bleu) ;
les limites de la plage : valeur min. (0) et max. (100) ;
pas de segments ;
étiquette et titre visibles.
Vous pouvez convertir la jauge radiale en barre.
Si vous utilisez des segments, une autre couleur est introduite. Vous avez la possibilité de définir la
couleur de chaque segment.
86
Objets Complémentaire
Boutons
2. Bouton :
▫ Cet objet permet d’exécuter des commandes ou des actions:
•
Export de données vers des fichiers
•
Lancement d'autres documents
•
Suppression de sélections dans un document
•
Lancement d’une application externe (ex: lien web,…)
…
87
Objets Complémentaire
Boutons
2. Bouton : Paramétrage des actions
88
Objets Complémentaire
Liste de sélection
3. Liste de sélection :
Vous pouvez ajouter une liste de sélection pour contrôler les données affichées dans les
visualisations d'une feuille. Une liste de sélection permet de filtrer simultanément les données de
plusieurs dimensions. Par exemple, lorsque vous disposez d'un graphique des ventes dans le temps,
vous pouvez utiliser la liste de sélection pour limiter les données affichées dans le graphique aux seules
données correspondant à une période sélectionnée, à des catégories de produits et à une certaine
région.
List Box
89
Objets Complémentaire
Liste de sélection
3. Liste de sélection :
▫ L'objet le plus basique a l‘écran
▫ Contient une liste de toutes les valeurs d'un champ donne (une colonne) de la base de données
▫ Toutes les valeurs que contient le champ de base de données s'affichent dans la liste de sélection
▫ S'il n'y a pas assez de place pour qu'elles tiennent toutes dans la partie visible de la liste de sélection,
des barres de défilement s'affichent a droite et au bas de la fenêtre
▫ Les valeurs sont dédoublonnées
90
Objets Complémentaire
Liste de sélection
3. Liste de sélection : Exemples de paramétrage
▫ ListBox par défaut:
▫ ListBox avec icones spéciales:
▫ Affichage multi-colonnes:
▫ Styles de sélection alternatifs:
▫ Objet en mode réduit:
91
Objets Complémentaire
Liste de sélection
3. Liste de sélection : Gestion des Expressions affichées
92
Objets Complémentaire
Liste de sélection
3. Liste de sélection : Options de présentation des données
93
Objets Complémentaire
Liste de sélection
3. Liste de sélection : Formatage spécifique des valeurs numériques
94
Objets Complémentaire
Liste de sélection
3. Liste de sélection : Paramétrage typographique
95
Objets Complémentaire
Liste de sélection
3. Liste de sélection : Options de mise en forme de l’objet
96
Objets Complémentaire
Liste de sélection
3. Liste de sélection : Mise en forme de la barre de titre
97
Objets Complémentaire
Liste de sélection
4. Zone statistique:
▫ Moyen d’afficher de façon synthétique un champ numérique dans lequel les enregistrements sont
pertinents par leur somme ou leur moyenne
▫ Le contenu de l’objet est en lien avec les sélections courantes
98
Objets Complémentaire
Liste de sélection
4. Zone statistique: Paramétrage
99
Objets Complémentaire
Curseur
5. Curseur / Calendrier
100
Gérer les rapports QlikView
1.
Mettre en œuvre des calculs
2.
Mettre en œuvre la recherche
associative
3.
Intégrer et gérer les information
internes
4.
Propriétés du Document
101
Gérer les rapports
Mettre en œuvre des calculs
Si vous voulez obtenir la dernière année de l'application, utilisez la fonction max ([{set}] FieldName)
<Année = {"$ (= max ({1} Année))"}>
Notez que:
- La fonction max, comme toute fonction d'agrégation, prend en compte la sélection en cours
- Nous avons utilisé un ensemble intérieur. {1} à l'intérieur de la fonction max désigne l'ensemble de
l'application. Si nous n’utilisez-le, la fonction max renverra la dernière année parmi celles choisies par
l'utilisateur
- Nous utilisons deux signes égaux, 1 avant les accolades, 1 entre les guillemets
Si vous recherchez l’année précédente de la dernière année de la sélection, vous pouvez écrire l’un des
deux
syntaxes équivalentes:
- <Année = {"$ (= max ({$} Année) -1)"}>
- <Année = {"$ (= max (Année) -1)"}>, {$} = sélection en cours, il s'agit de la valeur par défaut
102
Gérer les rapports
Mettre en œuvre des calculs
Exemple
103
Gérer les rapports
Mettre en œuvre des calculs
Si vous voulez obtenir les périodes de l’année:
(YTD) CUMUL À CE JOUR:
Sum ({<MONTH =, YTD = {1}, YEAR =>} VALEUR)
(YTD from Year Ago) Depuis le début de l'année:
Sum ({<MONTH =, YTD = {1}, YEAR = {$ (= YEAR-1)}>} VALEUR)
TOTAL MOBILE 12 périodes: (MOVING TOTAL 12 periods)
Sum ({<MOIS =, ANNÉE =, TIME_KEY = {"> $ (= Max (TIME_KEY) -12) <= $ (= Max (TIME_KEY))"}}}}
VALEUR)
(MOVING TOTAL 12 periods, Year Ago) TOTAL MOBILE 12 périodes, année auparavant:
Sum ({<MONTH =, YEAR =, TIME_KEY = {"> $ (= Max (TIME_KEY) -24) <= $ (= Max (TIME_KEY) -12)"}>}
VALEUR)
104
Gérer les rapports
Mettre en œuvre des calculs
Par conséquent, vous pouvez également modifier le modèle plus en profondeur de sorte que l’analyse des
ensembles pour l’année, le total mobile et l’année précédente et leurs comparaisons deviennent très
simples.
Certaines personnes remplissent des Flags (avec 1 et 0) pour pouvoir écrire:
Sum (VALUE * Flag)
Ceci est simple et fonctionne bien. Mais cela prend beaucoup de temps, bien plus que :
Sum({<Flag = {1}> VALUE)
Parce que QlikView dans le second cas réduit la portée avant le calcul.
Avec Sum(VALUE * Flag), QlikView n’étend pas les données et calcule tout.
105
Gérer les rapports
Mettre en œuvre des calculs
Nous voulons agréger le volume des ventes pour les FABRICANTS dont la valeur des ventes est supérieure
à 100 000 dollars en fonction de la sélection actuelle:
sum ({$ <MANUFACTURER_LDESC = {"= sum ([Valeur de vente])> 100000"}>} [Volume de ventes])
Mais nous pouvons également décider de rechercher les FABRICANTS sur une période ou des produits
spécifiques. Nous créera un Set intérieur:
sum ({$ <MANUFACTURER_LDESC = {"= sum ({1 <TIME_SDESC = {'P 01/13'}), CATEGORY_LDESC =
{'ACC', 'CHEESE CAKE'}>} [Volume de ventes])> 100000 "}>} [Volume de ventes])
Rappelez-vous que les membres peuvent être placés entre guillemets simples ou doubles.
106
Gérer les rapports
Mettre en œuvre des calculs
Je veux trouver les fabricants dont les ventes dépassent 100 000 pour les 2 catégories GATEAU AU
FROMAGE et ACC en janvier 2013 (période P01 / 13).
Mais je veux supprimer de cette liste ceux dont les ventes sont inférieures à 50 000 pour toutes les
catégories en janvier 2012:
J'ai besoin de deux ensembles: {<set 1> - <set 2>}, chacun d'entre eux utilisera la fonction sum ():
Set 1 = 1 <MANUFACTURER_LDESC = {"= sum ({1 <TIME_SDESC = {'P01/13 '}, CATEGORY_LDESC = {'
ACC ',' GATEAU AU FROMAGE '}>} [Valeur de vente])> 50000 "}>
Set 2 = <MANUFACTURER_LDESC = {"= sum ({1 <TIME_SDESC = {'P 01/12'}, CATEGORY_LDESC =
{'*'}>} [Valeur de vente])> 100000 "}>}
107
Gérer les rapports
Mettre en œuvre des calculs
Dans une syntaxe globale:
sum ({1 <MANUFACTURER_LDESC = {"= sum ({1 <TIME_SDESC = {'P01/13 '}, CATEGORY_LDESC = {'
ACC ',' GATEAU AU FROMAGE '}>} [Valeur de vente])> 50000 "}> - <MANUFACTURER_LDESC = {"=
somme ({1 <TIME_SDESC = {'P 01/12'}, CATEGORY_LDESC = {'*'}>} [Valeur
Ventes]) <50000 "}>}[Ventes de valeur])
cela pourrait être réduit un peu:
sum ({1 <MANUFACTURER_LDESC = {"= somme ({1 <TIME_SDESC = {'P 01/13'}, CATEGORY_LDESC =
{'ACC',}),'CHEESE CAKE'}>} [Valeur de vente])> 50000 "} - {" = somme ({1 <TIME_SDESC = {'P01 / 12'},
CATEGORY_LDESC = {'*'}>} [Valeur de vente]) < 50000 "}>}[Ventes de valeur])
108
Gérer les rapports
Mettre en œuvre des calculs
Si vous souhaitez obtenir le Top 20 des produits:
Sum ({<Produit = {"= rang (Sum(Ventes), 4) <= 20"}>} Ventes)
Et maintenant, le Top 20 des produits de la marque 10 (nous devons utiliser un Set interne):
Sum ({<Produit = {"= rang (Sum ({<Marque = {10}>} Ventes), 4) <= 20"}>} Ventes)
Prenez soin de ne pas écrire:
Sum({<Marque = {10}, Produit = {"= rang (Sum(Ventes), 4) <= 20"}>} Ventes)
Vous obtiendrez l'intersection de la marque 10 et du top 20 des produits. Et peut-être que vous n'obtiendrez
rien car il n’existe pas de produit de la marque parmi les 20 premiers produits.
Gardez également à l'esprit que l'analyse des ensembles est «calculée» une fois, avant que le graphique ne
soit calculé. Non pas une fois par ligne: vous n'obtiendrez pas de produits différents par région si vous avez
une dimension de région dans votre graphique.
109
Gérer les rapports
Mettre en œuvre des calculs
Utiliser p () et e ()
Ces fonctions renvoient les membres qui ont (ou n'ont pas) de données. Ils sont basés sur le modèle
associatif
Syntaxe:
{<Dimension1 = P ({<{Dimension to select} Dimension1}>) [, Other dimensions of the Set]>}
Veuillez noter que:
-
Les deux fonctions p () et e () ont la même syntaxe:
p () renvoie les valeurs possibles,
e () renvoie les valeurs exclues
- Ils seront insérés dans un plus grand Set
- Ces fonctions vous permettent de rechercher les produits Top N ou ceux dont les ventes sont supérieures à
X:
ils renvoient simplement les membres (produits) qui ont des données ou ceux qui n'en ont pas.
110
Gérer les rapports
Mettre en œuvre des calculs
Utiliser p () et e ()
Exemple:
Nous recherchons les fabricants qui vendent CROISSANT au cours de la première période de 2013.
Mais nous voulons afficher toutes les catégories:
sum({$<CATEGORY_LDESC={"*"},MANUFACTURER_LDESC=p({1<CATEGORY_LDESC={"CROISSANT"
},TIME_SDESC= "P 01/13">} MANUFACTURER_LDESC) >} [Sales Value])
p () peut également être utilisé lorsque vous avez deux dimensions, avec les mêmes valeurs, non liées, et
vous voulez qu'une sélection faite sur la première dimension soit également propagée à la seconde.
Par exemple, j'ai 2 dimensions ClientID et BClientID qui ont les mêmes valeurs, mais ne sont pas liées.
L'utilisateur a sélectionné le ClientID via un ListBox et nous devons afficher le budget associé à
BClientID.
Sum({<BClientID = p (ID Client)>} Budget)
111
Gérer les rapports
Mettre en œuvre des calculs
Utiliser deux champs
Si nous voulons sélectionner une dimension à travers deux champs, par exemple:
- Client facturé = client livré
- Date de commande = Date de livraison
-…
Syntaxe:
{<Dimension = {"= condition booléenne"}>}
La condition booléenne sera créée en comparant les deux champs.
Attention: la dimension recherchée ne peut pas être aussi à l'état booléen. Si nécessaire, créez un
clé numeric avec Autonumber ().
Sum ({<KeyAutoNumber = {"= (DayDelivery = DayOrder)"}>} Sales)
112
Gérer les rapports
Mettre en œuvre des calculs
Utiliser deux champs
Et nous pouvons facilement obtenir les ventes avec une livraison tardive, par exemple 7 jours ou quoi que ce
soit stocké dans une variable:
Sum ({<KeyAutoNumber = {"= (DayDelivery <DayOrder -7)"}>} Sales)
Sum ({<KeyAutoNumber = {"= (DayDelivery <DayOrder - $ (vDelay))"}}} Sales
Vous pouvez obtenir un équivalent de la syntaxe ci-dessus, mais ceci est plus lent car QlikView doit calculer
tout les lignes de la portée:
Sum (if (DayDelivery = DayOrder, Sales))
if () renvoie Null () si le troisième paramètre a été omis et que la condition booléenne est false. Cette syntaxe
n'a pas besoin d'une clé supplémentaire (ni d'un champ).
113
Gérer les rapports
Mettre en œuvre des calculs
Utilisation de l'instruction IF
Il peut arriver que nous ayons besoin d'analyses d'ensembles différentes en fonction de la sélection de
l'utilisateur.
Par exemple, si l'utilisateur choisit un seul produit, nous voulons tous les calculer / afficher.
S'il en choisit plusieurs, nous voulons affichez / calculez-les au fur et à mesure de leur sélection.
L'instruction IF ne peut pas être utilisée dans le Set Analysis elle-même. Mais on peut utiliser une variable
qui peut contenir une instruction IF.
On crée une variable vSet qui sera une formule:
= if (GetSelectedCount (Product) = 1, 'Product =', '$')
Et nous avons juste besoin d’utiliser cette variable dans le Set lui-même:
sum ({<$ (vSet)>} Sales)
114
Gérer les rapports
Mettre en œuvre des calculs
Utilisation de l'instruction IF
Si l'utilisateur choisit plusieurs produits:
Mais si l'utilisateur choisit un seul produit:
115
Gérer les rapports
Mettre en œuvre des calculs
Utilisation de l'instruction IF
N'oubliez pas que le Set analysis est calculée une fois par graphique.
Il est donc inutile d'obtenir une instruction IF qui renverrait une portée différente dans les cellules (lignes,
colonnes) du graphique.
En d'autres termes, l’instruction IF ne peut pas renvoyer une valeur différente en fonction de la ligne affiché
dans le tableau.
116
Gérer les rapports
La recherche associative
Modèle de sélection associatif
L'utilisation de sélections constitue la principale méthode d'interaction dans Qlik Sense. Les sélections
permettent de filtrer un sous-ensemble des données chargées dans Qlik Sense. Grâce aux sélections, vous
pouvez focaliser votre attention sur un élément sur lequel vous souhaitez en savoir plus. Qlik Sense réagit
en codant les valeurs dans des couleurs différentes selon leur état.
Vous pouvez considérer vos sélections (interactions) comme des données d'entrée pour Qlik Sense, et les
données de sortie comme le résultat de l'évaluation des sélections et de l'affichage des codes couleur sur
les valeurs de données par Qlik Sense.
o État d'entrée : la sélection que vous avez effectuée, que la valeur du champ soit
sélectionnée ou pas.
o État de sortie : indique si la valeur du champ est possible ou pas, étant donné
l'inférence logique de la sélection.
117
Gérer les rapports
La recherche associative
Modèle traditionnel
Modèle Associatif Qlik
vs.
• Expérience conduite par la structure
des données
• Expérience conduite par l'utilisateur
et axée sur les perspectives
• Démarche linéaire et prédéfinie
• Choix du point de départ par l'utilisateur
• Hiérarchies pré-calculés
• Données complètes et toujours visibles
• Perspectives non découvertes dans
les données masquées
• Modifications nécessitant
quelques minutes
• Modifications lourdes du modèle
• Toutes les vérités
• Expérience axée sur les données
• Une partie de la vérité
118
Gérer les rapports
La recherche associative
Associations
▫ Un fichier QVW charge et associe généralement un grand nombre de tables (SGBD et/ou fichiers)
▫ Les relations entre tables se font sur les champs communs
▫ Un champ liant 2 tables (ou plus) est une clé
▫ Les associations sont faite selon 2 règles élémentaires
* Qlikview associe les champs ayant exactement le même nom (homonymie)
Ex: ≪ Name ≫ et ≪ name ≫ ne seront pas associes
* Pour 2 champs associes, Qlikview associe les valeurs identiques de chaque champ, et considère que les
enregistrements (lignes) contenant cette valeur doivent être associes également
Les valeurs texte ≪ Name ≫ et ≪ name ≫ ne seront pas associées
Les valeurs numériques ≪ 123 ≫ et ≪ 00123 ≫ seront associées
119
Gérer les rapports
La recherche associative
Exemple d’associations
▫ Les champs appelés ≪ Nombre ≫ sont homonymes
*T1 et T2 sont donc associées par ce champ
*T1 et T3 sont associées également par le champ Name
▫ Le champ Nombre a la valeur ≪ 2 ≫ dans T1 et dans T2
* Phil est associe a l'âge de 42.
▫ La valeur 2 dans T1 est associée a la valeur ab dans le champ ID de T3
▫ La valeur John dans T1 est différente de ≪ john ≫ dans T3
* il n'y aura donc pas association
120
Gérer les rapports
La recherche associative
Exemple d’associations
▫ Les associations produites dans notre exemple seront les suivantes:
121
Gérer les rapports
La recherche associative
Renommage de champs
▫ La logique Qlikview associe les champs par homonymie
▫ Le renommage des noms de champs revêt donc une importance fondamentale:
* Des lors que 2 champs sont a associer mais ne portent pas le même nom
* Des lors que 2 champs sont homonymes mais ne sont pas a associer
▫ Le risque est de provoquer des associations qui produiront des réponses non pertinentes
▫ Le renommage des champs est base sur la syntaxe ≪ AS ≫
Exemple:
122
Gérer les rapports
La recherche associative
Modélisation
▫ Le modèle de données génère dans QVW est ainsi uniquement contrôle par les tables définies, et les
champs homonymes
▫ Le modèle est accessible depuis le ≪ visionneur de tables ≫:
123
Gérer les rapports
La recherche associative
Modélisation
▫ En plus de la règle d’homonymie, il faut retenir que:
•
1 seule relation est autorisée entre 2 tables
•
les boucles de relations ne sont pas permises
▫ Que se passe-t-il si une de ces conditions n’est pas respectée ?
124
Gérer les rapports
La recherche associative
Modélisation
▫ Afin de faire disparaitre la boucle, QV va supprimer les jointures en surplus et va créer une table
synthétique ($Syn1).
▫ Cette table synthétique sera composée des combinaisons des clés des autres tables
▫ Les tables synthétiques sont généralement à éviter, car:
* Volumineuses
* Consomment beaucoup de ressources
* Ne sont pas maitrisables
125
Gérer les rapports
Intégrer et gérer les informations
Intégration d’informations internes
▫ Il est possible d’ajouter des données en les saisissant directement dans QlikView
▫ L’instruction LOAD INLINE permet d’ajouter des données dans les tables existantes ou de créer une
nouvelle table
Syntaxe
▫ L’instruction LOAD INLINE permet d’ajouter des données dans les tables existantes ou de créer une
nouvelle table
▫ Syntaxe:
LOAD * INLINE [
COL1, COL2, COL3…
C1VAL1, C2VAL1, C3VAL1
C1VAL2, C2VAL2, C3VAL2
C1VAL3, C2VAL3, C3VAL3
…
];
126
Gérer les rapports
Intégrer et gérer les informations
Débogage de script
▫ Le menu ≪ déboguer ≫ du script permet 3 modes d’exécution
* EXECUTER: le script est exécute jusque la fin ou jusqu’a ce qu’il rencontre un point d’arrêt
* ANIMER: idem que le mode exécuter, avec une courte pause après chaque instruction. Cela permet de
suivre l’exécution de plus près
* PAS SUIVANT: le script est exécute étape par étape
▫ Point d’arrêt:
* On pose un point d’arrêt (point rouge) en cliquant dans la marge du script
* Ou manuellement, en utilisant la syntaxe EXIT SCRIPT; dans le script
127
Gérer les rapports
Intégrer et gérer les informations
Commenter le script
▫ Il est possible de commenter des parties de script
▫ Le commentaire se fait a la ligne, en utilisant la syntaxe //
▫ Les zones commentées se colorent alors en vert
128
Gérer les rapports
Intégrer et gérer les informations
Mise en œuvre de transformations
▫ Qlikview fournit de nombreuses fonctions de transformation pouvant être appliquées au chargement des
données ou dans des expressions au niveau graphique
* If(Condition, Alors, Sinon)
* Manipulation de chaines de caractère
* Num(Champ1)
* Aide Qlikview…
▫ Il convient toujours de s’interroger sur la localisation la plus pertinente d’une transformation: script ou
couche graphique
129
Gérer les rapports
Propriétés du Documents
Propriétés générales du document
130
Gérer les rapports
Propriétés du Documents
• Propriétés du document / onglet ≪ Feuilles ≫
▫ Liste des feuilles et objets
▫ Temps de calcul de chaque objet
• Propriétés du document / onglet ≪ Variables ≫
▫ Liste des variables du document
▫ Paramètres, valeurs et contraintes prédéfinies de chaque variable
• Propriétés du document / onglet ≪ Sécurité ≫
▫ Activation /désactivation de fonctionnalités
* Export de données
* Enregistrement du document
* Rafraichissement
* Création de feuilles…
131
Gérer les rapports
Propriétés du Documents
• Propriétés du document / onglet ≪ Tables ≫
▫ Liste des tables et champs de la base de données
▫ Nombre d’enregistrements et de valeurs
• Propriétés du document / autres onglets
▫ Définir le comportement par défaut pour les tris, les formats de nombre, police, disposition des
objets, …
• Généralités:
Ces propriétés sont vraies pour le document, quelque soit l’utilisateur
• Les propriétés Utilisateur sont vraies pour l’utilisateur, quelque soit le document
132
Gérer les rapports
Propriétés du Documents
Propriétés générales de l’utilisateur
133
FORMATION QLIKVIEW
DESIGNER - Avancée
134
SOMMAIRE
00
Objectif de la formation
130
01
Options avancés des objets
132
1.
2.
3.
4.
5.
6.
Dimensions groupés
Schémas croisés
Couleurs personnalisées
Condition d’affichage et de calcul
Mini charts
Objets avancés
03
Variables
1.
2.
3.
04
2.
02
Set Analysis
1.
2.
3.
Introduction au concept de Set
Analysis
Comment utiliser les Set Analysis
Viser les bonnes expressions du Set
Analysis
49
A quoi sert ?
Quand les utiliser ?
Comment les mettre en œuvre ?
Alternate State
1.
77
85
Introduction au concept d’Alternate
State
Mise en œuvre des Alternate State
Objectifs de la formation
L’objectif de cette formation est de vous apprendre à profiter
de la flexibilité de QlikView Designer pur créer des analyses
approfondies des données et de créer des interfaces
utilisateurs avancées.
136
QlikView – Designer
Avancée
1.
Options avancés des objets
2.
Set Analysis
3.
Variables
4.
Alternate State
137
Options avancés des Objets
1.
Dimensions groupés
2.
Schémas croisés
3.
Couleurs personnalisées
4.
Condition d’affichage et de calcul
5.
Mini charts
6.
Objets avancés
138
Set Analysis
1.
Introduction au concept de Set
Analysis
2.
Comment utiliser les Set
Analysis
3.
Viser les bonnes expressions du
Set Analysis
139
Set Analysis
Concept du Set Analysis
Analyse d’ensemble « Set Analysis »
Les Sets vous permettent de créer une sélection différente de celle active utilisée dans le graphique
ou le tableau.
Le groupe créé vous permet de comparer les agrégations de ce groupe et celles de la sélection
actuelle.
Ces différentes agrégations vous permettent de comparer par exemple les ventes du mois en cours
et celles du mois précédent, année précédente ou créez des totaux cumulatifs .
Vous pouvez également créer des parts de marché ou un pourcentage du produits de l'année….
Un Set modifie le contexte uniquement pendant l'expression qui l'utilise. Une autre expression sans
aucune set obtiendra le contexte par défaut, la sélection standard ou le groupe de l'état alternatif.
140
Set Analysis
Concept du Set Analysis
Analyse d’ensemble « Set Analysis »
Un Set est toujours écrit entre accolades {…}. Un Set peut modifier la sélection d'un ou plusieurs
dimensions.
Il peut être composé d'un seul Set mais peut également inclure un Set interne (Imbriqué).
Un Set peut être composé de:
-
un identifiant
un opérateur
un modificateur
Ces 3 champs sont optionnels. Bien sûr, pour écrire un Set, vous devrez incorporer un ou plusieurs
de ces champs.
141
Set Analysis
Concept du Set Analysis
L’identifiant
0 - ensemble vide
1 - demande complète
$ - sélection actuelle (veillez à ce que parfois votre graphique ou tableau n’utilise pas la sélection
actuelle, mais un Alternate State)
$1 - sélection précédente ( $2: la deuxième sélection précédente, etc.)
$ _1 - sélection suivante
Bookmark01 - nom ou identifiant d'un signet
Groupe - nom du groupe (autre État)
142
Set Analysis
Concept du Set Analysis
L’identifiant
Sum ({Book1} [Sales]): vente de la sélection de Book1
Somme ({Groupe1} [Ventes]): ventes du groupe1 de l’Alternate State (la syntaxe est identique)
Somme ({1} [Ventes]): somme de tout (toutes les dimensions sont réinitialisées à toutes)
Sum ({$} [Sales]): somme de la sélection en cours (= sum ([Ventes])
143
Set Analysis
Concept du Set Analysis
L’opérateur
+: union des ensembles
*: intersection d'ensembles
-: Exclusion de deux ensembles
/: membres appartenant à un seul des deux ensembles
Si vous utilisez les opérateurs avec le signe égal:
<Dimension + = un autre jeu>: ajoute le jeu à la sélection en cours
<Dimension - = autre jeu>: supprime le jeu de la sélection actuelle
144
Set Analysis
Concept du Set Analysis
L’opérateur
Somme ({1- $} [Ventes]): somme des ventes de la «base de données» sauf la sélection en cours
Sum ({GROUP1 * Book1} [Sales]): somme si les ventes pour l'intersection de Group1 et Book1 (le
membres appartenant aux deux)
Les Sets que nous étudierons sont entre crochets: <>. Ils sont aussi beaucoup plus complexes. Mais
Vous pouvez également utiliser les opérateurs:
{<set 1> - <set 2>} ou {set 1} - {set 2}: les membres du Set1 qui ne figurent pas dans le Set2 (car
nous les supprimons )
145
Set Analysis
Concept du Set Analysis
Le modificateur
C’est la partie la plus délicate de l'analyse des Sets, avec lui, vous pouvez réduire ou élargir la portée
de la sélection utilisée dans une agrégation.
Vous pouvez modifier la sélection pour une ou plusieurs dimensions.
Une set analysis ne ressemble pas à un clic dans les ListBox.
Si vous décidez de définir une dimension sur une valeur spécifique actuellement non sélectionné:
-
Dans les ListBox, vous obtiendrez une nouvelle sélection
-
Dans l’analyse des ensembles, vous n’allez PAS: vous allez simplement définir cette dimension
sur ce membre (et le l'intersection avec la sélection actuelle peut être vide)
146
Set Analysis
Concept du Set Analysis
Le modificateur
Une Set analysis est calculée avant que le graphique ne soit calculé et redessiné.
Comme vous pouvez le constater, ce n'est pas calculé pour chaque ligne / colonne du graphique.
Donc, vous ne pouvez pas deviner une gamme de produit en fonction des lignes qui sont des
produits.
Vous ne pouvez pas deviner une autre série de périodes en fonction des colonnes si la période
dimension est en colonne: les totaux cumulatifs que vous pouvez rencontrer ne sont souvent
valables que si la période est pas une dimension du graphique.
147
Set Analysis
Concept du Set Analysis
« Set Analysis » Avantages et Inconvénients
• Avantages :
– Responsabilise les utilisateurs professionels.
– Solution dynamique sans recharger les données.
– Plus facile pour comparer une année sur l’autre.
• Inconvénients :
– Expressions plus complexes. Difficile à suivre.
– Fonctionnalités QlikView hors normes.
– Exigences plus importantes pour le développeur .
148
Set Analysis
Comment utiliser ?
Set Analysis – Simple
▫ Sum({$} Sales) ou Sum (Sales)
Somme des ventes en fonction de la sélection active
▫ Sum({1-$} Sales)
Somme des ventes en fonction de l’inverse de la sélection active
▫ Sum({1} Total Sales)
Somme des ventes de toute la base, sans tenir compte de la sélection active
▫ Sum({1} Sales)
Somme des ventes par dimension, sans tenir compte de la sélection active
▫ Syntaxe
{1} Tous les enregistrements
{$} Sélection active uniquement
{1-$} L’inverse de la sélection active
149
Set Analysis
Comment utiliser ?
Set Analysis – Fonctions de recherche
▫ Sum({$ <Année= {2003}>} Sales)
Somme des ventes de l’année 2003 uniquement
▫ Sum({$ <Année= {">= 2003"}> } Sales)
Somme des ventes des années supérieures ou égales a 2003
▫ Sum({$ <Année= {">= 2003"}, Pays = {"France"}> } Sales)
Somme des ventes des années supérieures ou égales a 2003, uniquement en France
▫ Sum({$ <Année= {"20*"} > } Sales)
Somme des ventes pour les années 2000
▫ Sum({$ <Région= {*} > } Sales)
Somme des ventes pour toutes les régions
150
Set Analysis
Comment utiliser ?
Set Analysis – Variables
▫ Sum({$ <Année= {$(vLastAnnee)}>} Sales)
Somme des ventes de l’année précédente (année précédente stockée dans la variable
vLastAnnee)
▫ Sum({$ <Année= {$(=vAnnee)}>} Sales)
Somme des ventes de l’année (année définie dans la variable vAnnee)
▫ Sum({$ <Année= {≪ <=$(=vAnnee) ≫}>} Sales)
Somme des ventes inferieures ou égales a l’année (année définie dans la variable vAnnee)
151
Set Analysis
Comment utiliser ?
Set Analysis – Evaluation (1)
▫ Sum({$ <Annee= {$(=Only(Annee))}>} Sales)
Somme des ventes de l’année sélectionnée
▫ Sum({$ <Annee= {$(=Only(Annee)-1)}>} Sales)
Somme des ventes de l’année précédente
▫ Sum({$ <Annee= Annee , Mois={" <=$(=max(Mois)) "}>} Sales)
Somme des ventes de toute l’année jusqu’au mois sélectionné
Set Analysis – Evaluation (2)
▫ Sum({$ <Annee= {$(=Only(Annee)-1)} , Mois={" <=$(=max(Mois)) "}>} Sales)
Somme des ventes de l’année précédente jusqu’au mois sélectionné
Set Analysis – Expression imbriquee
▫ Sum({$ <Client= {"=sum({1<Annee = {2007}>}, Sales) > 1000000 " } >} Sales)
Chiffre d’affaires des clients qui ont fait plus d’un million de chiffre d’affaire sur l’année 2007
152
Set Analysis
Comment utiliser ?
Set Analysis – Union
▫ Sum({$ < Annee ={"2003"}+{">2005"}>} Sales)
Somme des ventes de l’année 2003 et des ventes supérieures à 2005
▫ Sum({$ < Annee ={2002,2003}>} Sales)
Somme des ventes de l’année 2002 et 2003
▫ Sum({$ <Annee= {"200*"}>} Sales)
Somme des ventes des années 2000 à 2009
Set Analysis – Exclusion
▫ Sum({1-$} Sales)
Somme des ventes des années différentes de la sélection active
▫ Sum({$ < Annee ={">2003"}-{"2005"}>} Sales)
Somme des ventes des années supérieures à 2003 à l’exclusion de 2005
153
Set Analysis
Comment utiliser ?
Set Analysis – Intersection
▫ Sum({$ < Annee ={">2003"}*{"<2006"}>} Sales)
Somme des ventes des années supérieures à 2003 et inferieures à 2006
Set Analysis – Différence symétrique
▫ Sum({$ < Annee ={">2003"}/{"<2006"}>} Sales)
Somme des ventes à l’exception de 2004 et 2006
154
Set Analysis
Comment utiliser ?
Set Analysis – Modificateurs d’ensembles
▫ Modificateurs d’ensemble [+][-][*][/]=
+ permet de rajouter une valeur a la sélection active.
- permet d’exclure une valeur de la sélection active.
* permet de prendre l’intersection avec la sélection active.
/ permet de prendre la différence symétrique
▫ Sum({$ < Annee +={2003}>} Sales)
Ajout systématiquement l’année 2003 à la sélection active
▫ Sum({$ < Annee -={2003}>} Sales)
Retire systématiquement l’année 2003 à la sélection active
▫ Sum({$ < Annee *={2003}>} Sales)
Affiche uniquement l’année 2003 si elle est sélectionnée dans la sélection active
▫ Sum({$ < Annee /={2003}>} Sales)
Exclut l’année 2003 lorsqu’on la sélectionne dans la sélection active
155
Set Analysis
Comment utiliser ?
Set Analysis – Étapes de création
▫ Etape 1: faire le calcul simple
Sum(Sales)
▫ Etape 2: choix du type de selection
Sum({ } Sales)
$ : Selection active
1 : Toute la base
1-$ : Tout ce qui n’est pas sélectionnée
▫ Etape 3: choix du filtre (valeur, variable, ou expression)
Sum({$ <Annee={ }> } Sales)
Valeur : 2005 | {2005,2006,2007}
Variable : $(=vAnnee) | $(=Only(Annee)-1)
Expression : ">= 2003" | "*5" | "<= $(=vAnnee)"
▫ Etape 4: choix de l’operateur d’ensemble
Sum({$ <Annee = { 2005 } > } Sales)
+= : union
-= : exclusion
*= : intersection
/= : xor
156
Set Analysis
Utiliser la bonne expression
Les données connues
Syntaxe:
{Sélection <Dimension1 = {membre 1, membre 2,…} [, Dimension2 = {membre 1,
membre 2,…}]>}
Ex: {<MANUFACTURER_LDESC = {AMBOISE, BELLE, AUTREMENT}>}
Ex: {<MANUFACTURER_LDESC = {AMBOISE, BELLE, AUTREMENT}, CATEGORY_LDESC =
{ACC}>}
Dans la syntaxe globale:
Sum ({<MANUFACTURER_LDESC = {AMBOISE, BELLE, AUTREMENT}>} [Valeur Ventes])
157
Set Analysis
Utiliser la bonne expression
A vérifier que :
- La sélection peut être actuelle (signe $), la base de données (1), un signet ou un groupe (Alternate
State). La sélection courante est la sélection par défaut, le $ peut être omis.
- Il n'y a pas de virgule (,) entre le jeu et le nom de la mesure
- La dimension ou le nom de la mesure doit être placé entre crochets [] si le nom contient des
caractères spécifiques comme un espace, un trait d'union (-)…
- Les membres sont toujours placés entre accolades {}: quel que soit le moyen de les trouver (par
leur nom, par chaîne de recherche, par une fonction)
- Les membres nommés sont séparés par une virgule (,)
- Les noms de membres numériques ne sont pas entre guillemets simples ou doubles
- Les membres du texte sont mis entre guillemets simples ou doubles, mais pas nécessairement s'ils
ne contiennent pas
des caractères spécifiques comme des espaces
158
Set Analysis
Utiliser la bonne expression
Des exemples
Ex: {<MANUFACTURER_LDESC = {"AMBOISE", "BELLE"}, CATEGORY_LDESC = {"ACC",
"PLAQUES FROIDES”}>}
Ex: {<MANUFACTURER_KEY = {253, 2789, 1200}, CATEGORY_LDESC = {"ACC", "PLAQUES
FROIDES"}>}
Si nous n'écrivons rien entre les accolades, le Set est vide:
Ex: {<MANUFACTURER_LDESC = {}, CATEGORY_LDESC = {ACC}>}
Si nous calculons quelques flags (1 ou 0 selon un test) dans le script, nous pouvons les utiliser
facilement dans le set analysis :
Sum({<Flag = {1}, Année = {2014}, Mois =>} Ventes)
159
Set Analysis
Utiliser la bonne expression
Guillemets simples ou doubles, crochets ;
QlikView accepte les trois syntaxes pour le texte. Vous pouvez écrire:
{<MANUFACTURER_LDESC = {"AMBOISE"}>}
{<MANUFACTURER_LDESC = {'AMBOISE'}>}
{<MANUFACTURER_LDESC = {[AMBOISE]}>}
Et comme il n'y a pas de caractère spécifique dans ce nom de membre, je peux l'écrire d'une 4ème
manière:
{<MANUFACTURER_LDESC = {AMBOISE}>}
Cette technique est très utile lorsque nous incluons une fonction comprenant un Set dans un Set
plus global.
160
Set Analysis
Utiliser la bonne expression
Chaîne de recherche;
Parfois, nous voulons obtenir tous les FABRICANTS avec un nom spécifique ou qui contiennent des
lettres spécifiques :
Syntaxe: {<Dimension = {"* chaîne de recherche *"}>}
•
* = 0 à plusieurs caractères (P1 * retournera P1, P10, P11…)
• ? = 1 caractère (P1? Retournera P10, P11… mais pas P1)
Nous pouvons faire plusieurs chaînes de recherche dans le même ensemble:
Syntaxe: {<Dimension = {"* search1 *", "texte fixe", "? Earch2 *"}>
Ex: {<MANUFACTURER_LDESC = {"ENT *", "? LIS *"}, CATEGORY_LDESC = {"A ??"}>}
161
Set Analysis
Utiliser la bonne expression
Chaîne de recherche;
C’est pourquoi nous obtenons tous les membres (sauf la valeur NULL car les valeurs NULL n’ont
aucun caractère) d’une dimension avec l'étoile:
<Dimension = {"*"}>
ou comme expliqué précédemment en ne plaçant rien à la droite du signe égal <Dimension =>.
Les deux Sets suivants sont identiques si vous n’avez aucune valeur NULL dans votre
champ.
Si vous avez une valeur NULL dans votre champ et souhaitez également la sélectionner, choisissez
<Dimension =>.
162
Set Analysis
Utiliser la bonne expression
Chaîne de recherche - exemples;
Ex: TOUS les fabricants, UNE seule catégorie
{<MANUFACTURER_LDESC = {"*"}, CATEGORY_LDESC = {"ACC"}>}
{<MANUFACTURER_LDESC =, CATEGORY_LDESC = {"ACC"}>}
Ex: Tous les FABRICANTS sauf ceux dont le nom commence par ENT
{<MANUFACTURER_LDESC = {"*"} - {"ENT *"}>}
{<MANUFACTURER_LDESC = - {"ENT *"}>}
Ex: Tous les FABRICANTS de la sélection + ceux dont le nom commence par ENT
{<MANUFACTURER_LDESC + = {"ENT *"}>}
Ex: Tous les FABRICANTS de la sélection sauf ceux dont le nom commence par ENT
{<MANUFACTURER_LDESC - = {"ENT *"}>}
163
Set Analysis
Utiliser la bonne expression
A vérifier que
{<MANUFACTURER_LDESC - = {"ENT *"}>} et {<MANUFACTURER_LDESC = {"ENT *"}>} sont très différents.
Le premier jeu supprime de la sélection actuelle tous les FABRICANTS dont le nom commence par
ENT, tandis que le second ensemble sélectionne tous les FABRICANTS, à l'exception de ceux
commençant par ENT
Ex: Tous les FABRICANTS, Toutes les catégories quelles que soient les sélections
{<MANUFACTURER_LDESC = {"*"}, CATEGORY_LDESC = {"*"}>}
Ex: Toutes les années (parce que c'est numérique, sans citation), toutes les catégories
{<Année = {*}, CATEGORY_LDESC = {"*"}>}
164
Set Analysis
Utiliser la bonne expression
A vérifier que
QlikView accepte les guillemets simples ou doubles, les crochets également pour la chaîne de
recherche:
Ex:
{<MANUFACTURER_LDESC = {"E *"}, CATEGORY_LDESC = {"A ??"}>}
{<MANUFACTURER_LDESC = {‘E *’}, CATEGORY_LDESC = {‘A ??’}}}
{<MANUFACTURER_LDESC = {[E *]}, CATEGORY_LDESC = {[A ??]}>}
165
Set Analysis
Utiliser la bonne expression
Utiliser une limite pour une dimension numérique
La plupart du temps, les années sont numériques. C’est également le cas pour de nombreuses clés
car QlikView (en tant que SQL) est plus rapide en joignant des clés numériques que des clés de
chaîne.
La syntaxe est assez étrange car vous devez insérer le code entre guillemets:
{<TIME_KEY = {"<12"}>}: tous les membres TIME_KEY de moins de 12
{<TIME_KEY = {"> = 12 <= 18"}>}: membres clés entre 12 et 18 ans, les deux inclus
Ex: clés 4, 5, 6 et celles comprises entre 12 et 20 (20 exclues)
{<TIME_KEY = {4, 5, 6} + {"> = 12 <20"}>}
166
Set Analysis
Utiliser la bonne expression
Analyse d’ensemble « Set Analysis »
▫ L’outil Qlikview permettant en une instruction « simple », d’inclure ou d’exclure des données d’une
expression
▫ Offre beaucoup plus de flexibilité dans l'analyse que vous pouvez créer des expressions peuvent être
ajoutées pour les données en dehors de votre sélection actuelle Critères
▫ Remplace très efficacement une instruction « if » ou un flag
▫ Élimine le besoin de codage de script complexe supplémentaire
▫ Bonnes Pratiques:
• Attention lors de l’utilisation d’un set analysis: fonctionnalité « hors normes »
• Utiliser des commentaires pour décrire les expressions.
167
Variables
1.
A quoi sert ?
2.
Quand les utiliser ?
3.
Comment les mettre en œuvre ?
168
Variables
A quoi sert ? Quand ?
A quoi sert ?
Une variable dans QlikView est un conteneur stockant une valeur statique ou un calcul, par exemple
une valeur numérique ou alphanumérique.
Quand ?
Lorsque vous utilisez la variable dans le document, toute modification apportée à la variable est
appliquée partout où la variable est utilisée.
Les variables sont définies dans le script à l'aide de l'éditeur de script, où la variable acquiert sa
valeur à partir d'une instruction Let, Set ou d'une autre instruction de contrôle du script de
chargement.
169
Variables
A quoi sert ? Quand ?
Si le premier caractère d'une valeur de variable est un signe égal '=', QlikView tente d'évaluer la
valeur sous forme de formule (expression QlikView), puis affiche ou renvoie le résultat plutôt que le
texte de la formule.
Lorsqu'elle est utilisée, la variable est remplacée par sa valeur. Les variables peuvent être utilisées
dans le script pour l’extension du signe dollar et dans diverses instructions de contrôle.
Ceci est très utile si la même chaîne est répétée plusieurs fois dans le script, par exemple un
chemin.
Certaines variables système spéciales seront définies par QlikView au début de l'exécution du script,
quelles que soient leurs valeurs précédentes.
170
Variables
A quoi sert ? Quand ?
Lors de la définition d'une variable, la syntaxe:
set variable_name = chaîne
ou
let variable = expression
La commande Set affecte le texte situé à droite du signe égal à la variable, tandis que la commande
Let évalue l'expression.
Les variables sont sensibles à la casse.
171
Variables
Mise en œuvre
Utiliser une variable stockant un ou plusieurs membres
Syntaxe: <Dimension = {$ (NameVariable)}>
Ou <Dimension = {$ (= NameVariable)}>
(avec ou sans le signe = devant la variable)
Veuillez noter que $ (= NameVariable) interprétera la variable et donc QlikView réécrit la
commande avant de l'exécuter.
Le contenu de la variable peut contenir plusieurs membres, comme s'ils étaient dans la syntaxe
réelle. Les enfermer entre guillemets ou entre parenthèses selon leur nom.
Ex:
<MANUFACTURER_LDESC = {$ (vChoiceMANUFACTURER)}, CATEGORY_LDESC = {$ (=
ChoiceCategory)}>
172
Variables
Mise en œuvre
Utiliser une variable stockant un ou plusieurs membres
$ (NameVariable): il peut être placé entre guillemets ou non, comme dans l'exemple ci-dessous. S'il y
a spas des guillemets, vous pouvez en ajouter dans le texte de la variable car les noms des
membres contiennent des espaces.
173
Variables
Mise en œuvre
Utiliser une variable stockant une chaîne de recherche
Un ensemble normal:
{<MANUFACTURER_LDESC = {"E *"}, CATEGORY_LDESC = {"A ??"}>}
La variable vChoiceProduit stocke une chaîne de recherche ainsi que les guillemets "E *":
{<MANUFACTURER_LDESC = {$ (vChoixProduit)}, CATEGORY_LDESC = {[A ??]}>}
174
Variables
Mise en œuvre
Utiliser une variable stockant des membres numérique
Avec les clés entières, vous devez inclure le nom de la variable entre guillemets:
{<TIME_KEY = {"<$ (vFirstPeriod)"}>}
Ou {<TIME_KEY = {"<$ (= vFirstPeriod)"}>}
Les périodes entre deux dates:
{<TIME_KEY = {"> $ (vFirstPeriod) <$ (= vLastPeriod)"}>}
175
Variables
Mise en œuvre
Utiliser une variable stockant une dimension
Nous avons déjà vu que nous pouvons utiliser des variables avec le signe $. Cette variable peut
contenir des membres mais aussi une dimension:
Ex: sum ({$ <$ (vDim) = {"*"}>} [Ventes en volume])
Comme la dimension peut contenir des espaces ou des caractères spécifiques, il serait plus prudent
d’utiliser le double crochets
(rappelez-vous que QV réécrit la syntaxe, donc une fois que votre nom de dimension par un espace
remplace le variable, vous ajouteriez des crochets):
sum ({$ <[$ (vDim)] = {"*"}>} [Ventes en volume])
176
Variables
Mise en œuvre
Utiliser une variable stockant l'ensemble du Set
Nous pouvons stocker des membres ou une dimension dans une variable. Pourquoi ne pas mettre
toute la syntaxe?
Ex: sum ({$ <$ (vSet)>} [Ventes en volume])
Ex: sum ({$ <$ (vSet), CATEGORY_LDESC = "ACC">} [Volume de ventes])
Comme vous le voyez, nous pouvons stocker la syntaxe complète ou une partie de celle-ci!
La variable vSet doit contenir une syntaxe valide sauf <>
Ceci ressemble à ça:
- MANUFACTURER_LDESC = {"*"}, TIME_SDESC = {"P 01/13"}
- Année = {$ (= max ({1} Année))}, TIME_LDESC =
-…
177
Variables
Mise en œuvre
Valeurs extrême - Les ensembles vides
Il peut arriver que l'ensemble soit vide. Le résultat sera 0. C'est soit quelque chose de désiré, soit
quelque chose d’indésirable:
-
Vous utilisez les accolades sans rien dedans: {}
-
Vous avez mal saisi les champs ou les membres: Qlikview est sensible à la casse.
-
Vous avez tapé une mauvaise expression
-
Vous avez saisi une mauvaise intersection: un produit, un client, mais ce client n’achète pas le
produit (0 est donc la bonne réponse)
-
Vous avez oublié de réinitialiser un champ limité via un contrôle ListBox.
178
Variables
Mise en œuvre
Valeurs extrême - Les ensembles vides
Par exemple, vous avez des marques et produits dans Listbox et l’utilisateur sélectionne un produit.
En définissant une marque dans l'ensemble d'analyse, vous pouvez rencontrer un vide parce que le
produit choisi n'appartient pas à la marque.
Tu dois réinitialiser tous les produits: {<Product =, Brand = {1, 2}>}
Pour les périodes, quand on veut une année totale, il serait plus sûr d'écrire dans le set analysis
toutes les dimensions qui pourrait être défini via ListBoxes:
somme ({$ <Année = {2012}, QUARTIER =, MOIS =, JOUR => [Volume])
Cette fois, nous avons toute l’année, quel que soit le choix effectué par l’utilisateur.
179
Variables
Mise en œuvre
Valeurs extrême - Les ensembles entières
{A partir de la sélection <Dimension1 = {*}>} /////////({*} pour numérique, {"*"} pour texte)
Ou:
{Sélection de départ <Dimension1 =>}
La sélection de départ peut être la sélection actuelle ($ par défaut), l'application complète 1 ou le
nom d'un un groupe ou un signet .
Si vous voulez que tous les membres d’une même dimension, vous pouvez écrire à la droite du
signe égal:
- {*} ou {"*"} si la dimension est du texte: sélectionne tous les membres sauf NULL
- Rien
Comme vous pouvez le voir ci-dessous, le {*} peut être omis.
Ex: Tous les FABRICANTS sauf une CATÉGORIE
{<MANUFACTURER_LDESC = {"*"}, CATEGORY_LDESC = {"ACC"}>}
{<MANUFACTURER_LDESC =, CATEGORY_LDESC = {"ACC"}>}
180
Alternate State
1.
Introduction au concept
d’Alternate State
2.
Mise en œuvre des Alternate
State
181
Alternate state
Concept d’Alternate state
Mixer les alternates states
Un alternate state est un moyen de créer plusieurs groupes de données pour comparer les deux en
tant que groupe.
Par exemple:
vous souhaiterez peut-être comparer deux groupes de clients (ou de produits….):
ces groupes seront choisis par l’utilisateur via un ListBox pointant sur un champ unique
182
Alternate state
Mise en œuvre
Mixer les alternates states
Comme vous pouvez le constater, nous obtenons 2 sélections différentes pour le champ Société. Ils
ne sont plus liés.
Ces deux champs peuvent être affichés en 2 ou plusieurs feuilles si vous souhaitez proposer des
sélections non liées des différentes feuilles.
Comment créer les alternates states
1)
Paramètres / Propriétés du document / bouton Alternate states (puis créez les différents groupes
que vous peut vouloir offrir à l'utilisateur)
2) Pour un objet: éditer l'objet / choisir Alternate states
Attention, cette boîte à options Alternate states ne s'affiche pas si vous n'avez pas effectué la
première étape.
3) Pour la feuille, même façon de faire. Mais pour les autres objets de la feuille, si vous voulez qu'ils
obtiennent ce Alternate states , choisissez <hérité>. C'est un moyen facile de changer l'État en un
seul endroit.
183
Alternate state
Mise en œuvre
Utilisation d'un seul Alternate States
Syntaxe:
{[NameOfTheAlternateState] <Dimension1 = {sth} [, reste du Set]>}
Si je veux tout de l’alternate state A:
Ex: somme ({A}, Ventes)
Ci-dessous, je souhaite obtenir l’alternate state A, mais toutes les années. Comme toujours, les
crochets sont nécessaire uniquement dans le cas de caractères spécifiques:
je peux écrire A ou [A]
Ex: somme ({A <Année = {*}>}, Ventes)
184x
Alternate state
Mise en œuvre
Utilisation de plusieurs Alternate state
Si vous souhaitez comparer plusieurs groupes de sociétés, vous devez afficher au moins 2 ListBox
pour la société utilisant plusieurs alternate states. Mais qu'en est-il des autres dimensions telles que
l'année, le mois, les produits…
besoin de les afficher aussi en double? La réponse est NON, mais encore une fois, la syntaxe est
assez étrange:
{[Nom de l'état alternatif] <Dimension1 = [Nom de l'état alternatif] :: [Dimension1]>}
Ex: {B <[Année] = [A] :: [Année]>}
Ci-dessus, je souhaite obtenir l’alternate staet B, sauf l’année où je souhaite appliquer l’État
remplaçant A.
185x
Alternate state
Mise en œuvre
Utilisation de plusieurs Alternate state
Noter que :
- Si vous voulez comparer à la sélection standard, vous aurez le $ (c’est en fait un état spécifique du
Sélection)
- Vous ne placez l’alternate state entre [] que si le nom contient des caractères spécifiques
- La cote après les deux points-virgules (:) est également comprise entre crochets [] ou rien
dépendant de son nom
(ici, nous aurions pu écrire <Year = A :: Year>
- Vous devez répéter cette syntaxe pour chaque dimension que vous souhaitez partager avec l'autre
alternate state (Mois, Semaine, Jour, Produit…)
186x
Téléchargement