XML to CSV using VBS file

This work is to extract every object and fields like Id, Date or DateTime from Salesforce WSDL API XML file
Set objXMLDoc = CreateObject("Microsoft.XMLDOM")
objXMLDoc.async = False
objXMLDoc.load("C:\Users\USR\Downloads\wsdl.xml") // sample -- https://gist.github.com/pradeep-dani/2b58bd02165f9a04a4d812c29b287e0d
Dim csvFilePath
Const ForWriting = 2
' Create new CSV file
csvFilePath ="C:\Users\pradeekumar\Downloads\TestExport.csv"
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objCSVFile = objFSO.CreateTextFile(csvFilePath, _
ForWriting, True)
Set Root = objXMLDoc.documentElement
Set ObjectList = Root.getElementsByTagName("complexType")
For Each Elem In ObjectList
Set ElemLst = Elem.getElementsByTagName("element")
For Each FieldRows In ElemLst
'strLenght = strLenght - 1
'If strLenght = 0 Then strSeperator = ""
IF Elem.getAttribute("name") <> "" THEN
IF FieldRows.getAttribute("type") = "tns:ID" OR FieldRows.getAttribute("type") = "xsd:dateTime" OR FieldRows.getAttribute("type") = "xsd:date" THEN
objCSVFile.Write Elem.getAttribute("name") & "," & FieldRows.getAttribute("type") & "," & FieldRows.getAttribute("name")
objCSVFile.Writeline
ELSEIF FieldRows.getAttribute("name") = "Name" THEN
objCSVFile.Write Elem.getAttribute("name") & "," & FieldRows.getAttribute("type") & "," & FieldRows.getAttribute("name")
objCSVFile.Writeline
End If
End IF
Next
Next
view raw XMLToCSV.vbs hosted with ❤ by GitHub

Comments