ALLNOBLANKROW
gäller för:beräknad kolumnberäknad tabellMeasurevisuell beräkning
Från den överordnade tabellen i en relation returnerar all rader men den blank raden, orall distinkta values för en kolumn men blank raden, and bortser från alla kontexter filters som kan finnas.
Syntax
ALLNOBLANKROW( {<table> | <column>[, <column>[, <column>[,…]]]} )
Parametrar
Term | Definition |
---|---|
table |
Tabellen som all kontext filters tas bort över. |
column |
En kolumn som all kontext filters tas bort över. |
Endast en parameter måste skickas. parametern är antingen en tabell or en kolumn.
Returnera value
En tabell, när den skickade parametern var en tabell, or en kolumn med values, när den skickade parametern var en kolumn.
Anmärkningar
Funktionen ALLNOBLANKROW endast filters den blank rad som en överordnad tabell i en relation visar när det finns en or fler rader i den underordnade tabellen som har icke-matchande values till den överordnade kolumnen. Se exemplet nedan för en grundlig förklaring.
I följande tabell sammanfattas de variationer av
ALL
som finns i DAX, and deras skillnader:Funktionsanvändning and Beskrivning ALL(Column)
Tar bort allfilters från den angivna kolumnen i tabellen. all andra filters i tabellen gäller fortfarande för andra kolumner. ALL(Table)
Tar bort allfilters från den angivna tabellen. ALLEXCEPT(Table,Col1,Col2...)
Åsidosätter all kontext filters i tabellen except över de angivna kolumnerna. ALLNOBLANK(table|column)
Från den överordnade tabellen i en relation returnerar all rader men den blank raden, orall distinkta values för en kolumn men blank rad, and bortser från alla kontexter filters som kan finnas En allmän beskrivning av hur funktionen ALL fungerar tillsammans med stegvisa exempel som använder ALL(tabell) andALL(kolumn) finns i ALL funktion.
Den här funktionen stöds not för användning i DirectQuery-läge när den används i beräknade kolumner or regler för säkerhet på radnivå (RLS).
Exempel
I sample data kan den ResellerSales_USD tabellen contains en rad som inte har någon valuesand därför inte kan related till någon av de överordnade tabellerna i relationerna i arbetsboken. Du kommer att använda den här tabellen i en pivottabell så att du kan se blank radbeteende and hur du hanterar antal orelaterade data.
Steg 1: Verifiera orelaterade data
Öppna Power Pivot windowoch välj sedan tabellen ResellerSales_USD. I kolumnen ProductKey filter för blankvalues. En rad kommer att finnas kvar. På den raden ska all kolumn values vara blankexcept för SalesOrderLineNumber.
Steg 2: Skapa en pivottabell
Skapa en ny pivottabell och dra sedan kolumnen datetime. [CalendarYear], till fönstret Radetiketter. Följande tabell visar förväntade resultat:
Radetiketter |
---|
2005 |
2006 |
2007 |
2008 |
Totalsumma |
Observera etiketten blank mellan 2008andTotal total. Den här blank-etiketten representerar den okända medlemmen, som är en särskild grupp som skapas för att ta hänsyn till alla values i den underordnade tabellen som inte har någon matchande value i den överordnade tabellen, i det här exemplet datetime. [CalendarYear] kolumn.
När du ser den här blank etiketten i pivottabellen vet du att i några av tabellerna som related till kolumnen datetime. [CalendarYear], det finns antingen blankvaluesor icke-matchande values. Den överordnade tabellen är den som visar etiketten blank, men raderna som matchar not finns i en or fler av de underordnade tabellerna.
De rader som läggs till i den här blank etikettgruppen är antingen values som not matchar alla value i den överordnade tabellen, till exempel en date som not finns i tabellen datetime– or null values, vilket innebär att ingen value för date på all. I det här exemplet har vi placerat en blankvalue i all kolumner i den underordnade försäljningstabellen. Att ha fler values i den överordnade tabellen än i underordnade tabeller orsakar not ett problem.
Steg 3: Count rader med ALLand ALLNOBLANK
Lägg till följande två mått i tabellen datetime för att count tabellraderna: Countrows ALLNOBLANK för datetime, CountrowsALL för datetime. De formler som du kan använda för att define dessa mått är:
// 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'))
Lägg till datetime i en blank pivottabell. [CalendarYear] kolumn i radetiketterna and sedan lägga till de nyligen skapade måtten. Resultatet bör se ut som i följande tabell:
Radetiketter | Countrows ALLNOBLANK för datetime | Countrows ALL av datetime |
---|---|---|
2005 | 1280 | 1281 |
2006 | 1280 | 1281 |
2007 | 1280 | 1281 |
2008 | 1280 | 1281 |
1280 | 1281 | |
Totalsumma | 1280 | 1281 |
Resultatet visar en skillnad på 1 rad i tabellraderna count. Men if du öppnar Power Pivot windowand väljer tabellen datetime kan du inte find någon blank rad i tabellen eftersom den särskilda blank raden som nämns här är okänd medlem.
Steg 4: Kontrollera att count är korrekt
För att bevisa att ALLNOBLANKROW inte notcount några verkligt blank rader, and endast hanterar den särskilda blank raden i den överordnade tabellen lägger du till följande två mått i tabellen ResellerSales_USD: CountrowsALLNOBLANKROW av ResellerSales_USD, CountrowsALL för ResellerSales_USD.
Skapa en ny pivottabell and dra kolumnen datetime. [CalendarYear], till fönstret Radetiketter. Now lägga till de mått som du nyss skapade. Resultatet bör se ut så här:
Radetiketter | Countrows ALLNOBLANKROW av ResellerSales_USD | Countrows ALL av ResellerSales_USD |
---|---|---|
2005 | 60856 | 60856 |
2006 | 60856 | 60856 |
2007 | 60856 | 60856 |
2008 | 60856 | 60856 |
60856 | 60856 | |
Totalsumma | 60856 | 60856 |
Now de två måtten har samma resultat. Det beror på att funktionen ALLNOBLANKROWnotcount verkligen blank rader i en tabell, men hanterar bara den blank rad som är ett specialfall som genereras i en överordnad tabell, när en or fler av de underordnade tabellerna i relationen innehåller icke-matchande valuesorblankvalues.