Árvore de páginas

CONTEÚDO

01. VISÃO GERAL

Com esse template, será possível visualizar de forma fácil como ocorrerá a aplicação de fórmulas e o funcionamento das mesmas na apuração do valor da verba/evento.

02. IMPORTANTE

  • O cadastro de fórmulas e sua manutenção é de responsabilidade da empresa detentora do erp, dessa forma espera-se que o time a desenvolver a mesma tenha expertise para análise de todos os casos a serem validados;
  • Sempre defina um script de finalização para as demais exceções que não refletirem as regras tratadas, desta forma após todas as condições serem aplicadas, deve-se garantir que todos os funcionários da empresa serão validados com valor de margem aceita; lembre-se a margem com valor zero é considerada inválida para novas simulações de empréstimo consignado;
  • Respeite as melhores práticas do departamento documentando as regras se necessário para que fique claro os objetivos e conceitos aplicados;
  • Cada erp possui características específicas conforme suas premissas para estruturar e realizar esse cadastro, em caso de dúvidas verifique as documentações de seu produto.

03. MODELOS

Abaixo seguem exemplos de expressão sugeridos para te auxiliar na criação da fórmula a ser vinculada a verba/evento de Margem Consignável Customizada :

Em desenvolvimento: Sugestão de cadastro da fórmula a ser vinculada ao evento.


Passos para utilização da fórmula customizada no Protheus:

    1. Criar a Fórmula desejada com o código a ser vinculado (EX: U_002) no novo Roteiro de cálculo;
    2. Desabilitar o Roteiro de cálculo padrão (coluna Habilitado = Não) ;
    3. Criar o novo roteiro de cálculo vinculando a Fórmula através da busca padrão pelo filtro existente (lupa)  (EX: U_002)
    4. O novo roteiro deverá estar com a coluna Habilitado = Sim

Necessário lembrar que precisará ser desabilitado no Roteiro de Cálculo de Folha a regra de cálculo da margem consignável padrão e criar nova regra de usuário habilitado.

Segue abaixo sugestão de cadastro de fórmulas a ser vinculada a  verba de id. de cálculo 1857 - Margem Consignável Customizada: Somente serão destacados dados relevantes de preenchimento.


Fórmula Protheus - Exemplo 1:

Evidências visuaisRegra 1:  % dif. por tipo de recebimentoExemplo prático

 

 

==>

     

 

     

==>

     

   

   

==>

     

  • Condição: VERIFICA SEMANALISTA
    • 1a.Expressao:
      SRA->RA_CATFUNC == "S"
    • Op.3
      .END.

      • Lógica: Variável para Buscar Valor da Verba
        • Resultado:
          nValor := fBuscaPd("ZZ1*ZZ2", "V")
          // Atenção: Dentro do parênteses informe todas as verbas a serem consideradas para encontrar a base de cálculo, que se encontrarem no movimento sempre usando o mesmo separador, exemplo: "ZZ1*ZZ2*ZZ3*ZZ4","V" // 
        • Op.3
          .CNT.

      • Lógica: Aplica 20% no valor acima encontrado
        • Resultado
          nResult := nValor * 0.2
          // Atenção: o percentual aplicado fica a critério da empresa, lembrando que a legislação limita a 30% // 
        • Op.3
          .END.
  • Condição: VERIFICA MENSALISTA
    • 1a.Expressao:
      SRA->RA_CATFUNC == "M"
    • Op.3
      .END.

      • Lógica: Variável para Buscar Valor da Verba
        • Resultado:
          nValor := fBuscaPd("ZZ1*ZZ2", "V")
          // Atenção: Dentro do parênteses informe todas as verbas a serem consideradas para encontrar a base de cálculo, que se encontrarem no movimento sempre usando o mesmo separador, exemplo: "ZZ1*ZZ2*ZZ3*ZZ4","V" // 
        • Op.3
          .CNT.

      • Lógica: Aplica 40% no valor acima encontrado
        • Resultado:
          nResult := nValor * 0.4
          // Atenção: o percentual aplicado fica a critério da empresa, lembrando que a legislação limita a 30% // 
        • Op.3
          .END.


  • Condição: VERIFICA SE DIF. MENSALISTA E SEMANALISTA
    • 1a.Expressao:
      SRA->RA_CATFUNC != "S" .AND. SRA->RA_CATFUNC != "M"
    • Op.3
      .END.

      • Lógica: Variável para Busca Valor da Verba
        • Resultado:
          nValor := fBuscaPd("ZZ1*ZZ2", "V")
          // Atenção: Dentro do parênteses informe todas as verbas a serem consideradas para encontrar a base de cálculo, que se encontrarem no movimento sempre usando o mesmo separador, exemplo: "ZZ1*ZZ2*ZZ3*ZZ4","V" // 
        • Op.3
          .CNT.

      • Lógica: Aplica 30% no valor acima encontrado
        • Resultado:
          nResult := nValor * 0.3
          // Atenção: o percentual aplicado fica a critério da empresa, lembrando que a legislação limita a 30% // 
        • Op.3
          .END.

  • Resultado Final: GERA VERBA NO CALCULO DA FOLHA
    • 1a.Expressao:
      FGERAVERBA(aCodFol[1857, 1],nResult)
    • Op.3
      .END.


Mês da Competência atual = 6


==> Funcionário com tipo de recebimento Semanalista

Valor das Verbas no Movimento 6

     verba código ZZ1   =  + 2000,00

     verba código ZZ2   =  -  1000,00

     Resultado acumulado na variável nValor = 1000,00

nValor = 1000,00 * % = 1000,00 * 0.2 =  R$ 200,00  será o valor Total ref. a Margem Consignável do Funcionário


==> Funcionário com tipo de recebimento Mensalista

Valor das Verbas no Movimento 6

     verba código ZZ1   =  + 5000,00

     verba código ZZ2   =  -  3000,00

     Resultado acumulado na variável nValor = 2000,00

nValor = 2000,00 * % = 2000,00 * 0.4 =  R$ 800,00  será o valor Total ref. a Margem Consignável do Funcionário


==> Funcionário com tipo de recebimento  diferente de Mensalista e Semanalista

Valor das Verbas no Movimento 6

     verba código ZZ1   =  + 4000,00

     verba código ZZ2   =  -  2000,00

     Resultado acumulado na variável nValor = 2000,00

nValor = 2000,00 * % = 2000,00 * 0.3 =  R$ 600,00  será o valor Total ref. a Margem Consignável do Funcionário



Após rodar todas as condições e regras e apurar o valor final a verba cadastrada com o id de cálculo 1857 será gravada no movimento atual 6 com seu devido valor encontrado conforme descrito acima.


Fórmula Protheus - Exemplo 2:

Evidências visuaisRegra 2:  % dif. por Filial e/ou FunçãoExemplo prático

 

 

==>

==>

   

==>

     

  • Condição: VERIFICA 1a FILIAL
    • 1a.Expressao:
      SRA->RA_FILIAL == "D MG 01" 
      // Atenção: Dentro da aspas consta um valor para identificação da filial que é variável conforme desejado pelo cliente // 
    • Op.3
      .END.

      • Lógica: Variável para Buscar Valor da Verba
        • Resultado:
          nValor := fBuscaPd("ZZ1*ZZ2", "V")
          // Atenção: Dentro do parênteses informe todas as verbas a serem consideradas para encontrar a base de cálculo, que se encontrarem no movimento sempre usando o mesmo separador, exemplo: "ZZ1*ZZ2*ZZ3*ZZ4","V" // 
        • Op.3
          .CNT.

      • Lógica: Aplica 20% no valor acima encontrado
        • Resultado
          nResult := nValor * 0.2
          // Atenção: o percentual aplicado fica a critério da empresa, lembrando que a legislação limita a 30% // 
        • Op.3
          .END.
  • Condição: VERIFICA 2a FILIAL e duas funções específicas desta mesma filial
    • 1a.Expressao:
      SRA->RA_FILIAL == "M SP 01" .AND. 
        ( SRA->RA_CODFUN =="00001" .OR. SRA->RA_CODFUN =="00004") 
      // Atenção: Dentro da aspas consta um valor para identificação da filial  w código da função que é variável conforme desejado pelo cliente // 
    • Op.3
      .END.

      • Lógica: Variável para Buscar Valor da Verba
        • Resultado:
          nValor := fBuscaPd("ZZ1*ZZ2", "V")
          // Atenção: Dentro do parênteses informe todas as verbas a serem consideradas para encontrar a base de cálculo, que se encontrarem no movimento sempre usando o mesmo separador, exemplo: "ZZ1*ZZ2*ZZ3*ZZ4","V" // 
        • Op.3
          .CNT.

      • Lógica: Aplica 20% no valor acima encontrado
        • Resultado:
          nResult := nValor * 0.2
          // Atenção: o percentual aplicado fica a critério da empresa, lembrando que a legislação limita a 30% // 
        • Op.3
          .END.


  • Condição: VERIFICA SE DIF. 1a FILIAL e DIF. 2a FILIAL e duas funções específicas desta mesma filial
    • 1a.Expressao:

      !( SRA->RA_FILIAL == "D MG 01") .AND.

      !( SRA->RA_FILIAL == "M SP 01"  .AND. 
        ( SRA->RA_CODFUN =="00001" .OR. SRA->RA_CODFUN =="00004")
       )

       // Atenção: Dentro da aspas consta um valor para identificação da filial  w código da função que é variável conforme desejado pelo cliente; o símbolo ! realizará a negação da condição afirmativa  // 
    • Op.3
      .END.

      • Lógica: Variável para Busca Valor da Verba
        • Resultado:
          nValor := fBuscaPd("ZZ1*ZZ2", "V")
          // Atenção: Dentro do parênteses informe todas as verbas a serem consideradas para encontrar a base de cálculo, que se encontrarem no movimento sempre usando o mesmo separador, exemplo: "ZZ1*ZZ2*ZZ3*ZZ4","V" // 
        • Op.3
          .CNT.

      • Lógica: Aplica 30% no valor acima encontrado
        • Resultado:
          nResult := nValor * 0.3
          // Atenção: o percentual aplicado fica a critério da empresa, lembrando que a legislação limita a 30% // 
        • Op.3
          .END.

  • Resultado Final: GERA VERBA NO CALCULO DA FOLHA
    • 1a.Expressao:
      FGERAVERBA(aCodFol[1857, 1],nResult)
    • Op.3
      .END.


Mês da Competência atual = 6


==> Funcionário alocado na Filial "D MG 01"

Valor das Verbas no Movimento 6

     verba código ZZ1   =  + 2000,00

     verba código ZZ2   =  -  1000,00

     Resultado acumulado na variável nValor = 1000,00

nValor = 1000,00 * % = 1000,00 * 0.2 =  R$ 200,00  será o valor Total ref. a Margem Consignável do Funcionário



==> Funcionário alocado na Filial "M SP 01" e exercendo a função de Código = "00001"

Valor das Verbas no Movimento 6

     verba código ZZ1   =  + 5000,00

     verba código ZZ2   =  -  3000,00

     Resultado acumulado na variável nValor = 2000,00

nValor = 2000,00 * % = 2000,00 * 0.2 =  R$ 400,00  será o valor Total ref. a Margem Consignável do Funcionário


Funcionário alocado na Filial "M SP 01" e exercendo a função de Código = "00004"

Valor das Verbas no Movimento 6

     verba código ZZ1   =  + 3000,00

     verba código ZZ2   =  -  2000,00

     Resultado acumulado na variável nValor = 1000,00

nValor = 1000,00 * % = 1000,00 * 0.2 =  R$ 200,00  será o valor Total ref. a Margem Consignável do Funcionário



==> Funcionário alocados em outras filiais diferente de 1a FILIAL ou alocado na 2a FILIAL exercendo a função "00009"

Valor das Verbas no Movimento 6

     verba código ZZ1   =  + 4000,00

     verba código ZZ2   =  -  2000,00

     Resultado acumulado na variável nValor = 2000,00

nValor = 2000,00 * % = 2000,00 * 0.3 =  R$ 600,00  será o valor Total ref. a Margem Consignável do Funcionário



Após rodar todas as condições e regras e apurar o valor final a verba cadastrada com o id de cálculo 1857 será gravada no movimento atual 6 com seu devido valor encontrado conforme descrito acima.


Para saber mais acesse:  GPE026FORMU_EXEMPLO FGERAVERBA__P12 (Corrigir - Parâmetro 7 deve ser I)

Sugestão de cadastro da fórmula a ser vinculada ao evento de código de cálculo 444 - Margem Consignável Customizada:

Regra 1:  30% do salário nominalExemplo prático
RC * 0.3

Salário = 1000,00

Resultado Esperado 1000,00 *0,3 = 300,00   Total ref. ao valor da Margem do Funcionário

Regra 2:  30% da folha do funcionário no movimento financeiro atual.Exemplo prático
L * 0.3

Total de Proventos do Envelope = 6000,00

Total de Descontos do Envelope = 2000,00

Líquido do Envelope Atual = 4000,00 * 0.3 = 1200,00  Total ref. ao valor da Margem do Funcionário

Regra 3: 30% da folha do funcionário no movimento financeiro do mês anterior.Exemplo prático

/*DOC: Variável PERIODO deve receber o número do período de Fopagto Mensal*/  

SE MES=1
  E LIQUIDOFF(ANO-1,12,PERIODO) > 0
ENTAO LIQUIDOFF(ANO-1,12,PERIODO) * 0.3
SENAO
SE MES<>1
  E LIQUIDOFF(ANO,MES-1,PERIODO) > 0
ENTAO LIQUIDOFF(ANO,MES-1,PERIODO) * 0.3
SENAO RC * 0.3
FIMSE
     FIMSE
          FIMSE;

Mês da Competência atual = 6

Salário = 1000,00

Total de Proventos do Envelope do Mês 5 = 6000,00

Total de Descontos do Envelope do Mês 5 = 2000,00

Líquido do Envelope do Mês 5 = 4000,00 * 0.3 = 1200,00  Total ref. ao valor da Margem do Funcionário

Qualquer exceção o cálculo será com base no salário nominal 1000,00 *0,3 = 300,00   Total ref. ao valor da Margem do Funcionário



Observação:

Caso exista Política Ativa cadastrada no Portal de Gestão do RH e esta, possua configurada a regra "Qual a porcentagem máxima do salário que pode ser alocado para o empréstimo?" , o valor da margem consignável vinda do ERP (independente se for margem customizada por fórmula), poderá ser substituído pelo limite imposto pela política caso este valor originado do ERP ultrapasse o limite calculado pela regra.  

Exemplos:

Exemplo 1:

Política Ativa cadastrada

Regra: "Qual a porcentagem máxima do salário que pode ser alocado para o empréstimo?" com o percentual informado 30

Valor da Margem original do ERP = R$ 520,00 

Salário bruto do funcionário = R$ 1200,00

Valor da margem consignável a ser considerado para análise da instituição de crédito:  R$ 360,00 


Exemplo 2:

Política Ativa cadastrada

Regra: "Qual a porcentagem máxima do salário que pode ser alocado para o empréstimo?" com o percentual informado 30

Valor da Margem original do ERP = R$ 220,00 

Salário bruto do funcionário = R$ 1200,00

Valor da margem consignável a ser considerado para análise da instituição de crédito:  R$ 220,00 


04. LINKS ÚTEIS



  • Sem rótulos