Ir para conteúdo
  • Cadastre-se

João Antônio

Membros
  • Total de ítens

    164
  • Registro em

  • Última visita

Tudo que João Antônio postou

  1. Bom dia, segue a configuração para emissão de NFSe para a Cidade Brasilia de Minas. Utiliza o provedor Sintese. [3108602] ; Incluído em 19/05/2023 Nome=Brasilia de Minas UF=MG Provedor=Sintese Versao=2.04 ProRecepcionar=https://brasiliademinas.sintesetecnologia.com.br/nfsews/NfseWS HomRecepcionar=https://homologacao.sintesetecnologia.com.br/nfsews/NfseWS Segue anexo o ACBrNFSeXServicos.ini com a configuração adicionada ACBrNFSeXServicos.ini
  2. A cidade de Itauna-MG que usa o mesmo provedor das cidades acima, também alterou a URL: - Itauna-MG: https://abrasf.issnetonline.com.br/webserviceabrasf/itauna/servicos.asmx Apenas a URL foi alterada, a versão e schemas continua a mesma.
  3. Também estou com o mesmo problema. Parece que todas as cidades que usam o provedor ISSNet pararam de emitir notas
  4. Boa tarde, A cidade de Porto Seguro-BA alterou o provedor para GestaoISS. Basta alterar a configuração no ACBrNFSeXServicos.ini: [2925303] ; Atualizado em 22/03/2023 Nome=Porto Seguro UF=BA Provedor=GestaoISS Versao=2.02 ProRecepcionar=https://portoseguroba.gestaoiss.com.br/ws/nfse.asmx HomRecepcionar=https://teste.gestaoiss.com.br/ws/nfse.asmx Segue em anexo o arquivo ACBrNFSeXServicos.ini com a alteração. ACBrNFSeXServicos.ini
  5. Boa noite, Para a correta emissão de NFSe para a cidade de Itauna-MG é necessario adicionar o parametro Params=NaoDividir100 ao ACBrNFSeXServicos.ini. [3133808] ; Atualizado em 24/01/2023 Nome=Itauna UF=MG Provedor=ISSNet Params=NaoDividir100: ProRecepcionar=http://www.issnetonline.com.br/webserviceabrasf/itauna/servicos.asmx ACBrNFSeXServicos.ini
  6. Boa noite, o caractere de quebra de linha para emissao de nfse para a prefeitura de São Paulo-SP é | e não ; como está definido atualmente. Segue a unit modificada: ISSSaoPaulo.Provider.pas
  7. Boa tarde, A cidade de Feira de Santana-BA alterou a URL do webservice e também alterou a versão do provedor para 2.02 Segue a nova config da cidade: [2910800] Nome=Feira de Santana UF=BA Provedor=WebISS Versao=2.02 ProRecepcionar=https://feiradesantanaba.webiss.com.br/ws/nfse.asmx HomRecepcionar=https://homologacao.webiss.com.br/ws/nfse.asmx ; ProLinkURL=https://feiradesantanaba.webiss.com.br/externo/nfse/visualizar/%Cnpj%/%CodVerif%/%NumeroNFSe% HomLinkURL=https://homologacao.webiss.com.br/externo/nfse/visualizar/%Cnpj%/%CodVerif%/%NumeroNFSe% ACBrNFSeXServicos.ini
  8. Bom dia, Ao emitir nfse para o provedor GovDigital (cidade Unaí-MG) verifiquei que o retorno onde tem caracteres acentuados estava vindo errado. Fiz uma modificação do método TratarXmlRetornado para corrigir este problema. Segue a unit alterada. GovDigital.Provider.pas
  9. Bom dia, ao habilitar a captura de memory leaks em um projeto que utiliza o ACBrNFSeX verifiquei que havia alguns vazamentos de memória no componente. Segue as units modificadas com as correções destes vazamentos de memória. ACBrNFSeXWebservicesResponse.pas EL.Provider.pas
  10. Com certeza RetTotal é usado. Se o RetTotal é menor que 1024 BufferLen assume o valor de RetTotal. Quando RetTotal é maior que 1024 lê-se o buffer de 1024 e subtrai o valor de RetTotal para obter o valor restante a ser lido e retorna ao inicio do loop.
  11. Não terá o problema porque só irá ler a quantidades de bytes restantes para leitura que foi obtido inicialmente pelo método BIO_ctrl. Pelo que pude entender, o método original causa erro porque a posição de leitura já está no final de pBIO e quando tenta ler novamente causa o erro. Algo que não consegui entender é porque em ambiente Windows esse erro não acontece mesmo com o RangeCheck habilitado. Talvez seja um bug do Delphi na compilação Linux.
  12. Uso Delphi 10.4.2 Sydney compilando para Linux Ubuntu 20.04. Alterei a modificação que tinha feito BioToStr para continue lendo buffers de 1k e não gere a exceção de RangeCheck: function BioToStr(ABio : pBIO) : AnsiString ; Var RetTotal : Integer ; BufferLen: Integer; Lin : AnsiString ; begin Result := ''; RetTotal := BIO_ctrl(ABio, BIO_CTRL_PENDING, 0, nil); if RetTotal > 0 then begin BufferLen := 1024; while RetTotal > 0 do begin if RetTotal < BufferLen then BufferLen := RetTotal; SetLength(Lin, BufferLen); BioRead(ABio, Lin, BufferLen); Result := Result + Lin; Dec(RetTotal, BufferLen); end; end; end ; Segue anexo a unit alterada e um projeto teste que compila delphi win32,win64 e LInux64 ACBrDFeOpenSSL.pas OpenSSLACBr.zip
  13. O erro ocorre em Ret := BioRead( ABio, Lin, 1024); Esse método é chamado a primeira vez e lê os dados, sem erros. Nesse momentos os dados são lidos por completo, pois é menor que 1024. Prossegue-se o loop e ao chamar o metodo BioRead novamente ocorre o erro. Justamente por não há mais dados a serem lidos.
  14. Bom dia, Iniciei alguns testes com Delphi + Linux + ACBNFSeX. Verifiquei que ao carregar os dados do certificado digital .pfx no Linux causa erro ERangeError, quando Range checking está habilitado nas configurações do projeto (estranhamente que em ambiente windows mesmo com RangeChecking habilitado nao causa erro) Identifiquei onde o problema é causado e melhorei o método para evitar esse erro. Segue a unit modificada. Testado em Win32/Win64/Linux64 para carregamento de certificados A1. ACBrDFeOpenSSL.pas Método alterado: BioToStr function BioToStr(ABio : pBIO) : AnsiString ; Var Ret : Integer ; Lin : AnsiString ; begin Result := ''; Ret := BIO_ctrl(ABio, BIO_CTRL_PENDING, 0, nil); if Ret > 0 then begin SetLength(Lin, Ret); BioRead( ABio, Lin, Ret); Result := Lin; end; end ;
  15. Bom dia, para correta emissão de NFS-e para o provedor ISSNatal (Natal-RN) é necessário definir a configuração DivAliq100 := True; na unit ISSNatal.GravarXml Segue a unit modificada em anexo. ISSNatal.GravarXml.pas
  16. Boa tarde Italo, tudo certo, parabéns pelo ótimo trabalho.
  17. Boa tarde, segue duas novas cidades (Ibativa-ES e Iuna-ES) que usam o provedor EL para emitir NFSe: [3202454] Nome=Ibatiba UF=ES Provedor=EL ProRecepcionar=https://es-ibatiba-pm-nfs.cloud.el.com.br/RpsServiceService HomRecepcionar= ; ProLinkURL=https://es-ibatiba-pm-nfs.cloud.el.com.br/paginas/sistema/autenticacaoNota.jsf?cpfCnpj=%Cnpj%&chave=%CodVerif% HomLinkURL=https://es-ibatiba-pm-nfs.cloud.el.com.br/paginas/sistema/autenticacaoNota.jsf?cpfCnpj=%Cnpj%&chave=%CodVerif% [3203007] Nome=Iuna UF=ES Provedor=EL ProRecepcionar=https://es-iuna-pm-nfs.cloud.el.com.br/RpsServiceService HomRecepcionar= ; ProLinkURL=https://es-iuna-pm-nfs.cloud.el.com.br/paginas/sistema/autenticacaoNota.jsf?cpfCnpj=%Cnpj%&chave=%CodVerif% HomLinkURL=https://es-iuna-pm-nfs.cloud.el.com.br/paginas/sistema/autenticacaoNota.jsf?cpfCnpj=%Cnpj%&chave=%CodVerif% Essas cidades seguem o mesmo padrão das demais que usam o provedor EL, então bastou adicionar as url no ACBrNFSeXServicos.ini
  18. Ao extrair as mensagens de retorno para o provedor VersaTecnologia (Ubá-MG) o parser de xml levanta uma exeção de encoding inválido do xml: Erro de Conexão: Input is not proper UTF-8, indicate encoding ! Bytes: 0xE3 0x6F 0x20 0x61 Fiz uma modificação convertendo a string para UTF8 e passou a funcionar corretamente. Em anexo segue a unit alterada. VersaTecnologia.Provider.pas
  19. Boa tarde, Para a emissão de NFSe para a cidade de Lauro de Freitas-BA (provedor MetropolisWeb) é preciso que a aliquota seja enviada divida por 100. Para isso foi necessário ajustar a configuração do provedor. Segue em anexo a unit alteradaMetropolisWeb.GravarXml.pas
  20. Para o provedor Pronim versão 2 o retorno do content-type é text/xml;charset=utf-8. Os caracteres só são exibidos de forma correta quando uso UTF8ToNativeString Acredito que outros provedores com esse mesmo retorno deveriam funcionar também.
  21. Essa última alteração que fiz foi em cima da última modificação que você fez.
  22. Boa noite, Fiz alguns testes após o ajuste do charset. Fiz mais um ajuste na verificação do Content-Type do response para que funcione perfeitamente. Segue a unit em anexo. ACBrNFSeXWebserviceBase.pas
  23. Segue a unit alterada ACBrNFSeXWebserviceBase.pas
  24. Ao emitir uma nfse em webservices que retornam dados como utf8 (Content-type: text/xml; charset=utf-8) não está fazendo a conversão correta dos caracteres. Estou usando Delphi Sydney compilando para Windows64. Modifiquei o método TACBrNFSeXWebservice.Executar() da unit ACBrNFSeXWebserviceBase conforme a imagem abaixo e resolveu esse problema de codificação. HttpClient.Execute; HttpClient.DataResp.Position := 0; if ContainsText(HttpClient.HeaderResp.GetHeaderValue('Content-Type'), 'utf-8') then FPRetorno := UTF8ToNativeString(ReadStrFromStream(HttpClient.DataResp, HttpClient.DataResp.Size)) else FPRetorno := ReadStrFromStream(HttpClient.DataResp, HttpClient.DataResp.Size);
  25. A URL de emissão de NFSe para a cidade de Montes Claros-MG cód: 3143302 está errada no ACBrNFSeX. A URL correta é: ProRecepcionar=http://nota.montesclaros.mg.gov.br/nfse.portal.integracao/services.svc HomRecepcionar=http://notateste.montesclaros.mg.gov.brnfse.portal.integracao.teste/services.svc
×
×
  • 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...