Skip to main content
Announcements
Have questions about Qlik Connect? Join us live on April 10th, at 11 AM ET: SIGN UP NOW
cancel
Showing results for 
Search instead for 
Did you mean: 
Not applicable

2 dimensions (une calculée et "simple") + graphique secteur

Bonjour à tous,

Je vais essayer d’expliquer ce que je souhaite réaliser, mais je pense que le fichier join "Exemple.qvk" sera plus parlant !

Je crée un tableau simple avec une dimension calculée comme cela : language&’$$’&lab_entity&’$$’&lab_entity_type, et j’effectue une somme sur mon indicateur.

Ce que je voudrais, c’est récupérer le nombre de fois où le langage est présent dans les N premières lignes de mon tableau.
Par exemple, English 3, French 1, Dutch 1, et en faire un diagramme de type secteur.

Quelqu’un aurait-il une idée comment je pourrais faire cela ??

Simon.

8 Replies
martin59
Specialist II
Specialist II

Bonjour Simon,

Je pense que la notion de Dimensions / Expressions vous est encore un peu floue.

Pour faire court, la dimension est votre axe d'analyse, votre agrégat (granularité).

L'expression est votre calcul (somme, moyenne, comptage...).

Avec un graphique vous aurez un résultat sur votre calcul pour chaque valeur de votre ou vos dimensions.

Je vous conseille néanmoins de commencer avec quelques tutoriels que vous trouverez sur cette communauté ou sur YouTube, et de ne pas hésiter à consulter l'aide de QlikView pour mieux comprendre ces notions.

Vous trouverez en pièce jointe, votre QVW avec votre diagramme circulaire retravaillé pour mieux comprendre.

Martin Favier

Not applicable
Author

Bonjour Martin

Tout d'abord merci beaucoup de ta réponse.
Cela correspond assez à ce que je désire réaliser, et l'exemple m'aide à mieux comprendre le graphique.

Mais, j'ai encore une question. Voilà, j'aimerais limiter le résultat au N première ligne. Pour mieux comprendre, j'ai mis un exemple en pièce jointes (tableau.png et diagramme_secteur.png) de  ce que je voudrais si je limite au 4 premières lignes du tableau. Je continue de parler de tableau, mais j'ai compris que mon tableau et mon diagramme n'ont en réalité aucun lien.

Merci.

Simon.

martin59
Specialist II
Specialist II

Quelle est la raison fonctionnelle de cette limite ?

Dans la logique, si toutes les données ne t'intéressent pas, il faut les limiter au chargement par le biais d'une clause Where.

Sinon, il te faut une valeur sur laquelle tester... Rien ne t'empêche de stocker le n° de la ligne dans l'une de tes tables à l'aide des fonctions RowNo(), IterNo() ou encore RecNo().

Martin Favier

Not applicable
Author

Il n'y a pas une bonne raison fonctionnelle.

Seulement une envie de pouvoir afficher une information plus clair, et restreinte en fonction du choix d'un utilisateur (cf exemple_bis).

En faite, l'idée est que j'ai développé des rapports via un outil opensource, et maintenant l'objectif est de faire "les mêmes" rapports sous QlikView.
Mais avec mon autre outil de reporting, tout passe par du SQL. Il est donc de pas pouvoir faire exactement les mêmes rapports.

Je vais voir du coté RowNo(), IterNo() et RecNo(),  cela m'embète de limiter le chargement des données, car elles me servent ailleurs.

Merci !

martin59
Specialist II
Specialist II

Si elles te servent ailleurs, il ne faut pas les limiter au chargement.

Mais après, est-ce que ce n'est pas tout simplement l'utilisateur qui doit faire une sélection pour limiter les données à afficher ? Je pense que c'est plus ça...

QlikView change la donne grâce à sa navigation dans les données et sa représentation graphique. Il ne faut SURTOUT pas essayer de reproduire un état réalisé avec un autre produit quelqu'il soit (même Excel).

Il vaut mieux s'impregner de la logique autour de QlikView, bien comprendre son fonctionnement, et les rapports produit seront beaucoup plus adaptés et fonctionnels.

Martin Favier

Not applicable
Author

Oui, je suis parfaitement d'accord avec toi sur le fait qu'essayer de reproduire un rapport réalisé avec un autre produit n'est pas très malin.

En tout cas encore merci.

Je me permets de poser une dernière question, sans aucun lien avec ce qui précéde, et à tout hasard !

Dans mon script de chargment, je charge des images :

Images_drapeaux:

BUNDLE LOAD * INLINE [

ID_language, Path

1,C:\Users\......\Documents\......\Images\Drapeaux\AR.png.data

2,C:\Users\......\Documents\.......\Images\Drapeaux\DE.png.data

3,C:\Users\......\Documents\.......\Images\Drapeaux\EN.png.data]

Est-il possible de variabilisé le chemin ??
Si oui comment, je commence tout juste à chercher, peut-être un SET chemin='C:\Users....'  ??

rfe
Employee
Employee

Oui cela est possible

Il faut déclarer une variable dans Qlikview (Parametres, vue d'ensemble des variables)

On peut alimenter cette variable a plusieurs endroits. Une méthode consiste à le renseigner dans le script et une autre directement dans l'appli

exemple : variable vSource

on renseigne la variable : C:\Users\......\Documents\......\Images\Drapeaux\

dans le script on peut ensuite utiliser cette variable (si la valeur est déjà rentrée) sinon il faut lui dire au début du script (à voir dans la documentation, instructions SET et LET)

LOAD *

FROM $(vSource)*.png

Not applicable
Author

Impecable ! il me manquait juste le $(variable)

Merci beaucoup pour ce gain de temps !