ALLNOBLANKROW
s’applique à :colonne calculéetable calculéeMeasurecalcul visuel
À partir de la table parente d’une relation, retourne all lignes, mais la ligne blank, orallvalues distincte d’une colonne, mais la ligne blank, and ignore tout contexte filters qui peut exister.
Syntaxe
ALLNOBLANKROW( {<table> | <column>[, <column>[, <column>[,…]]]} )
Paramètres
Terme | Définition |
---|---|
table |
Table sur laquelle all contexte filters sont supprimées. |
column |
Colonne sur laquelle all contexte filters sont supprimées. |
Un seul paramètre doit être passé ; le paramètre est une table or une colonne.
Retourner value
Une table, lorsque le paramètre passé était une table, or une colonne de values, lorsque le paramètre passé était une colonne.
Remarques
La fonction ALLNOBLANKROW n'filters que la ligne blank qu’une table parente, dans une relation, affiche lorsqu’il existe un or plus de lignes dans la table enfant qui ont des values non correspondantes à la colonne parente. Consultez l’exemple ci-dessous pour obtenir une explication approfondie.
Le tableau suivant résume les variations de
ALL
fournies dans DAX, and leurs différences :Utilisation de la fonction and Description ALL(Column)
Supprime allfilters de la colonne spécifiée dans la table ; all d’autres filters dans la table, sur d’autres colonnes, s’appliquent toujours. ALL(Table)
Supprime allfilters de la table spécifiée. ALLEXCEPT(Table,Col1,Col2...)
Remplace all contexte filters dans la table except sur les colonnes spécifiées. ALLNOBLANK(table|column)
À partir de la table parente d’une relation, retourne all lignes, mais la ligne blank, orallvalues distincte d’une colonne, mais la ligne blank, and ignore tout contexte filters qui peut exister Pour obtenir une description générale du fonctionnement de la fonction ALL, ainsi que des exemples pas à pas qui utilisent ALL(Table) andALL(Colonne), consultez ALL fonction.
Cette fonction est not prise en charge pour une utilisation en mode DirectQuery lorsqu’elle est utilisée dans les colonnes calculées or règles de sécurité au niveau des lignes (RLS).
Exemple
Dans les données sample, la table ResellerSales_USD contains une ligne sans valuesand ne peut donc pas être related à l’une des tables parentes dans les relations dans le classeur. Vous allez utiliser ce tableau dans un tableau croisé dynamique afin de voir le comportement de ligne blankand comment gérer le nombre de données non liées.
Étape 1 : Vérifier les données non liées
Ouvrez le
Étape 2 : Créer un tableau croisé dynamique
Créez un tableau croisé dynamique, puis faites glisser la colonne, datetime. [CalendarYear], dans le volet Étiquettes de ligne. Le tableau suivant présente les résultats attendus :
Étiquettes de ligne |
---|
2005 |
2006 |
2007 |
2008 |
Total général |
Notez l’étiquette blank entre 2008andgrand total. Cette étiquette blank représente le membre Inconnu, qui est un groupe spécial créé pour prendre en compte les values de la table enfant qui n’ont aucune value correspondante dans la table parente, dans cet exemple la datetime. [CalendarYear] colonne.
Lorsque vous voyez cette étiquette blank dans le tableau croisé dynamique, vous savez que dans certaines des tables related à la colonne, datetime. [CalendarYear], il existe blankvaluesorvaluesnon correspondantes . La table parente est celle qui affiche l’étiquette blank, mais les lignes qui not correspondance se trouvent dans une or plus de tables enfants.
Les lignes qui sont ajoutées à ce groupe d’étiquettes de blank sont soit values qui correspondent not à n’importe quelle value dans la table parente, par exemple, un date qui n’existe not dans la table datetime- orvaluesnull, ce qui signifie qu’aucun value pour date à all. Dans cet exemple, nous avons placé une blankvalue dans all colonnes de la table de ventes enfants. Avoir plus de values dans la table parente que dans les tables enfants n'not provoquer un problème.
Étape 3 : Count lignes à l’aide de ALLand ALLNOBLANK
Ajoutez les deux mesures suivantes à la table datetime, pour count les lignes de la table : Countrows ALLNOBLANK de datetime, CountrowsALL de datetime. Les formules que vous pouvez utiliser pour define ces mesures sont les suivantes :
// Countrows ALLNOBLANK of datetime
= COUNTROWS(ALLNOBLANKROW('DateTime'))
// Countrows ALL of datetime
= COUNTROWS(ALL('DateTime'))
// Countrows ALLNOBLANKROW of ResellerSales_USD
= COUNTROWS(ALLNOBLANKROW('ResellerSales_USD'))
// Countrows ALL of ResellerSales_USD
= COUNTROWS(ALL('ResellerSales_USD'))
Sur un blank tableau croisé dynamique, ajoutez datetime. [CalendarYear] colonne aux étiquettes de ligne, and ensuite ajouter les mesures nouvellement créées. Les résultats doivent ressembler au tableau suivant :
Étiquettes de ligne | Countrows ALLNOBLANK de datetime | Countrows ALL de datetime |
---|---|---|
2005 | 1280 | 1281 |
2006 | 1280 | 1281 |
2007 | 1280 | 1281 |
2008 | 1280 | 1281 |
1280 | 1281 | |
Total général | 1280 | 1281 |
Les résultats montrent une différence de 1 ligne dans les lignes de table count. Toutefois, if vous ouvrez le tableau croisé dynamique Powerwindowand sélectionnez la table datetime, vous ne pouvez find aucune ligne blank dans la table, car la ligne spéciale blank mentionnée ici est le membre Inconnu.
Étape 4 : Vérifier que le count est exact
Pour prouver que le ALLNOBLANKROW n'notcount aucune ligne véritablement blank, and gère uniquement la ligne spéciale blank sur la table parente uniquement, ajoutez les deux mesures suivantes à la table ResellerSales_USD : CountrowsALLNOBLANKROW de ResellerSales_USD, CountrowsALL de ResellerSales_USD.
Créez un tableau croisé dynamique, and faites glisser la colonne, datetime. [CalendarYear], dans le volet Étiquettes de ligne. Now ajoutez les mesures que vous venez de créer. Les résultats doivent ressembler à ce qui suit :
Étiquettes de ligne | Countrows ALLNOBLANKROW de ResellerSales_USD | Countrows ALL de ResellerSales_USD |
---|---|---|
2005 | 60856 | 60856 |
2006 | 60856 | 60856 |
2007 | 60856 | 60856 |
2008 | 60856 | 60856 |
60856 | 60856 | |
Total général | 60856 | 60856 |
Now les deux mesures ont les mêmes résultats. Cela est dû au fait que la fonction ALLNOBLANKROW n'notcount vraiment blank lignes d’une table, mais gère uniquement la ligne blank qui est un cas spécial généré dans une table parente, lorsqu’une or plus des tables enfants de la relation contiennent des valuesorblankvaluesnon correspondantes.
contenu Related
fonctions Filter
ALL fonction
FILTER fonction