Problemas de Compartilhamento Implícito

Cenário:

Para os membros que têm uma relação de compartilhamento implícito, se um pai e um filho forem exibidos no mesmo formulário de dados do Oracle Hyperion Planning, apenas os valores inseridos para o pai serão mantidos. Nos exemplos a seguir, o Planning cria um relacionamento de compartilhamento implícito entre o Pai A e o Filho 1 porque os valores do pai e do filho são sempre os mesmos. Esses exemplos assumem que todos os membros estão definidos como o tipo de dados Armazenar.

Exemplo 1:

   Parent A 
        Child 1 (+) 

Exemplo 2:

   Parent A 
        Child 1 (+) 
        Child 2 (~) 
        Child 3 (~) 

Como a maioria dos aplicativos do Planning são aplicativos ascendentes, em geral os dados são informados para o filho porque o pai é somente leitura. A sequência típica de eventos:

  1. O formulário exibe o filho, geralmente acima do pai.

  2. Novos dados são informados para o filho.

  3. O formulário é salvo. A operação de gravação lê o formulário da esquerda para a direita e de cima para baixo, para que o filho seja salvo primeiro.

  4. A operação de salvamento obtém a última ocorrência do valor na grade (o valor inferior e mais à direita), que, devido ao compartilhamento implícito, substitui o valor do filho. Os dados informados para o filho são descartados.

Solução:

Dependendo dos requisitos dos seus formulários do Planning, será possível usar esses métodos para evitar compartilhamento implícito.

  • Para um pai e filho no mesmo formulário: Adicione um membro fictício como um filho de agregação. O membro fictício é incluído no outline, mas não é usado em formulários. O compartilhamento implícito é desativado quando o pai possui somente um filho agregado.

  • Para um pai Somente Rótulo: Existe um compartilhamento implícito com o primeiro membro filho independentemente de quantos filhos agregado estão presentes. Para desativar o compartilhamento implícito nesta situação, altere o tipo de armazenamento Somente Rótulo ou evite a inclusão de pai e filho no mesmo formulário.

  • Para um pai que pode ser definido como Nunca Compartilhar: Se necessário para o seu aplicativo, defina o membro pai como armazenamento Nunca Compartilhar. O pai Nunca Compartilhar funciona de modo semelhante a um pai Armazenar com vários filhos agregados. No entanto, diferentemente de um pai Armazenar, um pai Nunca Compartilhar só exibe o valor agregado de seus filhos depois que a agregação é executada.

Nota:

Para pais com filhos únicos, usar um tipo de armazenamento padrão igual a Store (mantendo o relacionamento de compartilhamento implícito) geralmente é vantajoso, porque isso reduz o número de bloqueios que são criados, o tamanho do banco de dados e os tempos de cálculo e agregação. Só use Nunca Compartilhar quando necessário.

Para obter informações detalhadas sobre compartilhamento implícito, consulte o Oracle Essbase Database Administrator's Guide .