Ir para conteúdo
  • Cadastre-se

dev botao

Access violation na função ACBrNFSeX1.ConsultarLoteRps


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

Recommended Posts

Postado (editado)

A função ACBrNFSeX1.ConsultarLoteRps, ao ser executada, tanto pelo meu ERP, quanto pelo aplicativo de exemplo do ACBr retornam um erro de Access violation na seguinte situação: (segue erro do meu ERP, e do ExemploACBr na sequencia)

image.pngimage.png.1df5e940546fd8403b53b1bc222bdf3e.png

Quando emito uma NFSe utilizando a função ACBrNFSeX1.Emitir(nLote), e em seguida utilizo a função de consulta, sendo que a NFSe ja foi emitida pelo WS.
Caso a NFSe ainda não tenha sido emitida, a função de consulta retorna "Esse lote está aguardando processamento." e não ocorre o erro.

No meu ERP, ainda depois do Access violation, aparece mais um erro indicando que um arquivo não foi encontrato. Segue anexo:

image.png

Os arquivos que ficaram salvos na pasta "NotasFiscais" são os seguintes:
image.png.e62b1c2c168ca5f7dbc8a84d08105602.png

 

image.png

Editado por Filipe Langner
Postado

debugando os codigos agora, o access violation esta ocorrendo dentro da função "TratarRetornoConsultaLoteRps na unt ACBrNFSeXProviderBase

 

image.thumb.png.87e2e1b3153eda370a776d503fb69cd8.png

image.thumb.png.ca82a8423b626f6bc9e1d755d4c813e6.png


              ANota.NFSe.Numero := ObterConteudoTag(AuxNode.Childrens.FindAnyNs('nrNfse'), tcStr);

exatamente nessa linha ocorre o erro.

  • Curtir 1
  • Consultores
Postado
15 minutos atrás, Filipe Langner disse:

debugando os codigos agora, o access violation esta ocorrendo dentro da função "TratarRetornoConsultaLoteRps na unt ACBrNFSeXProviderBase

 

image.thumb.png.87e2e1b3153eda370a776d503fb69cd8.png

image.thumb.png.ca82a8423b626f6bc9e1d755d4c813e6.png


              ANota.NFSe.Numero := ObterConteudoTag(AuxNode.Childrens.FindAnyNs('nrNfse'), tcStr);

exatamente nessa linha ocorre o erro.

Boa tarde!
Muito obrigado por reportar o problema e pela colaboração em buscar a causa do mesmo!
Como está debugando, por favor, é possível testar se ANota é <> de nil depois de passar na linha anterior a esta que ocorre o Access Violation?
Você pode observar isso no WatchList adicionando ANota<> nil ou Assigned(ANota).
Se ANota for nil, por favor, faça o seguinte teste.
Carregue o componente através da leitura de um XML e depois faça a consulta.

  • Curtir 1
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 !!

  • Consultores
Postado
24 minutos atrás, Filipe Langner disse:

ANota é nil sim.

só não entendi a orientaçao. poderia dar mais detalhes?

O Acess Violation está ocorrendo porque ele está tentando acessar o objeto NFSe, mas esse objeto não foi instanciado.
Nesse caso temos duas possibilidades.
1ª Existe uma NFSe carregada, mas o RPS diverge e por isso não encontra ela na FindByRps
2ª Não existe nenhuma NFSe carregada e por isso não encontra ela(ACBrNFSeX.NotasFiscais.Count = 0).

A ideia seria carregar o componente previamente(através de um ACbrNFSeX.NotasFiscias.LoadFromFile usando o XML do RPS que você está querendo consultar) para ver se o método que busca a NFSe encontra e instancia a NFSe.

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á 735 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...