Ir para conteúdo
  • Cadastre-se

dev botao

Nfe 3.10 Validação L102-10 Descrição Anp


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

Recommended Posts

  • Moderadores

Atualize seus fontes, altere a propriedade ACBrNFe1.Configuracoes.Geral.RetirarAcentos := False; e tente enviar novamente.

djsystem-logo.png
 youtube.png facebook.png instagram.png linkedin.png
André Ferreira de Moraes | Analista de Sistemas
www.djsystem.com.br | www.djpdv.com.br
www.tefhouse.com.br | www.xpos.com.br
Link para o comentário
Compartilhar em outros sites

  • Moderadores

Eu tenho uma pergunta:

a tag xProd deve conter a descricao exata na ANP, certo?

Onde que vai ser informado a marca e outras coisas que existiam no nome do produto antes?

infAdProd?
djsystem-logo.png
 youtube.png facebook.png instagram.png linkedin.png
André Ferreira de Moraes | Analista de Sistemas
www.djsystem.com.br | www.djpdv.com.br
www.tefhouse.com.br | www.xpos.com.br
Link para o comentário
Compartilhar em outros sites

Atualize seus fontes, altere a propriedade ACBrNFe1.Configuracoes.Geral.RetirarAcentos := False; e tente enviar novamente.

 

Prezado André, realizei o procedimento que vc me instruiu.

 

Primeiramente, só pra abrir uma aspas, queria dizer que apresentou o erro na unit ACBrHTMLtoXML.pas, na linha 

GeradorXML.schema := TsPL005c;

Eu pesquisei e encontrei o tópico 

Com base nele, apenas comentei tal linha e resolveu esse problema.

 

 

Sobre o meu problema original, coloquei a função para não retirar os acentos do XML, conforme sugerido e fiz o teste.

Ao enviar a nota fiscal, me apresentou o erro de "Requisição não enviada o sistema. Não pode encontrar o arquivo especificado."

 

Debuguei o que havia ocorrido e aparentemente no meu computador não estava sendo reconhecido o conteúdo enviado com o acento como um XML válido para o envio.

 

Pesquisei um pouco na internet e resolvi da seguinte forma:

 

 

Na Unit ACBrHTTPReqResp, na função TACBrHTTPReqResp.Execute, logo antes de enviar a requisição pelo comando (uma linha acima) 

if HttpSendRequest(pRequest, nil, 0, Pointer(FData), Length(FData)) then

 

Coloquei:

 

FData:= UTF8Encode(FData);

 

para corrigir o problema da acentuação.

 

Não sei se é uma forma válida de correção, mas no meu caso sanou o problema perfeitamente.

 

 

Espero ter ajudado e deixo aqui meus agradecimentos ao André pela força.

 

Um bom dia a todos.

Link para o comentário
Compartilhar em outros sites

  • Moderadores

Sobre o meu problema original, coloquei a função para não retirar os acentos do XML, conforme sugerido e fiz o teste.

Ao enviar a nota fiscal, me apresentou o erro de "Requisição não enviada o sistema. Não pode encontrar o arquivo especificado."

 

Debuguei o que havia ocorrido e aparentemente no meu computador não estava sendo reconhecido o conteúdo enviado com o acento como um XML válido para o envio.

 

Pesquisei um pouco na internet e resolvi da seguinte forma:

 

 

Na Unit ACBrHTTPReqResp, na função TACBrHTTPReqResp.Execute, logo antes de enviar a requisição pelo comando (uma linha acima) 

if HttpSendRequest(pRequest, nil, 0, Pointer(FData), Length(FData)) then

 

Coloquei:

 

FData:= UTF8Encode(FData);

Experimente mudar na unit ACBrNFeWebServices na function TWebServicesBase.EnviarDadosWebService(URL, SoapAction, Dados : String) : String;

Logo após o begin coloque o encode e remova a alteração da unit ACBrHTTPReqResp:

Dados := UTF8Encode(Dados);

djsystem-logo.png
 youtube.png facebook.png instagram.png linkedin.png
André Ferreira de Moraes | Analista de Sistemas
www.djsystem.com.br | www.djpdv.com.br
www.tefhouse.com.br | www.xpos.com.br
Link para o comentário
Compartilhar em outros sites

Experimente mudar na unit ACBrNFeWebServices na function TWebServicesBase.EnviarDadosWebService(URL, SoapAction, Dados : String) : String;

Logo após o begin coloque o encode e remova a alteração da unit ACBrHTTPReqResp:

Dados := UTF8Encode(Dados);

Corrigi o que foi sugerido e funcionou também.

Só para constar, essa alteração será commitada nos fontes posteriormente?

 

Agradeço a ajuda.

Link para o comentário
Compartilhar em outros sites

  • Moderadores

Corrigi o que foi sugerido e funcionou também.

Só para constar, essa alteração será commitada nos fontes posteriormente?

 

Agradeço a ajuda.

Sim, só precisamos testar melhor para ver se não haverá nenhum efeito colateral.
djsystem-logo.png
 youtube.png facebook.png instagram.png linkedin.png
André Ferreira de Moraes | Analista de Sistemas
www.djsystem.com.br | www.djpdv.com.br
www.tefhouse.com.br | www.xpos.com.br
Link para o comentário
Compartilhar em outros sites

Sim, só precisamos testar melhor para ver se não haverá nenhum efeito colateral.

André, baixei a ultima versao agora, fiz a alteracao que vc comentou e re-compilei o Monitor, mas agora quando envio esta dando como resposta ERRO: Error: unable to parse

 

O que pode ser?

Em anexo o arquivo que usei para enviar ao monitor

Log.txt

Link para o comentário
Compartilhar em outros sites

  • Moderadores

Provavelmente a

André, baixei a ultima versao agora, fiz a alteracao que vc comentou e re-compilei o Monitor, mas agora quando envio esta dando como resposta ERRO: Error: unable to parse

 

O que pode ser?

Em anexo o arquivo que usei para enviar ao monitor

Provavelmente a versão OpenSSL não está reconhecendo os acentos, talvez seja preciso usar o UTF8Encode antes de assinar e validar o XML.
djsystem-logo.png
 youtube.png facebook.png instagram.png linkedin.png
André Ferreira de Moraes | Analista de Sistemas
www.djsystem.com.br | www.djpdv.com.br
www.tefhouse.com.br | www.xpos.com.br
Link para o comentário
Compartilhar em outros sites

  • Moderadores

Onde mais eu devo alterar?

Procure pela todas as linhas em que aparece o código abaixo

 

doc := xmlParseDoc(Axml);
e troque por

 

doc := xmlParseDoc(PAnsiChar(UTF8Encode(Axml)));
djsystem-logo.png
 youtube.png facebook.png instagram.png linkedin.png
André Ferreira de Moraes | Analista de Sistemas
www.djsystem.com.br | www.djpdv.com.br
www.tefhouse.com.br | www.xpos.com.br
Link para o comentário
Compartilhar em outros sites

  • Moderadores

na mesma unit, ou no projeto do monitor?

Procure nos fontes do componente. Provavelmente estarão apenas na unit ACBrNFeUtil.pas
djsystem-logo.png
 youtube.png facebook.png instagram.png linkedin.png
André Ferreira de Moraes | Analista de Sistemas
www.djsystem.com.br | www.djpdv.com.br
www.tefhouse.com.br | www.xpos.com.br
Link para o comentário
Compartilhar em outros sites

Procurei com o notepad++ dentro da pasta trunk que baixei na sexta feira e achei o seguinte:

 

  C:\ACBR\Fontes\ACBrCTe\ACBrCTeUtil.pas (2 hits)
	Line 1753:     doc := xmlParseDoc(Axml);
	Line 1820:        doc := xmlParseDoc(Axml);
  C:\ACBR\Fontes\ACBrGNRE\ACBrGNREUtil.pas (2 hits)
	Line 126:        doc := xmlParseDoc(Axml);
	Line 188:        doc := xmlParseDoc(Axml);
  C:\ACBR\Fontes\ACBrMDFe\ACBrMDFeUtil.pas (2 hits)
	Line 1231:     doc := xmlParseDoc(Axml);
	Line 1295:        doc := xmlParseDoc(Axml);
  C:\ACBR\Fontes\ACBrNFe2\ACBrCertificado.pas (1 hits)
	Line 242:        doc := xmlParseDoc(Axml);
  C:\ACBR\Fontes\ACBrNFe2\ACBrNFeUtil.pas (3 hits)
	Line 186:        doc := xmlParseDoc(Axml);
	Line 248:        doc := xmlParseDoc(Axml);
	Line 1294:   doc := xmlParseDoc(Axml);
  C:\ACBR\Fontes\ACBrNFSe\ACBrNFSeUtil.pas (2 hits)
	Line 170:        doc := xmlParseDoc(Axml);
	Line 233:        doc := xmlParseDoc(Axml);

Alem do ACBrNFeUtil, preciso mudar na unit AcbrCertificado tbm?

Link para o comentário
Compartilhar em outros sites

  • Moderadores

Mais alguma idéia "de pronto" que eu poderia tentar?

Pra mim funcionou.

35140946899464000182550010000016891000016895-nfe.xml

djsystem-logo.png
 youtube.png facebook.png instagram.png linkedin.png
André Ferreira de Moraes | Analista de Sistemas
www.djsystem.com.br | www.djpdv.com.br
www.tefhouse.com.br | www.xpos.com.br
Link para o comentário
Compartilhar em outros sites

  • Moderadores

Ué...

Tem como vc comittar entao essas alterações e ai eu baixo os fontes tudo de novo?

Não dá, pois estou trabalhando em outras modificações que podem causar mais efeitos colaterais.
djsystem-logo.png
 youtube.png facebook.png instagram.png linkedin.png
André Ferreira de Moraes | Analista de Sistemas
www.djsystem.com.br | www.djpdv.com.br
www.tefhouse.com.br | www.xpos.com.br
Link para o comentário
Compartilhar em outros sites

Fiz a atualização do ACBr, passei o parâmetro  " ACBrNFe1.Configuracoes.Geral.RetirarAcentos := True; "

 

mas mesmo assim retornou o erro :

 

<cStat>347</cStat>
<xMotivo>Rejeicao: Descricao do Combustivel diverge da descricao adotada pela ANP</xMotivo>
 
Ele não colocou o acento na descrição do produto.
 
Observação: Não estou usando o Monitor, estou utilizando manualmente o componente ACBrNFe
Editado por fkmazzo
Link para o comentário
Compartilhar em outros sites

  • Moderadores

Fiz a atualização do ACBr, passei o parâmetro  " ACBrNFe1.Configuracoes.Geral.RetirarAcentos := True; "

Vc tem q colocar FALSE se não quer remover os acentos.
djsystem-logo.png
 youtube.png facebook.png instagram.png linkedin.png
André Ferreira de Moraes | Analista de Sistemas
www.djsystem.com.br | www.djpdv.com.br
www.tefhouse.com.br | www.xpos.com.br
Link para o comentário
Compartilhar em outros sites

André, 
 
Coloquei a propriedade "RetirarAcentos := False;" conforme orientação, atualizei os schemas, mas agora tenho o seguinte erro na validação da nota fiscal ! 
 
[Window Title]
Atenção
 
[Content]
Falha na validação dos dados da nota 1
'OBRIGADO PELA PREFERENCIA !
Valor Aproximado Tributos R$66,04 (31,45%) Fonte: IBPT' violates pattern constraint of '[!-ÿ]{1}[ -ÿ]{0,}[!-ÿ]{1}|[!-ÿ]{1}'.
The element '{http://www.portalfiscal.inf.br/nfe}infCpl' with value 'OBRIGADO PELA PREFERENCIA !
Valor Aproximado Tributos R$66,04 (31,45%) Fonte: IBPT' failed to parse.
 
 
Caso eu retiro todas as mensagens da nota fiscal a validação retorna ok, mas recebo o seguinte erro no enviar 
 
[Window Title]
Erro
 
[Content]
Erro: Requisição não enviada.
0 - A
 
[OK]
 
 
Obrigado.
Link para o comentário
Compartilhar em outros sites

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

The popup will be closed in 10 segundos...