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.

...

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.


Bloco de código
languagec#
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

...

repita


  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

...


  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 retorno do resultado da fórmula deverá seguir o seguinte padrão:

CódigoDoEmprestimo: ValorEmprestimo;

Os demais empréstimos serão concatenados ao primeiro empréstimo, conforme a tela abaixo:

Image AddedRetorno


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. Na tela de rescisão será associado a fórmula cadastrada:

Image Added

O valor foi lançado na Ficha Financeira, conforme retornado pela fórmula:

Image Added


O cadastro de empréstimo foi atualizado com o valor de descontado rateado por empréstimo:

Image Added