Build an XML Document for a Recordset on the Fly

Build an XML Document for a Recordset on the Fly

(Note: This tip assumes that you have an ActiveConnectionsetup to your DSN.)

This function creates an XML document from an ADO Recordset, programmatically.

 Public Function CreateXML(strRoot As String,strSQLStatement As String, OptionalstrConnectionString As String) As String    Dim rstADO As ADOR.Recordset    Dim fld As ADOR.Field    Dim strXML As String        If IsMissing(strConnectionString) Then        strConnectionString = "ActiveConnectionString"    End If        Set rstADO = New ADOR.Recordset    rstADO.Open strSQLStatement, strConnectionString,adOpenStatic, adLockReadOnly, adcmdText

Begin the XML declaration. This is required and indicates an XML document.

 strXML = ""

Check for available records.

 If rstADO.EOF And rstADO.BOF Then

Produce an empty element if there’s no data.

 strXML = strXML & vbNewLine & "<" & strRoot &"s>"        strXML = strXML & vbNewLine & ""    Else

Open the first entity tag.

 strXML = strXML & vbNewLine & "<" & strRoot &"s>"

Loop through the recordset and output them to XML with rstADO until .EOF. Begin the element.

 strXML = strXML & vbNewLine & "<" &strRoot & ">" 

Dump each field of the recordset for each fld in .Fields.

 strXML = strXML & vbNewLine & "<"& fld.Name & ">"                    strXML = strXML & fld.Value                    strXML = strXML & ""                Next fld

Close the element.

 strXML = strXML & vbNewLine & ""

Move the next Record.

 .MoveNext            Loop

Close the entity.

 strXML = strXML & vbNewLine & ""            .Close        End With                Set fld = Nothing        Set rstADO = Nothing    End If        CreateXML = strXML        End Function
See also  What Are International Payments, And How Do They Work?

About Our Editorial Process

At DevX, we’re dedicated to tech entrepreneurship. Our team closely follows industry shifts, new products, AI breakthroughs, technology trends, and funding announcements. Articles undergo thorough editing to ensure accuracy and clarity, reflecting DevX’s style and supporting entrepreneurs in the tech sphere.

See our full editorial policy.

About Our Journalist