Membros Pro Desenv. AT Info Sistemas Postado Terça as 11:58 Membros Pro Compartilhar Postado Terça as 11:58 Bom dia, Comecei usar o novo componente ACBrExtratoAPI para o Banco do Brasil. Estou tento problema para consultar o extrato para as datas quando o dia é menor que 10, olhando a documentação do banco notei que deve ser enviada a data sem zeros a esquerda, por exemplo: Dia 01/09/2024 deve ser enviado 1092024. Segue página da documentação. https://apoio.developers.bb.com.br/referency/post/647f6e28dcefbe001288865e Link para o comentário Compartilhar em outros sites More sharing options...
Consultores EliasCesar Postado Terça as 12:02 Consultores Compartilhar Postado Terça as 12:02 Bom dia @Desenv. AT Info Sistemas Esse problema já devia estar corrigido. Verifique se seus fontes estão atualizados. 2 Elias César Vieira Projeto ACBr - A maior comunidade Open Source de Automação Comercial do Brasil Assine o SAC Link para o comentário Compartilhar em outros sites More sharing options...
Membros Pro Desenv. AT Info Sistemas Postado Terça as 14:18 Autor Membros Pro Compartilhar Postado Terça as 14:18 Bom dia! Atualizei e resolveu esse problema, agora estou fazendo a importação dos dados. Tentei seguir o programa exemplo, mas estou com dificuldade para importar os números dos documentos dos extratos, no exemplo está utilizando a classe geral de Lançamentos e não possui o campo numero do documento, olhando os fontes no banco do Brasil trata esse campo. Como posso fazer para ler na importação o numero do documento? Classe geral: TACBrExtratoLancamento = class private fpDataLancamento: TDateTime; fpDataMovimento: TDateTime; fpDescricao: String; fpInfoComplementar: String; fpTipoOperacao: TACBrExtratoAPITipoOperacao; fpValor: Double; Classe Banco Brasil TACBrExtratoBBLancamento = class(TACBrAPISchema) private fcodigoAgenciaContrapartida: Integer; fcodigoAgenciaOrigem: Integer; fcodigoBancoContrapartida: Integer; fcodigoHistorico: String; fdataLancamento: TDateTime; fdataMovimento: TDateTime; findicadorTipoLancamento: Integer; fnumeroContaContrapartida: String; fnumeroCpfCnpjContrapartida: Integer; fnumeroDocumento: Integer; fnumeroLote: Integer; ftextoDescricaoHistorico: String; ftextoDvContaContrapartida: String; ftextoInformacaoComplementar: String; fvalorLancamento: Double; findicadorSinalLancamento: TACBrExtratoAPITipoOperacao; findicadorTipoPessoaContrapartida: TACBrExtratoBBTipoPessoa; Link para o comentário Compartilhar em outros sites More sharing options...
Membros Pro Desenv. AT Info Sistemas Postado Quarta as 13:19 Autor Membros Pro Compartilhar Postado Quarta as 13:19 Bom dia, Como falei acima, preciso de uma ajuda para buscar o retorno com os dados do Extrato do Banco do Brasil, pois como está no programa exemplo com o retorno da classe geral eu não tenho alguns dados que preciso como o número do documento. Link para o comentário Compartilhar em outros sites More sharing options...
Fundadores Daniel Simoes Postado Quarta as 21:46 Fundadores Compartilhar Postado Quarta as 21:46 Você poderia usar TypeCast... mas se fizer isso, o seu código ficará funcional, apenas para a API do Banco do Brasil, pois as demais classes filhas, podem não ter todas as mesmas propriedades @EliasCesar, Porque foi necessário separar TACBrExtratoLancamento e TACBrExtratoBBLancamento ? Como você pensa em especificar, as classes dos demais bancos ? Daniel Simões de Almeida O melhor TEF, é com o Projeto ACBr - Clique e Conheça Ajude o Projeto ACBr crescer - Assine o SAC (15) 2105-0750 (15)99790-2976. Link para o comentário Compartilhar em outros sites More sharing options...
Consultores EliasCesar Postado Quinta as 11:54 Consultores Compartilhar Postado Quinta as 11:54 Bom dia pessoal, Foi criada a classe TACBrExtratoLancamento que possui os campos em comum entre as respostas dos Bancos que já implementamos. Ela poderia ser alterada para abranger esse campo específico, porém não seria preenchida na implementação dos demais Bancos. 14 horas atrás, Daniel Simoes disse: Como você pensa em especificar, as classes dos demais bancos ? Todos os bancos possuirão uma classe específica de resposta do lançamento, e após a consulta precisarão converter esse conteúdo para a nossa classe padrão TACBrExtratoLancamento 22 horas atrás, Desenv. AT Info Sistemas disse: preciso de uma ajuda para buscar o retorno com os dados do Extrato do Banco do Brasil Uma alternativa é fazer um typecast, como o Daniel citou. Algo como: if (ACBrExtratoAPI1.BancoConsulta = bccBancoDoBrasil) then for i := 0 to Pred(ACBrExtratoAPI1.ExtratoConsultado.Lancamentos.Count) do wNumDocto := TACBrExtratoBBLancamento(ACBrExtratoAPI1.ExtratoConsultado.Lancamentos[i]).numeroDocumento; Elias César Vieira Projeto ACBr - A maior comunidade Open Source de Automação Comercial do Brasil Assine o SAC Link para o comentário Compartilhar em outros sites More sharing options...
Membros Pro Desenv. AT Info Sistemas Postado Quinta as 12:20 Autor Membros Pro Compartilhar Postado Quinta as 12:20 Bom dia, Mas acredito que o Numero do Documento terá em todos os demais bancos, pois se trata de um campo principal do documento, alguns poderão retornar em um campo com nome diferente, como 'Seu numero', 'Numero documento', 'Documento'. Acredito que poderia add o campo Numero do Documento na classe principal. 1 Link para o comentário Compartilhar em outros sites More sharing options...
Fundadores Daniel Simoes Postado Quinta as 12:21 Fundadores Compartilhar Postado Quinta as 12:21 O Número do Documento deveria ser um dado Importante, e disponível a todas as Classes Daniel Simões de Almeida O melhor TEF, é com o Projeto ACBr - Clique e Conheça Ajude o Projeto ACBr crescer - Assine o SAC (15) 2105-0750 (15)99790-2976. Link para o comentário Compartilhar em outros sites More sharing options...
Consultores EliasCesar Postado Quinta as 12:35 Consultores Compartilhar Postado Quinta as 12:35 Sim, concordo que na teoria deveria vir em todos os bancos mesmo. Mas da uma olhada na resposta das transações do banco Inter: Como eu coloquei apenas os campos comum entre os bancos, acabei deixando esse campo fora. Mas vou efetuar a alteração incluindo esse campo no objeto padrão. Tem mais algum campo que vcs julguem importante que deveria estar no TACBrExtratoLancamento? daí eu ja incluo junto aqui... Elias César Vieira Projeto ACBr - A maior comunidade Open Source de Automação Comercial do Brasil Assine o SAC Link para o comentário Compartilhar em outros sites More sharing options...
Membros Pro Desenv. AT Info Sistemas Postado Quinta as 12:51 Autor Membros Pro Compartilhar Postado Quinta as 12:51 Bom dia, Acredito que seria só o campo Numero do Documento que estaria faltando. Link para o comentário Compartilhar em outros sites More sharing options...
Consultores EliasCesar Postado Quinta as 13:23 Consultores Compartilhar Postado Quinta as 13:23 Acabei de enviar essa alteração ao SVN, rev: 35389. @Desenv. AT Info Sistemas se puder por favor atualizar seus fontes e verificar se ficou ok. Elias César Vieira Projeto ACBr - A maior comunidade Open Source de Automação Comercial do Brasil Assine o SAC Link para o comentário Compartilhar em outros sites More sharing options...
Membros Pro Desenv. AT Info Sistemas Postado Quinta as 13:24 Autor Membros Pro Compartilhar Postado Quinta as 13:24 Obrigado, Vou atualizar e testar. 1 Link para o comentário Compartilhar em outros sites More sharing options...
Membros Pro Desenv. AT Info Sistemas Postado Quinta as 15:21 Autor Membros Pro Compartilhar Postado Quinta as 15:21 Boa tarde, O campo numero do documento está importando errado, ai notei que é porque ele é Integer, o correto é ser String, pois tem números de boletos que não são Inteiros, por exemplo um boleto tem número 123-1, 123-A, 123-B. Link para o comentário Compartilhar em outros sites More sharing options...
Consultores EliasCesar Postado Quinta as 17:22 Consultores Compartilhar Postado Quinta as 17:22 Conforme a documentação da API Extrato do Banco do Brasil, esse campo é Integer: E pelo que verifiquei nos meus testes, em todas as respostas da lista de lançamentos o campo também é integer: 2 horas atrás, Desenv. AT Info Sistemas disse: o correto é ser String Essa informação está em alguma documentação? Elias César Vieira Projeto ACBr - A maior comunidade Open Source de Automação Comercial do Brasil Assine o SAC Link para o comentário Compartilhar em outros sites More sharing options...
Membros Pro Desenv. AT Info Sistemas Postado Quinta as 17:47 Autor Membros Pro Compartilhar Postado Quinta as 17:47 Boa tarde Identifiquei o erro, na importação que fiz os números não bateram por exemplo no log no dia 19092024 tem um documento com número "numeroDocumento": 550911000030471 , mas o Acbr no retorno está retornando como -160060153. Deve ter algum erro na conversão de inteiro para string. Segue o log com a importação Extrato.log Link para o comentário Compartilhar em outros sites More sharing options...
Membros Pro Desenv. AT Info Sistemas Postado Quinta as 18:04 Autor Membros Pro Compartilhar Postado Quinta as 18:04 Identifiquei que aqui nessa rotina ele está com o número errado Link para o comentário Compartilhar em outros sites More sharing options...
Consultores EliasCesar Postado Quinta as 18:44 Consultores Compartilhar Postado Quinta as 18:44 Hum, esse valor estoura o limite de Integer, estou verificando como corrigir, assim que enviar a correção pro SVN aviso aqui Elias César Vieira Projeto ACBr - A maior comunidade Open Source de Automação Comercial do Brasil Assine o SAC Link para o comentário Compartilhar em outros sites More sharing options...
Membros Pro Desenv. AT Info Sistemas Postado Quinta as 18:47 Autor Membros Pro Compartilhar Postado Quinta as 18:47 Certo, O cliente me passou os dados de produção fui testar e deu erro Segue o log Extrato.log Link para o comentário Compartilhar em outros sites More sharing options...
Consultores EliasCesar Postado Quinta as 19:02 Consultores Compartilhar Postado Quinta as 19:02 Deu erro logo ao tentar solicitar o token, Provavelmente é algum problema com as credenciais/certificado ou estão faltando as DLLs da OpenSSL junto ao executável. Sobre o problema do Integer... tente trocar essa unit e fazer um novo teste por favor: ACBrExtratoAPIBB.pas Elias César Vieira Projeto ACBr - A maior comunidade Open Source de Automação Comercial do Brasil Assine o SAC Link para o comentário Compartilhar em outros sites More sharing options...
Membros Pro Desenv. AT Info Sistemas Postado Quinta as 19:17 Autor Membros Pro Compartilhar Postado Quinta as 19:17 (editado) Dll não deve ser pois uso as API de Boletos e funcionam, talvez o tipo que geraram as chaves. Utilizei o programa exemplo e deu erro ao ler os certificados. Editado Quinta as 19:26 por Desenv. AT Info Sistemas Link para o comentário Compartilhar em outros sites More sharing options...
Membros Pro Desenv. AT Info Sistemas Postado Quinta as 19:32 Autor Membros Pro Compartilhar Postado Quinta as 19:32 Quanto ao número do documento deu certo, importou corretamente. Agora precisaria descobrir o que pode ser o erro dos certificados. Link para o comentário Compartilhar em outros sites More sharing options...
Consultores EliasCesar Postado Quinta as 19:51 Consultores Compartilhar Postado Quinta as 19:51 Vi que está configurando a chave pública. O componente está esperando a chave privada. 14 minutos atrás, Desenv. AT Info Sistemas disse: Quanto ao número do documento deu certo, importou corretamente Obrigado pelo feedback. Acabei de enviar ao SVN, rev: 35396. Elias César Vieira Projeto ACBr - A maior comunidade Open Source de Automação Comercial do Brasil Assine o SAC Link para o comentário Compartilhar em outros sites More sharing options...
Membros Pro Desenv. AT Info Sistemas Postado Quinta as 19:52 Autor Membros Pro Compartilhar Postado Quinta as 19:52 Verdade, não tinha reparado. Vou pedir a chave privada. Link para o comentário Compartilhar em outros sites More sharing options...
Membros Pro Desenv. AT Info Sistemas Postado Sexta as 12:00 Autor Membros Pro Compartilhar Postado Sexta as 12:00 (editado) Bom dia, O Cliente me passou o certificado e gerei as chaves conforme este link. Mas fui testar o extrato e gerou este erro no log. Extrato.log Editado Sexta as 12:00 por Desenv. AT Info Sistemas Link para o comentário Compartilhar em outros sites More sharing options...
Membros Pro Desenv. AT Info Sistemas Postado Sexta as 12:06 Autor Membros Pro Compartilhar Postado Sexta as 12:06 A principio os certificados estão certos, no programa exemplo deu ok Link para o comentário Compartilhar em outros sites More sharing options...
Recommended Posts