NAMEOF

Van toepassing op:berekende kolomberekende tabelMetingVisuele berekening

Retourneert de naam van een tabel, kolom, meting of kalender als een tekenreeks. Optionele parameters bepalen welk onderdeel van de naam wordt geretourneerd en hoe het resultaat wordt ontsnapt.

Syntaxis

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

Parameterwaarden

Termijn Definition
object De tabel, kolom, meting of kalender waarvan u de naam wilt ophalen.
component (Optioneel) Een opsomming die aangeeft welk deel van de gekwalificeerde naam moet worden geretourneerd. Als u dit weglaat, wordt standaard ingesteld op FULL. Zie Onderdeelwaarden.
escaped (Optioneel) Een opsomming die aangeeft hoe de geretourneerde naam wordt ontsnapt. Als u dit weglaat, wordt standaard ingesteld op ESCAPED. Zie Escaped-waarden.

Onderdeelwaarden

De parameter component accepteert de volgende waarden:

Waarde Beschrijving
TABLE Retourneert de tabelnaam. Retourneert een fout als het object niet is gekoppeld aan een tabel (bijvoorbeeld een agenda).
COLUMN Retourneert de kolomnaam. Retourneert een fout als het object geen kolom is.
MEASURE Retourneert de naam van de meting. Retourneert een fout als het object geen meting is.
CALENDAR Retourneert de naam van de agenda. Retourneert een fout als het object geen agenda is.
FULL (Standaard) Retourneert de volledig gekwalificeerde naam van het object.
SELF Retourneert de naam van het object zelf: de kolom- of metingnaam voor kolommen en metingen, of de tabel-/kalendernaam voor tabellen en agenda's.
PARENT Retourneert de naam van de bovenliggende tabel voor kolommen en metingen. Retourneert een fout voor tabellen en agenda's.

Escape-waarden

De parameter escaped accepteert de volgende waarden:

Waarde Beschrijving
ESCAPED (Standaard) Retourneert de naam met volledige DAX escape:tabelnamen verpakt in enkele aanhalingstekens, kolom- en metingnamen die tussen vierkante haken zijn verpakt.
UNESCAPED Retourneert de onbewerkte naam zonder scheidingstekens of escapetekens. Retourneert een fout voor volledig gekwalificeerde namen die zowel een bovenliggend als een onderliggend onderdeel bevatten.
MINIMALLYESCAPED Retourneert de naam waarbij escape-bestanden alleen worden toegepast wanneer de naam dit vereist. Namen die alleen eenvoudige letters, cijfers en onderstrepingstekens bevatten, worden zonder scheidingstekens geretourneerd. Namen die spaties of speciale tekens bevatten, worden geretourneerd met escape-tekens.

Retourwaarde

Een tekenreeks met de aangevraagde naam, opgemaakt op basis van het onderdeel en escape-parameters.

Opmerkingen

  • Wanneer naam wordt aangeroepen met alleen het object argument, gedraagt NAMEOF zich hetzelfde als in eerdere versies, waarbij een volledig gekwalificeerde, escape-naam wordt geretourneerd. Omdat component de standaardinstellingen en escapedFULLESCAPEDstandaardinstellingen zijn, zijn de retourindelingen:
    • Voor tabellen: 'TableName'.
    • Voor kolommen: 'TableName'[ColumnName].
    • Voor metingen: 'TableName'[MeasureName].
    • Voor agenda's: 'CalendarName'.
    • Voor variatiekolommen: 'TableName'[ColumnName].[VariationName].
  • Variabelen en dynamische expressies worden niet ondersteund als argumenten voor NAMEOF.
  • Deze functie wordt niet ondersteund voor gebruik in de DirectQuery-modus wanneer deze wordt gebruikt in regels voor beveiliging op rijniveau (berekende kolommen of beveiliging op rijniveau).

Gedrag van onderdelen per invoertype

In de volgende tabel ziet u het resultaat van elke component waarde voor verschillende invoertypen, met behulp van de standaardmodus ESCAPED . 'Fout' geeft aan dat de combinatie een fout retourneert.

Invoertype TABLE COLUMN MEASURE CALENDAR FULL SELF PARENT
Kolom- Sales[Sales Amount] 'Sales' [Sales Amount] Fout Fout 'Sales'[Sales Amount] [Sales Amount] 'Sales'
Tabel- Sales 'Sales' Fout Fout Fout 'Sales' 'Sales' Fout
Maatregel- Sales[m1] 'Sales' Fout [m1] Fout 'Sales'[m1] [m1] 'Sales'
Agenda- myCalendar Fout Fout Fout 'myCalendar' 'myCalendar' 'myCalendar' Fout

Gedrag met escape-teken

De escaped parameter bepaalt hoe de naam die door de component stap wordt geproduceerd, wordt opgemaakt. In de volgende tabel wordt de volledig escape-naam gebruikt als verwijzing en wordt de uitvoer voor elke escaped waarde weergegeven.

Volledig escape-naam ESCAPED UNESCAPED MINIMALLYESCAPED
'Sales' 'Sales' Sales Sales
'Sales'[Sales Amount] 'Sales'[Sales Amount] Fout Sales[Sales Amount]
'Sales'[m1] 'Sales'[m1] Fout Sales[m1]
[Amount] [Amount] Amount Amount
'Sales Region' 'Sales Region' Sales Region 'Sales Region'
'Sales Region'[Column] 'Sales Region'[Column] Fout 'Sales Region'[Column]
[Order Quantity] [Order Quantity] Order Quantity [Order Quantity]

Opmerking

UNESCAPED retourneert een fout voor volledig gekwalificeerde namen (namen die zowel een tabel- als kolom-/metingonderdeel bevatten), omdat het resultaat dubbelzinnig zou zijn zonder scheidingstekens.

Speciale regels voor escape-tekens

De volgende escaperegels zijn van toepassing binnen DAX naamscheidingstekens:

  • Tabelnamen (gescheiden door één aanhalingsteken): Een letterlijke enkele aanhalingsteken (') in een tabelnaam wordt escaped als twee enkele aanhalingstekens ('').
  • Kolom- en metingnamen (scheidingstekens tussen haakjes): Een letterlijke haakje sluiten (]) in een kolom- of metingnaam wordt als escape-teken weergegeven ]]. Voor een haakje openen ([) is geen escape vereist.
Volledig escape-naam ESCAPED UNESCAPED MINIMALLYESCAPED
'Ta''''ble' (tabel met ' in naam) 'Ta''''ble' Ta''ble Ta''ble
[colu[]]mn] (kolom met ] in naam) [colu[]]mn] colu[]mn [colu[]]mn]

Voorbeeld 1

De volgende DAX query retourneert de volledig gekwalificeerde naam van een kolom:

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

Retouren

[waarde]
'Verkoop'[Orderhoeveelheid]

Voorbeeld 2

De volgende DAX query retourneert de volledig gekwalificeerde naam van een meting:

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

EVALUATE
{ NAMEOF ( [Projected Sales] ) }

Retouren

[waarde]
'Verkoop'[Verwachte verkoop]

Voorbeeld 3

De volgende DAX query gebruikt de component parameter om alleen de tabelnaam op te halen uit een kolomreferentie:

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

Retouren

[waarde]
'Verkoop'

Voorbeeld 4

De volgende DAX query retourneert een niet-gescapede tabelnaam:

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

Retouren

[waarde]
Sales

Voorbeeld 5

In de volgende DAX query worden de component en escaped parameters gebruikt om de minimaal escape-bovenliggende tabelnaam van een kolom te retourneren:

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

Retouren

[waarde]
Sales