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 Guia do Administrador do 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