Ir para conteúdo
  • Cadastre-se

dev botao

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

Recommended Posts

Postado

Pessoal, como alguns devem saber, o município de Pelotas/RS trocou de provedor, era Ginfes e agora é GovDigital. No provedor GovDigital, existe o método de envio síncrono, que já retornar no envio do lote a lista de NFS-e gerada. Internamente no nosso ERP, sempre atualizamos no registro da nota o número da NFS-e fornecido pela prefeitura, então sempre após o envio de um lote processado com sucesso, fazemos uma consulta para buscar as NFS-e's desse lote e atualizar os dados no sistema. No caso do GovDigital, isso não é necessário, pois a lista de NFS-e já estará disponível no XML de retorno do lote. Entretanto, no envio assíncrono, no método TratarResposta o ACBr não carrega a lista de NFS-e oriundas desse retorno. Fiz um teste aqui, e dentro do método TratarRetorno da classe TNFSeEnviarSincrono, bem lá no final, passei a chamar o método ExtrairNotasRetorno. Pelos meus testes ficou OK, mas não sei se concordam que seja a melhor forma de fazer, então deixo aqui minha alteração para que analisem.

Outra coisa: no arquivo de cidades, ajustaram parcialmente a cidade de Pelotas/RS, mas no campo NomeURL ficou errado.

Está assim:

NomeURL_H=div
NomeURL_P=div

 

Deve ser assim:

NomeURL_H=pelotas
NomeURL_P=pelotas

ACBrNFSeWebServices.pas

Cidades.ini

  • Consultores
Postado

Boa noite Marcio,

Não concordo com a alteração no ACBrNFSeWebServices.pas, pois você esta forçando a extração da nota sendo que alguns provedores não retornam o XML da NFS-e no retorno do EnvioSincrono é preciso realizar a Consulta.

Consultor SAC ACBr

Italo Giurizzato Junior
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr

Analista de Sistemas / Araraquara-SP

Araraquara - A era dos Trólebus

Postado

Italo, esse provedor não tem método de consulta de NFS-e por lote, pois o retorno das NFS-e's vem já no retorno do envio. Então não há como fazer essa consulta...

 

Estou vendo que o método ExtrairNotasRetorno chava o método LerXML de TRetornoNFSe, e ali existe validação para simplesmente não carregar a lista de notas caso o retorno não possuir essas informação.

 

Ou então validar que o provedor seja GovDigital...

 

E mais, talvez essa verificação poderia ser feita em TWebServices.EnviaSincrono;

de

    case TACBrNFSe(FACBrNFSe).Configuracoes.Geral.Provedor of
      proInfisc,
      proInfiscv11: Result := True
    else
      Result := FConsLote.Executar;
    end;

Para

    case TACBrNFSe(FACBrNFSe).Configuracoes.Geral.Provedor of
      proInfisc,
      proInfiscv11: Result := True
      proGovDigital: FEnviarSincrono.ExtrairNotasRetorno;
    else
      Result := FConsLote.Executar;
    end;

 

  • Consultores
Postado

Boa noite Marcio,

Como não?

Veja este link: https://ws.govdigital.com.br/ws/pelotas?wsdl

<message name="ConsultarLoteRps">
<part name="parameters" element="tns:ConsultarLoteRpsRequest"/>
</message>
 
O método FConsLote.Executar realiza a Consulta do Lote de RPS, método este que devemos executar após o envio.
Consultor SAC ACBr

Italo Giurizzato Junior
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr

Analista de Sistemas / Araraquara-SP

Araraquara - A era dos Trólebus

Postado

Italo, apesar de estar descrito no wsdl, o método não está implementado. Os métodos implementados são esses:

https://govdigital.jira.com/wiki/pages/viewpage.action?pageId=12648453

Tanto que FConsLote.Executar não está sendo chamado, pois na configuração (TACBrNFSe(FACBrNFSe).Configuracoes.Geral.ConsultaLoteAposEnvio) está False.

Tentei até testar, mudando para True, mas retorna um XML vazio:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<ns2:ConsultarNfseRpsResposta xmlns="http://www.w3.org/2000/09/xmldsig#" xmlns:ns2="http://www.abrasf.org.br/nfse.xsd"/>

Acho que se a lista de NFS-e já vem no retorno de processamento do lote, poderíamos aproveitar e chamar logo a 

FEnviarSincrono.ExtrairNotasRetorno.
  • 1 mês depois ...
  • Este tópico foi criado há 2738 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.