Calculs de fenêtre
Dernière mise à jour
Cet article vous a-t-il été utile ?
Dernière mise à jour
Cet article vous a-t-il été utile ?
Les calculs de fenêtre permettent de réaliser des opérations sur des mesures au sein d'un composant visuel, et d'effectuer des opérations analytiques telles que le pourcentage du total, des sommes cumulées, ou des comparaisons avec les chiffres antérieurs.
Fonction
Description
Exemple
Index()
Retourne la position de ligne dans le jeu de données affiché dans le composant
Index()
Size()
Retourne le nombre de lignes affichées dans le composant
Size()
Lookup(
Summary
Expression,
Position)
Retourne la valeur définie par l'expression et à la position indiquée en deuxième argument, position relative par rapport à la position courante.
Lookup(Sum([Ventes]), 3)
Last()
Retourne le nombre de ligne entre la ligne courante et la dernière ligne affichée dans le composant
Last()
First()
Retourne le nombre de ligne entre la ligne courante et la dernière ligne affichée dans le composant
First()
La w
fonction utilise des calculs dans la fenêtre pour calculer les valeurs des lignes de données dans une fenêtre définie par des critères spécifiés. Elle s'utilise dans des champs calculés.
La w fonction est à utiliser si vous souhaitez réutiliser à plusieurs endroits vos calculs, et éventuellement les appeler dans d'autres champs calculés.
Vous pouvez utiliser le résultat de la fonction comme mesure pour calculer des valeurs récapitulatives de manière personnalisée. Vous pouvez envelopper la fonction dans une expression agrégée pour l'utiliser comme dimension pour regrouper, trier ou filtrer des données.
Nous avons une grille de commandes effectuées selon l'année et le mois :
Nous souhaitons avoir la somme cumulée des commandes effectuées chaque année. À titre indicatif, voici la grille des sommes des commandes effectués par année :
Nous allons créer un champ calculé Running sum total suivant :
Nous pouvons ajouter une partition supplémentaire pour calculer les totaux cumulés, d'abord par année, puis par trimestre :
Voici les résultats que nous souhaitons voir apparaître sur notre grille
Nous allons créer un champ calculé Running sum total by q suivant :
Nous avons notre grille finale où nous retrouvons la somme pour chaque fin de trimestre (Mars, Juin, Septembre et Décembre )
Voici des exemples d'expressions valides :
Expression
Description
paritionBy()
Partition sur toutes les lignes de données
partitionBy([Category], [Product])
Une partition par produit pour chaque catégorie
partitionBy(aggr(Sum(x), y, z))
Une définition de partition complexe qui contient une expression non agrégée.
La orderBy
fonction spécifie l'ordre de calcul de la fonction de fenêtre. Les paramètres peuvent être une liste ou un ensemble vide d'expressions qui définissent l'ordre de calcul à l'intérieur d'une partition.
L'ordre par défaut est croissant. Si je veux changer ce sens je dois le préciser avec la fonction "desc" dans la fonction comme suivant :
Par conséquent, les totaux cumulés sont calculés du dernier au premier mois :
Voici des exemples d'expressions valides :
Expression
La description
orderBy()
Les paramètres vides ne spécifient pas l'ordre de calcul.
orderBy(Sum([Sales))
Le paramètre spécifie l'ordre croissant et trie les valeurs par une expression d'agrégation.
orderBy(asc(Sum([Sales])))
Le paramètre spécifie l'ordre croissant et trie les valeurs par une expression d'agrégation.
orderBy(desc(Sum([Sales])))
Le paramètre spécifie l'ordre décroissant et trie les valeurs par une expression d'agrégation.
orderBy(GetYear(Date))
Le paramètre spécifie l'ordre décroissant et trie les valeurs par une expression non agrégée.