SetChildElementByAttr (QTP, TestComplete, VBScript)
Parent page: Service Functions – MSXMLDOM (QTP, TestComplete, VBScript)
Description
Sets text value for the child XML node specified via XPath query.
Note: creates a new XML node if nothing was found.
Implementation
Public Function SetChildElementByAttr(ByRef objXMLParent, ByVal sTagName, ByVal sAttrName, ByVal sValue) Dim objNode sTagName = Trim(sTagName) sAttrName = Trim(sAttrName) sValue = CStr(sValue) If objXMLParent is Nothing Then Set SetChildElementByAttr = Nothing Exit Function End If Set objNode = objXMLParent.SelectSingleNode("./"&sTagName&"[@name='" & sAttrName &"']") If isNull(objNode) or (objNode is Nothing) Then Set objNode = CreateChildElementByName(objXMLParent, sTagName, sValue) Call SetXMLElementProperty(objNode, "#Attr:name", -1, sAttrName) End If Call SetXMLElementProperty(objNode, "#text", -1, sValue) Set SetChildElementByAttr = objNode End Function