Definição de Dados MDX - CRIAR MEMBRO

Cria um membro calculado.

Syntax

  
CREATE [ SESSION ] [HIDDEN] [ CALCULATED ] MEMBER CURRENTCUBE | Cube_Name.Member_Name   
   AS MDX_Expression  
      [,Property_Name = Property_Value, ...n]  
......[,SCOPE_ISOLATION = CUBE]  

Arguments

Cube_Name
Uma expressão de string válida que fornece o nome do cubo onde o membro será criado.

Member_Name
Uma expressão de string válida que fornece um nome de membro. Especifique um nome totalmente qualificado para criar um membro dentro de uma dimensão diferente da dimensão Medidas. Se você não fornecer um nome de membro totalmente qualificado, o membro será criado na dimensão Medidas.

MDX_Expression
Uma expressão válida de Expressões Multidimensionais (MDX).

Property_Name
Uma string válida que fornece o nome de uma propriedade de membro calculada.

Property_Value
Uma expressão escalar válida que define o valor da propriedade do membro calculada.

Remarks

A instrução CREATE MEMBER define membros calculados que estão disponíveis durante toda a sessão e, portanto, podem ser usados em múltiplas consultas durante a sessão. Para mais informações, veja Criação de Membros Calculados Session-Scoped (MDX).

Você também pode definir um membro calculado para uso por uma única consulta. Para definir um membro calculado que é limitado a uma única consulta, você usa a cláusula WITH na instrução SELECT. Para mais informações, veja Criação de Membros Calculados Query-Scoped (MDX).

Property_Name pode se referir tanto a propriedades padrão quanto a propriedades calculadas dos membros. Propriedades padrão dos membros são listadas mais adiante neste tópico. Membros calculados criados com CREATE MEMBER sem valor SESSION têm escopo de sessão. Além disso, cadeias dentro das definições calculadas dos membros são delimitadas por aspas duplas. Isso é diferente do método definido pelo OLE DB, que especifica que as cadeias devem ser delimitadas por aspas simples.

Especificar um cubo diferente do que está conectado atualmente causa um erro. Portanto, você deve usar CURRENTCUBE no lugar do nome do cubo para indicar o cubo atual.

Para mais informações sobre propriedades dos membros definidas pelo OLE DB, consulte a documentação do OLE DB.

Scope

Um membro calculado pode ocorrer dentro de um dos escopos listados na tabela a seguir.

Escopo da consulta
A visibilidade e a vida útil do membro calculado são limitadas à consulta. O membro calculado é definido em uma consulta individual. O escopo da consulta sobrepõe o escopo da sessão. Para mais informações, veja Criação de Membros Calculados Query-Scoped (MDX).

Escopo da sessão
A visibilidade e a duração do membro calculado são limitadas à sessão em que ele é criado. (A duração é menor que a duração da sessão se uma extração DROP MEMBER for emitida no membro calculado.) A instrução CREATE MEMBER cria um membro calculado com escopo de sessão.

Isolamento de Escopo

Quando um script de Expressões Multidimensionais (MDX) em cubo contém membros calculados, por padrão os membros calculados são resolvidos antes que quaisquer cálculos com escopo de sessão sejam resolvidos e antes que quaisquer cálculos definidos por consulta sejam resolvidos.

Note

Em certos cenários, a função Aggregate (MDX) e a função VisualTotals (MDX) não apresentam esse comportamento.

O comportamento permite que aplicações clientes genéricas trabalhem com cubos que contêm cálculos complexos, sem precisar levar em conta a implementação específica dos cálculos. No entanto, em certos cenários, você pode querer executar membros calculados por sessão ou escopo de consulta antes de certos cálculos no cubo, e nem a função Aggregate nem a função VisualTotals são aplicáveis. Para isso, use a propriedade de cálculo SCOPE_ISOLATION.

Example

O script a seguir é um exemplo de cenário em que a propriedade de cálculo SCOPE_ISOLATION é necessária para produzir o resultado correto.

Script MDX da Cube:

CREATE MEMBER CURRENTCUBE.Measures.ProfitRatio AS 'Measures.[Store Sales]/Measures.[Store Cost]', SOLVE_ORDER = 10  

Consulta MDX:

WITH MEMBER [Customer].[Customers].[USA]. USAWithoutWA AS  
[Customer].[Customers].[Country].&[USA] - [Customer].[Customers].[State Province.&[WA], SOLVE_ORDER=5  
SELECT {USAWithoutWA} ON 0 FROM SALES  
WHERE ProfitRatio  

O resultado desejado da consulta anterior é a proporção de vendas dos EUA sem WA e o custo de loja dos EUA sem WA. A consulta anterior não retorna o resultado desejado; ela retorna a razão entre EUA menos a razão de WA, o que é um resultado sem sentido. Para alcançar o resultado desejado, você pode usar a propriedade de cálculo SCOPE_ISOLATION.

Consulta MDX usando a propriedade de cálculo SCOPE_ISOLATION:

WITH MEMBER [Customer].[Customers].[USA]. USAWithoutWA AS  
[Customer].[Customers].[Country].&[USA] - [Customer].[Customers].[State Province.&[WA], SOLVE_ORDER=5  
,SCOPE_ISOLATION=CUBE  
SELECT {USAWithoutWA} ON 0 FROM SALES  
WHERE ProfitRatio  

Propriedades Padrão

Cada membro calculado possui um conjunto de propriedades padrão. Quando uma aplicação cliente está conectada aos Serviços de Análise, as propriedades padrão são suportadas ou disponíveis para suporte, conforme o administrador desejar.

Propriedades adicionais dos membros podem estar disponíveis, dependendo da definição do cubo. As propriedades a seguir representam informações relevantes para o nível dimensional do cubo.

Identificador de propriedade Meaning
SOLVE_ORDER A ordem em que o membro calculado será resolvido nos casos em que um membro calculado faz referência a outro membro calculado (ou seja, quando os membros calculados se cruzam).
FORMAT_STRING Uma string de formato no estilo Office que o aplicativo cliente pode usar ao exibir valores de células.
VISÍVEL Um valor que indica se o membro calculado é visível em um conjunto de linhas do esquema. Membros calculados visíveis podem ser adicionados a um conjunto com a função AddCalculatedMembers . Um valor não nulo indica que o membro calculado é visível. O valor padrão dessa propriedade é Visible.

Elementos calculados que não são visíveis (onde esse valor é definido como zero) geralmente são usados como etapas intermediárias em elementos calculados mais complexos. Esses membros calculados também podem ser referidos por outros tipos de membros, como medidas.
NON_EMPTY_BEHAVIOR A medida ou conjunto usado para determinar o comportamento dos membros calculados ao resolver células vazias.

** Aviso ** Essa propriedade está desatualizada. Evite configurar isso. Veja Recursos de Serviços de Análise Descontinuados no SQL Server 2014 para mais detalhes.
LEGENDA Uma string que o aplicativo cliente usa como legenda para o membro.
DISPLAY_FOLDER Uma string que identifica o caminho da pasta de exibição que o aplicativo cliente usa para mostrar o membro. O separador em nível de pasta é definido pela aplicação cliente. Para as ferramentas e clientes fornecidos pela Analysis Services, a barra inversa (\) é o separador de nível. Para fornecer múltiplas pastas de exibição para um membro definido, use um ponto e vírgula (;) para separar as pastas.
ASSOCIATED_MEASURE_GROUP O nome do grupo de medidas ao qual esse membro está associado.

Consulte Também

Instrução DROP MEMBER (MDX)
UPDATE Declaração do MEMBRO (MDX)
Declarações de Definição de Dados MDX (MDX)