Ir para conteúdo
  • Cadastre-se

dev botao

Numero da NFS-e inexistente na base de dados para o prestador do serviço pesquisado.


Ver Solução Respondido por Italo Giurizzato Junior,
  • Este tópico foi criado há 834 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

Utilizando provedor Betha de criciúma, consigo emitir a Nfse me retornando um protocolo acredito que dessa forma a nota foi emitida e adicionada a base de dados do prestador.

Porem ao tentar cancelar a mesma recebo a seguinte mensagem em ambiente de homologação:

"Numero da NFS-e inexistente na base de dados para o prestador do serviço pesquisado."

xml de envio gerado pelo acbr:

image.thumb.png.0d7b4274d22a49ac1cfbb442490bb83b.png

 xml de retorno:

image.png.43a1f4421aabebeda4e8f9c7a89ba14f.png

xml que supostamente foi aceito e gerou protocolo:

image.png.e09fd1e6175366ef92e8c15d5853c419.png

Link para o comentário
Compartilhar em outros sites

  • Consultores

Bom dia Eduardo,

O numero do Protocolo não significa que o Rps foi recebido e processado com sucesso e consequentemente a nota foi gerada pelo webservice.

Você enviou o Rps de numero 82 e o WebService retornou o numero do protocolo, isso significa que o lote foi recebido com sucesso.

Agora é preciso consultar a situação do lote informando o numero do protocolo.

Teremos como retorno os seguintes valores:

1 - Lote não Enviado

2 - Lote em Processamento

3 - Lote Processado com Falhas

4 -  Lote Processado com Sucesso

Se retornar 1 significa que você informou o numero do protocolo errado.

Se retornar 2, se faz necessário aguardar alguns segundos e realizar uma nova consulta

Se retornar 3 ou 4 devemos Consultar o Lote informando o numero do protocolo.

Teremos como retorno a lista de rejeições caso a situação seja 3 ou o XML da NFS-e se a situação for 4.

No XML da NFS-e temos o numero da nota, é esse numero que você vai utilizar para cancelar se assim desejar e não o numero do Rps.

Detalhe importante, nem sempre o numero da nota é igual o numero do Rps.

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

  • Consultores

Bom dia Eduardo,

Isso não é uma procedure e sim o retorno da consulta.

Por favor veja no programa exemplo como realizar a consulta estudando o conteúdo do botão [Consultar Situação]

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

Muito obrigado já consegui entender, estou utilizando a consulta, e consegui os retornos esperado, a principio estava emitindo e consultando o retorno diretamente na emissão, pois meu  processo é automatizado, agora o que eu faço é emitir de um tempinho fico consultando se o retorno deu positivo ou não, Obrigado.

Link para o comentário
Compartilhar em outros sites

  • Consultores

Eduardo,

O componente possui uma propriedade de configuração chamada ConsultaLoteAposEnvio, caso ela esteja com o valor True, o componente se encarrega de realizar as consultas automaticamente.

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

1 hora atrás, Italo Giurizzato Junior disse:

Eduardo,

O componente possui uma propriedade de configuração chamada ConsultaLoteAposEnvio, caso ela esteja com o valor True, o componente se encarrega de realizar as consultas automaticamente.

Opção ja esta com esse valor "True" porem não tenho retorno adequado se da algum erro, a solução foi ficar verificando após o envio.

Link para o comentário
Compartilhar em outros sites

  • Consultores

Bom dia Eduardo,

Ao solicitar o cancelamento você esta informando o numero da nota ou o numero do Rps?

Tem que informar o numero da nota.

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

  • Consultores
  • Solution

Eduardo,

Esta errado, o numero que você esta informando como sendo o numero da nota é o numero do Rps, veja nas imagens que você anexou, 82 é o numero do RPS.

O Rps foi recepcionado pelo serviço EnviarLoteRps que trabalha no modo assíncrono.

Neste caso após o envio se faz necessário executar o método ConsultarSituação informando o numero do protocolo retornado ao Enviar o Rps.

Depois executar o método ConsultarLote também informando o numero do protocolo.

Nesta ultima consulta se o Rps foi processado com sucesso você terá como retorno o XML da NFSe que vai ser salvo na pasta Notas.

Nele consta o numero da nota, numero este que você vai informar ao pedir o cancelamento da mesma.

 

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

  • Consultores

Bom dia Eduardo,

O programa exemplo tem um botão para cada método implementado no componente.

Na aba Consultas temos o botão [Consultar Lote] e nele temos a linha que executa o método ConsultarLoteRps.

Portanto é esse o método que devemos executar.

Ele retorna a lista de rejeições se a situação for 3 ou os XML das NFS-e se a situação for 4.

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

Utilizei os exemplos para me basear no meu projeto, no meu ultimo teste que estou fazendo, notei que o protocolo gerado só da de usar uma vez quando o retorno é = 4, quando emito armazenei o protocolo para futuras consultas, quando vou utilizar do mesmo para consultar ele me retorna 4 apenas na primeira consulta que faço depois não me retorna mais nada, quando vou utilizar o método consultar RPS com o mesmo protocolo também não me retorna nada nem da primeira vez, logo não consigo consutar o numero a nota para armazenar para um futuro cancelamento, entrei na interface web de homologação da betha e a nota esta la gerada como deveria poram não tenho o retornos de forma correta por parte do componente acbr, não sei se estou esquecendo alguma configuração mais estou seguindo os mesmos passos que estão no Exemplo da nfse - ACBR.

 

Editado por Eduardo Faria Nazario
Link para o comentário
Compartilhar em outros sites

  • Consultores

Bom dia Eduardo,

Por favor anexe os XMLs gerados ao executar os métodos, assim fica mais fácil analisarmos o problema.

No programa exemplo, favor ativar a opção para salvar também os arquivos soap.

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

  • Consultores

Boa tarde Eduardo,

Só esse XML foi gerado?

Esse é o de envio e o de retorno?

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

O de retorno é justamente o que eu queria que viesse, porem não vem, só vem se eu mandar o protocolo errado, ai me retorna um XML com erro dizendo que o protocolo não esta na base de dados, acredito que só não esta me devolvendo o XML com informações da nota, mais quando da erro ele me retorna.

Editado por Eduardo Faria Nazario
Link para o comentário
Compartilhar em outros sites

Vamos la, vou tentar explicar melhor:

1 - Estou fazendo a Configuração do componente;

2 - Depois alimento O componente com as informações da NFse

3 - Tenho retorno positivo que o RPS foi enviado pois recebo o protocolo e armazeno em um arquivo.

4 - Com o protocolo e o lote que foi gerado pelo envio do RPS fico tentando consultar a situação.

5 - Quando retorna o codigo 4 na situação sei que o RPS foi aceito e a Nota esta ok (verifico no site de homologação e a nota realmente esta la tudo certinho).

6 - Preciso CANCELAR a nota e para isso preciso do numero que foi gerado para ela pela betha.

7 - Então preciso armazenar essa informação caso meu cliente queira futuramente cancelar via ERP.

8 - Ai então que vem meu problema, quuando utilizo o protocolo e lote armazenado anteriormente para consulta do lote o meu retorno é um XML vazio.

9 - Se o xml ta vazio não consigo depois cancelar a nota via ERP, meu cliente tera que entrar no site para cancelar.

10 - Não sei se realmente a beta não devolve o numero da nota que foi gerada por eles ou se falta alguma configuração no componente.

11 - Estou tentando de tudo e falta apenas isso um simples retorno do numero da nota para que eu possa seguir com o projeto e finalizar. 

Link para o comentário
Compartilhar em outros sites

Alguns xml que usei nos meus testes, um deles simulei um protocolo errado só para ver o retorno, e no caso me retorna erro, logo acredito que quando o protocolo esta correto o retorno é vazio

porem preciso de um metodo que me informe o numero da nota para que posteriormente possa cancelar.

Segue abaixo anexos.

ConsultarLoteRps.xml ConsultarLoteRpsEnvio.RETORNO.XML ConsultarLoteRpsEnvio.XML ConsultaSituacao.RETORNO.XML ConsultaSituacao.XML

Editado por Eduardo Faria Nazario
Link para o comentário
Compartilhar em outros sites

  • Consultores

Eduardo,

Primeiramente não renomeia os XML, deixa eles com os seus nomes padrões, pois eu consigo identificar qual é o de envio e o de retorno.

Segundo, pelo erro que esta ocorrendo o provedor esta gerando o XML de retorno de forma errada e com isso o LoadFromXml não consegue carregar ele.

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

image.thumb.png.1e89f1c483bcaf5f815505b71ce098ef.png

Acredito que encontrei o problema, na variável "AxmlDocument", esta a informação que eu preciso e esta retornando porem quando me gera a exception acredito que o retorno se perde, retornando a variável vazia, quanto aos arquivos que mandei eu peguei via debug e não pelo processo de salvar do acbr, até mesmo por que nem sei onde é nem como configurar, o que podemos fazer para corrigir esse erro? pois o xmlParseDoc não esta compreendendo o retorno que foidado pelo provedor que no caso é a betha.

Link para o comentário
Compartilhar em outros sites

  • Consultores

Eduardo,

Salva em um arquivo TXT o conteúdo dessa variável e anexe aqui para que eu possa analisar.

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

  • Este tópico foi criado há 834 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.

The popup will be closed in 10 segundos...