Micro Focus QTP (UFT) Forums
Exract data from XML using QTP - Printable Version

+- Micro Focus QTP (UFT) Forums (https://www.learnqtp.com/forums)
+-- Forum: Micro Focus UFT (earlier known as QTP) (https://www.learnqtp.com/forums/Forum-Micro-Focus-UFT-earlier-known-as-QTP)
+--- Forum: VB Scripting/Descriptive Programming (https://www.learnqtp.com/forums/Forum-VB-Scripting-Descriptive-Programming)
+--- Thread: Exract data from XML using QTP (/Thread-Exract-data-from-XML-using-QTP)



Exract data from XML using QTP - cowboy49 - 03-13-2012

Hello,

I am currently trying to extract data from an XML file using QTP. This is fairly new to me so please bear with me. The XML file contains many "Operation" nodes. From these nodes, I want to filter the appropriate node based on Operation ID and Operation Type. After that, I want to capture all of the Condition IDs for this Node. I would appreciate greatly any information I can use to start and build on.

Here is my sample code that need revision:
Code:
Set xmlDoc = XMLUtil.CreateXML()
Set objNode=xmlDoc.selectSingleNode(./OPERATION[@ID=REMOVEEQPT]")

<OPERATION ID="INSTALLEQPT" TYPE="FIX" CONFIRMATION="">
        <ATTRIBUTES>
            <ATTRIBUTE ID="EQPTTYPE"/>
        </ATTRIBUTES>
        <CONDITIONS>
            <CONDITION ID="UPGRADEABLE"/>
            <CONDITION ID="EQUIPMENT_IS_OK"/>
        </CONDITIONS>
    </OPERATION>
<OPERATION ID="REMOVEEQPT" TYPE="UNINSTALL" CONFIRMATION="">
        <ATTRIBUTES>
            <ATTRIBUTE ID="EQPTTYPE"/>
            <ATTRIBUTE ID="EQPTCOLOR"/>
            <ATTRIBUTE ID="EQPTAGE"/>
        </ATTRIBUTES>
        <CONDITIONS>
            <CONDITION ID="PROVISIONED"/>
            <CONDITION ID="NOT_ON"/>
            <CONDITION ID="CALL_HELP"/>
                   </CONDITIONS>
    </OPERATION>



RE: Exract data from XML using QTP - rajeevszone - 03-25-2012

Code:
Set oXML = CreateObject("Microsoft.XMLDOM")
' capture all condition ids
Set oConditionIds = oXML.getElementsByTagName("CONDITION ID")

For iCnt=0 to oConditionIds.Length-1
     Print oConditionIds.Item(iCnt).nodeName & "::" & oConditionIds.Item(iCnt).text
Next

Test Automation and QTP - Excel with Ease provides a good reference on working with xml files


RE: Exract data from XML using QTP - rajeevszone - 03-25-2012

Code:
Set oXML = CreateObject("Microsoft.XMLDOM")
' capture all condition ids
Set oConditionIds = oXML.getElementsByTagName("CONDITION ID")

For iCnt=0 to oConditionIds.Length-1
     Print oConditionIds.Item(iCnt).nodeName & "::" & oConditionIds.Item(iCnt).text
Next

Test Automation and QTP - Excel with Ease provides a good reference on working with xml files


RE: Exract data from XML using QTP - cowboy49 - 03-27-2012

Thanks Rajeevszone. I suspected as much. Much appreciated.