IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

QlikView Discussion :

Expression de total personnalisée


Sujet :

QlikView

  1. #21
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2015
    Messages
    64
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meuse (Lorraine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2015
    Messages : 64
    Points : 37
    Points
    37
    Par défaut
    Avec l'aggrégation :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    =
    if(	Dimensionality()=0
    	, count(
    		aggr(
    			if([Taux Non Conformes] >= 0.25, 1)
    			, depot, Année, TrimDate, Mois_Ecrit_En_Entier
    		)
    	)
    	, [Taux Non Conformes]
    )
    Nom : Untitled.png
Affichages : 279
Taille : 14,3 Ko

  2. #22
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2015
    Messages
    64
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meuse (Lorraine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2015
    Messages : 64
    Points : 37
    Points
    37
    Par défaut
    Bon, je crois que je vais lacher l'affaire.
    Un grand merci à vous PhunkyBob pour votre patience.

  3. #23
    Modérateur

    Inscrit en
    Octobre 2006
    Messages
    1 649
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 1 649
    Points : 2 529
    Points
    2 529
    Billets dans le blog
    6
    Par défaut
    Parce que "888", ça fait "888", alors que votre expression sans les agrégations, ça fait 0.

  4. #24
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2015
    Messages
    64
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meuse (Lorraine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2015
    Messages : 64
    Points : 37
    Points
    37
    Par défaut
    Citation Envoyé par CodeWalker Voir le message
    Avec l'aggrégation :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    =
    if(	Dimensionality()=0
    	, count(
    		aggr(
    			if([Taux Non Conformes] >= 0.25, 1)
    			, depot, Année, TrimDate, Mois_Ecrit_En_Entier
    		)
    	)
    	, [Taux Non Conformes]
    )
    Nom : Untitled.png
Affichages : 279
Taille : 14,3 Ko

  5. #25
    Modérateur

    Inscrit en
    Octobre 2006
    Messages
    1 649
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 1 649
    Points : 2 529
    Points
    2 529
    Billets dans le blog
    6
    Par défaut
    Vous pouvez tester :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    =
    if(	Dimensionality()=0
    	, count(
    if(
    		aggr(
    			[Taux Non Conformes]
    			, depot, Année, TrimDate, Mois_Ecrit_En_Entier
    		)
     >= 0.25, 1)
    	)
    	, [Taux Non Conformes]
    )
    Sans exemple avec un jeu de données + l'expression qui ne fonctionne pas, je ne peux rien faire de plus.

  6. #26
    Membre régulier
    Profil pro
    Inscrit en
    Août 2002
    Messages
    83
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2002
    Messages : 83
    Points : 107
    Points
    107
    Par défaut
    Il manque la fonction d'aggrégation dans votre Aggr .

    La fonction Aggr nécessite une expression composée d'une fonction d'agrégation, sinon renvoi null si plusieurs lignes identiques.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    =
    if(	Dimensionality()=0
    	, count(
    		aggr(
    			if([Taux Non Conformes] >= 0.25, 1)
    			, depot, Année, TrimDate, Mois_Ecrit_En_Entier
    		)
    	)
    	, [Taux Non Conformes]
    )

  7. #27
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2015
    Messages
    64
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meuse (Lorraine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2015
    Messages : 64
    Points : 37
    Points
    37
    Par défaut
    Voici la solution à mon problème :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    =if(	Dimensionality()=0
    		, num(count(distinct {< Depot={"=((count(if(Dérogation = 'Avec Dérogation', 1)) + count(if(Statut = 'Refusé', 1))) / count(N°Echantillonage))>0.25"} >} Depot),'0')
    		, num((count(if(Dérogation = 'Avec Dérogation', 1)) + count(if(Statut = 'Refusé', 1))) / count(N°Echantillonage),'0.0%')
    )
    Dans les propriétés du tableau, faire les modifications suivantes :
    - Dans l’onglet « nombre », passer l’expression "Taux Non Conformes" au format par défaut.
    - Dans l’expression "Taux Non Conformes" :
    • On utilise la fonction num() pour afficher les données en % et le total en nombre entier.
    • On utilise un set analysis sur la fonction count(distinct Depot) pour ne compter que les dépôts ayant un taux > 25%.


    NOTA :
    Cette syntaxe du set analysis est un peu délicate par rapport à la syntaxe habituelle car elle fait perdre l’analyseur syntaxique.

    Un autre exemple pour illustrer différemment le problème :
    On souhaite compter le nombre de clients ayant un CA > 1 million.
    Il faut utiliser Count(Distinct ClientId).
    On ajoute un set analysis sur cette fonction pour calculer les CA > 1 million :
    Count(distinct {< ClientId = {‘’ =sum(CA)>1000000 ’’} >} ClientId)
    => Yata !

    Nom : Untitled.png
Affichages : 155
Taille : 18,7 Ko

+ Répondre à la discussion
Cette discussion est résolue.
Page 2 sur 2 PremièrePremière 12

Discussions similaires

  1. Map Totalement Personnalisée
    Par Kcinn4y dans le forum Général Conception Web
    Réponses: 2
    Dernier message: 03/02/2015, 21h33
  2. site reseau social open source totalement personnalisable
    Par shaineu dans le forum APIs Réseaux sociaux
    Réponses: 0
    Dernier message: 09/10/2013, 23h24
  3. [vb express] Raccourcis clavier personnalisables
    Par pedro85 dans le forum Windows Forms
    Réponses: 3
    Dernier message: 04/05/2008, 20h32
  4. nb pages total dans expression
    Par couetbis dans le forum iReport
    Réponses: 2
    Dernier message: 05/11/2007, 13h59

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo