Jump to content

dev botao

Memory Leaks no boleto Inter


Go to solution Solved by Daniel InfoCotidiano,
  • Este tópico foi criado há 208 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

  • Membros Pro
Posted

Recentemente atualizei os componentes para emitir boletos híbridos no banco Inter e obtive vazamentos de memória conforme segue abaixo.

Nos outros bancos não teve problema, só no banco Inter.

Ele ocorre sempre que faço uma consulta detalhada ou no caso de transmissão de um novo boleto.

13 - 20 bytes: TJsonArray x 1, TACBrJSONObject x 40, TList x 40, UnicodeString x 7, Desconhecida x 4
21 - 36 bytes: TJsonObject x 8, UnicodeString x 36, Desconhecida x 12
37 - 52 bytes: UnicodeString x 8, Desconhecida x 1
53 - 68 bytes: UnicodeString x 1
69 - 84 bytes: UnicodeString x 2
85 - 100 bytes: UnicodeString x 1
101 - 116 bytes: UnicodeString x 2, Desconhecida x 2
181 - 212 bytes: Desconhecida x 1
245 - 276 bytes: Desconhecida x 1
389 - 436 bytes: UnicodeString x 1

No anexo vai o arquivo completo.

MemoryManager_EventosLog.txt

  • Like 1
  • Membros Pro
Posted

Daniel,

em tempo, ainda encontrei um problema na unit ACBrBoletoRet_Inter_API.pas em:

procedure TRetornoEnvio_Inter_API.LerRetornoPix(const ARetornoWS: TACBrBoletoRetornoWS; AIndex: Integer);

...

Na linha onde está 'valorTotalRecebimento' deveria estar 'valorTotalRecebido'.

       ARetornoWS.DadosRet.TituloRet.ValorPago     := LJsonObjectItem.AsJSONObject['cobranca'].AsCurrency['valorTotalRecebido'];//valorTotalRecebimento
    

Meus boletos não estavam baixando devido o valor pago estar permanecendo zerado.

  • Like 1
  • Membros Pro
Posted

Outra coisa é que na mesma sequência o retorno de LJsonObjectItem.AsJSONObject['cobranca'].AsString['situacao'] está vindo como 'RECEBIDO' quando é liquidada. O código abaixo não pega esta situação;

            if (LSituacao = C_CANCELADO) or (LSituacao = C_EXPIRADO) or
              (LSituacao = C_PAGO) or (LSituacao = C_EXPIRADO) or
              (LSituacao = C_MARCADO_RECEBIDO) then
            begin
              ARetornoWS.DadosRet.TituloRet.DataBaixa := DateIntertoDateTime(LJsonObjectItem.AsJSONObject['cobranca'].AsString['dataSituacao']);
            end;

 

  • Consultores
Posted
5 minutos atrás, Eduardo casotti disse:

Outra coisa é que na mesma sequência o retorno de LJsonObjectItem.AsJSONObject['cobranca'].AsString['situacao'] está vindo como 'RECEBIDO' quando é liquidada. O código abaixo não pega esta situação;

lembrando que isso ja funcionava.
Os retornos do pix sao tratados LerRetornoPix, LerListaRetornoPix

 

Consultor SAC ACBr

Daniel de Morais (Infocotidiano)
Ajude o Projeto ACBr crescer - Assine o SAC

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

  • Consultores
Posted

Estava alterando aqui, sera q vc pode testar com suas credenciais, vou te enviar aqui.

ACBrBoletoConversao.pas salve em ..\ACBr\Fontes\ACBrBoleto


ACBrBoletoW_Inter_API.pas   ACBrBoletoRet_Inter_API.pas  salve em ..\ACBr\Fontes\ACBrBoleto\WS


Só rodar o instalador do ACbr por favor.

Por enq só mudei das consultas da versão PIX.

Vamos ter agora as situacao isbAberto isbBaixado isbCancelado
baixado e cancelado, filtro dataMovimento
isbAberto: filtro dataVencimento ele tbm vai usar a opcao Filtro.boletoVencido ibvSim/ibvNao  (ele procura por data de vencimento boletos a receber ou vencidos)

sbAberto: filtro dataRegistro ele consulta por data emissao os boletos em aberto

ACBrBoletoRet_Inter_API.pas

Consultor SAC ACBr

Daniel de Morais (Infocotidiano)
Ajude o Projeto ACBr crescer - Assine o SAC

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

  • Consultores
  • Solution
Posted

Por favor atualize seus fontes, pelo SVN do ACBr... 

Já subimos para o nosso repositório de fontes, modificações que podem corrigir algum dos itens referentes a esse tópico...

Por favor atualize seus fontes, faça testes, e se possível comente em uma nova resposta, se o problema foi resolvido...

Dúvidas, sobre o uso do SVN ?  Clique aqui e veja um vídeo

Consultor SAC ACBr

Daniel de Morais (Infocotidiano)
Ajude o Projeto ACBr crescer - Assine o SAC

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

×
×
  • 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.