Ir para conteúdo
  • Cadastre-se

dev botao

GNRE - Receita nao exige o tipo de documento informado.


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

Recommended Posts

  • Membros Pro
Postado (editado)

Tem casos que ele fica tentando obter o retorno e não consegue e cai na Exception por falta de comunicação.

 

É que sem dar a Exception eu consigo armazenar o Número do Recibo para realizar a consulta de Lote em processamento.

 

E também o usuário com o número do Recibo pode consultar no Site.

 

 

Editado por Desenv. AT Info Sistemas
  • Consultores
Postado
44 minutes ago, Desenv. AT Info Sistemas said:

Tem casos que ele fica tentando obter o retorno e não consegue e cai na Exception por falta de comunicação.

 

É que sem dar a Exception eu consigo armazenar o Número do Recibo para realizar a consulta de Lote em processamento.

 

E também o usuário com o número do Recibo pode consultar no Site.

 

 

De uma conferida nas propriedades:

ACBrGNRe.Configuracoes.WebServices.AguardarConsultaRet := 15000;
ACBrGNRe.Configuracoes.WebServices.Tentativas := 5;
ACBrGNRe.Configuracoes.WebServices.IntervaloTentativas := 5000;

Explicando cada uma:

ACBrGNRe.Configuracoes.WebServices.AguardarConsultaRet := 15000;

A propriedade AguardarConsultaRet é definida em milissegundos. Esta propriedade configura quanto tempo o componente vai esperar entre o envio e a consulta do retorno.

ACBrGNRe.Configuracoes.WebServices.Tentativas := 5;

A propriedade Tentativas é definida em inteiros.  Esta propriedade define quantas vezes vai tentar fazer a consulta do retorno antes de considerar que houve um erro ou conseguir um retorno positivo.

ACBrGNRe.Configuracoes.WebServices.IntervaloTentativas := 5000;

A propriedade IntervaloTentativas é definida em milissegundos. Esta propriedade configura quanto tempo é aguardado entre as tentativas.

Então em nosso exemplo, vai esperar 15 segundos depois do envio para consultar o retorno, se não conseguir, vai esperar 5 segundos e vai tentar de novo, se ainda não conseguir, vai esperar mais 5 segundos e vai tentar de novo, repetindo esse processo até conseguir um retorno positivo ou até completar 5 tentativas.

Outro ponto que vale citar é que se você conferir o método Envia, a propriedade numeroRecibo é atribuída antes de fazer a consulta, por isso, mesmo que receba uma exceção, você deve ser capaz de ler a propriedade numeroRecibo.

Consultor SAC ACBr

Diego Folieni
Ajude o Projeto ACBr crescer - Assine o SAC

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

  • Membros Pro
Postado

Boa tarde @Diego Foliene,

 

Por exemplo para o Estado de Roraima quando você envia a GNRE o lote é recebido, mas na hora de buscar o retorno ocorre o erro falha de comunicação, gerando uma exceção e nesse caso parando a execução do sistema e dessa maneira eu não consigo recuperar o numero do recibo.

Se notar na rotina de envio, ele envia o XML e guarda o numero de recibo para buscar o retorno, mas como está na mesma rotina "Envio" do Acbr eu ainda não tenho acesso ao numero do recibo. O erro acontece na linha seguinte quando ele tenta buscar o retorno do processamento e é aqui nesta hora que gera a exceção e com a exceção para execução do sistema eu não consigo  utilizar o numero do recibo.

Por isso em vez de exceção eu coloquei mensagem, para não interromper a execução do sistema.

 

image.png.73b1ac526ef770359e54a19422ea5979.png

 

  • Consultores
Postado

Boa tarde.

1 hour ago, Desenv. AT Info Sistemas said:

Se notar na rotina de envio, ele envia o XML e guarda o numero de recibo para buscar o retorno, mas como está na mesma rotina "Envio" do Acbr eu ainda não tenho acesso ao numero do recibo

No trecho de código que compartilhou, ele atribui o numero do recibo em FRetorno.numeroRecibo. Esta variável é o reader e o writer da propriedade Retorno da classe.

Faça um teste debugando para ver se ele atribui o valor nesta linha e depois tente ler em seu projeto os valores de:

ACBrGNRe.WebSerivces.Retorno.numeroRecibo;
ACBrGNRe.WebServices.Enviar.numero;

 

Consultor SAC ACBr

Diego Folieni
Ajude o Projeto ACBr crescer - Assine o SAC

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

  • Moderadores
Postado
30 minutos atrás, Desenv. AT Info Sistemas disse:

Bom dia, 

Já fiz o teste, mas como  gera exceção o sistema para, não consigo acessar os dados do Acbr.

 

coloca um ponto de parada e vai usando F7 e F8 para depurar até chegar no erro isso é possível

Consultor SAC ACBr Juliomar Marchetti
 

Projeto ACBr

skype: juliomar
telegram: juliomar
e-mail: [email protected]
http://www.juliomarmarchetti.com.br
MVP_NewLogo_100x100_Transparent-02.png
 

 

  • Membros Pro
Postado (editado)

Bom dia, 

Eu já depurei e sei o ponto onde acontece o erro.

Hoje quando ocorre exceção para a execução mostrando o erro.

Vou tentar reescrever nossas rotinas para tentar tratar o retorno quando ocorrer exceção, hoje o retorno é tratado quando o envio é com sucesso.

 

 

Editado por Desenv. AT Info Sistemas
  • Consultores
Postado

Obrigado por reportar.

Fechando. Para novas dúvidas, criar um novo tópico.

Consultor SAC ACBr

Diego Folieni
Ajude o Projeto ACBr crescer - Assine o SAC

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

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

The popup will be closed in 10 segundos...
The popup will be closed in 10 segundos...