Plateforme Level Extreme
Abonnement
Profil corporatif
Produits & Services
Support
Légal
English
Consulta sobre nodo
Message
De
10/01/2012 12:51:23
Luis Parada
Prosoft´s de Venezuela, C.A.
Valencia, Vénézuéla
 
 
À
Tous
Information générale
Forum:
Visual FoxPro
Catégorie:
Autre
Titre:
Consulta sobre nodo
Versions des environnements
Visual FoxPro:
VFP 9 SP1
OS:
Windows 7
Network:
Windows 2003 Server
Database:
MS SQL Server
Divers
Thread ID:
01532650
Message ID:
01532650
Vues:
96
J'aime (1)
Muy Buenas Tardes.
Muchas gracias de antemano

Tengo el archivo XML
adjunto la imagen del xml


Quisiera que me ayudaran en ¿Como seria la programación para poder capturar los valores de cada elementos?

CodigoArticulo = CON-F105SIX
TotalArticulo = 1.00000

CodigoArticulo = CON-CFEA742-0/0
TotalArticulos = 1.00000

CodigoArticulo = CON-EF2401
TotalArticulos =1.00000


Mi programación es la siguiente:

PUBLIC oDocDep

oDocDep=Getfile("XML","Seleccione:","Abrir",0,"Archivos .XML")
IF NOT Cargar_oDOM(oDocDep)
RETURN .f.
ENDIF

Procedure Cargar_oDOM
Lparameter oDoc As MSXML3.DOMDocument.4.0
IF !EMPTY(oDoc)
oDocumento = CREATEOBJECT("MSXML2.DOMDocument.4.0")
lcXML=Filetostr(oDocDep)
oDocumento.Load(oDocDep)
oDocumento.validateOnParse = .F.
oDocumento.Async = .F.
IF oDocumento.ParseError.ErrorCode (diferente) 0
Texto = [Hubo un error en el documento:] + CHR(13) ;
+ [ Linea: ] + TRANSFORM(oDocumento.parseError.Line) + CHR(13) ;
+ [Posición: ] + TRANSFORM(oDocumento.parseError.LinePos) + CHR(13) ;
+ [ razón: ] + TRANSFORM(oDocumento.parseError.Reason)
=MESSAGEBOX( Texto, 16, [Error leyendo XML] )
oDocumento = NULL
RELEASE oDocumento
ELSE
olNodes = oDocumento.selectNodes("//"+"Articulos")
IF olNodes.LENGTH menor= 0 THEN
=MESSAGEBOX("Comprobante inválido. Nodo 'Articulos' no presente.",16,business_loc)
RETURN .F.
ENDIF
ENDIF
ELSE
=MESSAGEBOX("No ha indicado un archivo XML válido",64,business_loc)
RETURN .F.
ENDIF
ENDPROC
Suivant
Répondre
Fil
Voir

Click here to load this message in the networking platform