Ir para conteúdo
  • Cadastre-se

dev botao

NFe - Download DFe - campo xNome do emitente está retornando em UTF-8 escapado


Valter F.C.
Ver Solução Respondido por Valter F.C.,
  • Este tópico foi criado há 744 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

Olá.

Estou fazendo download de DFe, e encontrei um problema em uma NFe.
No XML, o campo xNome do emitente retorna assim (escapado HTML):

<emit>
	<xNome>AUTO POSTO CHAPAD&amp;Atilde;O LTDA</xNome>
	<xFant>307 CHAPAD&amp;Atilde;O</xFant>
</emit>

O emitente deve ter feito alguma conversão nos dados ao enviar para o SEFAZ.
Quando vou acessar o campo "xNome" (ACBrNFe.WebServices.DistribuicaoDFe.retDistDFeInt.docZip.Items[item].resDFe.xNome), está retornando assim:

AUTO POSTO CHAPAD\u00C3O LTDA

Ou seja, está retornando em UTF-8 escapado, se não me engano é assim que funciona em JSON.

Não sei se esse comportamento do componente está correto.

Se eu tento filtrar no banco de dados (Postgresql), em dados momentos dá erro de conversão de UTF-8 (meu banco é Latin1), então eu preciso fazer a conversão desses dados.

Para contornar, utilizei algo assim (só exemplo):

texto := '{"xNome":"AUTO POSTO CHAPAD\u00C3O LTDA"}';
LJSONValue := TJSONObject.ParseJSONValue(TEncoding.UTF8.GetBytes(texto),0);
saida := LJSONValue.ToString;
// saida = '{"xNome":"AUTO POSTO CHAPADÃO LTDA"}'

Eu estou guardando um JSON com vários dados, então essa conversão não é problema pra mim.

 

Link para o comentário
Compartilhar em outros sites

  • 1 mês depois ...
  • Este tópico foi criado há 744 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.