Vanderlei Maria
-
Total de ítens
1 -
Registro em
-
Última visita
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.
Erro Ao Tentar Cancelar Uma Nota Fiscal
em ACBrNFe
Postado
Usando como base o ACBRMonitor2:
if Application.MessageBox('Confirma?', 'Atenção', mb_applmodal+mb_iconquestion+mb_yesno+mb_defbutton1) = 6 then
begin
dm.ACBrNFe1.NotasFiscais.Clear;
dm.ACBrNFe1.NotasFiscais.LoadFromFile(sCaminhoArquivo);
sJustifNFe := '';
// Solicitar justificativa
while Length(sJustifNFe)<15 do
begin
InputQuery('WebServices Cancelamento', 'Justificativa (mínimo 15 caracteres)', sJustifNFe);
sJustifNFe := TrimLeft(TrimRight(sJustifNFe));
if Length(sJustifNFe)<15 then
ShowMessage('Você deve digitar uma justificativa com no mínimo 15 caracteres!');
end;
//
dm.ACBrNFe1.WebServices.Consulta.NFeChave := dm.ACBrNFe1.NotasFiscais.Items[0].NFe.procNFe.chNFe;
if not dm.ACBrNFe1.WebServices.Consulta.Executar then
raise Exception.Create(dm.ACBrNFe1.WebServices.Consulta.Msg);
//dm.ACBrNFe1.Cancelamento(sJustifNFe);
//
vOK := 0;
NumeroLote := StrToInt(FormatDateTime('yymmddhhmm', NOW));
dm.ACBrNFe1.EventoNFe.Evento.Clear;
with dm.ACBrNFe1.EventoNFe.Evento.Add do
begin
infEvento.CNPJ := copy(LimpaNumero(dm.ACBrNFe1.WebServices.Consulta.NFeChave),7,14);
infEvento.cOrgao := StrToIntDef(copy(LimpaNumero(dm.ACBrNFe1.WebServices.Consulta.NFeChave),1,2),0);
infEvento.dhEvento := now;
infEvento.tpEvento := teCancelamento;
infEvento.chNFe := dm.ACBrNFe1.WebServices.Consulta.NFeChave;
infEvento.detEvento.nProt := dm.ACBrNFe1.WebServices.Consulta.Protocolo;
infEvento.detEvento.xJust := sJustifNFe;
end;
try
dm.ACBrNFe1.EnviarEventoNFe(NumeroLote);
vOK := 1;
Resposta := dm.ACBrNFe1.WebServices.EnvEvento.EventoRetorno.xMotivo+sLineBreak+
'[CANCELAMENTO]'+sLineBreak+
'Versao='+dm.ACBrNFe1.WebServices.EnvEvento.EventoRetorno.retEvento.Items[0].RetInfEvento.verAplic+sLineBreak+
'VerAplic='+dm.ACBrNFe1.WebServices.EnvEvento.EventoRetorno.retEvento.Items[0].RetInfEvento.VerAplic+sLineBreak+
'CStat='+IntToStr(dm.ACBrNFe1.WebServices.EnvEvento.EventoRetorno.retEvento.Items[0].RetInfEvento.cStat)+sLineBreak+
'XMotivo='+dm.ACBrNFe1.WebServices.EnvEvento.EventoRetorno.retEvento.Items[0].RetInfEvento.XMotivo+sLineBreak+
'CUF='+IntToStr(dm.ACBrNFe1.WebServices.EnvEvento.EventoRetorno.retEvento.Items[0].RetInfEvento.cOrgao)+sLineBreak+
'ChNFe='+dm.ACBrNFe1.WebServices.EnvEvento.EventoRetorno.retEvento.Items[0].RetInfEvento.chNFe+sLineBreak+
'DhRecbto='+DateTimeToStr(dm.ACBrNFe1.WebServices.EnvEvento.EventoRetorno.retEvento.Items[0].RetInfEvento.dhRegEvento)+sLineBreak+
'NProt='+dm.ACBrNFe1.WebServices.EnvEvento.EventoRetorno.retEvento.Items[0].RetInfEvento.nProt+sLineBreak+
'xEvento='+dm.ACBrNFe1.WebServices.EnvEvento.EventoRetorno.retEvento.Items[0].RetInfEvento.xEvento+sLineBreak+
'nSeqEvento='+IntToStr(dm.ACBrNFe1.WebServices.EnvEvento.EventoRetorno.retEvento.Items[0].RetInfEvento.nSeqEvento)+sLineBreak+
'CNPJDest='+dm.ACBrNFe1.WebServices.EnvEvento.EventoRetorno.retEvento.Items[0].RetInfEvento.CNPJDest+sLineBreak+
'XML='+dm.ACBrNFe1.WebServices.EnvEvento.EventoRetorno.retEvento.Items[0].RetInfEvento.XML+sLineBreak;
except
raise Exception.Create(dm.ACBrNFe1.WebServices.EnvEvento.EventoRetorno.xMotivo);
end;
Fincuinou perfeitamente.
Abraços,
Vanderlei ([email protected])