Ir para conteúdo
  • Cadastre-se

dev botao

Quantidade de Registros do Lote diferente - CRESOL


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

Recommended Posts

  • Membros Pro

Bom dia

 

Estou fazendo a homologação de boletos do CRESOL, e identifiquei uma situação. 

Quando gero pela primeira vez a remessa ela gera certinho, se eu gero mais remessas todas dão erro no validador da CRESOL.

image.png.9b9eb55f548f78b7fe08ab7a3b50ba86.png

 

Mas se eu fecho e abro o sistema, e gero as remessas funcionam certinho.

Resumindo identifiquei que depois que eu gero a primeira remessa, todas as outras dão o mesmo erro, a não ser que o sistema seja reiniciado.

Fiz alguns testes e o componente continua a contagem de registros do lote com base nas ultimas remessas geradas e não só dos boletos que estou tentando gerar naquele momento.

Exemplo:

Se gerei um arquivo com 10 linhas, a proxima vez que eu vou gerar uma remessa ele acrescenta 10 a quantidade de registros do arquivo atual, o que sempre dá essa rejeição no validador, a não ser que reinicie o sistema e gere novamente porque dai funciona corretamente.

Já trabalhamos com vários outros bancos e nunca tivemos uma situação semelhante.

 

 

Link para o comentário
Compartilhar em outros sites

  • 2 semanas depois ...
  • Moderadores

é alguma coisa que está faltando fazer no uso do componente.

verifique se está limpando os titulos e reconfigurando

usa o componente estático no form ou datamodule?

sugestão é começar estudar padrões de projeto. escrever algo com interface onde tu constroi um fabrica de componente, configura, usa e ao final ele destroi sozinho

para o proximo cria um novo objeto e assim por diante

algo do tiop segue que pedi ao chatgpt pra criar

unit BoletoFactory;

interface

uses
  ACBrBoleto;

type
  IBoletoFactory = interface
    function CreateBoleto: TACBrBoleto;
  end;

implementation

end.
unit MyBoletoFactory;

interface

uses
  BoletoFactory, ACBrBoleto;

type
  TMyBoletoFactory = class(TInterfacedObject, IBoletoFactory)
    function CreateBoleto: TACBrBoleto;
  end;

implementation

function TMyBoletoFactory.CreateBoleto: TACBrBoleto;
begin
  Result := TACBrBoleto.Create(nil); // Adjust constructor parameters as needed
end;

end.

unit Main;

interface

uses
  BoletoFactory, MyBoletoFactory, ACBrBoleto;

type
  TMainForm = class(TForm)
    // ...
  private
    FBoletoFactory: IBoletoFactory;
    FBoleto: TACBrBoleto;
    // ...
  public
    // ...
  end;

implementation

procedure TMainForm.FormCreate(Sender: TObject);
begin
  FBoletoFactory := TMyBoletoFactory.Create;
  FBoleto := FBoletoFactory.CreateBoleto;
end;

procedure TMainForm.FormDestroy(Sender: TObject);
begin
  FBoleto.Free;
end;

end.

 

Consultor SAC ACBr Juliomar Marchetti
 

Projeto ACBr

skype: juliomar
telegram: juliomar
e-mail: [email protected]
http://www.juliomarmarchetti.com.br
MVP_NewLogo_100x100_Black-02.png
 

 

Link para o comentário
Compartilhar em outros sites

  • 3 meses depois ...
  • Membros Pro

Tenho apenas um cliente que usa Cresol, por enquanto ele está gerando a remessa uma vez ao dia(final do dia). 

Mas isso esta na fila de correções do software, quando identificar o problema irei postar aqui, caso vc identifique algo compartilhe por gentileza.

 

Link para o comentário
Compartilhar em outros sites

Boa tarde.

Também estou com o mesmo problema.

Em anexo 3 arquivos de remessa(cb190901, 02, 03) com problema e depois gerei outros 3 com o arquivo corrigido(cb190912, 13, 14).

No fonte foi alterado igual ao boleto do Bradesco, alterando FNumeroSequencialRegistroNoLote pelo fpQtdRegsLote;

Todos os arquivo foram feitos no AcbrBoletoDemo.

Seque arquivo para avaliação.

 

cb190901.rem cb190902.rem cb190903.rem cb190912.rem cb190913.rem cb190914.rem ACBrBancoCresol.pas

Link para o comentário
Compartilhar em outros sites

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