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.

...

Bloco de código
languagec#
titleExemplo de Fórmula que calcula 30% de desconto do empréstimo na Rescisão
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

...