formatear el XML retornado desde un webservice

01/06/2005 - 23:50 por Martin Horacio Martinez Figueroa | Informe spam
Estimados, tengo el siguiente problema:

Estoy rescatando, desde VFP8, un xml que viene desde un
WebService desarrollado en .NET y al ejecutar la instrucción
"Xmla.Tables.Item(iLoop).ToCursor()" me genera el cursor como corresponde,
el problema es que el tipo de los campos son todos MEMO, lo que en la
realizadad no es asi, estan definidos como STRING, DATE, LOGICO, etc...,
invente algo que funciona y funciona bien, esto es:
FOR i = 1 TO Xmla.Tables(iLoop).Fields.Count
nPosArray ASCAN(aAlias,UPPER(Xmla.Tables(iLoop).Fields(i).Alias),-1,-1,0,8)
IF !EMPTY(nPosArray)
cCampo = ALLTRIM(aAlias[nPosArray,1])
cTipo = ALLTRIM(aAlias[nPosArray,2])
nLargo = aAlias[nPosArray,3]
Xmla.Tables(iLoop).Fields(i).DataType = cTipo
Xmla.Tables(iLoop).Fields(i).MaxLength = nLargo
ENDIF
ENDFOR
Xmla.Tables.Item(iLoop).ToCursor()

Lo que hace esto es leer o recorrer todo el XML y formatearlo según una
estructura de archivo que está en .dbf, esta estructura la paso a un
arreglo y se comienza a recorrer uno por uno todos los campos devuestos
desde el XML.

Esto en la actualizad funciona y bien.
Lo que pasa es que quisiera saber si alguien sabe como hacerlo de otra
manera sin tener que recorrer todos los campos del XML y hacerlo en una
solo instrucción.


Atte.
Martín Martínez.



PortalFox :: Nada corre como un zorro
http://www.portalfox.com

PortalFox - NNTP Forum Gateway

Preguntas similare

Leer las respuestas

#1 José G. Samper
02/06/2005 - 23:37 | Informe spam
Hola como estas, la solución a tu problema es en .Net no en VFP 8.0, debes
tipear el DataTable en .Net y con esto se resuelve tu problema

Saludos

José G. Samper
MCAD/MCSD/MCDBA
http://www.foxynet.net/


"Martin Horacio Martinez Figueroa" escribió en el
mensaje news:
Estimados, tengo el siguiente problema:

Estoy rescatando, desde VFP8, un xml que viene desde un
WebService desarrollado en .NET y al ejecutar la instrucción
"Xmla.Tables.Item(iLoop).ToCursor()" me genera el cursor como corresponde,
el problema es que el tipo de los campos son todos MEMO, lo que en la
realizadad no es asi, estan definidos como STRING, DATE, LOGICO, etc...,
invente algo que funciona y funciona bien, esto es:
FOR i = 1 TO Xmla.Tables(iLoop).Fields.Count
nPosArray > ASCAN(aAlias,UPPER(Xmla.Tables(iLoop).Fields(i).Alias),-1,-1,0,8)
IF !EMPTY(nPosArray)
cCampo = ALLTRIM(aAlias[nPosArray,1])
cTipo = ALLTRIM(aAlias[nPosArray,2])
nLargo = aAlias[nPosArray,3]
Xmla.Tables(iLoop).Fields(i).DataType = cTipo
Xmla.Tables(iLoop).Fields(i).MaxLength = nLargo
ENDIF
ENDFOR
Xmla.Tables.Item(iLoop).ToCursor()

Lo que hace esto es leer o recorrer todo el XML y formatearlo según una
estructura de archivo que está en .dbf, esta estructura la paso a un
arreglo y se comienza a recorrer uno por uno todos los campos devuestos
desde el XML.

Esto en la actualizad funciona y bien.
Lo que pasa es que quisiera saber si alguien sabe como hacerlo de otra
manera sin tener que recorrer todos los campos del XML y hacerlo en una
solo instrucción.


Atte.
Martín Martínez.



PortalFox :: Nada corre como un zorro
http://www.portalfox.com

PortalFox - NNTP Forum Gateway
Respuesta Responder a este mensaje
#2 Martin Horacio Martinez Figueroa
03/06/2005 - 23:01 | Informe spam
Como puede realizar eso, como creo la estructura em .Net para que
sea levantada en el WS y, finalmente, traducia en el XML..

No se si sabes como se puede modificar el Schema que biene en el
XML y reemplarlo por el del archivo real, haciendo eso mi problema se
solucionaria, yua que en teoría, el ZML tendría la estructura real del
archivo sin necesidad recorrer el xML.

Eso es lo que estoy intentando ahora, reemplazar el Schema por el de
la estructura del archivo que deseo obtener un un solo paso (o en menos).

Atte.
Martín H. Martínez F.



PortalFox :: Nada corre como un zorro
http://www.portalfox.com

PortalFox - NNTP Forum Gateway
Respuesta Responder a este mensaje
#3 José G. Samper
03/06/2005 - 23:06 | Informe spam
Hola como estas, revisa

http://www.panoramabox.com/GoPub.aspx?IdObj26
http://www.panoramabox.com/GoPub.aspx?IdObj81

Hay ejemplos y explicación de lo solicitado

Saludos

José G. Samper
MCAD/MCSD/MCDBA
http://www.foxynet.net/


"Martin Horacio Martinez Figueroa" escribió en el
mensaje news:
Como puede realizar eso, como creo la estructura em .Net para que
sea levantada en el WS y, finalmente, traducia en el XML..

No se si sabes como se puede modificar el Schema que biene en el
XML y reemplarlo por el del archivo real, haciendo eso mi problema se
solucionaria, yua que en teoría, el ZML tendría la estructura real del
archivo sin necesidad recorrer el xML.

Eso es lo que estoy intentando ahora, reemplazar el Schema por el de
la estructura del archivo que deseo obtener un un solo paso (o en menos).

Atte.
Martín H. Martínez F.



PortalFox :: Nada corre como un zorro
http://www.portalfox.com

PortalFox - NNTP Forum Gateway
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida