Jump to content

Assista click.png tectoy.png

C6 chamada_c6.png botao.png

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

Recommended Posts

Boa tarde.

Ao mandar transmitir uma nota com erro no cadastro de um produto, recebo mensagem me informando qual nota está com erro. Tem alguma rotina/procedimento que me informe onde está o problema? No caso, qual item da nota que está com informação incorreta.

Utilizando o validador de xml da sefaz/rs, eu posso saber onde está o erro de acordo com o exemplo abaixo. Há recurso semelhante no ACBR?

Ex.: Schema XML: The 'http://www.portalfiscal.inf.br/nfe:EXTIPI' element is invalid - The value '1' is invalid according to its datatype 'String' - The Pattern constraint failed.

Caminho: NFe[1]/infNFe/det[2]/prod/EXTIPI/
 
Seguem em anexo printscreen da mesagem do sistema e xml da nota com erro no item 2.
 
 

Validação NFe.png

NFe31150710579567000118550010000007971000122967.xml

Link to comment
Share on other sites

  • Consultores

Bom dia,

Reveja a sua rotina que pega o erro de validação para ser exibida, pois deveria aparecer da mesma forma que no validador da SEFAZ-RS.

Consultor SAC ACBr Italo Giurizzato Junior
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr

Analista de Sistemas / e-mail: [email protected] / Fone: (16) 9-9701-5030 / Araraquara-SP

Link to comment
Share on other sites

Minha estrutura está seguindo assim:

 

   try

      ACBrNFe.NotasFiscais.Clear;

      ACBrNFe.Configuracoes.Geral.ExibirErroSchema := True;

      nfeBuild(codES, ACBrNFe.NotasFiscais.Add.NFe);

      showStatus('Validando NF-e...');
      ACBrNFe.NotasFiscais.Valida;

      showStatus('Assinado NF-e...');
      ACBrNFe.NotasFiscais.Assinar;

      //o diretorio configurado para exportar nfe será o padrão
      ACBrNFe.NotasFiscais.Items[0].SaveToFile;

      Result := ACBrNFe.Enviar(codES, imprimir);

      ACBrNFe.WebServices.Consulta.NFeChave := ACBrNFe.WebServices.Retorno.ChaveNFe;

      Result := ACBrNFe.WebServices.Consulta.Executar;

Link to comment
Share on other sites

  • Consultores

Bom dia,

Uma dica:

O método Valida verifica se o XML esta assinado ou não caso na esteja realiza a sua assinatura, portanto se faz necessário executar o Assinar e esta errado a sua sua execução após o Valida.

O método Assinar se encarrega de salvar em disco o XML assinado, portanto não se faz necessário executar o SaveToFile.

O método Enviar internamente executa o Assinar e depois o Valida sendo assim podemos resumir a sua rotina para:

 try

      ACBrNFe.NotasFiscais.Clear;

      ACBrNFe.Configuracoes.Geral.ExibirErroSchema := True;

      nfeBuild(codES, ACBrNFe.NotasFiscais.Add.NFe);

      showStatus('Assinado NF-e...');
      showStatus('Validando NF-e...');
      Result := ACBrNFe.Enviar(codES, imprimir);

      ACBrNFe.WebServices.Consulta.NFeChave := ACBrNFe.WebServices.Retorno.ChaveNFe;

      Result := ACBrNFe.WebServices.Consulta.Executar;

Consultor SAC ACBr Italo Giurizzato Junior
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr

Analista de Sistemas / e-mail: [email protected] / Fone: (16) 9-9701-5030 / Araraquara-SP

Link to comment
Share on other sites

  • Consultores

O componente através do método Validar submete o XML assinado ao schema.

Entenda o seguinte, essa validação não checa tudo, por exemplo, se tratando do CNPJ é verificado se o conteúdo da TAG possui 14 dígitos, retornando um erro caso a informação não tenha esse tamanho, mas não verifica se o mesmo é valido ou não, ou seja, realiza os cálculos para confrontar com os dígitos verificadores.

A propriedade FormatoAlerta esta com o conteúdo padrão?

TAG:%TAGNIVEL% ID:%ID%/%TAG%(%DESCRICAO%) - %MSG%.

Consultor SAC ACBr Italo Giurizzato Junior
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr

Analista de Sistemas / e-mail: [email protected] / Fone: (16) 9-9701-5030 / Araraquara-SP

Link to comment
Share on other sites

  • 2 weeks later...
  • Consultores

Bom dia,

Desculpe pela demora, problemas aqui na empresa.

Você esta usando o componente configurado para Capicom ou OpenSSL?

Ao analisar o método Validar nota-se que as mensagens de alerta ao gerar o XML bem como as de falha de validação só serão apresentadas caso ocorrer falha na validação.

Caso contrario nada será mostrado. Para que as mensagens de falha de validação sejam mostradas a propriedade ExibirErroSchema tem que estar com o valor True.

Consultor SAC ACBr Italo Giurizzato Junior
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr

Analista de Sistemas / e-mail: [email protected] / Fone: (16) 9-9701-5030 / Araraquara-SP

Link to comment
Share on other sites

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.