Complemento LeyendasFiscales y cadena Original
Publicado: Lun Jul 23, 2012 10:07 am
Buen día, solicito de su valioso apoyo con una situación que se me presento. Nosotros tenemos una aplicación para CFD por medios propios, esta en PHP con soporte libxml ... Cuando se presento el cambio de la version 2.0 a la 2.2 no tuvimos ningun inconveniente... Ahora nos piden que agreguemos el Complemento LeyendasFiscales, el agregar los nuevos nodos al XML no tenemos ningun problema, pero al generar la Cadena Original no nos esta tomando esta parte.
Para genera la cadena original descargamos el xslt de la version 2.2 y tuvimos que hacer la siguiente modificación:
de lo cambiamos a
Lo hizimos así porque la liberia de PHP solo soporta la versión 1.0 del XSLT. Tambien hicimos lo siguiente:
Donde aparecia "cfd:" lo tuvimos que quitar, por ejemplo: quedo así
Estos cambios tuvimos que hacerlos porque al tratar de generar la cadena original con el xslt tal como se descarga de la página del SAT la generaba vacia. Con esto nos funciono bien...
Espero haber dado una idea de como tenemos los archivos xslt para generar la cadena original, ahora les comento el problema... Para el Complemento de LeyendasFiscales tambien descargue el archivo XSLT de la pagina del SAT, y cambie la versión del xsl:stylesheet a la versión 1.0, igual que lo anterior...
El xml del CFD se crea con la siguiente parte como ejemplo:
Cheque la estructura con el validador del SAT y me marca que es correcta. Al tratar de genera la cadena original con los archivos xslt que descargue y modifique si se genera la Cadena, pero no esta incluyendo la parte de las Leyendas Fiscales, por lo tanto al generar el sello es invalido al revisarlo en la aplicación del SAT.
Revise el XSLT de la cadena original e hice algunas pruebas y vi no esta encontrando la etiqueta "leyendasFisc:LeyendasFiscales" en la siguiente parte del codigo:
Y la verdad no se porque... se muy poco sobre el tema de XML, XSLT ... en fin.. pero me esta pasando lo mismo que cuando tenia el "cfd:" antes de cada nombre de las etiquetas, pero ahora ocurre con "leyendasFisc:" ....
Si alguien me pudiera orientar y darme alguna otra sugerencia de como hacerlo... No se si con los datos que les pase se pueda revisar, pero si no me dice que mas requieren....
La aplicación esta montada sobre:
SO: CentOS
APP: apache y PHP5
Tambien uso para pruebas xsltproc
De antemano gracias....
Para genera la cadena original descargamos el xslt de la version 2.2 y tuvimos que hacer la siguiente modificación:
de
Código: Seleccionar todo
<xsl:stylesheet version="2.0" ...>
Código: Seleccionar todo
<xsl:stylesheet version="1.0" ...>
Donde aparecia "cfd:" lo tuvimos que quitar, por ejemplo:
Código: Seleccionar todo
<xsl:template match="cfd:Comprobante">
Código: Seleccionar todo
<xsl:template match="Comprobante">
Espero haber dado una idea de como tenemos los archivos xslt para generar la cadena original, ahora les comento el problema... Para el Complemento de LeyendasFiscales tambien descargue el archivo XSLT de la pagina del SAT, y cambie la versión del xsl:stylesheet a la versión 1.0, igual que lo anterior...
El xml del CFD se crea con la siguiente parte como ejemplo:
Código: Seleccionar todo
<Complemento>
<leyendasFisc:LeyendasFiscales version="1.0">
<leyendasFisc:Leyenda disposicionFiscal="IVA" norma="ARTICULO 32" textoLeyenda="Impuesto retenido de conformidad con la Ley del Impuesto al Valor Agregado"/>
<leyendasFisc:Leyenda disposicionFiscal="ISR" norma="ARTICULO 133" textoLeyenda="Efectos fiscales al pago"/>
</leyendasFisc:LeyendasFiscales>
</Complemento>
Revise el XSLT de la cadena original e hice algunas pruebas y vi no esta encontrando la etiqueta "leyendasFisc:LeyendasFiscales" en la siguiente parte del codigo:
Código: Seleccionar todo
<xsl:template match="Complemento">
<xsl:for-each select="./*">
<xsl:apply-templates select="."/>
</xsl:for-each>
</xsl:template>

Si alguien me pudiera orientar y darme alguna otra sugerencia de como hacerlo... No se si con los datos que les pase se pueda revisar, pero si no me dice que mas requieren....
La aplicación esta montada sobre:
SO: CentOS
APP: apache y PHP5
Tambien uso para pruebas xsltproc
De antemano gracias....