El problema radica en que se esta enviando literalmente el caracter & sin hacer la correspondiente conversion a su representacion XML, es decir, convertirlo a &
Debido a que ya en otras partes del codigo he necesitado de esta conversion la propuesta para solucionar este problema es que en la unidad cfdUtils del "Codigo Basico de Factura Electronica Version febrero - 2011 declaren una funcion de la siguiente forma :
(si no usan "mi" codigo entonces declaren esta funcion en la misma unidad TimbreFiscalMx)
Código: Seleccionar todo
function XMLEncode(cad : string) : string;
begin
cad := AnsiReplaceStr(cad,'&','&');
cad := AnsiReplaceStr(cad,'<','<');
cad := AnsiReplaceStr(cad,'>','>');
Result := cad;
end;
Les recuerdo que ya habia publicado dos updates al codigo, aqui estan los mensajes :SOAPMsg := ReqHeader + UTF8Encode(CFD.Datos.XML) +
AnsiReplaceStr(AnsiReplaceStr(ReqFooter,'%rfcemisor%',XMLEncode(CFD.Datos.Emisor.Rfc)),
'%rfcreceptor%',XMLEncode(CFD.Datos.Receptor.Rfc));
http://www.validacfd.com/phpbb3/viewtop ... date#p6170
http://www.validacfd.com/phpbb3/viewtop ... =140#p6573
Tambien les informo que TODOS LOS UPDATE son actualizados de forma automatica en la liga de donde descargaron originalmente el codigo, es decir, si le dan clic otra vez a htp://dl.dropbox.com/u/101/0-TimbreFiscalMX_%28Ywvz%29.rar** podran descargar la ultima version ya actualizada
**La liga mostrada NO ES REAL, la verdadera liga esta en el mail que les envie cuando compraron el codigo
La correccion tambien aplica para la libreria dll, solo tienen que descargar la ultima version dando clic a la liga que les envie por mail cuando hicieron su compra