Propriedades intrínsecas do membro (MDX)
Como um provedor que é compatível com a seção OLAP da especificação OLE DB com data de março de 1999 (2.6), o Microsoft SQL Server Analysis Services dá suporte a propriedades intrínsecas do membro listadas neste tópico.
Observação |
---|
Provedores diferentes do SQL Server Analysis Services podem dar suporte a outras propriedades intrínsecas do membro. Para obter mais informações sobre as propriedades intrínsecas do membro que têm suporte por outros provedores, consulte a documentação fornecida com esses provedores. |
Tipos de propriedades do membro
As propriedades intrínsecas do membro suportadas pelo SQL Server Analysis Services são de dois tipos:
Propriedades do membro sensíveis ao contexto
Essas propriedades do membro devem ser usadas no contexto de uma dimensão ou nível específico, e fornecem valores para cada membro da dimensão ou nível especificado.Propriedades do membro não sensíveis ao contexto
Essas propriedades do membro não podem ser usadas no contexto de uma dimensão ou nível específico, e fornecem valores para todos os membros em um eixo.
Independentemente da propriedade intrínseca do membro ser sensível ou não ao contexto, as regras de uso a seguir são aplicáveis:
Você pode especificar somente as propriedades intrínsecas do membro relacionadas a membros de dimensão projetados no eixo.
Você pode combinar solicitações de propriedades do membro sensíveis ao contexto na mesma consulta com propriedades intrínsecas do membro não sensíveis ao contexto.
Você usa a palavra-chave PROPERTIES para consultar as propriedades.
As seções a seguir descrevem as duas propriedades intrínsecas do membro sensíveis e não sensíveis ao contexto disponíveis no SQL Server Analysis Services, e como usar a palavra-chave PROPERTIES com cada tipo de propriedade.
Propriedades do membro sensíveis ao contexto
Todos os membros de dimensão e membros de nível têm suporte a uma lista de propriedades intrínsecas do membro que são sensíveis ao contexto. A tabela a seguir lista essas propriedades sensíveis ao contexto.
Propriedade |
Descrição |
---|---|
ID |
A ID mantida internamente para o membro. |
Key |
O valor armazenado na coluna MEMBER_KEY do conjunto de linhas de esquema MEMBERS para o membro. |
Name |
O nome do membro. |
Sintaxe PROPERTIES para propriedades sensíveis ao contexto
Você usa essas propriedades do 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 dimensão do membro, você precede o nome da propriedade com o 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 membro de nível, você pode preceder o nome da propriedade somente com o nome do nível ou, para especificação adicional, 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ê gostaria de retornar todos os nomes de cada membro referenciado na dimensão [Sales]. Para retornar esses nomes, você usaria a seguinte instrução em uma consulta MDX (Multidimensional Expressions):
DIMENSION PROPERTIES [Sales].Name
Propriedades do membro não sensíveis ao contexto
Todos os membros dão suporte a uma lista de propriedades intrínsecas do membro 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 sensíveis ao contexto suportadas pelo SQL Server Analysis Services.
Observação |
---|
Colunas no conjunto de linhas de esquema MEMBERS suportam as propriedades intrínsecas do membro listadas na seguinte tabela. Para obter mais informações sobre o conjunto de linhas de esquema MEMBERS, consulte Conjunto de linhas MDSCHEMA_MEMBERS. |
Propriedade |
Descrição |
---|---|
ACTION_TYPE |
Um bitmask que indica os tipos de ações no membro. Essa propriedade pode ter um dos seguintes valores:
|
CAPTION |
Igual a MEMBER_CAPTION. |
CHILDREN_CARDINALITY |
O número de filhos que o membro tem. Isso pode ser uma estimativa, portanto, você não deve confiar nisso como sendo a contagem exata. Provedores devem retornar a melhor estimativa possível. |
CUBE_NAME |
O nome do cubo ao qual este membro pertence. |
CUSTOM_ROLLUP |
A expressão de membro personalizado. |
CUSTOM_ROLLUP_PROPERTIES |
As propriedades de membro personalizado. |
DESCRIPTION |
Uma descrição legível do membro. |
DIMENSION_UNIQUE_NAME |
O nome exclusivo da dimensão à qual esse membro pertence. Para provedores que geram nomes exclusivos por qualificação, cada componente desse nome é delimitado. |
HIERARCHY_UNIQUE_NAME |
O nome exclusivo da hierarquia. Se o membro pertencer a mais de uma hierarquia, haverá uma fila para cada hierarquia à qual o membro pertence. Para provedores que geram nomes exclusivos por qualificação, cada componente desse nome é delimitado. |
IS_DATAMEMBER |
Um booleano que indica se o membro é ou não um membro de dados. |
KEYx |
A chave para o membro, onde x é o valor ordinal com base em zero da chave. KEY0 está disponível para chaves compostas e não compostas, e KEY1, KEY2 etc. somente estão disponíveis para chaves compostas. Key0, Key1, Key2 etc. formam coletivamente a chave composta. |
LCIDx |
A conversão da legenda do membro no valor hexadecimal da identificação de localidade, onde x é o valor decimal da identificação de localidade (por exemplo, LCID1009 como Inglês - Canadá). Isso somente estará disponível se a conversão tiver a coluna da legenda associada à fonte de dados. |
LEVEL_NUMBER |
A distância do membro da raiz da hierarquia. O nível raiz é zero. |
LEVEL_UNIQUE_NAME |
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 associada ao membro. A legenda serve basicamente para fins de exibição. Se uma legenda não existir, a consulta retorna MEMBER_NAME. |
MEMBER_KEY |
O valor da chave de 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 a propriedade MEMBER_KEY é nula para chaves compostas. |
MEMBER_NAME |
O nome do membro. |
MEMBER_TYPE |
O tipo do membro. Essa propriedade pode ter um dos seguintes valores:
MDMEMBER_TYPE_FORMULA tem prioridade sobre MDMEMBER_TYPE_MEASURE. Portanto, se houver um membro de fórmula (calculado) na dimensão Medidas, a propriedade MEMBER_TYPE para o membro calculado será MDMEMBER_TYPE_FORMULA. |
MEMBER_UNIQUE_NAME |
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 do nível raiz da hierarquia. O nível raiz é zero. |
PARENT_UNIQUE_NAME |
O nome exclusivo do pai do membro. NULL retorna 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 do membro. |
UNARY_OPERATOR |
O operador unário do membro. |
Sintaxe PROPERTIES para propriedades não sensíveis ao contexto
Use a sintaxe a seguir para especificar uma propriedade intrínseca, não sensível ao contexto do membro usando a palavra-chave PROPERTIES:
DIMENSION PROPERTIES Property
Note que esta sintaxe não permite qualificar a propriedade por uma dimensão ou nível. A propriedade não pode ser qualificada porque uma propriedade intrínseca do membro 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 intrínseca do membro DESCRIPTION teria a seguinte sintaxe:
DIMENSION PROPERTIES DESCRIPTION
Esta 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 um nível, como em Dimensão.DESCRIPTION ou Nível.DESCRIPTION, não seria possível validar a instrução.
Exemplo
O exemplo a seguir retorna a contagem dos revendedores cujas vendas caíram ao longo do período anterior, com base em valores de Estado do membro, selecionados pelo usuário, avaliados usando a função Aggregate. As funções Hierarquize (MDX) e DrilldownLevel (MDX) são usadas para retornar valores por queda de vendas por categorias de produto na dimensão Produto. A função Properties (MDX) é usada para retornar o nome exclusivo de membros pai retornados no eixo da coluna.
WITH MEMBER Measures.[Declining Reseller Sales] AS
Count
(Filter
(Existing
(Reseller.Reseller.Reseller)
, [Measures].[Reseller Sales Amount] <
(
[Measures].[Reseller Sales Amount]
,[Date].Calendar.PrevMember
)
)
)
MEMBER [Geography].[State-Province].x AS
Aggregate
(
{[Geography].[State-Province].&[WA]&[US]
, [Geography].[State-Province].&[OR]&[US]
}
)
SELECT NON EMPTY HIERARCHIZE
(AddCalculatedMembers
(
{DrillDownLevel
({[Product].[All Products]})
}
)
) DIMENSION PROPERTIES PARENT_UNIQUE_NAME ON COLUMNS
FROM [Adventure Works]
WHERE
(
[Geography].[State-Province].x
, [Date].[Calendar].[Calendar Quarter].&[2003]&[4]
,[Measures].[Declining Reseller Sales]
)
O exemplo a seguir retorna a legenda convertida para o membro de 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]