FoxPro/Visual FoxPro - Poner en un cursor datos de un XML utilizando XMLAdapter.

   
Vista:

Poner en un cursor datos de un XML utilizando XMLAdapter.

Publicado por HerPalMi palacios2007@prodigy.net.mx (3 intervenciones) el 14/08/2013 07:21:28
Que tal a todos!!

Estoy tratando de ver la información de un XML desde vfp9.0.. utilizando la clase XMLAdapter.. pero al ejecutar la clase me envia error.

Este es el XML.:
<?xml version="1.0" encoding="UTF-8"?>
-<cfdi:Comprobante xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:cfdi="http://www.sat.gob.mx/cfd/3" LugarExpedicion="MEXICO" metodoDePago="EFECTIVO" tipoDeComprobante="ingreso" total="1500.00" descuento="0.00" subTotal="1293.10" condicionesDePago="A 0 Dias" certificado="MIIEcTCCA1mgAwIBAgIUMDAwMDEwMDAwMDAyMDI0MDA5NDIwDQYJKoZIhvcNAQEFBQAwggGVMTgwNgYDVQQDDC9BLkMuIGRlbCBTZXJ2aWNpbyBkZSBBZG1pbmlzdHJhY2nDs24gVHJpYnV0YXJpYTEvMC0GA1UECgwmU2VydmljaW8gZGUgQWRtaW5pc3RyYWNpw7NuIFRyaWJ1dGFyaWExODA2BgNVBAsML0FkbWluaXN0cmFjacOzbiBkZSBTZWd1cmlkYWQgZGUgbGEgSW5mb3JtYWNpw7NuMSEwHwYJKoZIhvcNAQkBFhJhc2lzbmV0QHNhdC5nb2IubXgxJjAkBgNVBAkMHUF2LiBIaWRhbGdvIDc3LCBDb2wuIEd1ZXJyZXJvMQ4wDAYDVQQRDAUwNjMwMDELMAkGA1UEBhMCTVgxGTAXBgNVBAgMEERpc3RyaXRvIEZlZGVyYWwxFDASBgNVBAcMC0N1YXVodMOpbW9jMRUwEwYDVQQtEwxTQVQ5NzA3MDFOTjMxPjA8BgkqhkiG9w0BCQIML1Jlc3BvbnNhYmxlOiBDZWNpbGlhIEd1aWxsZXJtaW5hIEdhcmPDrWEgR3VlcnJhMB4XDTEyMTEyMjE3MTIxOFoXDTE2MTEyMjE3MTIxOFowgbIxIjAgBgNVBAMTGUhFUkNVTEVTIFBBTEFDSU9TIE1JUkFOREExIjAgBgNVBCkTGUhFUkNVTEVTIFBBTEFDSU9TIE1JUkFOREExIjAgBgNVBAoTGUhFUkNVTEVTIFBBTEFDSU9TIE1JUkFOREExFjAUBgNVBC0TDVBBTUg3MTA1MDZUSTExGzAZBgNVBAUTElBBTUg3MTA1MDZIREZMUlIwNzEPMA0GA1UECxMGTUFUUklaMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCco//9wIVICb3ytrmbgFOG/6+z8vGW9Fn6D4I9KA7Uca+CtfiRlFq5guLk+j1L884mA/7a059HDavGUaaZuW7htRBoKam6Fl9EBq4ZilZto1NzI7QT9jO3hI05TRzOvMrErNrhTjvo2OqqoWWqP+7Pl1uPjeT1wTwqDTX6E0b9hwIDAQABox0wGzAMBgNVHRMBAf8EAjAAMAsGA1UdDwQEAwIGwDANBgkqhkiG9w0BAQUFAAOCAQEAERYYsj3pXsoK2I+kQDDXpZioTwHVxoJbqiUZG5QITsyFeS1GfPlsYPq+c9z+cR3FfiOdogIcXQDsL2IZOzMnUXv3NXrxsAohN0D+1lslb5YwT/8gBZu+zPUFiB1G+l2FqT2DqbAgztJ6vLdABy52JENJA/c/eVS8NSppy2hqc4RvwBPnfUo9TY8MZJO81zCBxFi0lkoDooBhAOAOrq4eopRWewMk6r5YS3ZfdlrT3+/JoobyxES8rq1RaTwhVBdjh+drRtG30beuG+RD5dqQUaPC8l51lBSCNXKnTPfO74fJLuOCrNT/AzspqKaakeP246loXN+aZ6S02vH/OHT3jg==" noCertificado="00001000000202400942" formaDePago="Una sola exhibición" sello="Yjyau/BrzmfRjLGYQ9bz2bdHyg0eKad3uFMEJmVrqHaXMrXwVs0hW7DyW/dS82bP37eV/DJ+I7Ill0G0mlo4sZaaR+hP68F4ctBzq+59i6w7T9kqHPBNKPnUJp01JfPR7F3yXEuXQwxn12v3Hs081Vq6xx2M6Xr9vtHHT9i4Be8=" fecha="2013-08-09T16:43:10" folio="1123" serie="A" version="3.2" xsi:schemaLocation="http://www.sat.gob.mx/cfd/3 http://www.sat.gob.mx/sitio_internet/cfd/3/cfdv32.xsd">-<cfdi:Emisor nombre="HERCULES PALACIOS MIRANDA" rfc="PAMH710506TI1"><cfdi:DomicilioFiscal codigoPostal="76148" pais="MEXICO" estado="QUERETARO" municipio="SANTIAGO DE QUERETARO" colonia="VILLAS DE SANTIAGO" noInterior="0" noExterior="419" calle="SANTIAGO HUATUSCO"/><cfdi:ExpedidoEn codigoPostal="76148" pais="MEXICO" estado="QUERETARO" municipio="SANTIAGO DE QUERETARO" colonia="VILLAS DE SANTIAGO" noExterior="419" calle="SANTIAGO DE QUERETARO"/><cfdi:RegimenFiscal Regimen="PERSONA FISICA C/ACTIVIDAD EMPRESARIAL Y PROF."/></cfdi:Emisor>-<cfdi:Receptor nombre="MARIA GUADALUPE ELIZABETH PACHECO VEGA " rfc="PAVG821010ET5 "><cfdi:Domicilio codigoPostal="76148" pais="MEXICO" estado="QUERETARO" municipio="QUERETARO" colonia="PEÑUELAS" noExterior="7" calle="CAMPESINOS"/></cfdi:Receptor>-<cfdi:Conceptos><cfdi:Concepto importe="1293.10" valorUnitario="1293.10" descripcion="IMP. LASERJET - HP P1102W 19 PPM B/N" noIdentificacion="20100460" unidad="PZA." cantidad="1.000"/></cfdi:Conceptos>-<cfdi:Impuestos>-<cfdi:Retenciones><cfdi:Retencion importe="0.00" impuesto="IVA"/></cfdi:Retenciones>-<cfdi:Traslados><cfdi:Traslado importe="206.90" impuesto="IVA" tasa="16.00"/></cfdi:Traslados></cfdi:Impuestos>-<cfdi:Complemento><tfd:TimbreFiscalDigital xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="1.0" xsi:schemaLocation="http://www.sat.gob.mx/TimbreFiscalDigital http://www.sat.gob.mx/TimbreFiscalDigital/TimbreFiscalDigital.xsd" xmlns:tfd="http://www.sat.gob.mx/TimbreFiscalDigital" selloSAT="NSIe8APpqkhfg9jBYRMZhdU+hbRNINVUKECSDJgecg+ei/vaG3BpI+T8+uDRJyyiIYGum3qZ7/F2YUAVRHg50mC5WgZbLO2K2jBQHQ7mSUXw2zxkFZ0c052vPmy5euHcxqnLGyPY2I3avTnYwZDNH+m3+gWGdGSIjYUIgfw1iKI=" noCertificadoSAT="30001000000100000801" selloCFD="Yjyau/BrzmfRjLGYQ9bz2bdHyg0eKad3uFMEJmVrqHaXMrXwVs0hW7DyW/dS82bP37eV/DJ+I7Ill0G0mlo4sZaaR+hP68F4ctBzq+59i6w7T9kqHPBNKPnUJp01JfPR7F3yXEuXQwxn12v3Hs081Vq6xx2M6Xr9vtHHT9i4Be8=" FechaTimbrado="2013-08-09T16:43:16" UUID="C4E75C16-D3EC-4C8D-B2BF-E023D3E58F18"/></cfdi:Complemento>-<cfdi:Addenda>-<IO:AddendaIO xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="1.0" xsi:schemaLocation="http://invoiceone.mx/Addendas" xmlns:IO="http://invoiceone.mx/Addendas" plantillaNombre="Silver-AzulAcero"><IO:DatosGenericos importeLetra="un mil quinientos Pesos 00/100 M.N."/></IO:AddendaIO></cfdi:Addenda></cfdi:Comprobante>

Codigo:

cFile = 'C:\DPASO\PAMH710506TI1_A_1123.xml'
Adapter = CREATEOBJECT("XMLAdapter")
Adapter.LoadXML(cFile,.T.)
Adapter.Tables(1).ToCursor()

Error que me envia:
XML Error:XML Parse error:Attribute '{http:/www..w3.org/2001/XMLSchema-instance}schemaLocation' has an invalid value according to the DTD/Sechema. Line 1, Position 2295..

Espero sus comentarios.. GRACIAS y SALUDOS..
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

Poner en un cursor datos de un XML utilizando XMLAdapter.

Publicado por es_binario (757 intervenciones) el 14/08/2013 18:21:32
Tu codigo esta bien...

ojo, un xml es un archivo avanzado de txt, que te permite guardar una base de datos o una tabla... si analisas tu archivo xml no es una tabla es una base de datos....

por que tiene mas de una tabla... aunque solo contenca un unico registro

tienes el detalle de la factura
los datos del cliente
la venta
y comandos de validacion ante el sat...

Conclusion, no puedes leer una factura xml con ese codigo, se requiere de una libreria para hacerlo o escribir unas 2 mil lineas de codigo, las librerias las compras en mercadolibre... pero lamentablemente no hay para vfp, solo para .net

este codigo te da un ejemplo de como lee este programador una factura para que veas que no es facil.. como el fragmento de codigo que pones...

1
http://code.google.com/p/cfdi/source/browse/FacturaElectronicaMexico+VFP.Prg
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Poner en un cursor datos de un XML utilizando XMLAdapter.

Publicado por HerPalMi (3 intervenciones) el 18/08/2013 05:01:54
Que tal a Todos!!

Gracias... es_binario... por la intervensión..

Encontre esto en la WEB y me ha servido... ahora estoy buscando como imprimir un texto en codigo en dos dimensiones.. (QR Code )..

Esto es lo que me sirvio..
*!* lcTimbrado= FILETOSTR("c:\dpaso\RFC.xml")
*!* lcFolio = STREXTR(lcTimbrado, [UUID="], [" ])
*!* lcFechaTimbrado = STREXTR(lcTimbrado, [FechaTimbrado="], [" ])
*!* lcSelloCFD = STREXTR(lcTimbrado, [selloCFD="], [" ])
*!* lcCertificadoSAT=STREXTR(lcTimbrado, [noCertificadoSAT="], [" ])
*!* lcSelloSAT= STREXTR(lcTimbrado, [selloSAT="], [" ])
*!* ACTIVATE SCREEN
*!* ?'folio: '+ lcFolio
*!* ?'Fecha timbre: '+ lcFechaTimbrado
*!* ?'SelloCFD : '+ lcSelloCFD
*!* ?'certificado sat: ' +lcCertificadoSAT
*!* ?'SelloSAT : '+ lcSelloSAT
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar