Ir para conteúdo
  • Cadastre-se

DeveloperATS

Membros Pro
  • Total de ítens

    72
  • Registro em

  • Última visita

Tudo que DeveloperATS postou

  1. OK, olhando pelos fontes da DLL, parece que, dependendo da carteira utilizada, a biblioteca zera o valor silenciosamente, sem dar mensagem de erro, nem alerta, nem log. Porque a DLL não avisa ao cliente se ocorrer essa situação?
  2. Pergunta adicional, relacionada a essa: se a carteira for inválida/desconhecida, o ACBr vai lançar uma exceção avisando que está errada, ou vai jogar zero silenciosamente?
  3. Adendo: consegui obter a configuração usando o: acbrBoleto.ConfigExportar() Com o trecho de código acima, a configuração retornada é a seguinte: [Principal] TipoResposta=0 CodificacaoResposta=0 LogNivel=4 LogPath=D:\Java\BoletoAPI\Boleto\..\logs [Versao] ACBrLib=0.0.2 ACBrLibBoleto=0.2.0.168 [Sistema] Nome= Versao= Data=30/12/1899 Descricao= [Email] Nome= Servidor= Conta= Usuario= Senha= Codificacao=27 Porta=0 SSL=0 TLS=0 Timeout=0 Confirmacao=0 ConfirmacaoEntrega=0 SegundoPlano=0 Tentativas=1 IsHTML=0 Priority=1 [PosPrinter] ArqLog= Modelo=0 Porta= PaginaDeCodigo=2 ColunasFonteNormal=48 EspacoEntreLinhas=0 LinhasEntreCupons=21 CortaPapel=1 TraduzirTags=1 IgnorarTags=0 LinhasBuffer=0 ControlePorta=0 VerificarImpressora=0 TipoCorte=0 [PosPrinter_Barras] MostrarCodigo=0 LarguraLinha=0 Altura=0 Margem=0 [PosPrinter_QRCode] Tipo=2 LarguraModulo=4 ErrorLevel=0 [PosPrinter_Logo] IgnorarLogo=0 KeyCode1=32 KeyCode2=32 FatorX=1 FatorY=1 [PosPrinter_Gaveta] SinalInvertido=0 TempoON=50 TempoOFF=200 [PosPrinter_MPagina] Largura=0 Altura=0 Esquerda=0 Topo=0 Direcao=0 EspacoEntreLinhas=0 [PosPrinter_Device] Baud=9600 Data=8 Timeout=3 Parity=0 Stop=0 MaxBandwidth=0 SendBytesCount=0 SendBytesInterval=0 HandShake=0 SoftFlow=0 HardFlow=0 [Proxy] Servidor= Porta= Usuario= Senha= [SoftwareHouse] CNPJ= RazaoSocial= NomeFantasia= WebSite= Email= Telefone= Responsavel= [Emissor] CNPJ= RazaoSocial= NomeFantasia= WebSite= Email= Telefone= Responsavel= [BoletoDiretorioConfig] DataArquivo=30/12/1899 DataCreditoLanc=30/12/1899 DirArqRemessa= DirArqRetorno= DirHomologacao=0 ImprimirMensagemPadrao=0 LayoutRemessa=0 LeCedenteRetorno=0 NomeArqRemessa= NomeArqRetorno= NumeroArquivo=0 RemoveAcentosArqRemessa=0 PrefixArqRemessa= [BoletoBancoConfig] Digito=0 LayoutVersaoArquivo=2 LayoutVersaoLote=1 LocalPagamento=Pegar no lugar X Numero=0 NumeroCorrespondente=0 OrientacaoBanco= TipoCobranca=6 CasasDecimaisMoraJuros=0 CIP= [BoletoCedenteConfig] Agencia=0443 AgenciaDigito=0 Bairro=PAU MIUDO CaracTitulo=0 CEP=40310010 Cidade=SALVADOR CNPJCPF=29203140000149 CodigoCedente=123 CodigoTransmissao=789 Complemento= Conta=36896 ContaDigito=4 Convenio=123 Logradouro=AVENIDA BARROS REIS Modalidade=741 Nome=AUTO VIDROS PEIXOTO LTDA - EPP NumeroRes=438 ResponEmissao=0 Telefone=(71) 3018-1172 TipoCarteira=0 TipoDocumento=0 TipoInscricao=1 UF=BA DigitoVerificadorAgenciaConta= IdentDistribuicao=1 Operacao= [BoletoBancoFCFortesConfig] DirLogo=D:\Java\BoletoAPI\Boleto\target\classes\Logos Filtro=0 Layout=0 MostrarPreview=0 MostrarProgresso=0 MostrarSetup=0 NomeArquivo=C:\Users\HAROLD~1\AppData\Local\Temp\Boleto3126164253930370758.pdf NumeroCopias=1 PrinterName= SoftwareHouse= AlterarEscalaPadrao=0 NovaEscala=96 [BoletoConfig] emailAssuntoBoleto= emailMensagemBoleto= [BoletoCedenteWS] ClientID= ClientSecret= KeyUser= Scope= IndicadorPix=0 [BoletoWebSevice] LogRegistro=1 PathGravarRegistro= Ambiente=1 Operacao=0 VersaoDF=1.2 UseCertificateHTTP=0 [DFe] SSLCryptLib=0 SSLHttpLib=0 SSLXmlSignLib=0 UF=SP TimeZone.Modo=0 TimeZone.Str= URLPFX= ArquivoPFX= DadosPFX= Senha= NumeroSerie= VerificarValidade=1
  4. Yep. Se não for modificado nada, ele não salva nada, já se modificar para salvar na unidade D, ele continua não salva: acbrBoleto.configGravar("D:\\Temp\\configBoletoExemplo.ini"); De fato, mesmo modificando para salvar na pasta da aplicação, ele também não salva: acbrBoleto.configGravar("configBoletoExemplo.ini"); Parece que o salvamento da configuração não está funcionando. Mas de qualquer forma, isso é um detalhe de menor importância. O problema principal é que, mesmo passando o nosso número para o ACBr, o sistema está jogando "0" no campo correspondente do arquivo CNAB400 do Itaú.
  5. Não, porque, na linguagem Java, a barra invertida tem um significado especial, dentro de uma constante String; assim: \b é backspace; \t é TAB; \n é quebra de linha; \r é retorno de carro; \" é uma aspa dupla; \' é uma aspa simples; \f é avanço de página; \\ é uma contrabarra, ou seja, \; \xxx é a definição octal de um caractere ASCII; \uxxxx é a definição hexadecimal de um caractere unicode. Vide: https://www.dca.fee.unicamp.br/cursos/PooJava/sintaxe/seqesc.html Assim, para representar uma única barra invertida dentro de uma constante string da linguagem é necessário informar duas barras invertidas. De fato, essa sintaxe também é usada pelas linguagens JS, C#, C++, Go, C e, de fato, é utilizada pela maioria das linguagens inspiradas na linguagem C.
  6. Interessante: tentei chamar o método "configGravar()", passando como parâmetro o caminho do INI, mas ele não está gerando o arquivo no local especificado. acbrBoleto.configGravar("D:\\Temp\\configBoleto.ini");
  7. Bom dia, tudo bem? No caso, é a biblioteca, estou usando o "ACBrLibBoleto" para Java; o arquivo de configuração é em memória, e o título está no primeiro post.
  8. Boa tarde; Estamos tendo problemas com a geração do arquivo de remessa do banco Itaú: estamos enviando o nosso número com um valor não-zero, mas o arquivo de remessa gerado está tendo o seu valor preenchido como zero. Título: [Titulo1] NumeroDocumento=00977701-A NossoNumero=10151 Carteira=109 ValorDocumento=525,00 Vencimento=05/08/2022 DataDocumento=06/07/2022 DataProcessamento=19/08/2022 DataAbatimento=19/08/2022 DataDesconto=19/08/2022 DataMoraJuros=19/08/2022 DiasDeProtesto=0 DiasDeNegativacao=null DataProtesto=20/08/2022 DataNegativacao=19/08/2022 DataMulta=19/08/2022 DataBaixa=19/08/2022 ValorAbatimento=null ValorDesconto=0,00 ValorMoraJuros=0,27 ValorIOF=null ValorOutrasDespesas=0,00 MultaValorFixo=null PercentualMulta=2,00 LocalPagamento=Pegar no lugar X Especie=NF EspecieMod=R$ DataLimitePagto=19/08/2022 Sacado.NomeSacado=UNIDAS SA Sacado.CNPJCPF=04437534000130 Sacado.Pessoa=JURIDICA Sacado.Logradouro=AVENIDA RAJA GABAGLIA Sacado.Numero=1781 Sacado.Bairro=LUXEMBURGO Sacado.Complemento=12 ANDAR Sacado.Cidade=BELO HORIZONTE Sacado.UF=MG Sacado.CEP=30380457 [email protected] Sacado.SacadoAvalista.Pessoa=3 Sacado.SacadoAvalista.NomeAvalista= Sacado.SacadoAvalista.CNPJCPF= Sacado.SacadoAvalista.Logradouro= Sacado.SacadoAvalista.Numero= Sacado.SacadoAvalista.Complemento= Sacado.SacadoAvalista.Bairro= Sacado.SacadoAvalista.Cidade= Sacado.SacadoAvalista.UF= Sacado.SacadoAvalista.CEP= Sacado.SacadoAvalista.Email= Sacado.SacadoAvalista.Fone= Sacado.SacadoAvalista.InscricaoNr= Mensagem=null Informativo=null Detalhamento=null Competencia=null ArquivoLogoEmp=null Verso=null Instrucao1= Instrucao2= Aceite=1 OcorrenciaOriginal.TipoOcorrencia=null Parcela=1 TotalParcelas=1 SeuNumero=0000009483 TipoDiasProtesto=null CodigoNegativacao=0 TipoDiasNegativacao=null TipoImpressao=null TipoDesconto=0 TipoDesconto2=0 CarteiraEnvio=null Seguem anexos o boleto e o arquivo de remessa gerados. boleto-ITAU-10151.pdf remessa-ITAU-0000009483.rem
  9. Bom dia; Parece que a forma como está preenchendo esses dois campos vai ser suficiente para atender aos requisitos. Muito obrigado pelo auxílio.
  10. De fato, pelo o que eu estou vendo, ele sempre está jogando o mesmo valor tanto para "sequência (NSA)", quanto para "Número Remessa/Retorno". Esses dois valores vão ser sempre iguais?
  11. Boa tarde; OK, obrigado; depois de adicionar o código necessário, o log foi gerado: acbrBoleto.configGravarValor(ACBrSessao.Principal, "LogPath", new File("../logs").getAbsolutePath()); acbrBoleto.configGravarValor(ACBrSessao.Principal, "LogNivel", 4); Segue anexo o log. ACBrLibBoleto-20220630.log
  12. Bom dia; no caso, a DLL está sendo referenciada pelo JAR do ACBrLib, que está dentro de uma aplicação que está sendo executado via Spring Boot; eu olhei todos os lugares onde tivesse o DLL da ACBrLib, mas nenhum deles aparenta ter arquivo de log na mesma pasta; onde ficaria esse log do "ACBrLibBoleto", e que nome ele teria?
  13. Boa tarde; Grato pela sugestão, mas testando aqui, o "NumeroDocumento" afeta o campo 19.3P, "Nº do Documento". No entanto, o campo que falta para deixar igual ao arquivo que está sendo comparado é o 20.1, "Número Remessa/Retorno"; vide screenshot do padrão original FEBRABAN e o equivalente da documentação específica do Itaú:
  14. Olá, bom dia; grato pelas sugestões, mas: Adicionei código para passar "NumeroArquivo", e não aparenta estar afetando nada: acbrBoleto.configGravarValor(ACBrSessao.BoletoDiretorioConfig, "NumeroArquivo", "333"); De qualquer forma, de acordo com o manual, esse valor é sobrescrito pelo valor que é passado como parâmetro para o método "GerarRemessa" acbrBoleto.GerarRemessa(file.getParent(), boleto.getCedente().getSequencialRemessa(), file.getName()); E, como mencionado anteriormente, nos testes esse parâmetro afeta o campo 19.0, "sequência (NSA)", mas não o 20.1, "Número Remessa/Retorno".
  15. OK, está quase completo; agora só falta o campo 20.1: "Número Remessa/Retorno".
  16. Tem razão, já havia um outro lugar preenchendo esse campo, e eu não havia notado. Vou corrigir isto; muito obrigado.
  17. OK, verifiquei as sugestões, e não parece ser isso: No caso do LayoutVersaoArquivo, mesmo eu passando alguma coisa, o valor passado não parece afetar o campo 20.0, "Número da Versão do Layout do Arquivo", nem em nenhuma outra parte do arquivo. Conforme mencionado pelo José, pode ser que seja o caso do ACBr estar usando um valor fixo para o banco em questão. No caso, o banco usado nos testes é o Itaú; Já no caso do segundo parâmetro da função "GerarRemessa()", ele funciona, mas afeta somente o 19.0, "sequência (NSA)", mas não afeta o 20.1, "Número Remessa/Retorno"; nos testes, nenhum dos campos sugeridos até o momento aparenta afetar este último.
  18. Bom, fiz umas modificações rápidas no código para testar, e as instruções ajudaram, em parte. O que deu certo: Passar o parâmetro para a função de geração de remessa realmente fez com que o campo "19.0", "sequência (NSA)", fosse preenchido com o valor passado; O "LayoutVersaoLote" realmente afetou o campo 07.1, "Nº da Versão do Layout do Lote". O que não deu certo: "LayoutVersaoArquivo" não afetou o "20.0", " Número da Versão do Layout do Arquivo" e, de fato, não aparenta ter afetado nenhuma parte do arquivo gerado; "SeuNumero" afetou "35.3P"; esse campo já estava correto, mas foi bom saber o que ele afeta, para referência futura; "Numero" e "NumeroCorrespondente", que constam no manual, não parecem estar afetando nada no arquivo; O único "NossoNumero" que foi encontrado na documentação é o do título, e ele não está apresentando problemas. Com isso, ficam faltando os seguintes campos para o arquivo gerado bater com a versão antiga: Campo 20.0: Número da Versão do Layout do Arquivo; 20.1: Número Remessa/Retorno Para referência, os fontes da montagem dos inis estão em anexo. CadastroBoletaServiceImpl.java
  19. Adendo outros campos que estão diferentes: 07.1: Nº da Versão do Layout do Lote: 030 no Cobre Bem versus 000 no ACBr; 20.1: Número Remessa/Retorno: 00000169 no Cobre Bem versus 00000001 no ACBr; não parece ter nada a ver com o "Nosso Número", que é "000084279". Similarmente, estes também não parecem constar da documentação. O que eu precisaria passar nos INIs para preencher estes campos, assim como os campos 19.0 e 20.0?
  20. Boa tarde; Estamos migrando nosso sistema do Cobre Bem para o ACBr e, ao comparar o arquivo CNAE 240 gerados pela nossa implementação do Cobre Bem versus a nova implementação via ACBr, estamos tendo diferença de vários valores; entre eles, no cabeçalho do arquivo: Campo 19.0: Seqüência (NSA) Campo 20.0: Número da Versão do Layout do Arquivo Quais campos eu devo informar no INI para preencher estes dois campos?
×
×
  • 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...