Dela via


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.

Filter funktionerALL funktionFILTER funktion