Páginas filhas
  • Lançamento de Empréstimo na Rescisão - Fórmula

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

Limitar o desconto dos empréstimos a 30% do líquido de uma rescisão é uma tarefa que pode ser feita de várias formas.

Vamos imaginar uma situação em que determinado funcionário possua os seguintes empréstimos a serem descontados na rescisão :

1) Empréstimo Habitacional              1.000,00

2) Empréstimo Educacional               1.200,00

3) Empréstimo Particular                   1.500,00

Vamos imaginar ainda que 30% sobre o líquido da rescisão do funcionário seja igual a 1.100,00.

Como proceder neste caso ?

1) Descontar o valor integral do empréstimo 1 e descontar 100,00 do empréstimo 2 ?

2) Priorizar o desconto de algum tipo de empréstimo, por exemplo o Empréstimo Particular ?

3) Descontar proporcionalmente ao saldo devedor de cada empréstimo ?

Empréstimo 1     297,30

Empréstimo 2     356,76

Empréstimo 3     445,94


Na verdade esta pergunta não tem uma resposta única, cada empresa pode ter uma forma de interpretar como deve ser realizada a limitação de descontos de empréstimo a 30% do líquido da rescisão.

Desta forma, esta implementação foi realizada no sistema utilizando o recurso de  fórmulas de cálculo para definir como deve ser feito o desconto dos empréstimos do funcionário. Através do recurso de fórmulas cada empresa poderá efetuar o desconto conforme sua necessidade.

Solução Adotada

Para facilitar o desenvolvimento da fórmula foi criada uma função chamada InfEmp (Informações do empréstimo), que será utilizada para retornar as informações dos empréstimos pendentes do funcionário. A documentação do funcionamento da Função de Formula pode ser consultada aqui


Iremos exemplificar um cenário com a utilização da Fórmula, considerando que o desconto será limitado a 30% do líquido de rescisão:

Funcionário possuí 3 empréstimos, com saldo maior que zero, no valor total de R$ 3.700,00. E seu salário é de R$ 377,20:

Image Added

Criada a fórmula que será calculada 30% sobre o salário líquido do funcionário. A lógica desenvolvida é de rateiro e proporção em relação ao saldo devedor, pois o saldo devedor pode ser maior que o salário.

DECL SaldoTot;
DECL TotEmp;
DECL ItemEmp;
DECL Retorno;
DECL SalLiq;
DECL MaxEmp;
DECL saldodist;
DECL aDistribuir;

SetVar(ItemEmp,0);
setvar(MaxEmp,0);
setvar(SalLiq, 0);
SetVar(aDistribuir,0);
SetVar(Retorno,'');
SetVar(saldodist,0);

SetVar(SaldoTot, InfEmp(-2, 'codigo'));
SetVar(TotEmp, InfEmp(-1, 'codigo'));
setvar(SalLiq, L);
setvar(MaxEmp, SalLiq*0.3);

Se TotEmp > 0
Entao

Se MaxEmp >= SaldoTot
Entao

repita

SetVar(ItemEmp,ItemEmp + 1);
SetVar(aDistribuir, InfEmp( ItemEmp, 'SALDODEVEDOR' ) );
SetVar(aDistribuir,val( str(aDistribuir, '999999999,99')));
SetVar(Retorno, Concat(Retorno, InfEmp( ItemEmp, 'CODIGO' )));
SetVar(Retorno,Concat(Retorno,':'));
SetVar(Retorno, Concat(Retorno, str(aDistribuir,'999999999,99')));
SetVar(Retorno,Concat(Retorno,';'))

Ate ItemEmp = TotEmp

Senao

repita
SetVar(ItemEmp,ItemEmp + 1);
Se ItemEmp = TotEmp
Entao
SetVar(aDistribuir,MaxEmp-saldodist)
Senao
SetVar(aDistribuir, (MaxEmp / SaldoTot ) * InfEmp( ItemEmp, 'SALDODEVEDOR' ) );
SetVar(aDistribuir,val( str(aDistribuir, '999999999,99')))
FimSe;
SetVar(saldodist, saldodist + aDistribuir);
SetVar(Retorno, Concat(Retorno, InfEmp( ItemEmp, 'CODIGO' )));
SetVar(Retorno,Concat(Retorno,':'));
SetVar(Retorno, Concat(Retorno, str(aDistribuir,'999999999,99')));
SetVar(Retorno,Concat(Retorno,';'))
ate ItemEmp = TotEmp
FimSe
FimSe;

Retorno


O funcionário será demitido em 31/12/2019 e será lançado o saldo devedor de empréstimo, utilizando a nova implementação através da fórmula