Création d’un menu QlikView ergonomique

ASI a été sollicité par la Région Bretagne afin de mettre en place un menu pour le portail Acces Point QlikView 11, de façon à faciliter l’accessibilité aux applications. En effet, le fort succès de l’outil auprès de la structure nécessite la création d’applications sur l’ensemble des domaines d’attributions du Conseil Régional : la multiplication des vignettes rendant leur recherche via le menu standard difficile.

Contrainte importante : un redéveloppement du portail n’était pas possible vis-à-vis du temps nécessaire, de la maintenabilité de la solution et des compétences techniques impliquées.

Je vais vous expliquer dans cet article la méthode utilisée afin de réaliser le menu ci-dessous :

Menu QlikView – Accueil

Menu QlikView – Accueil

Menu QlikView - Sous menu

Menu QlikView – Sous-menu CRB

 

 Étape 1 : création des vignettes menu

Pour créer les vignettes, nous avons utilisé des zones de textes et images du Conseil Régional. L’onglet Général permettant de définir une image de fond embarquée avec l’application.

Image

 Étape 2 : liaison avec les applications QlikView existantes

On se rend ensuite dans l’onglet Action pour ajouter une action Externe qui permet d’Ouvrir un document QlikView. Le nom de ce document ne doit pas être entre quotes et faire référence à un chemin valide du serveur (ex: un chemin relatif à partir de l’application menu).

Image

Et c’est tout !! Charge à vous de trouver les bonnes illustrations, de lier le menu avec un dictionnaire de données ou tout autre élément facilitant l’accessibilité de vos applications !

Concernant la sécurité,  la sécurisation de la plateforme reste inchangée et s’appuie sur le mode d’authentification QlikView classique ainsi que la vérification des attributions de licences.

L’ouverture d’un document pour un utilisateur s’effectue donc en 3 étapes :

  • Connexion au portail QlikView : vérification user/mot de passe (ou passage automatique de l’authentification Windows),
  • Ouverture d’un menu : vérification de l’accès à l’application QlikView menu,
  • Ouverture de l’application choisie : vérification de l’accès à l’application.

La seule contrainte de notre solution est l’aspect licence. En effet, pour accéder à une application, l’utilisateur doit passer par une première application menu, il est donc nécessaire :

  • D’avoir une licence Named CAL (accès à toutes les applications)
  • D’avoir deux licences Document CAL, une pour le menu et une pour l’application

par utilisateur.

Les graphes à bulles animés avec QlikView 11.2

Pour réaliser un graphe à bulles animé, il vous faut :

  • Trois mesures
  • Une dimension temps
  • Une dimension métier quelconque (pas trop nombreuses)
  • QlikView 11.2
  • Prévoir un bon quart d’heure – vingt minutes avant d’obtenir le résultat

Les graphes à bulles animés

Parmi les vidéos des conférences TED, une de celles de Hans Rosling avait particulièrement marqué les esprits en 2006 :

http://www.ted.com/talks/hans_rosling_shows_the_best_stats_you_ve_ever_seen.html

Pour son propos, l’évolution des richesses et d’autres données sociologiques dans les différents pays du monde, Hans Rosling utilise notamment des graphes à bulles animés.

L’intérêt de ce genre d’animation en tant qu’outil de restitution de données est de rendre intuitifs, par le mouvement et l’évolution des formes, des changements quantitatifs.

Dans sa présentation, Hans Rosling semble parfois se muer en commentateur sportif. Brillant orateur, il zigzague et donne vie à ces chiffres avec un humour décapant sur l’estrade.

Hans Rosling

Ce qui n’était alors qu’un outil spécifique et un peu confidentiel est maintenant une fonctionnalité à part entière de Qlikview, que je vous propose d’implémenter.

Faire mousser les données dans QlikView

Nous allons exploiter le fichier de données agences ci-joint : agences.xlsx

Il s’agit de données évoluant mois par mois et pour chacune des agences d’un réseau commercial : nombre d’employés, chiffre d’affaires et rentabilité.

1- Dans le script de chargement, entrer le code suivant et recharger les données :

LOAD mois,
Agence,
[Nombre d’employé],
CA,
%rentabilité
FROM
C:\marc.boizeau\agences.xlsx
(ooxml, embedded labels, table is Feuil1);

Remarque : C:\marc.boizeau\agences.xlsx est bien sûr à remplacer par le chemin en local du fichier agences.xlsx.

Les colonnes sont de la forme suivante :

  • Mois : chaîne de caractères AAAAMM
  • Agence : chaîne de caractères
  • Nombre d’employés : Entier
  • CA : Réel positif
  • Rentabilité : Réel positif inférieur à 1

2- Dans un onglet, ajouter un nouveau graphique via le bouton droit. Choisir le type « nuage de points » :

nuage de points

3- Cliquer sur suivant et ajouter les dimensions mois et agence. S’assurer que le mois est en tête des dimensions à l’aide des boutons « promouvoir » et « abaisser ».

promouvoir

4- Cliquer sur le bouton « animer », cocher la case « animer la première dimension »

animation

5- Cliquer sur « OK » puis sur « suivant » et mettre « %rentabilité », nombre d’employés et CA respectivement pour les champs X, Y et Z (après avoir coché « Graphique en bulle ») :

expressions

6- Cliquer sur « terminer » puis sur le bouton de lecture. Voici le résultat !

Pour aller plus loin

Quelques pistes d’amélioration pour rendre l’animation plus vivante :

  • Faire défiler en image de fond les mois ou les années pour aider le spectateur à contextualiser les graphes.
  • Enrichir les étiquettes, pourquoi pas avec des remarques sur les valeurs d’une agence pour une date donnée.
  • Ne pas hésiter à encadrer le graphe de listes de sélection adéquates, typiquement les zones géographiques regroupant les agences.

Délicieuse recette de nuancier calendaire avec Qlikview

Ingrédients :

  • Qlikview   11.2
  • Un fichier Excel

Temps  de cuisson : Moins de 20 minutes

L’idée du nuancier calendaire

Lorsque l’on demande de représenter graphiquement une mesure pour tous les jours d’une année, la réponse  ressemble  généralement à :

Sans nuancier calendaire1

Ou encore à cela :

Sans nuancier calendaire2

Et on précisera souvent que ce n’est pas lisible et qu’il vaut mieux regarder les choses au mois :

Vision par mois

Mais, au reste, cela brouille. On constate (sans surprise !) qu’il y a moins de valeurs en février que dans tous les autres mois de l’année et que les mois avec 31 jours ont plus de valeur que les mois à 30 jours.

Un nuancier calendaire permet à la fois d’embrasser une année dans son détail journalier et mois par mois. L’idée est d’indiquer la grandeur non pas par la taille ou la position d’un élément, mais par l’intensité d’une couleur.  Voici un exemple reprenant le même jeu de données que précédemment :

Nuancier calendaire

Il est assez aisé avec un tel graphe :
  • De localiser les périodes de forte et de basse intensité
  • De trouver des corrélations mensuelles et leurs exceptions
  • De se  démarquer de la concurrence !

Un nuancier calendaire avec Qlikview

Entre autres avantages, Qlikview permet de manipuler finement les couleurs affichées. On va ici se servir de la fonction ARGB :

  • ARGB (255,255,0,0) renvoie un code couleur pour un rouge vif
  • ARGB (128,0,0,64) renvoie un code couleur pour un bleu très léger

Pour réaliser notre nuancier on suit les étapes suivantes :

1.Dans un nouveau fichier Qlikview , ajouter le script suivant :

LOAD date,
valeur,
month(date) as Mois,
day(date) as Jour
FROM
C:\marc\valeurs.xlsx
(ooxml, embedded labels, table is données, filters(
Remove(Col, Pos(Top, 1))
));

LOAD max(valeur) as maxvaleur,
min(valeur) as minvaleur
FROM
C:\marc\valeurs.xlsx
(ooxml, embedded labels, table is données, filters(
Remove(Col, Pos(Top, 1))
));

SET largeur= ‘=maxvaleur-minvaleur';

Remarque : « C:\marc\valeurs.xlsx » est le chemin d’un fichier Excel contenant deux colonnes « date » et « valeur ». Pour la suite, il suffit qu’il y ait une ligne pour chaque jour dans une année. S’il y a des dates sur plusieurs années, elles seront sommées.

2. Chargement du script

3. Dans un onglet, ajouter un nouvel objet de type graphique via le bouton droit , sélectionner le type « histogramme »

4. Cliquer sur « suivant », ajouter les dimensions « jour » et « mois », s’assurer que le mois est en haut de la liste en utilisant les boutons « promouvoir » et « abaisser »

 Propriétés du graphique

5.  Cliquer sur « suivant », dans l’éditeur d’expression, mettre « -1 »

Editer l'expression

6. Cliquer sur OK, dans la boîte des expressions, déplier la ligne « -1 » et sélectionner « couleur d’arrière-plan »

7. Dans la zone « définition », saisir l’expression suivante :

=argb(255*valeur/(maxvaleur-minvaleur),255,0,0)

Couleur d'arrière-plan

8. Cliquer deux fois sur « suivant »

9. Choisir le sous-type « empilé :

Sous-type ''empilé''

10. Cliquer sur « terminer » :

Résultat nuancier

11. Pour achever la mise en forme il suffit :

  • De fixer le maximum et le minimum de l’axe des expressions respectivement à -1 et -31 et de de choisir un intervalle fixe de 1 (bouton droit =>propriétés=>axes)
  • AxesDe masquer la légende de la dimension « jour »

Dimension jour

  • Ecran final

    Variantes

    La plasticité des graphes Qlikview permet de proposer de nombreuses variantes. Au lieu de nuances d’une même couleur, on peut varier sur tout l’arc en ciel, ou faire des effets de seuils. Par exemple, en utilisant la formule suivante pour les couleurs : =if( valeur>(maxvaleur+minvaleur/2-7),RGB(255,0,0),RGB(0,0,255)) on obtient quelque chose de plus tranché :

Couleurs distinctes

On peut aussi choisir de changer  les  dimensions en mettant  en  abscisse une  dimension métier (par exemple gamme de produit) et  les  365  jours de l’année en ordonnée.

Boîte à outils Qlikview

Une boîte à outils très intéressante pour Qlikview est disponible à cette adresse : http://community.qlikview.com/docs/DOC-2649

Nommée « Powertools », elle contient 9 outils dont voici un court résumé (pour plus d’information, des fichiers « READ ME » sont présents dans l’archive contenant ces outils).

  •  QlikView Server Agent

Il s’agit d’un utilitaire permettant d’avoir une vue d’ensemble des services Qlikview, ce qui simplifie le démarrage ou l’arrêt des services Qlikview : pas besoin de lister tous les services du serveur. (A l’image du CCM de BO)

  • QMS API Client

Il s’agit d’un exécutable listant toutes les fonctions utilisables en Dot.Net avec possibilité de les essayer. Quelques fonctions sur les 87 existantes : Lister les catégories de documents présentes sur le serveur, lister les licences, supprimer une session…

  • QVS Detector

Cet outil recherche, sur votre réseau, les informations concernant les autres serveurs Qlikview présents (hormis celui sur lequel vous vous situez) ainsi que des informations les concernant (licences, version, dossiers…)

  • QV User Manager

Cet utilitaire offre une commande permettant de gérer les utilisateurs et les licences.

Voici un site fournissant des exemples de son utilisation : https://github.com/braathen/qv-user-manager

  • Reload Schedule Migration

Il s’agit d’un utilitaire de migration de Publisher 9 vers la version 10 ou 11, offrant la possibilité de migrer les « chargements » programmés d’application vers le nouveau serveur.

  • Server Object Handler

Cet outil permet de gérer les objets serveurs créés par les utilisateurs.

  • Server Object Handler Batch

Il s’agit d’un batch permettant de faire exactement la même chose que l’outil précédent mais avec la possibilité de le planifier.

  • Shared File Viewer

Outil permettant de lire le contenu des fichiers « .Shared », d’en faire des sauvegardes complètes ou partielles. Grâce à cet outil, il est notamment possible de manipuler les favoris (intéressant si vous souhaitez gérer, supprimer facilement les favoris de vos utilisateurs).

  • XML DB Viewer

Cet utilitaire permet de lire et de manipuler le contenu de la base de données du Publisher Qlikview lorsque celle-ci est en XML.

Attention, ces outils ne sont pas supportés par QlikTech mais offrent pas mal de fonctionnalités intéressantes.

Objets Qlikview dans Microsoft Office avec interaction

Il est possible d’intégrer des objets Qlikview (graphes, tableaux, listes de sélection) dans Excel ou PowerPoint et d’interagir avec ces objets (effectuer des sélections, etc.).

  • Dans Excel, l’objet sera lié avec l’application et directement éditable.
  • Dans PowerPoint, l’objet sera par défaut présenté sous forme d’image mais il suffit de faire un clic droit puis de sélectionner « Edit » pour le modifier.

Pour faire fonctionner cela, il suffit d’avoir :

  • Microsoft Office
  • Le composant « QlikOCX Control » présent dans la liste des objets disponibles d’Excel ou PowerPoint
  • Les licences adéquates pour accéder à l’application QlikView
  • … et avoir copié / collé les objets souhaités

Cela pourrait être très utile pour formater des présentations dans PowerPoint !

Google Maps dans Qlikview

Il est possible d’ajouter facilement une cartographie Google dans Qlikview, comme vous le verrez dans les documents disponibles ici : http://community.qlikview.com/docs/DOC-3136

Attention cependant au changement d’URL depuis peu de l’API Google pour le fond de carte

=’http://maps.googleapis.com/maps/api/staticmap?center=’& num(var_mid_lat, ‘##############’, ‘.’, ‘,’ ) & ‘,’ & num(var_mid_long, ‘##############’, ‘.’, ‘,’ ) & ‘&zoom=’&$(var_zoom) & ‘&size=’&map_size_x&’x’&map_size_y & ‘&sensor=false’

QlikView Direct Discovery

Direct DiscoveryLa version 11.2 de QlikView est disponible depuis le 12 décembre. La principale fonctionnalité de cette nouvelle version est ce que QlikTech appelle le Direct Discovery. Sous cette appellation marketing, se cache un réel changement qui permet un accès direct aux sources de données. QlikView offre donc maintenant la possibilité d’opter pour une approche hybride avec des données chargées en mémoire et des données qui restent hébergées dans leurs environnement d’origine.

Les données très volumineuses peuvent rester stockées dans les plates-formes de type VLDB ou Big Data et ainsi être requêtées en direct par QlikView.

Les principes de développement restent les mêmes. Une instruction DIRECT SELECT permet de ne pas charger en mémoire certaines données lors du script de chargement. Les principes d’association entre les données en mémoire et les données directes restent également les mêmes.

Principes de développement

Les champs directs peuvent alors être utilisés dans les objets, afin de générer automatiquement la requête SQL appropriée et de l’exécuter pour afficher les données externes. Quand des sélections sont réalisées, la clause Where de la requête est modifiée en conséquence et la requête est à nouveau exécutée. Il est possible d’utiliser des conditions de calculs pour indiquer quand un graphique doit être recalculé, afin de ne pas exécuter systématiquement la requête lors de chaque changement. Il est possible d’utiliser un champ direct dans une liste de sélection. Dans ce cas, une requête SQL sera exécutée pour afficher la liste des valeurs.

Toutes les fonctionnalités ne sont pas supportées avec les champs directs : set analysis, alternate state, réduction des données, nommage des tables, etc.

Ce modèle hybride ralentit toutefois les temps de réponse de certaines analyses. En basculant sur cette nouvelle approche d’accès aux données, on passe à une échelle de temps potentiellement beaucoup plus longue en comparaison à la quasi-instantanéité des analyses QlikView. Il est donc possible de définir des limites d’exécution au niveau du serveur (Object Calculation Time Limit, Max Symbols in Charts, QVS Time Out Setting) ou au niveau de la requête via l’instruction Stale dans le script de chargement : DIRECT (Stale after x seconds) SELECT.

Aucun changement également côté utilisateurs, les principes fondamentaux de navigation sont inchangés (simplicité, interactivité, associations, etc.).

Après avoir annoncé des partenariats technologiques avec plusieurs éditeurs (Google, Teradata et Cloudera Impala), QlikTech affiche ainsi clairement  sa volonté d’élargir le périmètre de son offre et de s’ouvrir de plus en plus vers l’extérieur. Tout cela laisse présager que la future version QlikView Next sera ambitieuse…

Suivre

Recevez les nouvelles publications par mail.

Rejoignez 90 autres abonnés

%d blogueurs aiment cette page :