Ir para conteúdo
  • Cadastre-se

dev botao

Ajuste Descrição Boleto


Ver Solução Respondido por José M. S. Junior,
  • Este tópico foi criado há 2025 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

Fiz uma pequena alteração na ACBrBoleto. Por mais que eu selecionava  "CodigoMora = 2 (% Mensal)", a descrição no boleto continuava a aparecer 'Cobrar juros de xx % por DIA de atraso' .

Segue código alterado.

Caso eu esteja fazendo algo errado, me ajudem!

 

if ValorMoraJuros <> 0 then
      begin
         if DataMoraJuros <> 0 then
            AStringList.Add(ACBrStr('Cobrar juros de '                        +
                            ifthen(((CodigoMora = '2') or (CodigoMora = 'B')), FloatToStr(ValorMoraJuros) + '% ao mês' ,
                                   FormatCurr('R$ #,##0.00 por dia',ValorMoraJuros))         +
                             ' de atraso para pagamento a partir de ' +
                             FormatDateTime('dd/mm/yyyy',ifthen(Vencimento = DataMoraJuros,
                                                                IncDay(DataMoraJuros,1),DataMoraJuros))))
         else
            AStringList.Add(ACBrStr('Cobrar juros de '                +
                                    ifthen(((CodigoMora = '2') or (CodigoMora = 'B')), FloatToStr(ValorMoraJuros) + '% ao mês',
                                           FormatCurr('R$ #,##0.00 por dia',ValorMoraJuros))         +
                             ' de atraso'));
      end;

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

  • 4 semanas depois ...

Prezados,

Essa "pequena" alteração na unit ACBrBoleto na realidade teve um impacto "grande" nas demais cobranças.

Por exemplo:
Antes para o SICOOB CNAB 400 era passado para o componente nas propriedades "CodigoMora" o valor de "2" que significa "percentual" e na propriedades "ValorMoraJuros" o valor de "0.33"
O boleto impresso ficava com o texto correto "Cobrar juros de 0,33% por dia de atraso..."
Na remessa ficava correto na posição 161 "Taxa de mora mês" onde ficava "099000"

image.thumb.png.53bb7876dc91a90b7aa615a32714f536.png
image.png.8dafb7120b9271fdfbe07e6eac6b645f.png

 

Agora se eu deixar alimentando como está, a remessa embora fique correta, o boleto não, pois o texto fica
"Cobrar juros de 0,33% ao mês de atraso..." onde o correto seria cobrar "Cobrar juros de 10% ao mês de atraso"

image.thumb.png.827ebff3b3782f4eaa1808414f43c628.png

 

Se eu alterar a propriedade "ValorMoraJuros" para o valor de "10" que é o juros ao mês o texto do boleto fica correto
"Cobrar juros de 10% ao mês de atraso..." porém a remessa fica errada "300000"

image.thumb.png.50bcdfac3505dbbc5cc0eff93aee88cd.png

image.thumb.png.acde7ff4dfe95930d3731429902bfb07.png

 

Isso porque na geração da remessa "unit ACBrBancoBancoob" ele está tratando a taxa como sendo diária e aplica um calculo para transformar em taxa mensal.

image.thumb.png.e0335a9d0d7799570df4642b0d8ea9c4.png

 

 

 

Editado por denerbuzato
  • Curtir 1
Link para o comentário
Compartilhar em outros sites

  • Moderadores

Boa tarde, Compreendi o problema... Mas o erro parece estar na Unit do banco BANCOOB em não validar o CodigoMora... para verificar se é por dia ou mensal antes de realizar esse cálculo...

Da forma que estava a mensagem no boleto estava errada...

Veja especificação padrão FEBRABAN:

image.png

image.png

Consultor SAC ACBr

José Junior
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.

Link para o comentário
Compartilhar em outros sites

Esse detalhe de usar a propriedade "CodigoMora" para "1" valor diário e "2" para taxa mensal se aplica apenas no CNAB 240

image.thumb.png.d741eadc15c7bf6bda64b574be1ae380.png

Já no CNAB 400 é apenas taxa mensal e a procedure GerarRegistroTransacao400 nem faz uso da "CodigoMora"

image.thumb.png.4e793c2d351d29f41661999e8d1c2191.png

Sendo assim, para resolver será necessário remover essa multiplicação por 30 na procedure GerarRegistroTransacao400

Ficando assim:

                  IntToStrZero( Round( (ValorMoraJuros) *10000 ), 6)      +  // Taxa de mora mês

 

Segue unit alterada para analise 

 

ACBrBancoBancoob.pas

  • Curtir 2
Link para o comentário
Compartilhar em outros sites

  • Moderadores

Correto,  mas me refiro também ao modelo do boleto no manual pela maioria dos Bancos e FEBRABAN . Se a mensagem de Juros de Mora é em "%" o padrão é Mensal.

Pelo que verifiquei para CNAB400 a maioria dos outros bancos utilizam apenas valor por dia... Por isso a mensagem da forma que estava não havia sido identificada ainda.

Mas para Bancoob, realmente causa problema da forma que está... Vamos verificar para atutualizar no SVN. Obrigado!

  • Curtir 1
Consultor SAC ACBr

José Junior
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.

Link para o comentário
Compartilhar em outros sites

Em 20/08/2018 at 15:26, denerbuzato disse:

Sendo assim, para resolver será necessário remover essa multiplicação por 30 na procedure GerarRegistroTransacao400

Ficando assim:

                  IntToStrZero( Round( (ValorMoraJuros) *10000 ), 6)      +  // Taxa de mora mês

Segue unit alterada para analise 

ACBrBancoBancoob.pas

Bom dia,

Também tive que fazer a mesma alteração.

No aguardo também!

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

  • 2 semanas depois ...
  • Moderadores
  • Solution
Em 20/08/2018 at 15:26, denerbuzato disse:

Sendo assim, para resolver será necessário remover essa multiplicação por 30 na procedure GerarRegistroTransacao400

Ficando assim:

                  IntToStrZero( Round( (ValorMoraJuros) *10000 ), 6)      +  // Taxa de mora mês

 

Segue unit alterada para analise 

Bom dia, ajuste disponível no SVN. Obrigado! 

  • Curtir 1
  • Obrigado 1
Consultor SAC ACBr

José Junior
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.

Link para o comentário
Compartilhar em outros sites

  • Este tópico foi criado há 2025 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.
Visitante
Este tópico está agora fechado para novas respostas
×
×
  • 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.