Ir para conteúdo
  • Cadastre-se

Recommended Posts

Postado

Ajuste no retorno de consulta em lote do Asaas - LerListaRetorno

Identifiquei um problema na unit ACBrBoletoRet_Asaas, no método TRetornoEnvio_Asaas.LerListaRetorno.

Na consulta de cobranças do Asaas, a API retorna uma estrutura de lista, onde os dados gerais da paginação ficam no JSON raiz, e os dados de cada cobrança ficam dentro do array data[].

No método LerListaRetorno, dentro do loop do array data[], alguns campos da cobrança estavam sendo lidos a partir do objeto raiz LJSON:

ListaRetorno.DadosRet.TituloRet.ValorDocumento := LJSON.AsFloat['originalValue'];
ListaRetorno.DadosRet.TituloRet.ValorDocumento := LJSON.AsFloat['value'];
ListaRetorno.DadosRet.TituloRet.ValorAtual     := LJSON.AsFloat['value'];
ListaRetorno.DadosRet.TituloRet.ValorPago      := LJSON.AsFloat['value'];
ListaRetorno.DadosRet.TituloRet.ValorRecebido  := LJSON.AsFloat['netValue'];

Porém esses campos não existem no objeto raiz. Eles pertencem ao objeto da cobrança atual, obtido por:

LJSONObject := LJSONArray.ItemAsJSONObject[I];

Com isso, em consultas de retorno/listagem, os valores de ValorDocumento, ValorAtual, ValorPago e ValorRecebido podiam vir zerados, mesmo a API retornando value/netValue corretamente dentro de data[].

A correção foi alterar a leitura desses campos para usar LJSONObject.

Motivo da alteração:

- LJSON representa a resposta completa/lista/paginação.
- LJSONObject representa a cobrança atual dentro de data[].
- Os campos value, netValue e originalValue são propriedades da cobrança, não da resposta raiz.

Com esse ajuste, a consulta em lote do Asaas passa a preencher corretamente os valores da cobrança retornada, permitindo processar baixas/retornos com os valores corretos.

atuação.png

atual.png

ACBrBoletoRet_Asaas.pas

  • Consultores
Postado

Boa  noite

validado no manual 

no svn

At revision: 46905

 

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 !!

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