Jump to content

Dias de Protesto imprimindo errado AcbrBoleto


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

Recommended Posts

Boa noite

 

Estou homologando o sistema da empresa para geração de boletos do Banco do Brasil e estou com um problema na impressão da Instrução de protesto.

Defini o título para protestar em dias úteis e defini a data de protesto

Ex:  Data de Vencimento = 21/07/2016, Data de Protesto = 28/07/2016 (05 Dias Úteis após o Vencimento).

O problema é que a impressão da instrução de protesto está incorreta:

Protestar no 7 dia útil após o vencimento

Observando o arquivo AcbrBoleto.pas, na procedure TACBrBoleto.AdicionarMensagensPadroes(Titulo: TACBrTitulo;  AStringList: TStrings) , verifiquei que está sendo dado o mesmo tratamento para o cálculo de dias corridos e dias úteis.

with Titulo do
   begin
      if DataProtesto <> 0 then
      begin
         if TipoDiasProtesto = diCorridos then
            AStringList.Add(ACBrStr('Protestar em ' + IntToStr(DaysBetween(Vencimento, DataProtesto))+ ' dias corridos após o vencimento'))
         else
            AStringList.Add(ACBrStr('Protestar no ' + IntToStr(DaysBetween(Vencimento, DataProtesto))+ ' dia útil após o vencimento'));
      end;      
	(...)
end;

 

Alguém pode me dizer se eu estou fazendo alguma coisa errada ou se não estaria correto utilizar a função DaysBetween() para obter o número de dias úteis?

 

Obrigado

Link to comment
Share on other sites

  • 2 weeks later...
  • Membros Pro

Caro Joabe Geraldo,

Também me deparei com esse problema, e para corrigir adicionei um campo novo e modifiquei a linha que gera o texto para o boleto:

Citar

   with Titulo do
   begin
      if DataProtesto <> 0 then
      begin
         if TipoDiasProtesto = diCorridos then
            AStringList.Add(ACBrStr('Protestar em ' + IntToStr(DaysBetween(Vencimento, DataProtesto))+ ' dias corridos após o vencimento'))
         else
            AStringList.Add(ACBrStr('Protestar no ' + IntToStr(DiasUteisProtesto)+ ' dia útil após o vencimento'));
      end;

      ( . . . )

   end;

Peço a gentileza ao pessoal do ACBr de adicionar assim que possível a alteração no repositório.

Desde já muito obrigado!

ACBrBoleto.pas

Link to comment
Share on other sites

  • 1 month later...

Também me deparei com a mesma situação em relação a Protesto em Dias Úteis, todavia não podemos esquecer que a simples alteração na instrução de protesto impressa no boleto precisa ser condizente com a instrução de protesto da remessa. E é ai que a coisa se complica pois cada banco tem suas particularidades, alguns possuem opção para informar se será em dias úteis ou dias corridos, outros pedem a data de protesto, outros por "primeira ou segunda Instrução/Comando" e talvez eu tenha esquecido mais alguma. Infelizmente a única maneira de resolver tal situação integralmente seria a revisão de todas as Units de geração de remessas baseando-se na ultima versão do layout de cada tipo de cobrança para cada Banco, o que complica é reunir todos os layouts atualizados, pois a maioria dos Bancos não o disponibilizam em seus sites, e ao solicitar junto ao gerente de alguma agência, nem sempre lhe enviam a versão mais recente.

Link to comment
Share on other sites

  • Membros Pro

Caro Everson, entendo a sua preocupação, no entanto acredito que os parâmetros de integração com os bancos já estejam bem resolvidos. A unica pendencia realmente era o texto do boleto, onde não tem como chegar na quantidade de dias uteis a partir da data do protesto que é o parâmetro utilizado pelo componente, isso considerando feriado municipais.

Link to comment
Share on other sites

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

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.