Abordagem Manual para Resolver Problemas de Desempenho

Verificação do Design Ineficiente das Regras

Para garantir resultados corretos e o desempenho ideal, como melhor prática, sempre especifique as dimensões e os membros em relação a que os cálculos devem ser executados.

O desempenho ideal das regras de consolidação requer que o escopo de cálculo seja limitado às dimensões e aos membros necessários. A não inclusão das dimensões e dos membros necessários em um cálculo faz com que a regra seja executada em relação a todas as combinações de membros possíveis. Por exemplo, o exemplo de regra a seguir requer que os cálculos sejam executados apenas em relação ao membro da dimensão personalizado No Department. A inclusão do membro de dimensão na origem resulta em uma execução mais rápida, fazendo com que a regra seja executada em relação a No Department.
Ilustração de um conjunto de regras de exemplo

Verificação de Vários Membros Armazenados na Origem da Regra (Dimensão Account)

A degradação do desempenho pode ocorrer quando muitas contas armazenadas de nível 0 em uma origem da regra de consolidação são redirecionadas para uma única conta de destino. Nesses cenários, a Oracle recomenda que você crie um membro de conta como espaço reservado com armazenamento de dados armazenados e grave uma regra de inserção em FCCS_110 (aplicativos de única moeda) ou FCCS_30 (aplicativos de várias moedas) para redirecionar o valor do filho par ele. Você poderá, então, usar a conta como espaço reservado na origem das regras de consolidação no local do pai dinâmico para garantir a execução mais rápida da regra.

Caso de Uso: Resolução de Problemas de Desempenho depois da Implantação de Regras de Consolidação Configuráveis

Este exemplo pressupõe que existam 100 contas P/L (Acc_001 até Acc_100) no pai dinâmico Retained Earnings Current, que é uma das várias contas P/L em um aplicativo. Consulte a imagem a seguir.
Um pai dinâmico de amostra com vários membros armazenados

As regras que usam Retained Earnings Current como origem direta ou indiretamente por meio de referências são ilustradas na imagem a seguir.
Uma regra de exemplo que usa uma referência direta


Regra de exemplo que usa referências indiretas
Na referência indireta anterior, todos os filhos de Nível 0 de Retained Earnings Current são indiretamente parte da origem porque ela vem abaixo de Total Equity.

As etapas a seguir fazem parte do processo de alteração da definição da regra e de inclusão de um script de redirecionamento para agilizar a execução da regra:

  1. Crie uma conta como espaço reservado.

    Crie uma conta subsidiária denominada Retained Earning_Memo em FCCS_BalanceSheet. Defina o operador de consolidação como Ignore (~) e o armazenamento de dados como Store. Todas as demais propriedades serão idênticas às do pai dinâmico. Como é mostrado na ilustração a seguir, a conta como espaço reservado Retained Earning_Memo reterá valores para Retained Earnings Current.
    Exemplo de conta subsidiária

  2. Atualize o cubo.
  3. Em FCCS_30, copie os valores de entrada de origem para Retained Earning_Memo. Você pode usar o script de exemplo a seguir para copiar os valores filho para Retained Earning_Memo. Certifique-se de modificar o script conforme a necessidade para ajustá-lo aos seus requisitos. Consulte Melhores Práticas de Cálculos Configuráveis em Administrando o Financial Consolidation and Close para obter informações sobre melhores práticas para desempenho de cálculos configuráveis.
    SET HYBRIDBSOINCALCSCRIPT NONE;// Use with Hybrid environments only.
    FIX("FCCS_Entity Input", "Parent Currency", "Opening Balance", @RELATIVE("FCCS_Total Data Source", 0), @RELATIVE("FCCS_Intercompany Top", 0))
            "Retained Earning_Memo" (
               @CALCMODE(BOTTOMUP);
               @SUM(@RELATIVE("FCCS_Retained Earnings Current", 0) AND @LIST(@UDA("Account", "REVENUE") OR @UDA("Account", "LIABILITY") OR @UDA("Account", "EQUITY") OR @UDA("Account", "SAVED ASSUMPTION"))) - @SUM(@RELATIVE("FCCS_Retained Earnings Current", 0) AND @LIST(@UDA("Account", "EXPENSE") OR @UDA("Account", "ASSET")));
            ) 
    ENDFIX
  4. Use Retained Earning_Memo como a origem nas regras de consolidação configuráveis em que Retained Earnings Current é usado.
    1. Se ILvl0Descendants(Retained Earnings Current) for usado diretamente na origem: a ilustração a seguir mostra a regra antes da implementação das recomendações nesse caso de uso.
      Ilustração de uma regra que não usa uma conta subsidiária

      A ilustração a seguir mostra a regra depois da implementação das recomendações nesse caso de uso.
      Ilustração de uma regra que usa uma conta subsidiária

    2. Se ILvl0Descendants(Retained Earnings Current) for usado indiretamente: a ilustração a seguir mostra a regra antes da implementação das recomendações nesse caso de uso.
      Ilustração de uma regra que não usa uma conta subsidiária

      A ilustração a seguir mostra a regra depois da implementação das recomendações nesse caso de uso.
      Ilustração de uma regra que não usa uma conta subsidiária