Ir para conteúdo
  • Cadastre-se

  • Este tópico foi criado há 152 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

Postado

Olá,

Estou tentando processar uma nova fiscal para a prefeitura Thema de Gaspar SC.

O arquivo ACBrNFSeXServicos.ini está assim:

 

[4205902]
Nome=Gaspar
UF=SC
Provedor=Thema
ProRecepcionar=https://nfse.gaspar.sc.gov.br/nfse/services/NFSEremessa
ProConsultarSituacao=https://nfse.gaspar.sc.gov.br/nfse/services/NFSEconsulta
ProConsultarLote=https://nfse.gaspar.sc.gov.br/nfse/services/NFSEconsulta
ProConsultarNFSeRps=https://nfse.gaspar.sc.gov.br/nfse/services/NFSEconsulta
ProConsultarNFSe=https://nfse.gaspar.sc.gov.br/nfse/services/NFSEconsulta
ProCancelarNFSe=https://nfse.gaspar.sc.gov.br/nfse/services/NFSEcancelamento
ProRecepcionarSincrono=https://nfse.gaspar.sc.gov.br/nfse/services/NFSEremessa
HomRecepcionar=https://nfsehml.gaspar.sc.gov.br/nfse/services/NFSEremessa
HomConsultarSituacao=https://nfsehml.gaspar.sc.gov.br/nfse/services/NFSEconsulta
HomConsultarLote=https://nfsehml.gaspar.sc.gov.br/nfse/services/NFSEconsulta
HomConsultarNFSeRps=https://nfsehml.gaspar.sc.gov.br/nfse/services/NFSEconsulta
HomConsultarNFSe=https://nfsehml.gaspar.sc.gov.br/nfse/services/NFSEconsulta
HomCancelarNFSe=https://nfsehml.gaspar.sc.gov.br/nfse/services/NFSEcancelamento
HomRecepcionarSincrono=https://nfsehml.gaspar.sc.gov.br/nfse/services/NFSEremessa

 

O XML de envio já foi validado no site da prefeitura. Ou seja, está tudo OK com ele. Porém quando faço o envio no FProvider.Emite ocorre o erro:

[X999] Erro de Conexão: Extra content at the end of the document

 

O que pode ser isso? Alguma propriedade que eu devo usar no componente? No WebServices? Algo relacionado a Envelopamento do SOAP?

 

Obrigado

Postado
2 horas atrás, Matheus Leandro Ferreira disse:

Olá,

Estou tentando processar uma nova fiscal para a prefeitura Thema de Gaspar SC.

O arquivo ACBrNFSeXServicos.ini está assim:

 

[4205902]
Nome=Gaspar
UF=SC
Provedor=Thema
ProRecepcionar=https://nfse.gaspar.sc.gov.br/nfse/services/NFSEremessa
ProConsultarSituacao=https://nfse.gaspar.sc.gov.br/nfse/services/NFSEconsulta
ProConsultarLote=https://nfse.gaspar.sc.gov.br/nfse/services/NFSEconsulta
ProConsultarNFSeRps=https://nfse.gaspar.sc.gov.br/nfse/services/NFSEconsulta
ProConsultarNFSe=https://nfse.gaspar.sc.gov.br/nfse/services/NFSEconsulta
ProCancelarNFSe=https://nfse.gaspar.sc.gov.br/nfse/services/NFSEcancelamento
ProRecepcionarSincrono=https://nfse.gaspar.sc.gov.br/nfse/services/NFSEremessa
HomRecepcionar=https://nfsehml.gaspar.sc.gov.br/nfse/services/NFSEremessa
HomConsultarSituacao=https://nfsehml.gaspar.sc.gov.br/nfse/services/NFSEconsulta
HomConsultarLote=https://nfsehml.gaspar.sc.gov.br/nfse/services/NFSEconsulta
HomConsultarNFSeRps=https://nfsehml.gaspar.sc.gov.br/nfse/services/NFSEconsulta
HomConsultarNFSe=https://nfsehml.gaspar.sc.gov.br/nfse/services/NFSEconsulta
HomCancelarNFSe=https://nfsehml.gaspar.sc.gov.br/nfse/services/NFSEcancelamento
HomRecepcionarSincrono=https://nfsehml.gaspar.sc.gov.br/nfse/services/NFSEremessa

 

O XML de envio já foi validado no site da prefeitura. Ou seja, está tudo OK com ele. Porém quando faço o envio no FProvider.Emite ocorre o erro:

[X999] Erro de Conexão: Extra content at the end of the document

 

O que pode ser isso? Alguma propriedade que eu devo usar no componente? No WebServices? Algo relacionado a Envelopamento do SOAP?

 

Obrigado

Eu adicionei esse código na classe ACBrNFSeXWebServiceBase para salvar o retorno em arquivo:

 

procedure TACBrNFSeXWebservice.EnvioInterno(var CodigoErro, CodigoInterno: Integer);
begin
  ConfigurarHttpClient;

  try
    try
      FPHttpClient.Execute;
    finally
      CodigoErro := FPHttpClient.HTTPResultCode;
      CodigoInterno := FPHttpClient.InternalErrorCode;
    end;

    FPHttpClient.DataResp.Position := 0;

    FPRetorno := ReadStrFromStream(FPHttpClient.DataResp, FPHttpClient.DataResp.Size);

    if FPRetorno = '' then
      raise EACBrDFeException.Create('WebService retornou um XML vazio.');

    try
      // salva bruto (pra você ver o que veio)
      FPDFeOwner.Gravar(GerarPrefixoArquivo + '-' + FPArqResp + '-RAW.txt', FPRetorno, Path);
    except
    end;

    if StringIsXML(FPRetorno) then
      LevantarExcecaoHttp;

  except
    on E: Exception do
    begin
      raise EACBrDFeException.CreateDef(Format(ACBrStr(cACBrDFeSSLEnviarException),
        [FPHttpClient.InternalErrorCode, FPHttpClient.HTTPResultCode, FPHttpClient.URL])
        + sLineBreak + FPHttpClient.LastErrorDesc + sLineBreak + E.Message);
    end;
  end;
end;

Descobri que o xml veio assim:

<?xml version='1.0' encoding='UTF-8'?><soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"><soapenv:Body><ns:recepcionarLoteRpsLimitadoResponse xmlns:ns="http://server.nfse.thema.inf.br"><ns:return>&lt;?xml version="1.0" encoding="ISO-8859-1" standalone="yes"?> &lt;EnviarLoteRpsResposta xmlns="http://www.abrasf.org.br/ABRASF/arquivos/nfse.xsd"> &lt;NumeroLote>44474&lt;/NumeroLote> &lt;DataRecebimento>2026-01-08T12:00:50.086-03:00&lt;/DataRecebimento> &lt;Protocolo>56114291&lt;/Protocolo> &lt;ListaMensagemRetorno> &lt;MensagemRetorno> &lt;Codigo>A601&lt;/Codigo> &lt;Mensagem>A601-Prezado Contribuinte. &amp;lt;/br&amp;gt; Para emitir seu documento fiscal utilize o Portal da Nota Fiscal de Serviço eletrônica do Governo Federal - https://www.gov.br/nfse/&lt;/Mensagem> &lt;/MensagemRetorno> &lt;/ListaMensagemRetorno> &lt;/EnviarLoteRpsResposta> </ns:return></ns:recepcionarLoteRpsLimitadoResponse></soapenv:Body></soapenv:Envelope>

 

Ou seja, a prefeitura ainda não está preparada. A pergunta agora é:

Como faço para usar direto o ambiente nacional? Eu tentei assim:

 // ========= Forçar ambiente nacional =========
  FACBr.Configuracoes.Geral.LayoutNFSe := lnfsPadraoNacionalv1;
  FACBr.Configuracoes.Geral.Provedor   := proPadraoNacional;

  FACBr.LerCidades;
  FACBr.Configuracoes.Geral.CodigoMunicipio := aoPar.IBGE;

try
    FACBr.Emitir(
      vNumeroLote,
      meLoteAssincrono,
      False
    );

    if FACBr.WebService.Emite.Erros.Count > 0 then
    begin
      sErro := '';
      for i := 0 to FACBr.WebService.Emite.Erros.Count - 1 do
        sErro := sErro +
          Format(
            '[%s] %s %s',
            [
              FACBr.WebService.Emite.Erros.Items[i].Codigo,
              FACBr.WebService.Emite.Erros.Items[i].Descricao,
              FACBr.WebService.Emite.Erros.Items[i].Correcao
            ]
          ) + sLineBreak;

      raise Exception.Create('Erro ao emitir NFSe:' + sLineBreak + sErro);
    end;

 

Mas retornou que “Serviço Recepcionar não implementado para este provedor.”

 

  • Consultores
Postado

se a prefeitura não vai usar o ambiente nacional e manter o dele não tem que tu fazer por fora

tem que ser por ali

 

Consultora ACBr Pro

Juliomar Marchetti

Ajude o Projeto ACBr crescer - Seja Pro

discord: juliomar
telegram: juliomar
e-mail: [email protected]
http://www.juliomarmarchetti.com.br

 

MVP_NewLogo_100x100_Transparent-02.png
Projeto ACBr - A maior comunidade Open Source de Automação Comercial do Brasil


Participe de nosso canal no Discord e fique ainda mais próximo da Comunidade !!

  • Este tópico foi criado há 152 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

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.