Ir para conteúdo
  • Cadastre-se

dev botao

Carta De Correção Erro Ao Atualizar Protocolo, Etc.


raosistemas
  • Este tópico foi criado há 4227 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

Estou com problemas para atualizar protocolo e outro campo que tenho no meu sistema... arquivo xml.

 

A tela está no arquivo anexo.

Ao clicar em Transmitir existe o seguinte codigo:

 

 

procedure TForm4.BitBtn3Click(Sender: TObject);
var
 nomexml, Chave, idLote, codOrgao, CNPJ, nSeqEvento, Correcao : string;
begin
  Form1.cce.edit;
  Form1.cce.Post;
  Chave      := Form1.sonum(Form1.cceNfe_chave.Value);
  idLote     := Form1.cceLote.AsString;
  codOrgao   := copy(Form1.sonum(Chave),1,2);
  CNPJ       := copy(Form1.sonum(Chave),7,14);
  nSeqEvento := Form1.cceSequencial.AsString;
  Correcao   := Form1.cceCorrecao.AsString;
  form1.ACBrNFe1.EventoNFe.Evento.Clear;
   with form1.ACBrNFe1.EventoNFe.Evento.Add do
   begin
     infEvento.chNFe := Chave;
     infEvento.CNPJ   := CNPJ;
     infEvento.dhEvento := now;
     infEvento.tpEvento := teCCe;
     infEvento.nSeqEvento := StrToInt(nSeqEvento);
     infEvento.detEvento.xCorrecao := Correcao;
   end;
 
    form1.ACBrNFe1.EnviarEventoNFe(StrToInt(idLote));
    //dados do retorno
    with form1.ACBrNFe1.WebServices.EnvEvento do
    begin
        NomeXML :=  EventoRetorno.retEvento.Items[0].RetInfEvento.chNFe
                  + TpEventoToStr(EventoRetorno.retEvento.Items[0].RetInfEvento.tpEvento)
                  + IntToStr(EventoRetorno.retEvento.Items[0].RetInfEvento.nSeqEvento)
                  +'- procEventoNFe.xml';
    end;
 
  Form1.MemoResp.Lines.Text := UTF8Encode(Form1.ACBrNFe1.WebServices.CartaCorrecao.RetWS);
  form1.memoRespWS.Lines.Text := UTF8Encode(Form1.ACBrNFe1.WebServices.CartaCorrecao.RetornoWS);
  Form1.cce.Edit;
  Form1.cceProtocolo.value  :=       form1.ACBrNFe1.WebServices.Consulta.procEventoNFe.Items[0].RetEventoNFe.retEvento.Items[0].RetInfEvento.nProt;
  form1.cceArquivoxml.value := nomexml;
  Form1.cce.Post;
 
end;
 
 
Porém não atualiza o protocolo e nem o meu campo arquivoxml;
Aproveitando como deve ficar o botão de envio de email e impressão?
 
Agradeço a ajuda.

post-383-0-06490400-1361550797_thumb.jpg

Link para o comentário
Compartilhar em outros sites

Bom dia!

 

Acho que vc está obtendo o numero do protocolo pela propriedade errada. Ao invés de:

 

ACBrNFe1.WebServices.Consulta.procEventoNFe.Items[0].RetEventoNFe.retEvento.Items[0].RetInfEvento.nProt

 

Após envio do evento, tente:

 

ACBrNFe1.WebServices.EnvEvento.EventoRetorno.retEvento.Items[0].RetInfEvento.nProt

 

Comigo aqui funciona beleza!

 

Att

Link para o comentário
Compartilhar em outros sites

Retorna só o XML mesmo. O nome fica por sua conta gerar. Fiz aqui da seguinte maneira:

 

NomeAqruivoCCs:=PathWithDelim(EditPathCCe.Text)+SoNumero(cdsNotasFiscaisCHAVENFE.Text)+'-'+FormatFloat('00',cdsEventosNSEQCCE.AsInteger)+'-CCe.xml'

 

EditPathCCe é o local onde ele irá salvar os XMLs de CCe que gerar, vc pode deixar na tela pro usuário configurar.

Link para o comentário
Compartilhar em outros sites

  • Moderadores
  • 2 semanas depois ...
  • Moderadores

Sim, isso mesmo, ele é usado no cancelamento.

 

Regys... no exemplo do seu BLOG não entendi na parte de cancelamento nfe... o que seria...

 

          infEvento.detEvento.nProt := Protocolo;

 

Protocolo é o protocolo do envio da NFE?

 

Agradeço!

Equipe ACBr

Régys Borges da Silveira

http://www.regys.com.br

certificacao delphicertificacao delphi
Link para o comentário
Compartilhar em outros sites

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