Nomes de Membros Duplicados em Outlines
Quando você ativa nomes de membros duplicados em um outline do Essbase, vários membros podem ter o mesmo nome. Você só poderá usar nomes duplicados se o outline tiver membros duplicados ativados.
Sobre Outlines de Nome de Membro Duplicados
Nomes de membros duplicados estão disponíveis para armazenamento em blocos e bancos de dados de armazenamento agregado. Você cria membros duplicados da mesma forma que adiciona membros para um outline de nome de membro exclusivo. Consulte Convenções de Nomeação para Dimensões, Membros e Aliases.
Quando você salva o outline de nome de membro duplicado, o Essbase valida os nomes de membro duplicados. Uma sintaxe de nomeação qualificada ajuda a diferenciar as duplicatas uma da outra.
A Figura 4-2 mostra um exemplo de um outline de membro duplicado no qual o membro do estado de Nova York e o membro da cidade de Nova York aparecem no outline como Nova York.
Figura 4-2 Nome de Membro Duplicado "New York"

Os nomes de membros qualificados para o exemplo na Figura 4-2 são [Estado].[Nova York] e [Cidade].[Nova York].
Para criar um outline que permita nomes de membros duplicados, use as propriedades do outline na interface Web do Essbase ou crie o cubo usando a instrução create database MaxL com a cláusula using non_unique_members. Ou, se você criar o cubo com base em uma pasta de trabalho do aplicativo, na guia Cube.Settings, defina a propriedade Tipo de Estrutura como Duplicar.
Observação:
Um outline de membro duplicado não pode ser convertido de volta para um outline de membro exclusivo.
Consulte também Sobre Nomes de Membros Duplicados.
Observação:
As dimensões de atributo de outline de membro duplicadas não têm prefixos ou sufixos anexados que se aplicam às dimensões de atributo em outlines exclusivos. Por exemplo, em uma dimensão de atributo Booliano de membro duplicado, os membros não incluem dimensão, pai, avô ou antecessores afixados nos membros VERDADEIRO e FALSO. Consulte Definir Formatos do Prefixo e do Sufixo para Nomes de Membros de Dimensões de Atributo.
Restrições para Nomes e Aliases de Membros Duplicados em Outlines
Ao criar nomes e aliases de membros duplicados em outlines de banco de dados, o seguinte deve ser sempre exclusivo:
-
Nomes das dimensões
-
Nomes de geração e nomes de nível
-
Irmãos sob um membro pai
Se você estiver usando aliases, esta restrição adicional se aplicará: uma tabela de alias que contém nomes de alias duplicados é válida somente com um outline de membro duplicado.
Observação:
Não use aspas (" "), colchetes ([ ]) ou guias em nomes de membro, dimensão ou alias. Por exemplo, você não pode criar um nome de membro "[New York].[Área 1]". A verificação do esboço não exibe um erro para nomes de membros que contenham a sequência inválida de caracteres, e você pode salvar o esboço; no entanto, o Essbase não pode consultar com precisão os dados.
Sintaxe para Especificação de Nomes e Aliases de Membros Duplicados
Embora nomes de membros duplicados apareçam no outline, cada nome de membro não compartilhado identifica exclusivamente um membro no banco de dados. Um formato de nome qualificado diferencia os nomes de membros duplicados. Um nome qualificado deve ser usado para especificar um nome de membro duplicado.
Um nome de membro ou alias qualificado pode ser especificado em qualquer um dos seguintes formatos:
-
Nome do membro totalmente qualificado
-
Nome do membro qualificado pela diferenciação do ancestral
-
Nome do membro qualificado do atalho
Observação:
Um nome qualificado deve conter todos os nomes de alias ou todos os nomes de membros. Não é possível misturar nomes de membros e nomes de alias em um nome qualificado.
Nomes de Membros Totalmente Qualificados
Um nome de membro totalmente qualificado compreende o nome do membro ou alias duplicado e todos os antecessores até o nome da dimensão e inclusive. Cada nome deve estar entre colchetes ([ ]) e separado por um ponto (.). A sintaxe será a seguinte:
[DimensionMember].[Ancestors...].[DuplicateMember]Por exemplo:
[Market].[East].[State].[New York]
[Market].[East].[City].[New York]Membros Qualificados por Diferenciar Antecessor
Um nome de membro qualificado pela diferenciação do antecessor usa o nome do membro ou alias e todos os antecessores até o antecessor que exclusivamente identifica o membro ou alias duplicado. O antecessor superior no caminho sempre será um nome de membro exclusivo. Cada nome deve estar entre colchetes ([ ]) e separado por um ponto (.). A sintaxe será a seguinte:
[DifferentiatingAncestor].[Ancestors...].[DuplicateMember]Por exemplo:
[State].[New York]
[City].[New York]Nomes de Membros Qualificados do Atalho
O Essbase constrói internamente nomes qualificados de atalho para membros em outlines de membros duplicados. Você pode inserir manualmente nomes qualificados de atalho em scripts, planilhas ou consultas MDX.
O Essbase usa a sintaxe mostrada abaixo para construir nomes qualificados de atalho. O uso da mesma sintaxe que o Essbase usa quando você faz referência a membros em scripts, planilhas e consultas MDX é ideal, mas não obrigatório.
Tabela 4-1 Sintaxe de Nome Qualificado de Atalho
| Cenário | Sintaxe de Nome Qualificado | Exemplo |
|---|---|---|
|
Nomes de membro duplicados existem na geração 2 |
|
|
|
Nomes de membro duplicados existem em um outline, mas são exclusivos dentro de uma dimensão |
|
|
|
Nomes de membro duplicados têm um pai exclusivo |
|
|
|
Nomes de membro duplicados existem na geração 3 |
|
|
|
Nomes de membro duplicados existem em uma geração ou nível nomeado, e o membro é exclusivo em sua geração ou nível |
|
|
|
Em alguns cenários, o método ancestral diferencial é usado como um atalho. |
|
|
Nomes de Membro Qualificados em Outlines de Nome de Membro Exclusivo
Os nomes de membros qualificados também são aplicáveis para fazer referência a nomes de membros em um outline de nome de membro exclusivo (um outline com nomes de membros duplicados não está ativado). Os nomes de membros qualificados podem ser usados para diferenciar membros compartilhados de seus membros originais.
Por exemplo, no banco de dados Sample Basic, o membro [100-20] é um membro original sob o pai [100], e tem um membro compartilhado associado a ele sob o pai [Diet]. O membro compartilhado [100-20] pode ser mencionado explicitamente, usando o nome exclusivo [Diet].[100-20], conforme mostrado na seguinte consulta:
SELECT
{Sales}
ON COLUMNS,
{[[Diet]].[100-20]]]} PROPERTIES MEMBER_UNIQUE_NAME
ON ROWS
FROM Sample.Basic;Os colchetes de fechamento duplo no exemplo são necessários como caracteres de escape. Para obter mais detalhes sobre a sintaxe MDX, consulte Sintaxe MDX para Especificar Aliases e Nomes de Membros Duplicados.