Jump to content

dev botao

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

Recommended Posts

  • Membros Pro
Posted

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

  • Membros Pro
Posted

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;

  • Consultores
Posted

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 / Araraquara-SP

Araraquara - A era dos Trólebus

  • Membros Pro
Posted

O resultado, mesmo com essa alteração continua o mesmo. Eu quero saber, onde é realizada a validação dos dados da nota. Por exemplo, se houver um dado incorreto: código ex da tipi, ncm em branco, cfop incorreto. Qual o nome da função que executa essa verificação?

  • Consultores
Posted

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 / Araraquara-SP

Araraquara - A era dos Trólebus

  • 2 weeks later...
  • Consultores
Posted

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 / Araraquara-SP

Araraquara - A era dos Trólebus

×
×
  • 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.

The popup will be closed in 10 seconds...