Página 2 de 2

Re: Los Archivos actuales y correctos xslt

Publicado: Jue Jun 16, 2011 2:10 pm
por Dado
fer-kun escribió:Va. subo el CFDI , en todo caso por la premura ya me rendi y lo hice en código, vi que es muy simple siguiendo las instrucciones del mismo xslt.
Pues no veo nada raro en el CFDI, tienes razon en pensar que algo en el xlsproc o en el xslt no esta trabajando como deberia

Re: Los Archivos actuales y correctos xslt

Publicado: Jue Jun 16, 2011 2:52 pm
por fortiz
fer-kun escribió:Va. subo el CFDI , en todo caso por la premura ya me rendi y lo hice en código, vi que es muy simple siguiendo las instrucciones del mismo xslt.

Pues ya valide el archivo con mi programa http://www.lacorona.com.mx/fortiz/sat/cfdcvali.php y si valida bien ...

Ahi esta el codigo fuente PHP de como uso el XSLT ... que lo que hace es borra todo y solo deja el TFD :D

Código: Seleccionar todo

// Quita la parte del CFDI
$texto_tfd = preg_replace('{<cfdi:Comprobante.*<tfd:}is', '<tfd:', $texto);
$texto_tfd = preg_replace('{</cfdi:.*$}is', '', $texto_tfd);
// Solo se quedo el tfd:
$xml_tfd = new DOMDocument();
$ok = $xml_tfd->loadXML($texto_tfd);

$xsl = new DOMDocument;
$xsl->load('cadenaoriginal_TFD_1_0.xslt');
$proc = new XSLTProcessor;
$proc->importStyleSheet($xsl);

$cadena = $proc->transformToXML($xml_tfd);

Re: Los Archivos actuales y correctos xslt

Publicado: Jue Ago 04, 2011 8:49 pm
por RickAlanis
Hola.

Perdón por taaaaanto tiempo en responder, pero soy nuevo en este foro y en esto de los CFD y CFDi

Por supuesto que ya estoy listo para emitir CFDi y ya incluso timbro.

Me quebré la cabeza con el último problema: generar la Cadena Original del TFD.
Estoy suscrito a las pruebas en TimbreFiscal y buscando entre tantas preguntas técnicas, me encontré con una modificación que hay que hacer al archivo "cadenaoriginal_TFD_1_0.xslt" para que funcione teniendo el CFDi completo.

Una de las líneas del XSLT dice así:
<xsl:template match="/">|<xsl:apply-templates select="/tfd:TimbreFiscalDigital"/>||</xsl:template>

Me sugirieron cambiarla a:
<xsl:template match="/">|<xsl:apply-templates select="//tfd:TimbreFiscalDigital"/>||</xsl:template>
(Nótese la doble diagonal en "tfd_TimbreFiscalDigital")

Y ¡Sorpresa! ya pude crear la cadena con el xslt.

La verdadera pregunta es ¿Qué está pasando? ¿Debemos quitar todos los textos "cfdi:" para que funcione? Algo no está bien claro y no me gusta el hecho de tener un archivo "especialmente modificado" como parche para que funcione.

¿Comentarios?

¡Saludos!