acertar valor

Discussão em 'Progress 4GL' iniciado por lunho, Fevereiro 3, 2012.

  1. lunho

    lunho Membro Participativo

    Pessoal é o seguinte, to começando em progress e estou com mais uma dificuldade.
    Estou fazendo um sistema de pagamento de parcelas e estou com problemas para corrigir o valor.
    Ex.
    Uma conta de 100,00 dividida em 3x
    o sistema joga 3 parcelas de 33,33 que somando dá o total de 99,99.
    existe alguma função para eu corrigir isso, ou seja verificar qto esta faltando e jogar dentro de uma parcela
    para que o valor final das parcelas seja igual ao valor da dívida inicial.

    OBS - NÃO USO DATASUL, DESENVOLVO DIRETO NO PROGRESS.
  2. eriutoncharles

    eriutoncharles Membro Participativo

    Boa Tarde !!

    Não sou nenhum Expert em Progress, mas veja se dá pra te ajudar.

    Código:
    DEF VAR vValor AS DEC INITIAL 100.00.
    DEF VAR vNumParcela AS INT INITIAL 3.
    DEF VAR vParcela AS DEC EXTENT 10.
    DEF VAR vSoma    AS DEC.
    DEF VAr i AS INT.
    
    ASSIGN vSOma = 0.
    
    UPDATE vValor vNumParcela.
    DO i = 1 TO vNumParcela.
      
    IF i <> vNUmParcela THEN ASSIGN  vParcela[i] =  ROUND(vValor / vNumParcela,2).
    ELSE                     ASSIGN  vParcela[i] =  ROUND(vValor - vSoma,2).
    
    
    ASSIGN vSOma = vSoma + vParcela[i].
    
    
    END.
    
    DO i = 1 TO vNUmParcela.
       MESSAGE "Parcela " + STRING(i,"99") SKIP 
             vParcela[i] VIEW-AS ALERT-BOX.
    END.
    Teste ai !!
  3. lunho

    lunho Membro Participativo

Compartilhe esta Página