Ir para conteúdo
  • Cadastre-se

dev botao

Unable to create directory [] e TBoletoWSClassMetodo Gerar Remessa nao Implementado


Recommended Posts

Boa tarde!!

Será que alguem poderia me ajudar com o ACBrBoleto?

Estou tentando implementar e emissão do boleto com o ACBrBoleto para o Banco do Brasil, já tendo inclusive obtido as credenciais de teste com o BB, tais como (Client ID, Client Secret, Key user).

Realizei todas as configurações de acordo com a as informações da biblioteca do ACBrBoleto e as sugestões vindas na Demo [AcbrBoletoDemo].

O erro "raised exception class EACBrBoletoWSException with message 'TBoletoWSClassMetodo Gerar Remessa nao Implementado'", ocorre na chamada do método [Boleto.Enviar].

A seguir o trecho do código para realizar o Registro On Line do Boleto. Acho que é isso né?

------------------------
procedure TfmBoleto.btnWSRegistrarClick(Sender: TObject);
var  
    Boleto : TACBrBoleto;
    NumRemessa : string;
begin
      Boleto := ACBrBoleto;

      NumRemessa := '1';

      Boleto.DirArqRemessa := edtPathRemessa.Text;
      Boleto.GerarRemessa(StrToInt64Def(NumRemessa,0));
      Boleto.Configuracoes.WebService.Operacao := tpInclui;
      Boleto.Enviar; // <<< retorna como false se o httpresult code for diferente de 200,201,202

...
-------------------------

Antes de chegar nesse erro, ao tentar Enviar o boleto, ocorria o erro a seguir:

exception class EInOutError with message 'Unable to create directory []'.

Por tentativa e erro, tentei colocar um path qualquer na propriedade abaixo, achando que por essa propriedade estar em branco.

ACBRBoleto.configuracoes.Arquivos.PathGravarRegistro

Bom depois disso, estou aqui pedindo um SOS com esse erro: TBoletoWSClassMetodo Gerar Remessa nao Implementado.

Agradeço muito se puderem me auxiliar nisso.

 

 

Link para o comentário
Compartilhar em outros sites

Bom dia Renato!

O Layout a que você se refere é o Layout Fortes Report? 
Se for, está selecionado o <IPadrao>.
Se for o Layout CNAB, tentei nos dois (CNAB240 e CNAB400).

Tentei fazer o Registro Online pelo programa de exemplo mas o mesmo problema ocorre.

Depurando dá pra ver a exception abaixo. Se não depurar apenas uma mensagem [Retorno Envio gerado em: C:\ACBr\trunk2\Exemplos\ACBRBoleto\D...\RetornoRegistro.txt]. Estou anexando o arquivo RetornoRegistro.txt aqui.
-------------------------------------------------------
Project AcbrBoletoDemo.exe raised exception class EACBrBoletoWSException with message 'TBoletoWSClassMetodo Gerar Remessa nao Implementado '.
-------------------------------------------------------

Um arquivo de Log também é gerado (ArqBoletoWS.log) com a seguinte mensagem:
21/03/24 09:12:10:580 - Falha Envio: TBoletoWSClassMetodo Gerar Remessa não Implementado 

Investigando um pouco mais, verifiquei que existe o método relacionado na Unit ACBrBoletoWS.pas na pasta dos fontes do ACBrBoleto: C:\ACBr\trunk2\Fontes\ACBrBoleto\

Esses métodos estão basicamente programados para responder com a mensagem que estou recebendo.

Veja os métodos:

--- Variáveis configuradas para a mensagem------------- 
ResourceString
  S_METODO_NAO_IMPLEMENTADO       =  'Metodo %s nao Implementado ';
  S_OPERACAO_NAO_IMPLEMENTADO     =  'Operação %s nao Implementado para este Banco';
  S_ERRO_GERAR_TOKEN_AUTENTICACAO = 'Erro ao gerar token de Autenticação: %s';
-------------------------------------------------------

--- Métodos Relacionados com GerarRemessa-------------- 
function TBoletoWSClass.GerarRemessa: String;
begin
  Result := '';
  raise EACBrBoletoWSException.Create(ACBrStr(ClassName + Format( S_METODO_NAO_IMPLEMENTADO, [C_GERAR_REMESSA] )));
end;

function TBoletoWSClass.Enviar: Boolean;
begin
  Result := False;
  raise EACBrBoletoWSException.Create(ACBrStr(ClassName + Format( S_METODO_NAO_IMPLEMENTADO, [C_ENVIAR] )));
end;
---------------------------------------------

RetornoRegistro.txt

Link para o comentário
Compartilhar em outros sites

  • Moderadores

Ele disse sobre o banco em si que parece não estar configurado

ou o que tu configurou não tem essa função implementa ou até mesmo não existe e por isso não foi implementada

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

13 minutos atrás, Juliomar Marchetti disse:

Ele disse sobre o banco em si que parece não estar configurado

ou o que tu configurou não tem essa função implementa ou até mesmo não existe e por isso não foi implementada

Mas o banco está configurado: cobBancoDoBrasil. 

Então o Registro Online para o Banco do Brasil não está implementado no ACBrBoleto?

Alguma outra sugestão?

Link para o comentário
Compartilhar em outros sites

  • Moderadores
3 minutos atrás, [email protected] disse:

Mas o banco está configurado: cobBancoDoBrasil. 

Então o Registro Online para o Banco do Brasil não está implementado no ACBrBoleto?

Alguma outra sugestão?

sim tem . mas dai não é só dizer isso tem que dizer os dados do WS ou API e mais algumas coisas.

conforme no exemplo

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

  • Moderadores
5 minutos atrás, [email protected] disse:

Tá bom, voce pode me ajudar? Posso fornecer o que precisar pra fazer isso funcionar.

pega o exemplo do svn e preenche os dados conforme tem lá para registro online e preenche com dados de seu cliente ou seu no caso e gera lá

 

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

  • Moderadores

primeiro tu só compilou e jogou ali e não olhou no contexto?

olha ´so essa imagem aqui e veja se lhe ajuda pois como falei o exemplo está ali com tudo

image.png

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

9 minutos atrás, Juliomar Marchetti disse:

primeiro tu só compilou e jogou ali e não olhou no contexto?

olha ´so essa imagem aqui e veja se lhe ajuda pois como falei o exemplo está ali com tudo

image.png

Você está correto. Peço desculpas pois não vi que tinha cobBancoDoBrasilAPI. 

Já fiz um teste e agora já tenho um arquivo RetornoRegistro.txt diferente. 
Acho que precisarei verificar com o banco sobre a mensagem abaixo né?

---------------
Cod_Retorno=
Msg_Retorno=
Ori_Retorno=
HTTP_Result=400
JSON={"erros":[{"codigo":"3646865","ocorrencia":"Du\/dVmHUvWsH6fkWtAvg0101","mensagem":"Opera\u00e7\u00e3o n\u00e3o permitida pois o boleto n\u00e3o pertence ao conv\u00eanio do usu\u00e1rio.","versao":"1"}]}
[Rejeicao0]
Campo=
Codigo=3646865
Versao=1
Mensagem=Operação não permitida pois o boleto não pertence ao convênio do usuário.
Ocorrencia=Du/dVmHUvWsH6fkWtAvg0101
Valor=
---------------
 

 

Link para o comentário
Compartilhar em outros sites

2 horas atrás, [email protected] disse:

Você está correto. Peço desculpas pois não vi que tinha cobBancoDoBrasilAPI. 

Já fiz um teste e agora já tenho um arquivo RetornoRegistro.txt diferente. 
Acho que precisarei verificar com o banco sobre a mensagem abaixo né?

---------------
Cod_Retorno=
Msg_Retorno=
Ori_Retorno=
HTTP_Result=400
JSON={"erros":[{"codigo":"3646865","ocorrencia":"Du\/dVmHUvWsH6fkWtAvg0101","mensagem":"Opera\u00e7\u00e3o n\u00e3o permitida pois o boleto n\u00e3o pertence ao conv\u00eanio do usu\u00e1rio.","versao":"1"}]}
[Rejeicao0]
Campo=
Codigo=3646865
Versao=1
Mensagem=Operação não permitida pois o boleto não pertence ao convênio do usuário.
Ocorrencia=Du/dVmHUvWsH6fkWtAvg0101
Valor=
---------------
 

 

O campo codigo no conteúdo do JSON ("codigo":"3646865"), é o código de erro?

Link para o comentário
Compartilhar em outros sites

1 minuto atrás, Juliomar Marchetti disse:

Não lembro. faz tempo que li a documentação.

tu tem ela em mãos? acho que já diz na sessão de retornos

Não tenho. Voce pode me mandar (ou o link)? 

Sem falar que agora já estou experimentando outro erro, mas só vejo se for depurando.

exception class EJsonParserException with message 'Expected "{" but found value (1, 24)'.

E no log vejo esse retorno:

Cod_Retorno=
Msg_Retorno=
Ori_Retorno=
HTTP_Result=401
JSON={"statusCode":401,"error":"Unauthorized","message":"Bad Credentials","attributes":{"error":"Bad Credentials"}}
[Rejeicao0]
Campo=
Codigo=401
Versao=Unauthorized
Mensagem=Bad Credentials
Ocorrencia=
Valor=
 

Link para o comentário
Compartilhar em outros sites

  • Moderadores
32 minutos atrás, [email protected] disse:

Não tenho. Voce pode me mandar (ou o link)? 

Sem falar que agora já estou experimentando outro erro, mas só vejo se for depurando.

exception class EJsonParserException with message 'Expected "{" but found value (1, 24)'.

E no log vejo esse retorno:

Cod_Retorno=
Msg_Retorno=
Ori_Retorno=
HTTP_Result=401
JSON={"statusCode":401,"error":"Unauthorized","message":"Bad Credentials","attributes":{"error":"Bad Credentials"}}
[Rejeicao0]
Campo=
Codigo=401
Versao=Unauthorized
Mensagem=Bad Credentials
Ocorrencia=
Valor=
 

as credenciais não batem

usei o google e veja o link

https://www.bb.com.br/site/developers/

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

22 horas atrás, [email protected] disse:

Eu tenho um acesso developer lá, mas não achei como verificar as credenciais.

Bom dia!
Ainda tentando emitir o primeiro boleto...

Olhando o Log (ArqBoletoWS.log) gerado pelo ACBrBoleto, percebi que ele tenta autenticar por Token.
Sei que o BB poderia gerar esse token, mas não sei como passar ele para o componente.
Isso é possível?

----Os dados abaixo são fictícios conforme orientação do suporte BB developer.
22/03/24 13:21:57:494 - Autenticando Token... 

22/03/24 13:21:58:026 - Comando Enviar: {"numeroConvenio":3364339,"numeroCarteira":17,"numeroVariacaoCarteira":19,"codigoModalidade":1,"dataEmissao":"22.03.2024","dataVencimento":"30.12.1899","valorOriginal":5,"valorAbatimento":5,"codigoAceite":"N","codigoTipoTitulo":2,"descricaoTipoTitulo":"DM","numeroTituloBeneficiario":"0000000001","campoUtilizacaoBeneficiario":"","numeroTituloCliente":"00033643390000012345","mensagemBloquetoOcorrencia":"","jurosMora":{"tipo":3},"pagador":{"tipoInscricao":2,"numeroInscricao":74910037000193,"nome":"TECIDOS FARIA DUARTE","endereco":"RUA XXX 1","cep":0,"cidade":"DIADEMA","bairro":"JARDIM XXX","uf":"SP"},"indicadorPix":"N"}

22/03/24 13:21:58:435 - Retorno Envio: HTTPCode=401
Result={ "statusCode": 401, "error": "Unauthorized", "message": "Bad Credentials", "attributes": { "error": "Bad Credentials" } }

Link para o comentário
Compartilhar em outros sites

  • 2 semanas depois ...

Senhores bom dia!

Será que poderiam me ajudar?

Ainda não consegui ter sucesso pra homologar a emissão de boleto com o Banco do Brasil.

Conforme orientação do suporte do Developer do BB devo usar os dados fictícios.
Ok estou usando, porém ao tentar ao tentar registrar o boleto online para os dois casos (cobBancoDoBrasilAPI e cobBancoDoBrasilWS), ocorrem os retornos no Log (ArqBoletoWS.log) que descrevo a seguir.

---------cobBancoDoBrasilAPI----------
02/04/24 10:49:09:780 - Autenticando Token... 
02/04/24 10:49:10:316 - Comando Enviar: {"numeroConvenio":3128557,"numeroCarteira":17,"numeroVariacaoCarteira":35,"codigoModalidade":1,"dataEmissao":"02.04.2024","dataVencimento":"19.04.2024","valorOriginal":5,"valorAbatimento":5,"codigoAceite":"N","codigoTipoTitulo":2,"descricaoTipoTitulo":"DM","numeroTituloBeneficiario":"0000000001","campoUtilizacaoBeneficiario":"","numeroTituloCliente":"00031285570000012345","mensagemBloquetoOcorrencia":"","jurosMora":{"tipo":3},"pagador":{"tipoInscricao":1,"numeroInscricao":97965940132,"nome":"ODORICO PARAGUASSU ","endereco":"Avenida Dias Gomes 1970","cep":77458000,"cidade":"SUCUPIRA","bairro":"CENTRO","uf":"TO"},"indicadorPix":"N"}
02/04/24 10:49:10:599 - Retorno Envio: HTTPCode=401
Result={ "statusCode": 401, "error": "Unauthorized", "message": "Bad Credentials", "attributes": { "error": "Bad Credentials" } }

O suporte do BB informou conforme segue. No entanto, não sei como informar o Token mencionado por eles.

["Normalmente o erro “Bad Credentials” é devolvido quando o Token informado no Authorization do Header não é válido.

Verifique se:

O Token está expirado, sendo necessário gerar um novo
Não está sendo informado um token
Não está sendo informado um token válido."]

Tentando via cobBancoDoBrasilWS:

---------cobBancoDoBrasilWS----------
02/04/24 10:49:30:591 - Comando Enviar: <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:sch="http://www.tibco.com/schemas/bws_registro_cbr/Recursos/XSD/Schema.xsd"><soapenv:Header/><soapenv:Body><sch:requisicao><sch:numeroConvenio>3128557</sch:numeroConvenio><sch:numeroCarteira>17</sch:numeroCarteira><sch:numeroVariacaoCarteira>35</sch:numeroVariacaoCarteira><sch:codigoModalidadeTitulo>1</sch:codigoModalidadeTitulo><sch:dataEmissaoTitulo>02.04.2024</sch:dataEmissaoTitulo><sch:dataVencimentoTitulo>19.04.2024</sch:dataVencimentoTitulo><sch:valorOriginalTitulo>5.00</sch:valorOriginalTitulo><sch:codigoTipoDesconto>2</sch:codigoTipoDesconto><sch:dataDescontoTitulo>30.12.1899</sch:dataDescontoTitulo><sch:percentualDescontoTitulo>5.0000</sch:percentualDescontoTitulo><sch:valorAbatimentoTitulo>5.00</sch:valorAbatimentoTitulo><sch:codigoTipoJuroMora>0</sch:codigoTipoJuroMora><sch:valorJuroMoraTitulo>5.00</sch:valorJuroMoraTitulo><sch:codigoTipoMulta>0</sch:codigoTipoMulta><sch:codigoAceiteTitulo>N</sch:codigoAceiteTitulo><sch:codigoTipoTitulo>2</sch:codigoTipoTitulo><sch:textoDescricaoTipoTitulo>DM</sch:textoDescricaoTipoTitulo><sch:indicadorPermissaoRecebimentoParcial>N</sch:indicadorPermissaoRecebimentoParcial><sch:textoNumeroTituloBeneficiario/><sch:textoCampoUtilizacaoBeneficiario>3128557</sch:textoCampoUtilizacaoBeneficiario><sch:codigoTipoContaCaucao>0</sch:codigoTipoContaCaucao><sch:textoNumeroTituloCliente>00031285570000012345</sch:textoNumeroTituloCliente><sch:codigoTipoInscricaoPagador>1</sch:codigoTipoInscricaoPagador><sch:numeroInscricaoPagador>97965940132</sch:numeroInscricaoPagador><sch:nomePagador>ODORICO PARAGUASSU</sch:nomePagador><sch:textoEnderecoPagador>Avenida Dias Gomes</sch:textoEnderecoPagador><sch:numeroCepPagador>77458000</sch:numeroCepPagador><sch:nomeMunicipioPagador>SUCUPIRA</sch:nomeMunicipioPagador><sch:nomeBairroPagador>CENTRO</sch:nomeBairroPagador><sch:siglaUfPagador>TO</sch:siglaUfPagador><sch:codigoChaveUsuario>152439a8a7feff77dea3e1f220587384</sch:codigoChaveUsuario><sch:codigoTipoCanalSolicitacao>5</sch:codigoTipoCanalSolicitacao></sch:requisicao></soapenv:Body></soapenv:Envelope>
02/04/24 10:49:30:843 - Retorno Envio: HTTPCode=0
Result=<?xml version="1.0" encoding="UTF-8"?><SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"><SOAP-ENV:Body><SOAP-ENV:Fault><faultcode xmlns="">SOAP-ENV:Server</faultcode><faultstring xmlns="">This is an operation implementation generated fault</faultstring><faultactor xmlns=""/><detail xmlns=""><ns:erro xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ns="http://www.tibco.com/schemas/bws_registro_cbr/Recursos/XSD/Schema.xsd" xmlns:ns0="http://schemas.xmlsoap.org/soap/envelope/"><ns:Mensagem>Dados de entrada inválidos.</ns:Mensagem></ns:erro></detail></SOAP-ENV:Fault></SOAP-ENV:Body></SOAP-ENV:Envelope>

Agradeço se puderem dar uma luz.

Link para o comentário
Compartilhar em outros sites

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.