ALLNOBLANKROW
Gilt für:Berechnete Spalteberechnete TabelleMeasurevisuelle Berechnung
Gibt aus der übergeordneten Tabelle einer Beziehung all Zeilen zurück, aber die blank Zeile, orall unterschiedliche values einer Spalte, aber die blank Zeile ignoriert and kontextbezogene filters, die vorhanden sein könnten.
Syntax
ALLNOBLANKROW( {<table> | <column>[, <column>[, <column>[,…]]]} )
Parameter
Ausdruck | Definition |
---|---|
table |
Die Tabelle, über die all Kontext filters entfernt werden. |
column |
Eine Spalte, über die all Kontext filters entfernt werden. |
Es muss nur ein Parameter übergeben werden; der Parameter ist entweder eine Tabelle or einer Spalte.
value zurückgeben
Eine Tabelle, wenn der übergebene Parameter eine Tabelle war, or eine Spalte von values, als der übergebene Parameter eine Spalte war.
Bemerkungen
Die ALLNOBLANKROW-Funktion filters der zeile blank, die eine übergeordnete Tabelle in einer Beziehung enthält, wird angezeigt, wenn eine or weitere Zeilen in der untergeordneten Tabelle vorhanden ist, die nicht übereinstimmende values mit der übergeordneten Spalte aufweisen. Eine ausführliche Erläuterung finden Sie im folgenden Beispiel.
In der folgenden Tabelle sind die Variationen von
ALL
zusammengefasst, die in DAXbereitgestellt werden, and deren Unterschiede:Funktion and Verwendung Beschreibung ALL(Column)
Entfernt allfilters aus der angegebenen Spalte in der Tabelle; all anderen filters in der Tabelle gelten weiterhin für andere Spalten. ALL(Table)
Entfernt allfilters aus der angegebenen Tabelle. ALLEXCEPT(Table,Col1,Col2...)
Überschreibt all Kontext filters in der Tabelle except über die angegebenen Spalten. ALLNOBLANK(table|column)
Gibt aus der übergeordneten Tabelle einer Beziehung all Zeilen zurück, aber die blank Zeile, orall unterschiedliche values einer Spalte, aber die blank Zeile ignoriert and kontextbezogene filters, die vorhanden sein könnten. Eine allgemeine Beschreibung der Funktionsweise der ALL-Funktion zusammen mit Schritt-für-Schritt-Beispielen, die ALL(Tabelle) andALL(Spalte) verwenden, finden Sie unter ALL Funktion.
Diese Funktion wird not für die Verwendung im DirectQuery-Modus unterstützt, wenn sie in berechneten Spalten or Sicherheitsregeln auf Zeilenebene (RLS) verwendet wird.
Beispiel
In den sample-Daten contains die ResellerSales_USD Tabelle eine Zeile, die keine valuesand enthält, daher können keine der übergeordneten Tabellen in den Beziehungen in der Arbeitsmappe related werden. Sie verwenden diese Tabelle in einer PivotTable, damit Sie das verhalten der blank Zeile and behandeln können, um die Anzahl von nicht verknüpften Daten zu behandeln.
Schritt 1: Überprüfen der nicht verknüpften Daten
Öffnen Sie die Power Pivot-window, und wählen Sie dann die ResellerSales_USD Tabelle aus. In der Spalte "ProductKey" filter für blankvalues. Eine Zeile bleibt erhalten. In dieser Zeile sollte all Spalte values für "SalesOrderLineNumber" blankexcept werden.
Schritt 2: Erstellen einer PivotTable
Erstellen Sie eine neue PivotTable, und ziehen Sie dann die Spalte, datumstime. [CalendarYear], zum Bereich "Zeilenbeschriftungen". Die folgende Tabelle zeigt die erwarteten Ergebnisse:
Zeilenbeschriftungen |
---|
2005 |
2006 |
2007 |
2008 |
Gesamtsumme |
Beachten Sie die blank Bezeichnung zwischen 2008andGesamtsumme. Diese blank Bezeichnung stellt das Unbekannte Element dar, bei dem es sich um eine spezielle Gruppe handelt, die erstellt wird, um alle values in der untergeordneten Tabelle zu berücksichtigen, die keine übereinstimmenden value in der übergeordneten Tabelle aufweisen, in diesem Beispiel die Datetime. [CalendarYear] Spalte.
Wenn diese blank Beschriftung in der PivotTable angezeigt wird, wissen Sie, dass sie in einigen Tabellen, die in der Spalte related sind, datumstime sind. [CalendarYear], es gibt entweder blankvaluesor nicht übereinstimmenden values. Die übergeordnete Tabelle ist die Tabelle, die die blank Beschriftung anzeigt, aber die Zeilen, die not Übereinstimmung erfüllen, befinden sich in einer or mehr der untergeordneten Tabellen.
Die Zeilen, die dieser blank Bezeichnungsgruppe hinzugefügt werden, sind entweder values, die not mit allen value in der übergeordneten Tabelle übereinstimmen, z. B. eine date, die not in der Datetime-Tabelle vorhanden ist- or NULL-values, was bedeutet, dass keine value für date bei allvorhanden ist. In diesem Beispiel haben wir eine blankvalue in all Spalten der untergeordneten Verkaufstabelle platziert. Wenn in der übergeordneten Tabelle mehr values als in den untergeordneten Tabellen vorhanden sind, not ein Problem verursacht.
Schritt 3: Count Zeilen mit ALLand ALLNOBLANK
Fügen Sie die folgenden beiden Measures zur Datetime-Tabelle hinzu, um die Tabellenzeilen zu count: Countrows ALLNOBLANK von datetime, CountrowsALL von datetime. Die Formeln, mit denen Sie define können, sind:
// 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'))
Fügen Sie auf einer blank PivotTable Datetime hinzu. [CalendarYear] Spalte zu den Zeilenbeschriftungen, and dann die neu erstellten Measures hinzufügen. Die Ergebnisse sollten wie in der folgenden Tabelle aussehen:
Zeilenbeschriftungen | Countrows ALLNOBLANK von datetime | Countrows ALL von datetime |
---|---|---|
2005 | 1280 | 1281 |
2006 | 1280 | 1281 |
2007 | 1280 | 1281 |
2008 | 1280 | 1281 |
1280 | 1281 | |
Gesamtsumme | 1280 | 1281 |
Die Ergebnisse zeigen einen Unterschied von 1 Zeile in den Tabellenzeilen count. if Sie jedoch die Power Pivot-windowand die Datetime-Tabelle öffnen, können Sie keine find Zeile in der Tabelle blank, da die hier erwähnte spezielle blank Zeile das Element Unbekannt ist.
Schritt 4: Überprüfen, ob die count korrekt ist
Um zu beweisen, dass die ALLNOBLANKROW wirklich not Zeilen countblank, and nur die spezielle blank Zeile in der übergeordneten Tabelle behandelt, fügen Sie die folgenden beiden Measures zur ResellerSales_USD Tabelle hinzu: CountrowsALLNOBLANKROW von ResellerSales_USD, CountrowsALL von ResellerSales_USD.
Erstellen Sie eine neue PivotTable, and die Spalte, datumstime, ziehen. [CalendarYear], zum Bereich "Zeilenbeschriftungen". Now die soeben erstellten Measures hinzufügen. Die Ergebnisse sollten wie folgt aussehen:
Zeilenbeschriftungen | Countrows ALLNOBLANKROW von ResellerSales_USD | Countrows ALL von ResellerSales_USD |
---|---|---|
2005 | 60856 | 60856 |
2006 | 60856 | 60856 |
2007 | 60856 | 60856 |
2008 | 60856 | 60856 |
60856 | 60856 | |
Gesamtsumme | 60856 | 60856 |
Now die beiden Measures haben dieselben Ergebnisse. Das liegt daran, dass die ALLNOBLANKROW-Funktion wirklich not Zeilen in einer Tabelle countblank, sondern nur die blank Zeile behandelt, die in einer übergeordneten Tabelle generiert wird, wenn eine or mehr der untergeordneten Tabellen in der Beziehung nicht übereinstimmende valuesorblankvaluesenthalten.