Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Bonjour
Mes dimensions :
Jour
Evenement
Expression : (heurefin-heuredébut)
je représente dans un graphique empilé les heures travaillées des machines. je souhaite fixer la valeur des machines avec un nom.
J'ai essayé avec plusieurs set analysis comme suit :
sum({<Machine={'LAV-01']>} (heurefin-heuredébut)) et plusieurs combinaison sans résultat..
Merci de votre aide sur ce point.
Francois
Bonjour François,
Vu que tu n'as pas les licences, je ne t'envoie pas l'application modifiée car tu ne pourra pas l'ouvrir.
J'ai pu bloquer le graphe sur une machine, mais j'ai constaté quelques points étranges.
Ci-dessous 2 copies d'écran pour des machines différentes. Tu peux voir que le graphe de gauche (le tien) change alors que les 2 graphes de droite (ceux que j'ai bloqués) ne change pas. J'ai sélectionné un jour pour que la comparaison soit plus facile à réaliser.
Tu peux également constater que entre ton graphe et le mien, il y a quelques petites différences, je l'expliquerai plus bas.
Dans ton graphe, il y a quelques NumEvent qui manquent. C'est du à la façon dont les données sont triées. Dans ton graphe, tu tries les NumEvent en fonction de TrancheHD2. Et le problème se présente lorsque tu as 2 NumEvent dans la même TrancheHD2. L'ordre alors existant ne correspond pas obligatoirement à la logique des expressions de décalage et de durée.
==> Il faut trier NumEvent par: Min({$<Machine={'LAV-01'}>} HeureDébut)
Note: Utilise toujours une fonction d'agrégation, sinon c'est Only() qui est utilisé et ça peut donner des résultats inattendus dans certains cas. En plus dans le cas de tes graphes bloqués, il ne faut pas oublier de spécifier ta machine.
Voici les expressions pour bloquer tes graphes:
Je ne comprend pas ce que tu veux faire.
Peux-tu essayer d'expliquer autrement.
Si tu peux fournir ton application ou une copie avec un extrait des données et ton objet graphique, cela pourrait permettre de mieux t'aider sur cette question et sur l'autre que tu as posé.
Bonjour Sébastien
ci joint mon application (je n'ai pas encore la version avec licence)
J'ai créé une application pour voir l'utilisation de machines.
je voudrais afficher plusieurs machines sur une même page et donc cloner puis "bloquer" mes graphiques par machine
est ce plus clair?
pour mon 2eme post, c'est sur ce même graphique que je souhaite changer les échelles des axes.
Bonjour François,
Vu que tu n'as pas les licences, je ne t'envoie pas l'application modifiée car tu ne pourra pas l'ouvrir.
J'ai pu bloquer le graphe sur une machine, mais j'ai constaté quelques points étranges.
Ci-dessous 2 copies d'écran pour des machines différentes. Tu peux voir que le graphe de gauche (le tien) change alors que les 2 graphes de droite (ceux que j'ai bloqués) ne change pas. J'ai sélectionné un jour pour que la comparaison soit plus facile à réaliser.
Tu peux également constater que entre ton graphe et le mien, il y a quelques petites différences, je l'expliquerai plus bas.
Dans ton graphe, il y a quelques NumEvent qui manquent. C'est du à la façon dont les données sont triées. Dans ton graphe, tu tries les NumEvent en fonction de TrancheHD2. Et le problème se présente lorsque tu as 2 NumEvent dans la même TrancheHD2. L'ordre alors existant ne correspond pas obligatoirement à la logique des expressions de décalage et de durée.
==> Il faut trier NumEvent par: Min({$<Machine={'LAV-01'}>} HeureDébut)
Note: Utilise toujours une fonction d'agrégation, sinon c'est Only() qui est utilisé et ça peut donner des résultats inattendus dans certains cas. En plus dans le cas de tes graphes bloqués, il ne faut pas oublier de spécifier ta machine.
Voici les expressions pour bloquer tes graphes:
Bonjour Sebastien
Super Génial, merci beaucoup. Je voyais bien que certaines durées n'était pas affichées mais je pensais que ça venait de mes intervalles qui n'était pas assez fin.
Pour mes NumEvent, en fait je voulais compter le nombre d'evènement par jour. . mais ça n'a pas marché, en faisant autonumber(NumEvent,HeureDebut) as evenement...
Je ne comprends pas le if(only) au lieu du 'if' tout simple que j'avais mis, est ce une bonne pratique ou est ce pour uen autre raison? j'ai regardé sur l'aide de qlik et je ne comprends pas trop l'usage à part de border complètement la condition par sécurité?
Je fais du lobbying en interne pour les licences!!!
C'est aussi grâce a hic et sa recette pour un graphique en gantt que j'ai essayé d'appliquer..
Encore merci pour l'aide..
Concernant l'ajout du Only :
Dès que tu utilises un champs dans une expression, il faut penser à l'associer à une fonction d'agrégation. Si ce n'est pas fait, QlikView va utiliser la fonction d'agrégation Only() par défaut, ce qui peut amener à des résultats inattendus.
La fonction d'agrégation détermine simplement le comportement a appliquer lorsqu'il y a plusieurs ligne de données.
De plus, si tu veux appliquer un set analysis, tu dois utiliser la fonction d'agrégation.