NAMEOF

aplica-se a:coluna calculadatabela calculadamedidacálculo visual

Retorna o nome de uma tabela, coluna, medida ou calendário como uma cadeia de caracteres de texto. Parâmetros opcionais controlam qual componente do nome é retornado e como o resultado é escapado.

Sintaxe

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

Parâmetros

Prazo Definition
object A tabela, a coluna, a medida ou o calendário cujo nome você deseja recuperar.
component (Opcional) Uma enumeração que especifica qual parte do nome qualificado retornar. Se omitido, o padrão será FULL. Consulte os valores do componente.
escaped (Opcional) Uma enumeração que especifica como o nome retornado é escapado. Se omitido, o padrão será ESCAPED. Consulte valores escapados.

Valores de componente

O parâmetro component aceita os seguintes valores:

Valor Descrição
TABLE Retorna o nome da tabela. Retornará um erro se o objeto não estiver associado a uma tabela (por exemplo, um calendário).
COLUMN Retorna o nome da coluna. Retornará um erro se o objeto não for uma coluna.
MEASURE Retorna o nome da medida. Retorna um erro se o objeto não for uma medida.
CALENDAR Retorna o nome do calendário. Retornará um erro se o objeto não for um calendário.
FULL (Padrão) Retorna o nome totalmente qualificado do objeto.
SELF Retorna o nome do objeto em si: o nome da coluna ou da medida para colunas e medidas ou o nome da tabela/calendário para tabelas e calendários.
PARENT Retorna o nome da tabela pai para colunas e medidas. Retorna um erro para tabelas e calendários.

Valores de escape

O parâmetro escaped aceita os seguintes valores:

Valor Descrição
ESCAPED (Padrão) Retorna o nome com escape completo DAX : nomes de tabela encapsulados em aspas simples, nomes de coluna e medida encapsulados em colchetes.
UNESCAPED Retorna o nome bruto sem nenhum delimitador ou caracteres de escape. Retorna um erro para nomes totalmente qualificados que contêm um componente pai e filho.
MINIMALLYESCAPED Retorna o nome com escape aplicado somente quando o nome o requer. Nomes que contêm apenas letras simples, dígitos e sublinhados são retornados sem delimitadores. Os nomes que contêm espaços ou caracteres especiais são retornados com escape.

Valor de retorno

Uma cadeia de caracteres de texto com o nome solicitado, formatada com base no componente e nos parâmetros de escape.

Observações

  • Quando chamado apenas com o object argumento, NAMEOF se comporta da mesma forma que nas versões anteriores, retornando um nome totalmente qualificado e com escape. Como component o padrão FULLescaped e o padrão são ESCAPED, os formatos de retorno são:
    • Para tabelas: 'TableName'.
    • Para colunas: 'TableName'[ColumnName].
    • Para medidas: 'TableName'[MeasureName].
    • Para calendários: 'CalendarName'.
    • Para colunas de variação: 'TableName'[ColumnName].[VariationName].
  • Não há suporte para variáveis e expressões dinâmicas como argumentos para NAMEOF.
  • Essa função não tem suporte para uso no modo DirectQuery quando usada em colunas calculadas ou regras de RLS (segurança em nível de linha).

Comportamento do componente por tipo de entrada

A tabela a seguir mostra o resultado de cada component valor para tipos de entrada diferentes, usando o modo padrão ESCAPED . "Erro" indica que a combinação retorna um erro.

Tipo de entrada TABLE COLUMN MEASURE CALENDAR FULL SELF PARENT
Coluna- Sales[Sales Amount] 'Sales' [Sales Amount] Erro Erro 'Sales'[Sales Amount] [Sales Amount] 'Sales'
Tabela- Sales 'Sales' Erro Erro Erro 'Sales' 'Sales' Erro
Medida- Sales[m1] 'Sales' Erro [m1] Erro 'Sales'[m1] [m1] 'Sales'
Calendário- myCalendar Erro Erro Erro 'myCalendar' 'myCalendar' 'myCalendar' Erro

Comportamento de escape

O escaped parâmetro controla como o nome produzido pela component etapa é formatado. A tabela a seguir usa o nome totalmente escapado como referência e mostra a saída para cada escaped valor.

Nome totalmente escapado ESCAPED UNESCAPED MINIMALLYESCAPED
'Sales' 'Sales' Sales Sales
'Sales'[Sales Amount] 'Sales'[Sales Amount] Erro Sales[Sales Amount]
'Sales'[m1] 'Sales'[m1] Erro Sales[m1]
[Amount] [Amount] Amount Amount
'Sales Region' 'Sales Region' Sales Region 'Sales Region'
'Sales Region'[Column] 'Sales Region'[Column] Erro 'Sales Region'[Column]
[Order Quantity] [Order Quantity] Order Quantity [Order Quantity]

Observação

UNESCAPED retorna um erro para nomes totalmente qualificados (nomes que incluem um componente de tabela e coluna/medida), porque o resultado seria ambíguo sem delimitadores.

Regras de escape de caracteres especiais

As seguintes regras de escape se aplicam aos DAX delimitadores de nome:

  • Nomes de tabela (cotação única delimitada): Uma aspa única literal (') em um nome de tabela é escapada como duas aspas simples ('').
  • Nomes de coluna e medida (colchete delimitado): Um colchete de fechamento literal (]) em um nome de coluna ou medida é escapado como ]]. Um colchete de abertura ([) não requer escape.
Nome totalmente escapado ESCAPED UNESCAPED MINIMALLYESCAPED
'Ta''''ble' (tabela com ' nome) 'Ta''''ble' Ta''ble Ta''ble
[colu[]]mn] (coluna com ] nome) [colu[]]mn] colu[]mn [colu[]]mn]

Exemplo 1

A consulta a seguir DAX retorna o nome totalmente qualificado de uma coluna:

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

Retorna:

[Valor]
'Sales'[Quantidade de Pedidos]

Exemplo 2

A consulta a seguir DAX retorna o nome totalmente qualificado de uma medida:

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

EVALUATE
{ NAMEOF ( [Projected Sales] ) }

Retorna:

[Valor]
'Sales'[Projected Sales]

Exemplo 3

A consulta a seguir DAX usa o component parâmetro para extrair apenas o nome da tabela de uma referência de coluna:

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

Retorna:

[Valor]
'Vendas'

Exemplo 4

A consulta a seguir DAX retorna um nome de tabela sem escape:

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

Retorna:

[Valor]
Sales

Exemplo 5

A consulta a seguir DAX usa os parâmetros e escaped os component parâmetros para retornar o nome da tabela pai com escape mínimo de uma coluna:

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

Retorna:

[Valor]
Sales
  • Funções de informações de