NAMEOF

gäller för:beräknad kolumnberäknad tabellMåttVisuell beräkning

Returnerar namnet på en tabell, kolumn, mått eller kalender som en textsträng. Valfria parametrar styr vilken komponent i namnet som returneras och hur resultatet är undantaget.

Syntax

NAMEOF ( <object> [, <component> [, <escaped>]] )

Parameterar

Begrepp Definition
object Tabellen, kolumnen, måttet eller kalendern vars namn du vill hämta.
component (Valfritt) En uppräkning som anger vilken del av det kvalificerade namnet som ska returneras. Om det utelämnas är standardvärdet FULL. Se Komponentvärden.
escaped (Valfritt) En uppräkning som anger hur det returnerade namnet ska undkommas. Om det utelämnas är standardvärdet ESCAPED. Se Undantagna värden.

Komponentvärden

Parametern component accepterar följande värden:

Värde Beskrivning
TABLE Returnerar tabellnamnet. Returnerar ett fel om objektet inte är associerat med en tabell (t.ex. en kalender).
COLUMN Returnerar kolumnnamnet. Returnerar ett fel om objektet inte är en kolumn.
MEASURE Returnerar måttnamnet. Returnerar ett fel om objektet inte är ett mått.
CALENDAR Returnerar kalendernamnet. Returnerar ett fel om objektet inte är en kalender.
FULL (Standard) Returnerar objektets fullständigt kvalificerade namn.
SELF Returnerar själva objektets namn: kolumn- eller måttnamnet för kolumner och mått, eller tabell-/kalendernamnet för tabeller och kalendrar.
PARENT Returnerar det överordnade tabellnamnet för kolumner och mått. Returnerar ett fel för tabeller och kalendrar.

Undantagna värden

Parametern escaped accepterar följande värden:

Värde Beskrivning
ESCAPED (Standard) Returnerar namnet med fullständig DAX utrymning: tabellnamn omslutna med enkla citattecken, kolumn- och måttnamn omslutna i hakparenteser.
UNESCAPED Returnerar rånamnet utan avgränsare eller escape-tecken. Returnerar ett fel för fullständigt kvalificerade namn som innehåller både en överordnad och underordnad komponent.
MINIMALLYESCAPED Returnerar namnet med escapeing tillämpat endast när namnet kräver det. Namn som endast innehåller enkla bokstäver, siffror och understreck returneras utan avgränsare. Namn som innehåller blanksteg eller specialtecken returneras med escapeing.

Returvärde

En textsträng med det begärda namnet, formaterat baserat på komponenten och undantagna parametrar.

Anmärkningar

  • När nameof anropas med endast object argumentet beter sig det på samma sätt som i tidigare versioner och returnerar ett fullständigt kvalificerat, undantaget namn. Eftersom component standardvärdet och FULLescaped standardvärdet är ESCAPEDär returformaten:
    • För tabeller: 'TableName'.
    • För kolumner: 'TableName'[ColumnName].
    • För mått: 'TableName'[MeasureName].
    • För kalendrar: 'CalendarName'.
    • För variantkolumner: 'TableName'[ColumnName].[VariationName].
  • Variabler och dynamiska uttryck stöds inte som argument till NAMEOF.
  • Den här funktionen stöds inte för användning i DirectQuery-läge när den används i beräknade kolumner eller säkerhetsregler på radnivå (RLS).

Komponentbeteende efter indatatyp

I följande tabell visas resultatet av varje component värde för olika indatatyper med standardläget ESCAPED . "Fel" anger att kombinationen returnerar ett fel.

Inmatningstyp TABLE COLUMN MEASURE CALENDAR FULL SELF PARENT
Kolumn- Sales[Sales Amount] 'Sales' [Sales Amount] Error Error 'Sales'[Sales Amount] [Sales Amount] 'Sales'
Tabell- Sales 'Sales' Error Error Error 'Sales' 'Sales' Error
Åtgärd- Sales[m1] 'Sales' Error [m1] Error 'Sales'[m1] [m1] 'Sales'
Kalender- myCalendar Error Error Error 'myCalendar' 'myCalendar' 'myCalendar' Error

Undantaget beteende

Parametern escaped styr hur namnet som skapas av component steget formateras. I följande tabell används det fullständigt undantagna namnet som referens och utdata för varje escaped värde visas.

Fullständigt undantaget namn ESCAPED UNESCAPED MINIMALLYESCAPED
'Sales' 'Sales' Sales Sales
'Sales'[Sales Amount] 'Sales'[Sales Amount] Error Sales[Sales Amount]
'Sales'[m1] 'Sales'[m1] Error Sales[m1]
[Amount] [Amount] Amount Amount
'Sales Region' 'Sales Region' Sales Region 'Sales Region'
'Sales Region'[Column] 'Sales Region'[Column] Error 'Sales Region'[Column]
[Order Quantity] [Order Quantity] Order Quantity [Order Quantity]

Anmärkning

UNESCAPED returnerar ett fel för fullständigt kvalificerade namn (namn som innehåller både en tabell- och kolumn-/måttkomponent), eftersom resultatet skulle vara tvetydigt utan avgränsare.

Undantagsregler för specialtecken

Följande undantagsregler gäller inom DAX namnavgränsare:

  • Tabellnamn (avgränsade med ett citattecken): Ett literalt enkelt citattecken (') i ett tabellnamn är undantaget som två enkla citattecken ('').
  • Kolumn- och måttnamn (avgränsad hakparentes): En literal avslutande hakparentes (]) i en kolumn eller ett måttnamn är undantagen som ]]. En inledande hakparentes ([) kräver inte utrymning.
Fullständigt undantaget namn ESCAPED UNESCAPED MINIMALLYESCAPED
'Ta''''ble' (tabell med ' i namn) 'Ta''''ble' Ta''ble Ta''ble
[colu[]]mn] (kolumn med ] i namn) [colu[]]mn] colu[]mn [colu[]]mn]

Exempel 1

Följande DAX fråga returnerar det fullständigt kvalificerade namnet på en kolumn:

EVALUATE
{ NAMEOF ( 'Sales'[ORDER QUANTITY] ) }

Returnerar:

[Värde]
'Sales'[Order Quantity]

Exempel 2

Följande DAX fråga returnerar det fullständigt kvalificerade namnet på ett mått:

DEFINE
    MEASURE Sales[Projected Sales] =
        SUM ( 'Sales'[Sales Amount] ) * 1.06

EVALUATE
{ NAMEOF ( [Projected Sales] ) }

Returnerar:

[Värde]
'Sales'[Projected Sales]

Exempel 3

DAX Följande fråga använder parametern component för att extrahera endast tabellnamnet från en kolumnreferens:

EVALUATE
{ NAMEOF ( 'Sales'[Sales Amount], TABLE ) }

Returnerar:

[Värde]
"Försäljning"

Exempel 4

Följande DAX fråga returnerar ett tabellnamn som inte är inkapslade:

EVALUATE
{ NAMEOF ( 'Sales', FULL, UNESCAPED ) }

Returnerar:

[Värde]
Sales

Exempel 5

Följande DAX fråga använder parametrarna component och escaped för att returnera det minimalt undantagna överordnade tabellnamnet för en kolumn:

EVALUATE
{ NAMEOF ( 'Sales'[Sales Amount], PARENT, MINIMALLYESCAPED ) }

Returnerar:

[Värde]
Sales