Ver Mensaje Individual
  #1  
Antiguo 04-07-2014
Alexis De la Cr Alexis De la Cr is offline
Miembro
 
Registrado: may 2006
Ubicación: Puebla
Posts: 124
Reputación: 18
Alexis De la Cr Va por buen camino
No aparece la leyenda encoding="UTF-8" en la cabecera de XML

Estimados amigos de Club Delphi

Les comento el siguiente problema que tengo. Tengo una Aplicación que genera CFDI desarrollada en delphi 2007 y la cual funciona correctamente en todas sus etapas. Sin embargo, por necesidades ajenas a mi, estoy migrando el codigo a Delphi XE2, y aqui vienen los problemas, los cuales he podido ir solucionando, pero hay uno que no hallo como, y esta relacionado con la generacion del archivo xml. Resulta que a la hora de Escribir el Archivo XML, no guarda la leyenda encoding="UTF-8" y aparece asi

Cita:
<?xml version="1.0"?>
cuando deberia aparecer de la siguiente forma

Cita:
<?xml version="1.0" encoding="UTF-8"?>
Entiendo que a partir de la Version 2009 ha habido cambios, sobre todo con la introduccion del unicode y pienso que debe ir por esta direccion el problema. El codigo que utilizo es el siguiente

Código Delphi [-]
  xmlDoc := TXMLDocument.Create(nil);
  xmlDoc.Active := True;
  xmlDoc.Version:='1.0';
  xmlDoc.Encoding:='UTF-8';
  iNode := xmlDoc.AddChild('cfdi:Comprobante') ;
  iNode.DeclareNamespace('cfdi','http://www.sat.gob.mx/cfd/3');
  .
  .
  .
  xmlDoc.XML.SaveToFile('c:\temporal.xml');
  xmlDoc.Active:=False;
  xmlDoc:=nil;


Alguna Sugerencia? Muchas Gracias por su ayuda
Responder Con Cita