Ir para conteúdo
  • Cadastre-se

Innovae Brasil Engenharia

Membros Pro
  • Total de ítens

    63
  • Registro em

  • Última visita

Tudo que Innovae Brasil Engenharia postou

  1. Bom dia! Estou usando o TACBrHTTP para fazer download de arquivos PDF gerados pela prefeitura de Lençóis Paulista. Ao enviar enviar a url que segue esse padrão (https://apl2.lencoispaulista.sp.gov.br/nfs/Pages/Publicas/wfValidaNotaFiscal.aspx?numero=999&validacao=F0B94 F7AF7&inscricao=99999), é redirecionado para uma nova url que leva ao pdf. Dentro do retorno do server o location vem "/nfs/Temp/m0xsvmy2nsv4v54wuv2za5jg/nf_374_619505184330.pdf" e o tratamento da classe gerava a nova url sem considerar que o location não é uma url completa e começa com '/', que indica que deve-se considerar apenas o host para concatenar com o location. A url gerada deveria ser https://apl2.lencoispaulista.sp.gov.br/nfs/Temp/m0xsvmy2nsv4v54wuv2za5jg/nf_374_619505184330.pdf e não https://apl2.lencoispaulista.sp.gov.br/nfs/Pages/Publicas//nfs/Temp/m0xsvmy2nsv4v54wuv2za5jg/nf_374_619505184330.pdf Fiz um ajuste na classe para passar a considerar. Segue o arquivo para analise. ACBrSocket.pas
  2. Boa tarde! O problema que eu resolvia com a propriedade, fiz uma "Gambiarra" para poder atender alguns webservices que integramos com nosso aplicativo. As APIs do CNPJá por exemplo, retorna códigos nessa faixa: 200, 400, 401, 404, 429, 503, e para atender, acabei colocando o chamada da requisição em um try/except mudo. Obrigado pela atenção. ACBrSocket.pas
  3. Boa tarde! Fiz um ajuste na classe TACBrHTTP, onde inclui uma nova propriedade para indicar para o componente não disparar o raise error quando o response code for diferente de 200, 201 ou 202. Propriedade: RaiseErrorOnResponse Valor default: True Segue a unit com os ajustes para verificação. ACBrSocket.pas
  4. Bom dia! Após um longo processo de testes e ajustes nos fontes, conseguimos homologar nosso aplicativo com o TEF VeSPague (Destaxa). Fiz ajustes na unit para ser possível o envio de mensagens para o VeSPagueClient, facilitando os processos e tratamentos de retornos. Segue anexo o fonte ajustado para verificação. Atenciosamente, Carlos Antonio Lopes Piubello Innovae Brasil Engenharia de Software ACBrTEFDVeSPague.pas
  5. Bom dia! Estava com problemas com a importação de arquivos do Santander, com o ajuste proposto acima. Após analisar muitos arquivos, acabei percebendo que os arquivos que meus clientes estavam baixando do Santander não estava com um fator que indicaria o dia, mas sim, o dia e a hora. Assim, fiz um ajuste para verificar se os dígitos após o ano/mês possui mais que 6 caracteres, considero que o campo não seja uma data UTC. Segue o ajuste para validação. ACBrOFX.pas
  6. Boa tarde! Usando o componente TACBrMail, surgiu a necessidade de salvar o e-mail logo antes do envio. Usei o método SaveToFile, logo e ao enviar o e-mail, recebia erro 550.1 Após diversas verificações, durante o debug da aplicação acabei encontrando uma chamada ao método Clear dentro do método SaveToFile. Removi essa linha e agora está funcionando como deveria. Segue anexo o arquivo atualizado. ACBrMail.pas
  7. Boa tarde! Alterei novamente a classe, para atenda uma lista de possíveis retornos. Segue anexo o arquivo ajustado para apreciação. ACBrSocket.pas
  8. Bom dia! Fizemos a atualização e está funcionando corretamente.
  9. Bom dia! Estamos desenvolvendo para um cliente um módulo onde um arquivo DDA CNAB240 do Banco do Brasil mas durante o processo de importação do SegmentoG, há a chamada para importação do SegmentoH respectivo. O mesmo não estava sendo processado pois em Fontes\ACBrPagFor\Base\Provider\CNAB240.LerTxtRetorno.pas, linha 787 estava assim: LerSegmentoH(PagFor.Lote.Last.SegmentoG.Last.SegmentoH, I); e ajustei para: LerSegmentoH(PagFor.Lote.Last.SegmentoG.Last.SegmentoH, I+1); Pois a linha do SegmentoH é a próxima e estava referenciando a linha do SegmentoG Segue o arquivo ajustado para verificação. CNAB240.LerTxtRetorno.pas
  10. Boa tarde! Voltei a versão da Revision 29325 e a NFS-e da GIAP funcionou normalmente sem gerar o problema mencionado acima. Não consegui identificar porque isso acontecia, mas resolveu. Giap.Provider.pas
  11. Boa tarde! Quando envio uma NFS-e para o WS, a nota é recebida e efetivada pelo servidor, há o retorno do xml e do PDF. Sempre envio Notas uma a uma. Após o envio, constatei que o componente ACBrNFSeX está ficando com duas notas, a de index [0] está com os dados enviados e a de index [1] com os dados do retorno. Assim, quando verifico se a NFS-e está confirmada, a mesma sempre está como False. Mais alguém que usa o provedor GIAP está com esse problema?
  12. Bom dia! A prefeitura de Pederneiras/SP mudou para o provedor GIAP. Para conseguir realizar a integração, foi necessário alguns ajustes na implementação do ACBrNFSeX (Provider, Ler e Grava) relacionados ao provedor GIAP. O método para cancelamento via WS não está habilitado. Segue anexo os arquivos ajustados para análise. ACBrNFSeXServicos.ini Giap.GravarXml.pas Giap.LerXml.pas Giap.Provider.pas
  13. Bom dia! Estou usando o ACBrHTTP para integração com um webservice rest. Toda a comunicação é feita com troca de arquivos json. Agora, não descobri como fazer upload de um arquivo de foto. Com a Indy usava assim: stPar := TIdMultiPartFormDataStream.Create; stPar.AddFile('file', sa, getContentType(sMime)); stPar.Position := 0; Como posso fazer isso com o ACBrHTTP?
  14. Boa tarde! Estou desenvolvendo uma integração com um webservice e o mesmo está retornando o resultcode 201 e não 200. Na classe TACBrHTTP, quando o resultcode não é 200, é gerada uma exception. Para atender a minha necessidade, eu criei uma nova property e chamei de ExpectedResultCode, do tipo integer e valor default 200 e onde era feito o teste para determinar se a requisição foi realizada, troquei o valor fixo 200 pela variável FExpectedResultCode, relacionada à propriedade. Segue anexo a arquivo com os ajustes para verificação e possível inclusão no repositório. ACBrSocket.pas ACBrSocket.diff
  15. Bom dia! Eu fiz um ajuste no unit ACBrConvenio115.pas, para ajustar a geração do arquivo Mestre, onde a Data de Leitura Atual era gerada com os dados da Data de Leitura Anterior. Segue a unit ajustada para verificação. De: Para: ACBrConvenio115.pas
  16. Boa tarde! Utilizando o método ConsultarNFSeporRps o retorno é carregado corretamente sem problemas. Também testei o método de consulta por faixa e o retorno também vem com a data dd/mm/yyyy Obrigado pela ajuda.
  17. Bom dia Italo! Essa consulta foi gerada automaticamente pelo componente ACBrNFSeX, pois está ativada a opção para realizar a consulta do documento após o cancelamento. Vou fazer um ajuste técnico na minha aplicação para que eu faça a consulta manualmente.
  18. Boa tarde! Quando eu envio uma solicitação de cancelamento de uma NFS-e, e a mesma já está cancelada no sistema da Prefeitura, automaticamente é realizada uma consulta do documento, e assim posso verificar o retorno e o status. Mas após a consulta, a property "Sucesso" está true e a lista de erros está com o erro: ('X999', 'Erro de Conexão: ''''25/01/2023'''' is not a valid date and time', '') Seguem os arquivos capturados através properties ACBrNFSeX1.WebService.ConsultaNFSe.ArquivoEnvio e ACBrNFSeX1.WebService.ConsultaNFSe.ArquivoRetorno. Podem me ajudar? ACBrNFSeX1_WebService_ConsultaNFSe_ArquivoEnvio.xml ACBrNFSeX1_WebService_ConsultaNFSe_ArquivoRetorno.xml
  19. Bom dia! O ajuste das URLs de homologação de Bauru-SP que enviei ainda não foram para o SVN?
  20. Bom dia! O ajuste foi baseado no que está escrito no comentário do próprio fonte original, além, do retorno do sistema do banco que invalidou o arquivo remessa pelo motivo deste campo estar preenchido com brancos em vez de zeros. Caso isso se deva ao por exemplo eu ter que informar a versão do layout do arquivo antes de gerar a remessa, por sugestão, ao ajustar os registros para uma nova versão do layout, ajustar também o layout default do componente.
  21. Nas linhas 406 e 407 do ACBrBancoBrasil.pas, referem-se ao CNAB 240 posições 10 a 11 e 12 a 13 Esta: '01' + // 10 a 11 - Tipo de serviço: 01 (Cobrança) ' ' + // 12 a 13 - Forma de lançamento: preencher com ZEROS no caso de cobrança e deve estar: '01' + // 10 a 11 - Tipo de serviço: 01 (Cobrança) '00' + // 12 a 13 - Forma de lançamento: preencher com ZEROS no caso de cobrança ACBrBancoBrasil.pas
  22. Boa tarde! A SilTecnologia, provedora do serviço de NFS-e para Bauru-SP, alterou as URLs para homologação. Segue trecho ajustado do arquivo ACBrNFSeXServicos.ini [3506003] ; Incluído em 26/09/2021 ; Atualizado em 21/12/2021 Nome=Bauru UF=SP Provedor=SilTecnologia Versao=2.03 ProRecepcionar=https://tributario.bauru.sp.gov.br/services/Abrasf23 HomRecepcionar=https://homologacao.siltecnologia.com.br/tbbauru/services/Abrasf23?wsdl ; ProLinkURL=https://tributario.bauru.sp.gov.br/loginWeb.jsp?execobj=NFSENotaFiscalBuscarDireto&cnpj=%Cnpj%&numero=%NumeroNFSe%&chave=%CodVerif% HomLinkURL=https://homologacao.siltecnologia.com.br/tbbauru/loginWeb.jsp?execobj=NFENotaFiscalBuscarDireto&cnpj=%Cnpj%&numero=%NumeroNFSe%&chave=%CodVerif% ACBrNFSeXServicos.ini
  23. Boa tarde! Em Bauru, o provedor da NFSe é a SilTecnologia e está na versão 2.03. No arquivo nfse.xsd disponibilizado pelo ACBr (pasta trunk2\Exemplos\ACBrDFe\Schemas\NFSe\SilTecnologia\2.03), a lista de serviços "Tipo Codigo da Lista de Servicos" segue a LC 116/2003, mas o provedor está seguindo a LC 157/2016, que possui novos códigos. Assim, para atender a legislação do município de Bauru-SP, acrescentei os novos código. Segue o XSD ajustado. nfse.xsd
  24. Muito obrigado pelas informações @Juliomar Marchetti e @Italo Giurizzato Junior. Resolveram minhas dúvidas.
  25. Bom dia! Tenho uma dúvida sobre o cancelamento da NFC-e. Vi no programa exemplo que o cancelamento é feito através de um lote com um evento solicitando o cancelamento. Minha dúvida está em relação ao sequencial do lote. Esse sequencial é único e crescente e devo usar a mesma sequência tanto para NF-e quanto para a NFC-e? Ou posso ter uma sequência para cada tipo de documento?
×
×
  • 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...