Ir para conteúdo
  • Cadastre-se

dev botao

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

Recommended Posts

  • Membros Pro
Postado

Colegas estou com o seguinte problema.

Na emissão off-Line preencho a tag tpemi = 9

Quanto volta a internet seleciono o XML e faço o envio, sempre fiz desse jeito.

Porem de dois dias atrás  começou que quando  faço o envio estou recebendo a mensagem de codigo de Hash do QRcode difere do calculado,

Outra hora  "envio de lote com mais de uma nota';

outra hora "Falha na validação da Nota"

 

só faço um loop na tabela pegando o xml gerado em contigencia

TRY
    while not cdsNFC.Eof  do
    begin
        FDataModule.ACBrNFe1.NotasFiscais.LoadFromFile(cdsNFCLOCALXML.AsString);
        FDataModule.ACBrNFe1.Enviar('1',False  ,False);
        FDataModule.ACBrNFe1.WebServices.Consulta.NFeChave := cdsNFCLOCALCHAVE.AsString;
        FDataModule.ACBrNFe1.WebServices.Consulta.Executar;
        Protoco :=  FDataModule.ACBrNFe1.WebServices.Consulta.Protocolo ;
    end;
EXCEPT
    ON ERR : EXCEPTION DO
    BEGIN
        Application.MessageBox(PChar(E.Message), 'Informação do Sistema', MB_OK+MB_ICONEXCLAMATION);
    END;
END;

ALguem poderia mim informar se estou fazendo da forma correta , se houve alteração

 

Obrigado

Postado
5 horas atrás, Arnaldo Cruz disse:

Porem de dois dias atrás  começou que quando  faço o envio estou recebendo a mensagem de codigo de Hash do QRcode difere do calculado,

Bom dia,

para qual UF ? De repente, a respectiva sefaz pode ter ativado esta validação...

Att

Ricardo

  • Membros Pro
Postado

UF = Paraiba

olha passei o dia ontem brigando com isso, hoje abri o sistema tenho uma rotina que verifica 

se existe emissão sem transmissão, caso haja ela faz o envio.

Pois bem todos os xml foram enviados. sem erro nenhum.

 

  • Curtir 2
  • Membros Pro
Postado

UF - PB

Hoje aconteceu de Novo 

Procedimento anterior.

Emito a NFC-e em Modo off-Line com  tpEmis= 9
Quando volta a internet seleciono o XML e executo  ACBrNFe1.Enviar('1',False  ,True);
Recebo a Rejeição "CODIGO DE HASH NO QR-CODE DIFERE DO CALCULADO"

Solução
   Recrio o XML com data e hora atual
   executo ACBrNFe1.Enviar('1',False  ,True);
   Pronto a nota é Transmitida.
   
 Observação.
    Isso ta errado pois altera a chave da NFC-e.
    Já recriei o xml com a mesma data e hora da emissão, ai ocorre a mesma rejeição

 

Se Alguem puder mim dá uma dica de como tratar este envio eu agradeço

Postado
Em 03/11/2018 at 23:52, Arnaldo Cruz disse:

Recebo a Rejeição "CODIGO DE HASH NO QR-CODE DIFERE DO CALCULADO"

Boa tarde,

como vc está carregando o XML?

Verifique os parâmetros do método "LoadFromFile", veja se não está passando TRUE no 2º parametro... (é apenas um "chute"... :-))

Att

Ricardo

  • Curtir 1
  • Membros Pro
Postado

Nao Ricardo está false,

o padrão eu deixo sempre em false,

fiz o  teste com LoadFromFile(Caminho do XML)

também ocorre vez em quando a rejeição  "CODIGO DE HASH NO QR-CODE DIFERE DO CALCULADO"

Pessoal o que ta mim encafifando é porque ocorre vez em quando, não é sempre

e parece que é coisa do capeta, pois só ocorre quando estou emitindo um certificado, quando estou dirigindo, ou quando estou em atendimento. só nas horas mais impróprias.

 

  • Membros Pro
Postado (editado)

Olha fui testar hoje e aconteceu de novo testei o XML no Validador do RS

Olha meu envio.

Quando executo o envio já cai na rejeição (Exception)

 

 

 

xmlValido.jpg

Rejeiçao.jpg

Editado por Arnaldo Cruz
  • Membros Pro
Postado

Bom depois de muito fuçar consegui descobri qual é o problema.

Quando chamado >>> FDataModule.ACBrNFe1.Enviar('1',False  ,True);

function TACBrNFe.Enviar(ALote: String; Imprimir: Boolean; Sincrono: Boolean;
  Zipado: Boolean): Boolean;
var
  i: integer;
begin
  WebServices.Enviar.Clear;
  WebServices.Retorno.Clear;

  if NotasFiscais.Count <= 0 then
    GerarException(ACBrStr('ERRO: Nenhuma NF-e adicionada ao Lote'));

  if NotasFiscais.Count > 50 then
    GerarException(ACBrStr('ERRO: Conjunto de NF-e transmitidas (máximo de 50 NF-e)' +
      ' excedido. Quantidade atual: ' + IntToStr(NotasFiscais.Count)));

  //NotasFiscais.Assinar; // Basta comentar esta Linha
  //NotasFiscais.Validar; // Basta comentar esta Linha 

//( Pois quando foi gerado o xml já foi executado o Assinar e o Validar e quando é feito isso novamente é alterado a data e hora do QRCode -  que vai provocar a rejeição do Codigo no QR-Code divere do calculado,
//pois a SEFAZ faz o calculo pela data de emissão da  Nota e o ACBr ta fazendo pela data e hora atual no momento da execução)

  if DANFE <> nil then
  begin
    for i := 0 to NotasFiscais.Count - 1 do
    begin
      if NotasFiscais.Items.Confirmada and Imprimir then
      begin
        NotasFiscais.Items.Imprimir;
        if (DANFE.ClassName = 'TACBrNFeDANFERaveCB') then
          Break;
      end;
    end;
  end;
end;

Isso deveria ser modificado no componente, pra identificar quando a nota for em contigencia offline não executar o Assinar Validar, ou até mesmo na chamada do procedimento

ter a opção de Assinar e Validar. pois estes dois procedimentos geralmente são executados no momento da criação do xml.

Postado
8 horas atrás, Arnaldo Cruz disse:

Isso deveria ser modificado no componente, pra identificar quando a nota for em contigencia offline não executar o Assinar Validar, ou até mesmo na chamada do procedimento

Como alternativa, a mexer no componente, tente substituir "ACBrNFe1.Enviar(1, False, True)" por:

ACBrNFe1.WebServices.Enviar.Lote := 1;
ACBrNFe1.WebServices.Enviar.Sincrono := True;
ACBrNFe1.WebServices.Enviar.Executar;

Att

Ricardo

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