Diagnóstico de Problemas de Desempenho depois da Implantação de Regras de Consolidação Configuráveis

O desempenho de regras de consolidação configuráveis no Financial Consolidation and Close pode ser influenciado por não limitar o escopo do cálculo (seleção inadequada de membros de origem em regras personalizadas) ou pelo uso de vários membros armazenados para uma dimensão densa, por exemplo, a origem da regra.

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.

Como desabilitar a lógica CALC DIM

Quando você cria scripts de cálculo configuráveis para um ponto de inserção, o Financial Consolidation and Close automaticamente gera dados em níveis pai para que esses membros pai estejam disponíveis no próximo ponto de inserção. O Financial Consolidation and Close adiciona a lógica CALC DIM para acumular os dados que você preenche. O processamento dessa lógica CALC DIM adicionada pode tornar-se lento dependendo da complexidade da sua hierarquia. Se você não precisar consultar membros pais recalculados em pontos de inserção posteriores, é possível acelerar o processo geral de consolidação desabilitando a lógica CALC DIM que o Financial Consolidation and Close adiciona para pontos de inserção.

Nota:

Desabilitar a lógica CALC DIM afeta a geração de scripts de consolidação. Verifique com atenção os resultados da consolidação após desabilitar a lógica CALC DIM.

Para evitar que o Financial Consolidation and Close gere uma lógica CALC DIM desnecessária em aplicativos de várias moedas, defina as Variáveis de Substituição adequadas na lista a seguir e defina-as como True

  • CONFCALC_FCCS10_DISABLECALCDIM
  • CONFCALC_FCCS20_DISABLECALCDIM
  • CONFCALC_FCCS25_DISABLECALCDIM
  • CONFCALC_FCCS30_DISABLECALCDIM
  • CONFCALC_FCCS40_DISABLECALCDIM
  • CONFCALC_FCCS50_DISABLECALCDIM
  • CONFCALC_FCCS60_DISABLECALCDIM
  • CONFCALC_FCCS70_DISABLECALCDIM

Por exemplo, imagine que você tenha gravado uma lógica personalizada nas regras de cálculo configuráveis FCCS_10 e FCCS_20. Se você deseja desabilitar a lógica CALC DIM para FCCS_20, mas não para FCCS_10, é necessário definir uma Variável de Substituição denominada CONFCALC_FCCS20_DISABLECALCDIM e defini-la como True.

Para evitar que o Financial Consolidation and Close gere uma lógica CALC DIM desnecessária em aplicativos de única moeda, defina as Variáveis de Substituição adequadas na lista a seguir e defina-as como True.

  • CONFCALC_FCCS110_DISABLECALCDIM
  • CONFCALC_FCCS120_DISABLECALCDIM
  • CONFCALC_FCCS130_DISABLECALCDIM
  • CONFCALC_FCCS140_DISABLECALCDIM
  • CONFCALC_FCCS150_DISABLECALCDIM

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 de 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 um dos seguintes scripts de exemplo para copiar os valores filho para Retained Earning_Memo. Certifique-se de modificar esses scripts, conforme necessário, para adaptá-los às suas necessidades. Consulte " Melhores Práticas de Cálculos Configuráveis " em Administrando o Financial Consolidation and Close para obter informações sobre práticas recomendadas de desempenho para cálculos configuráveis.

    Script 1:

    SET HYBRIDBSOINCALCSCRIPT NONE; // Use this setting only with Hybrid environments
    FIX("FCCS_Entity Input", "Parent Currency", @RELATIVE("Movement", 0), @RELATIVE("FCCS_Total Data Source", 0), @RELATIVE("FCCS_Intercompany Top", 0), @LEVMBRS("Multi-GAAP", 0)) 
    "Retained Earning_Memo" (
            @CALCMODE(BOTTOMUP);
            "FCCS_Retained Earnings Current";
    ) 
    ENDFIX
    

    Script 2:

    SET HYBRIDBSOINCALCSCRIPT NONE;// Use this setting only with Hybrid environments
    FIX("FCCS_Entity Input", "Parent Currency", @RELATIVE("Movement", 0), @RELATIVE("FCCS_Total Data Source", 0), @RELATIVE("FCCS_Intercompany Top", 0), @LEVMBRS("Multi-GAAP", 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