Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Aplica-se a:
SQL Server Analysis Services
Azure Analysis Services
Fabric/Power BI Premium
O SQL Server Analysis Services expõe propriedades intrínsecas em membros de dimensão que você pode incluir em uma consulta para retornar dados ou metadados adicionais para uso em um aplicativo personalizado ou para ajudar na investigação ou construção do modelo. Se você estiver usando as ferramentas de cliente do SQL Server, poderá exibir propriedades intrínsecas no SSMS (SQL Server Management Studio).
As propriedades intrínsecas incluem ID, KEY, KEYx e NAME, que são propriedades expostas por cada membro, em qualquer nível. Você também pode retornar informações posicionais, como LEVEL_NUMBER ou PARENT_UNIQUE_NAME, entre outros.
Dependendo de como você constrói a consulta e no aplicativo cliente que você está usando para executar consultas, as propriedades do membro podem ou não estar visíveis no conjunto de resultados. Se você estiver usando o SQL Server Management Studio para testar ou executar consultas, poderá clicar duas vezes em um membro no conjunto de resultados para abrir a caixa de diálogo Propriedades do Membro, mostrando os valores de cada propriedade de membro intrínseco.
Para obter uma introdução ao uso e exibição de propriedades de membro de dimensão, consulte Exibindo propriedades de membro do SSAS em uma janela de consulta MDX no SSMS.
Observação
Como um provedor compatível com a seção OLAP da especificação OLE DB datada de março de 1999 (2.6), o Microsoft SQL Server Analysis Services dá suporte às propriedades de membro intrínsecas listadas neste tópico.
Provedores diferentes do SQL ServerSQL Server Analysis Services podem dar suporte a propriedades de membro intrínsecas adicionais. Para obter mais informações sobre as propriedades de membro intrínsecas compatíveis com outros provedores, consulte a documentação que acompanha esses provedores.
Tipos de propriedades de membro
As propriedades de membro intrínsecas compatíveis com o SQL Server SQL Server Analysis Services são de dois tipos:
Propriedades de membros sensíveis ao contexto
Essas propriedades de membro devem ser usadas no contexto de uma hierarquia ou nível específico e fornecer valores para cada membro da dimensão ou nível especificado.
Observe como o exemplo a seguir inclui o caminho para a propriedade KEY : MEMBER [Measures].[Parent Member Key] AS [Product].[Product Categories].CurrentMember.Parent.PROPERTIES("KEY").
Propriedades de membros não sensíveis ao contexto
Essas propriedades de membro não podem ser usadas no contexto de uma dimensão ou nível específico e retornam valores para todos os membros em um eixo.
Propriedades autônomas sem diferenciação de contexto não incluem informações de caminho. Observe como não há nenhuma dimensão ou nível especificado para PARENT_UNIQUE_NAME no exemplo a seguir: DIMENSION PROPERTIES PARENT_UNIQUE_NAME ON COLUMNS
Independentemente de a propriedade de membro intrínseco ser sensível ao contexto ou não, as seguintes regras de uso se aplicam:
Você pode especificar apenas as propriedades de membro intrínsecas relacionadas aos membros da dimensão projetados no eixo.
Você pode misturar solicitações de propriedades de membros sensíveis ao contexto na mesma consulta com propriedades de membro intrínsecas não contextuais.
Use a palavra-chave PROPERTIES para consultar as propriedades.
As seções a seguir descrevem as várias propriedades de membro intrínsecas sensíveis ao contexto e não contextuais disponíveis no SQL Server SQL Server Analysis Services e como usar a palavra-chave PROPERTIES com cada tipo de propriedade.
Propriedades do membro sensível ao contexto
Todos os membros de dimensão e membros de nível suportam uma lista de propriedades de membro intrínsecas que são sensíveis ao contexto. A tabela a seguir lista essas propriedades sensíveis ao contexto.
| Propriedade | Descrição |
|---|---|
| ID | O ID mantido internamente para o membro. |
| Chave | O valor da chave do membro no tipo de dados original. MEMBER_KEY é para compatibilidade com versões anteriores. MEMBER_KEY tem o mesmo valor que KEY0 para chaves não compostas e MEMBER_KEY propriedade é nula para chaves compostas. |
| KEYx | A chave para o membro, em que x é o ordinal baseado em zero da chave. KEY0 está disponível para chaves compostas e não compostas, mas usadas principalmente para chaves compostas. Para chaves compostas, KEY0, KEY1, KEY2 e assim por diante, forma coletivamente a chave composta. Você pode usar cada um de forma independente em uma consulta para retornar essa parte da chave composta. Por exemplo, especificar KEY0 retorna a primeira parte da chave composta, especificando KEY1 retorna a próxima parte da chave composta e assim por diante. Se a chave não for composta, KEY0 será equivalente a Key. Observe que KEYx pode ser usado no contexto, bem como sem contexto. Por esse motivo, ele aparece em ambas as listas. |
| Nome | O nome do membro. |
Sintaxe PROPERTIES para propriedades sensíveis ao contexto
Você usa essas propriedades de membro no contexto de uma dimensão ou nível específico e fornece valores para cada membro da dimensão ou nível especificado.
Para propriedades de membros de dimensão, o nome da propriedade deve ser precedido pelo nome da dimensão à qual a propriedade se aplica. O exemplo a seguir mostra a sintaxe apropriada:
DIMENSION PROPERTIES Dimension.Property_name
Para uma propriedade de nível de membro, você pode preceder o nome da propriedade apenas com o nome do nível ou, para uma especificação adicional, com o nome da dimensão e do nível. O exemplo a seguir mostra a sintaxe apropriada:
DIMENSION PROPERTIES [Dimension.]Level.Property_name
Para ilustrar, você deseja retornar todos os nomes de cada membro referenciado na [Sales] dimensão. Para retornar esses nomes, você usaria a seguinte instrução em uma consulta MDX (Expressões Multidimensionais):
DIMENSION PROPERTIES [Sales].Name
Propriedades de membros não sensíveis ao contexto
Todos os membros dão suporte a uma lista de propriedades de membro intrínsecas que são as mesmas, independentemente do contexto. Essas propriedades fornecem informações adicionais que podem ser usadas por aplicativos para aprimorar a experiência do usuário.
A tabela a seguir lista as propriedades intrínsecas não contextuais compatíveis com o SQL Server SQL Server Analysis Services.
Observação
As colunas no conjunto de linhas de esquema MEMBERS dão suporte às propriedades de membro intrínsecas listadas na tabela a seguir. Para obter mais informações sobre o conjunto de linhas de esquema MEMBERS, consulte o conjunto de linhas MDSCHEMA_MEMBERS.
| Propriedade | Descrição |
|---|---|
| CATALOG_NAME | O nome do cubo ao qual este membro pertence. |
| CHILDREN_CARDINALITY | O número de filhos que o membro tem. Isso pode ser uma estimativa, portanto, você não deve confiar nisso para ser a contagem exata. Os provedores devem retornar a melhor estimativa possível. |
| CUSTOM_ROLLUP | A expressão de membro personalizada. |
| PROPRIEDADES_PERSONALIZADAS_DE_AGRUPAMENTO | As propriedades de membro personalizadas. |
| DESCRIÇÃO | Uma descrição legível por humanos do membro. |
| DIMENSION_UNIQUE_NAME | O nome exclusivo da dimensão à qual este membro pertence. Para provedores que geram nomes exclusivos por qualificação, cada componente desse nome é delimitado. |
| NOME_UNICO_HIERARQUIA | O nome exclusivo da hierarquia. Se o membro pertencer a mais de uma hierarquia, haverá uma linha para cada hierarquia à qual o membro pertence. Para provedores que geram nomes exclusivos por qualificação, cada componente desse nome é delimitado. |
| IS_DATAMEMBER | Um booliano que indica se o membro é um membro de dados. |
| IS_PLACEHOLDERMEMBER | Um booleano que indica se o membro é um espaço reservado. |
| KEYx | A chave para o membro, em que x é o ordinal baseado em zero da chave. KEY0 está disponível para chaves compostas e não compostas. Se a chave não for composta, KEY0 será equivalente a Key. Para chaves compostas, KEY0, KEY1, KEY2 e assim por diante, forma coletivamente a chave composta. Você pode referenciar cada um de forma independente em uma consulta para retornar essa parte da chave composta. Por exemplo, especificar KEY0 retorna a primeira parte da chave composta, especificando KEY1 retorna a próxima parte da chave composta e assim por diante. Observe que KEYx pode ser usado no contexto, bem como sem contexto. Por esse motivo, ele aparece em ambas as listas. |
| LCIDx | A tradução da legenda do membro no valor hexadecimal do ID da localidade, onde x é o valor decimal do ID da localidade (por exemplo, LCID1009 como English-Canada). Isso só estará disponível se a tradução tiver a coluna de legenda associada à fonte de dados. |
| LEVEL_NUMBER | A distância do membro da raiz da hierarquia. O nível raiz é zero. |
| NOME_ÚNICO_NÍVEL | O nome exclusivo do nível ao qual o membro pertence. Para provedores que geram nomes exclusivos por qualificação, cada componente desse nome é delimitado. |
| MEMBER_CAPTION | Um rótulo ou legenda associado ao membro. A legenda é principalmente para fins de exibição. Se uma legenda não existir, a consulta retornará MEMBER_NAME. |
| MEMBER_KEY | O valor da chave do membro no tipo de dados original. MEMBER_KEY é para compatibilidade com versões anteriores. MEMBER_KEY tem o mesmo valor que KEY0 para chaves não compostas e MEMBER_KEY propriedade é nula para chaves compostas. |
| MEMBER_NAME | O nome do membro. |
| MEMBER_TYPE | O tipo do membro. Essa propriedade pode ter um dos seguintes valores: MDMEMBRO_TIPO_REGULAR MDMEMBER_TYPE_ALL MDMEMBER_TYPE_FORMULA MDMEMBER_TYPE_MEASURE MDMEMBER_TYPE_UNKNOWN Observação: MDMEMBER_TYPE_FORMULA tem precedência sobre MDMEMBER_TYPE_MEASURE. Portanto, se houver um membro de fórmula (calculado) na dimensão Medidas, a propriedade MEMBER_TYPE do membro calculado será MDMEMBER_TYPE_FORMULA. |
| NOME_UNICO_MEMBRO | O nome exclusivo do membro. Para provedores que geram nomes exclusivos por qualificação, cada componente desse nome é delimitado. |
| MEMBER_VALUE | O valor do membro no tipo original. |
| PARENT_COUNT | O número de pais que este membro tem. |
| PARENT_LEVEL | A distância do pai do membro em relação ao nível raiz da hierarquia. O nível raiz é zero. |
| NOME_UNICO_DO_PAI | O nome exclusivo do pai do membro. NULL é retornado para qualquer membro no nível raiz. Para provedores que geram nomes exclusivos por qualificação, cada componente desse nome é delimitado. |
| SKIPPED_LEVELS | O número de níveis ignorados para o membro. |
| UNARY_OPERATOR | O operador unário para o membro. |
| UNIQUE_NAME | O nome totalmente qualificado do membro, neste formato: [dimensão]. [nível]. [key6.] |
Sintaxe PROPERTIES para propriedades não sensíveis ao contexto
Use a seguinte sintaxe para especificar uma propriedade de membro confidencial intrínseca e não contextual usando a palavra-chave PROPERTIES :
DIMENSION PROPERTIES Property
Observe que essa sintaxe não permite que a propriedade seja qualificada por uma dimensão ou nível. A propriedade não pode ser qualificada porque uma propriedade de membro intrínseco que não é sensível ao contexto se aplica a todos os membros de um eixo.
Por exemplo, uma instrução MDX que especifica a propriedade de membro intrínseco DESCRIPTION teria a seguinte sintaxe:
DIMENSION PROPERTIES DESCRIPTION
Essa instrução retorna a descrição de cada membro na dimensão do eixo. Se você tentasse qualificar a propriedade com uma dimensão ou nível, como em Dimensão.DESCRIPTION ou Nível.DESCRIPTION, a instrução não validaria.
Exemplo
Os exemplos a seguir mostram consultas MDX que retornam propriedades intrínsecas.
Exemplo 1: Usar propriedades intrínsecas sensíveis ao contexto na consulta
O exemplo a seguir retorna ID do pai, chave e nome para cada categoria de produtos. Note como as propriedades são apresentadas em medidas. Isso permite exibir as propriedades em um conjunto de células ao executar a consulta, em vez da caixa de diálogo Propriedades do Membro no SSMS. Você pode executar consultas como esta para recuperar metadados de membro de um cubo que já está implementado.
WITH
MEMBER [Measures].[Parent Member ID] AS
[Product].[Product Categories].CurrentMember.Parent.PROPERTIES("ID")
MEMBER [Measures].[Parent Member Key] AS
[Product].[Product Categories].CurrentMember.Parent.PROPERTIES("KEY")
MEMBER [Measures].[Parent Member Name] AS
[Product].[Product Categories].CurrentMember.Parent.PROPERTIES("Name")
SELECT
{[Measures].[Parent Member ID], [Measures].[Parent Member Key], [Measures].[Parent Member Name] } on COLUMNS,
[Product].[Product Categories].AllMembers on ROWS
FROM [Adventure Works]
Exemplo 2: propriedades intrínsecas que não diferenciam contexto
O exemplo a seguir é a lista completa de propriedades intrínsecas não sensíveis ao contexto. Depois de executar a consulta no SSMS, clique em membros individuais para exibir propriedades na caixa de diálogo Propriedades do Membro.
SELECT [Measures].[Sales Amount Quota] on COLUMNS,
[Employee].[Employees].members
DIMENSION PROPERTIES
CATALOG_NAME ,
CHILDREN_CARDINALITY ,
CUSTOM_ROLLUP ,
CUSTOM_ROLLUP_PROPERTIES ,
DESCRIPTION ,
DIMENSION_UNIQUE_NAME ,
HIERARCHY_UNIQUE_NAME ,
IS_DATAMEMBER ,
IS_PLACEHOLDERMEMBER ,
KEY0 ,
LCID ,
LEVEL_NUMBER ,
LEVEL_UNIQUE_NAME ,
MEMBER_CAPTION ,
MEMBER_KEY ,
MEMBER_NAME ,
MEMBER_TYPE ,
MEMBER_UNIQUE_NAME ,
MEMBER_VALUE ,
PARENT_COUNT ,
PARENT_LEVEL ,
PARENT_UNIQUE_NAME ,
SKIPPED_LEVELS ,
UNARY_OPERATOR ,
UNIQUE_NAME
ON ROWS
FROM [Adventure Works]
WHERE [Employee].[Employee Department].[Department].&[Sales]
Exemplo 3: Retornar propriedades de membro como dados em um conjunto de resultados
O exemplo a seguir retorna a legenda traduzida para o membro da categoria de produto na dimensão Produto no cubo Adventure Works para localidades especificadas.
WITH
MEMBER Measures.CategoryCaption AS Product.Category.CurrentMember.MEMBER_CAPTION
MEMBER Measures.SpanishCategoryCaption AS Product.Category.CurrentMember.Properties("LCID3082")
MEMBER Measures.FrenchCategoryCaption AS Product.Category.CurrentMember.Properties("LCID1036")
SELECT
{ Measures.CategoryCaption, Measures.SpanishCategoryCaption, Measures.FrenchCategoryCaption } ON 0
,[Product].[Category].MEMBERS ON 1
FROM [Adventure Works]
Consulte Também
PeriodsToDate (MDX)
Filhos (MDX)
Hierarquizar (MDX)
Contagem (Conjunto) (MDX)
Filtro (MDX)
AddCalculatedMembers (MDX)
DrilldownLevel (MDX)
Propriedades (MDX)
PrevMember (MDX)
Usando propriedades de membro (MDX)
MDX (Referência de Função MDX)