Ir para conteúdo
  • Cadastre-se

dev botao

  • Este tópico foi criado há 2479 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

  • Membros Pro
Postado

Olá pessoal, me desculpem se eu estiver errado, mas acredito que tenha um pequeno erro na geração de remessa CNAB400 da caixa.

No arquivo ACBrBancoCaixa.pas linha 1020 temos:

IntToStrZero(round((ValorDocumento*PercentualMulta)/100), 10)    + //358 até 367 - Valor nominal da multa

Exemplo de Aplicação:
ValorDocumento := 313,00;  // R$ 313,00
PercentualMulta := 3 ;    // 3% 
Resultado gerado:=  "0000000009"
Resultado esperado: "0000000939"   |    (313 * 3 / 100) = R$ 9,39

Pelo que observei o round remove os decimais, e no IntToStrZero resta apenas o "9" no final da string.
Para gerar o valor correto, o "PercentualMulta" deveria ser multiplicado por 100 (assim como é feito com o Juros e Desconto), ficando assim:

IntToStrZero(round((ValorDocumento* (PercentualMulta*100) )/100), 10)    + //358 até 367 - Valor nominal da multa

No manual "LEIAUTE DE ARQUIVO ELETRÔNICO PADRÃO CNAB 400 COBRANÇA BANCÁRIA CAIXA - SIGCB" Versão: 67.126 v006 micro, não tem uma especificação clara de como deve ser o formato, mas presumo que seja como está sendo feito no juro atualmente, onde os ultimos 2 caracteres da string são dos decimais.

OBS: Detectei este probleam após implementar em um cliente (até achei que era alguma falha minha, pois muita gente deve usar boleto caixa, mas parece que não.)

Por favor, os moderadores do fonte poderiam dar uma olhada?

 

  • Membros Pro
Postado
15 horas atrás, Juliomar Marchetti disse:

Espera pelo menos umas 24 horas para pedir novamente ou postar, quem sabe quem usa ainda não deu tempo de vir até aqui 

Obrigado, e desculpa. É o cliente que está no meu pé aqui. Mas vou fazer um paleativo até a solução definitiva.

  • Este tópico foi criado há 2479 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora
×
×
  • Criar Novo...

Informação Importante

Colocamos cookies em seu dispositivo para ajudar a tornar este site melhor. Você pode ajustar suas configurações de cookies, caso contrário, assumiremos que você está bem para continuar.