Ir para conteúdo
  • Cadastre-se

dev botao

Consultar numero de nota gerado


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

Recommended Posts

Bom dia.

Estou com problema que imagino ser simples para quem entende mas complicado para mim que estou implantando essa função agora no nosso sistema.

Consigo enviar o lote e ja receber o protocolo de recebimento através do ACBrNFSe1.WebServices.EnviarLoteRPS.Protocolo, porém, como consigo consultar o número da nota gerada quando consulto um lote enviado através desse protocolo?

Não encontro propriedade no ACBRNFSE.WEBSERVICES que me retorne essa informação quando consulto via ConsultarLoteRps ou ConsultarNFSeporRps.

Alguém pode me dar alguma dica?

Editado por rbersme
Link para o comentário
Compartilhar em outros sites

  • Consultores

Bom dia,

A NFS-e não funciona da mesma forma que a NF-e.

Para começar na NFS-e, enviamos para o webservice o XML do RPS (Recibo Provisório de Serviço) e se tudo estiver OK, teremos como resposta o XML da NFS-e.

Segundo, o numero do protocolo que retornado ao enviar o lote de RPS tem a mesma finalidade no numero do recibo quando enviamos um lote de NF-e para a SEFAZ.

Ou seja, esse numero só diz a você que o lote foi recebido.

O métodos ConsultarSituacao e ConsultarLoteRps se utilizam do numero do protocolo bem como do numero do lote.

Detalhe importante se o provedor segue a versão 2 do layout da ABRASF devemos utilizar apenas o ConsultarLoteRps.

O ConsultarSituacao só esta disponível nos provedores que seguem a versão 1 do layout da ABRASF e ele tem a finalidade de informar se o lote já foi processado ou não, se foi processado com sucesso ou com erros.

Por outro lado o ConsultarLoteRps caso o(s) RPS forem processados com sucesso já temos no retorno o XML da(s) NFS-e, caso contrario teremos a lista de erros.

 

 

Consultor SAC ACBr

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

Projeto ACBr

Analista de Sistemas / e-mail: [email protected] / Fone: (16) 9-9701-5030 / Araraquara-SP

Araraquara - A era dos Trólebus

Link para o comentário
Compartilhar em outros sites

Bom dia Ítalo.

Obrigado pelas informações.

Eu recebo o xml da nota processada pela prefeitura, conforme abaixo:

<ConsultarNfseResposta><ListaNfse><CompNfse><Nfse><InfNfse id="214"><Numero>201800000000021</Numero><Serie>A1</Serie><CodigoVerificacao>HFFC-G6TX</CodigoVerificacao><DataEmissao>2018-10-22T17:37:02</DataEmissao><IdentificacaoRps><Numero>29385</Numero><Serie>UNICA</Serie><Tipo>1</Tipo></IdentificacaoRps><DataEmissaoRps>2018-10-22</DataEmissaoRps><NaturezaOperacao>301</NaturezaOperacao><OptanteSimplesNacional>2</OptanteSimplesNacional><IncentivadorCultural>2</IncentivadorCultural><Competencia>2018-10</Competencia><OutrasInformacoes>- Decreto 4021/2011
</OutrasInformacoes>

 

minha dúvida é a de como eu pego estes dados pois preciso gravar no meu banco de dados o número da nota gerada pela prefeitura, assim como o código de verificação.

quando eu faço a consulta pelo ACBrNFSe1.ConsultarLoteRps eu recebo este arquivo mas preciso saber se tem algum jeito de eu pegar os dados sem que o usuário precise abrir o xml para vincular estes dados.

Link para o comentário
Compartilhar em outros sites

Cada provedor tem suas particularidades. Já implementei Betha e Equiplano.

Aqui eu faço isso através do método de ConsultaNFSeporRps. Não posso lhe afirmar que todos os provedores implementem essa consulta, mas como o Número e Série do RPS são de seu conhecimento, seria uma alternativa. Dependendo do provedor, talvez se faça necessário ajustes na leitura do XML quando utilizado essa forma de consulta. Segue um exemplo de código:

ACBrNFSe.WebServices.ConsultaNFSeporRps(RPSNumero, RPSSerie, TipoRPSToStr(trRPS));

if (ACBrNFSe.NotasFiscais.Items[0].NFSe.Status = srNormal) then
begin
  CodigoVerificacao := ACBrNFSe.NotasFiscais.Items[0].NFSe.CodigoVerificacao;
  NumeroAutorizado := StrToIntDef(ACBrNFSe.NotasFiscais.Items[0].NFSe.Numero, 0);
 { ... }
end;
if (ACBrNFSe.NotasFiscais.Items[0].NFSe.Status = srCancelado) then
begin
  { ... }
end;

Repare que o item está fixado em 0, pois faço emissão de apenas uma NFSe por vez.

Existe um outro porém, para o provedor Equiplano, apesar de ser possível a utilização de mais de uma Série de RPS ao mesmo tempo, na consulta está sendo desconsiderado a série. A consulta é feita usando como parâmetro apenas o Número do RPS, então se existir duplicidades de Número de RPS mesmo com séries diferentes, teremos um problema.

Tenta fazer um teste com o próprio ConsultarLoteRps no lugar do ConsultaNFSeporRps ali do meu exemplo, os dados devem retornar exatamente os mesmos.

  • Curtir 3
Link para o comentário
Compartilhar em outros sites

  • 1 mês depois ...
  • Administradores

Boa tarde.

Este tópico está inativo a algum tempo e por isso será fechado, caso necessário favor criar um novo tópico.

Att.

Consultora SAC ACBr

Juliana Tamizou

Gerente de Projetos ACBr / Diretora de Marketing AFRAC
Ajude o Projeto ACBr crescer - Seja Pro

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.  Discord

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 !!

Link para o comentário
Compartilhar em outros sites

  • Este tópico foi criado há 1972 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.
Visitante
Este tópico está agora fechado para novas respostas
×
×
  • 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.