viernes, 16 de agosto de 2019

ASP. Classic convertir respuesta XML (DataSet) de un webServices a Recorset

Function ConvierteXmlToRecorset(objXML, ByRef objRS)
  
 Dim xmlNodo 
 Dim Columna 
 Dim x
 
    Set objRS = Server.CreateObject("ADODB.Recordset")
 objRS.CursorType = adOpenDynamic 
 Set objLst = objXML.getElementsByTagName("Table")
 if (objLst.length = 0) then
  Set objLst = objXML.getElementsByTagName("Table1")
 end if
 SizeofObject = objLst.length-1

 if SizeofObject >= 0 then
  'Creamos las columnas
  For each elem in objLst
   set childNodes = elem.childNodes
   for each node in childNodes
    objRS.fields.append  node.nodeName, 201, 255
   next
   exit for
  Next
  
  'Añadimos los datos 
  objRS.Open

  For z=0 to objLst.length -1
      
   set childNodes = objLst(z).childNodes
   x = 0
   objRS.Addnew
   for each node in childNodes
    objRS.Fields(x) =  node.text
    x = x +1
   next
   objRS.Update
  Next
  
  'Lo Dejamos apuntado al primer registro
  objRS.MoveFirst 
 end if
 
 'Devolvemos el recorset
 ConvierteXmlToRecorset = objRS
 
End Function

No hay comentarios:

Publicar un comentario