Ir para conteúdo
  • Cadastre-se

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

Recommended Posts

Postado

Olá bom dia.

 

Cliente relatou um problema no Boleto, referente a taxa de juros.

 

Hoje nessa função está errada, já que cjValorMensal não deveria ser % ao mês e sim Valor por Mês.

O mesmo pra quando for cjTaxaDiaria, ele coloca como sendo valor diario. Unit ACBrBoleto.


function TACBrBoleto.GerarMensagemPadraoJuros(ATitulo: TACBrTitulo): String;
var ATipoJuros,AJurosQuando : String;
begin
  if (ATitulo.CodigoMoraJuros = [cjTaxaMensal, cjValorMensal]) or (ATitulo.CodigoMora = '2') or (ATitulo.CodigoMora = 'B') then
    ATipoJuros := FloatToStr(ATitulo.ValorMoraJuros) + '% ao mês'
  else
    ATipoJuros := FormatFloatBr(ATitulo.ValorMoraJuros, 'R$ #,##0.00 por dia');

  if ATitulo.DataMoraJuros <> 0 then
  begin
    if ATitulo.Vencimento = ATitulo.DataMoraJuros then
      AJurosQuando := 'após o vencimento'
    else
      AJurosQuando := 'a partir de '+FormatDateTime('dd/mm/yyyy',ATitulo.DataMoraJuros);
  end;(* else
    AJurosQuando := ' por dia de atraso';*) //TK-4612

  Result := ACBrStr(Format('Cobrar juros de %s de atraso para pagamento %s.',[ATipoJuros,AJurosQuando]));
end;

Segue correção do código

 


function TACBrBoleto.GerarMensagemPadraoJuros(ATitulo: TACBrTitulo): String;
var ATipoJuros,AJurosQuando : String;
begin  
  if (ATitulo.CodigoMoraJuros = cjTaxaMensal) or (ATitulo.CodigoMora = '2') or (ATitulo.CodigoMora = 'B') then
    ATipoJuros := FloatToStr(ATitulo.ValorMoraJuros) + '% ao mês'
  else if (ATitulo.CodigoMoraJuros = cjValorDia) then
    ATipoJuros := FormatFloatBr(ATitulo.ValorMoraJuros, 'R$ #,##0.00 por dia')
  else if (ATitulo.CodigoMoraJuros = cjValorMensal) then
    ATipoJuros := FormatFloatBr(ATitulo.ValorMoraJuros, 'R$ #,##0.00 ao mês')
  else if (ATitulo.CodigoMoraJuros = cjTaxaDiaria) then
    ATipoJuros := FloatToStr(ATitulo.ValorMoraJuros) + '% ao dia';
  
  if ATitulo.DataMoraJuros <> 0 then
  begin
    if ATitulo.Vencimento = ATitulo.DataMoraJuros then
      AJurosQuando := 'após o vencimento'
    else
      AJurosQuando := 'a partir de '+FormatDateTime('dd/mm/yyyy',ATitulo.DataMoraJuros);
  end;(* else
    AJurosQuando := ' por dia de atraso';*) //TK-4612

  Result := ACBrStr(Format('Cobrar juros de %s de atraso para pagamento %s.',[ATipoJuros,AJurosQuando]));
end;

 

  • Consultores
Postado

Boa tarde

antes peço que veja as particularidades dos bancos aqui

https://acbr.sourceforge.io/ACBrLib/Particularidades.html

e por segundo anexe a unit alterada e onde no manual do banco  da febraban se baseou para a mudança

 

Consultora ACBr Pro

Juliomar Marchetti

Ajude o Projeto ACBr crescer - Seja Pro

discord: juliomar
telegram: juliomar
e-mail: [email protected]
http://www.juliomarmarchetti.com.br

 

MVP_NewLogo_100x100_Transparent-02.png
Projeto ACBr - A maior comunidade Open Source de Automação Comercial do Brasil


Participe de nosso canal no Discord e fique ainda mais próximo da Comunidade !!

Postado

Eu não segui nenhum manual, e sim a logica do campo.

Se o campo é preenchido com cjValorDia, então não é porcentagem. sendo assim estava saindo com informação errada, o que era no meu caso o valor era de R$ 25,00 reais por dia, e na impressão do boleto estava saindo 25% creio eu que não precise de manual para constatar que isso é um erro.

 

att.

ACBrBoleto.pas

  • Membro Pro Verificado
Postado

Boa tarde 

Fiz a atualização utilizando AcbrBoleto do nosso amigo RauberGabri

 

53 minutos atrás, Valtencir Campos disse:

Boa tarde

Neste momento, um cliente relatou esse mesmo problema.

Onde, a taxa diária representada por cjTaxaDiaria esta sendo impressa como R$ e não percentual.

Valeu.

Tudo certo agora.

  • Este tópico foi criado há 781 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.

The popup will be closed in 10 segundos...