Olá pessoal, tudo bem?
Desculpe-me caso eu tenha abeto um tópico sem haver necessidade. Se o moderador achar necessário, por favor, exclua esse tópico e por favor, me informe onde posso postar meu problema.
Utilizo Delphi 2010 e ACBRNFe.
Tenho um cliente que precisou trocar seu HD e foi reinstalado o Windows XP.
Tudo funciona perfeitamente, porém, no momento de validar o XML, está retornando a seguinte mensagem de erro:
“An invalid character was found in text content” = “Um caracter inválido foi encontrado no texto”.
A grande maioria dos dados contém acentos e caracteres especiais. Até trocar o HD e instalar o Windows, esse problema não aparecia e está acontecendo em apenas um caso.
Bem, fiz uma pesquisa a respeito desse problema e encontrei que deve ser colocado no início do XML o atributo ENCODING para que não seja gerado a mensagem de erro.
Pois bem, estou utilizando o componente ACBRNFe para gerar o XML e o mesmo NÃO está inserindo o atributo encoding="UTF-8" na primeira linha ao gerar o XML.
Além disso, no meu aplicativo, ao gerar o XML estou atribuindo UTF-8 para todos os campos onde podem haver caracteres especiais, acentuação e etc. Veja um exemplo:
//Nome do Emitente
Emit.xNome := UTF8Encode(MD.TbCadEmpresas.FieldByName('RazaoSocial').AsString);
Alguém sabe me dizer que erro é esse? Além do atributo encoding no XML, existe alguma configuração que deve ser ajustada no Windows?
Obrigado,
Rogério.