Bom dia!
Após o envio do evento de ciência da operação, ocorre o seguinte erro: "The handle is in the wrong state for the requested operation - URL:https://www.nfe.fazenda.gov.br/RecepcaoEvento/RecepcaoEvento.asmx - SOAPAction:http://www.portalfiscal.inf.br/nfe/wsdl/RecepcaoEvento"
O detalhe é que o evento fica vinculado a NF-e no site da Receita, contudo não consigo pegar o retorno para atualizar no meu sistema. O problema ocorre aleatoriamente, as vezes o aplicativo trabalha por mais de uma semana sem nenhum erro e então ele aparece para um retorno e depois continua trabalhando normalmente
Trecho de código onde está ocorrendo o problema:
try
try
ACBrNFe.EnviarEvento(idLote);
finally
Confirma_Retorno_Evento(idLote);
ACBrNFe.EventoNFe.Evento.Clear;
ACBrNFe.NotasFiscais.Clear;
end;
except
on E: Exception do begin
if E.Message <> '' then begin
GravaLog('DF', '', '', '', '', E.Message + #13#10, 'I');
end;
end;
end;
A procedure Confirma_Retorno_Evento(idLote) localiza o retorno do webService e faz a atualização das informações no banco de dados (protocolo, data do evento, etc):
if (AcbrNFe.WebServices.EnvEvento.EventoRetorno.retEvento.Count >= 1) then begin
for iRet := 0 to AcbrNFe.WebServices.EnvEvento.EventoRetorno.retEvento.Count - 1 do begin
if (AcbrNFe.WebServices.EnvEvento.EventoRetorno.retEvento.Items[iRet].RetInfEvento.chNFe <> NullAsStringValue) then begin .....