Cita:
Iniciado por scorpionsdd hola hegaes, tienes razon... No sabia esa parte del xlst, no se si me puedas explicar como hago esta parte o en donde encuentro este archivo u informacion al respecto.
Gracias y saludos.
Disculpa que me intrometa pero creo que puedo ayudarte.
el archivo lo obtienes de la pagina del SAT [URL="http://www.sat.gob.mx/sitio_internet/e_sat/comprobantes_fiscales/15_15565.html"]http://www.sat.gob.mx/sitio_internet/e_sat/comprobantes_fiscales/15_15565.html[/URL]
de aqui tienes que bajar los dos archivos uno cadenaoriginal_2_0.xslt y utilerias.xslt
una vez que tienes estos archivos los agregas a tu solucion.
y despues ocupas la clase XslCompiledTransform para la obtencion de la cadena original, pero recureda que la cadena original tiene que estar expresada en UTF8
Dim transformer As XslCompiledTransform
Dim utf8 As Encoding = Encoding.UTF8
Dim encodedBytes As Byte()
Dim strwriter As System.IO.StringWriter = New System.IO.StringWriter()
'creamos la clase transfomer
transformer = New XslCompiledTransform()
'cargamos el xslt (archivo de transformacion) a la clase
transformer.Load(New XPathDocument(" DIRECCION DE TU ARCHIVO XSLT"))
'procedemos a realizar la transfomración del archivo xml en base al xslt y lo almacenamos en un string que regresaremos
transformer.Transform(New XPathDocument("ARCHIVO XML DEL CUAL QUIERES OBTENER LA CADENA"), Nothing, strwriter)
'convertimos la cadena a utf8 y ya esta lista para ser utilizada en el hash
encodedBytes = utf8.GetBytes(strwriter.ToString)
como complemento existen dos maneras de realizar este proceso, me refiero a en linea y desconectado.
en linea no necesitas nada mas que tener el archivo cadenaoriginal_2_0.XSLT y dentro de este mismo se estan inlcuyendo las referencias a los demas archivos que se ocupan.
y desconectado aqui tendrias que obtener todos los archivos que el SAT ocupa para la obtencion de la cadena original y reemplazar las direcciones del archivo cadenaoriginal_2_0 por la locacion original de los archivos.