Ir para conteúdo
  • Cadastre-se

ACBRNfe Envio de E-mail do XML com BOM 


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

Recommended Posts

Postado

Bom dia pessoal,

Meus clientes estão recebendo o XML que eu envio pelo ACBR automaticamente com um caractere estranho. Lendo sobre o assunto parece ser algo com conversão UTF-8 etc etc etc.....

<?xml version="1.0" encoding="UTF-8"?><nfeProc xmlns="http://www.portalfiscal.inf.br/nfe" versao="4.00">

Alguém já passou por este problema?

 

Obrigado.

Postado

Eu faço esta conversão para Salvar no banco de dados:

 Principal.QXML.Edit;
 Principal.QXMLXML_Retorno.asWideString := StringReplace( Principal.ACBrNFe1.NotasFiscais.Items[0].XML , 'UTF-8','UTF-16' , [rfReplaceAll] );
 Principal.QXML.Post;

Mas no SQL Server está perfeito, o problema está apenas no envio do e-mail já com o XML carregado no componente.

 

Postado

Daniel,

Eu exporto o conteúdo do banco de dados e gero um arquivo temporário para depois carregá-lo no componente:

 MemoXML.Lines.SaveToFile(ExtractFileDir(Application.ExeName)+'\Nfe\Temp\temp.xml', TEncoding.UTF8 );
 MemoXML.Free;

 Principal.ACBrNFe1.NotasFiscais.Clear;
 Principal.ACBrNFe1.NotasFiscais.LoadFromFile(ExtractFileDir(Application.ExeName)+ '\Nfe\Temp\temp.xml');

 

Algo errado?

 

  • Fundadores
Postado
54 minutos atrás, Wanderley Trevisan disse:

 MemoXML.Lines.SaveToFile(ExtractFileDir(Application.ExeName)+'\Nfe\Temp\temp.xml', TEncoding.UTF8 );

Isso aqui adiciona o BOM...

Sugestão, grave no Banco como Binário (se for o caso até Zip antes)

Trate o campo como AsString ou AsAnsiString

Consultor SAC ACBr

Daniel Simões de Almeida
O melhor TEF, é com o Projeto ACBr - Clique e Conheça
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.

  • Solution
Postado

Daniel,

Consegui resolver fazendo da seguinte forma, caso alguém passe pelo mesmo problema:

Principal.ACBrNFe1.NotasFiscais.LoadFromString(Principal.QAuxiliar.FieldByName('XML').asAnsiString);

Usando o LoadFromString ao invés do LoadFromFile.

Obrigado.

  • Curtir 1
  • Consultores
Postado

Obrigado por reportar.

Fechando. Para novas dúvidas, criar um novo tópico.

Consultora ACBr Pro

Juliana Tamizou

Gerente de Projetos ACBr / Diretora de Marketing AFRAC
Ajude o Projeto ACBr crescer - Seja Pro

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.  Discord

Projeto ACBr - A maior comunidade Open Source de Automação Comercial do Brasil


Participe de nosso canal no Discord e fique ainda mais próximo da Comunidade !!

  • Este tópico foi criado há 1892 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.
Visitante
Este tópico está agora fechado para novas respostas
×
×
  • 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...
The popup will be closed in 10 segundos...