gpt4 book ai didi

xpath - 由 VBScript 运行的 xPath 中的未知方法

转载 作者:行者123 更新时间:2023-12-03 15:49:30 29 4
gpt4 key购买 nike

错误信息是

msxml3.dll: Unknown method.

/Record/CelloXml/Integration/Case/ServiceEvent[-->last()<--]/Service/Comment

我的代码看起来像这样,错误发生在 NEW

Case OLD[0] 一起工作

'On Error Resume Next

Public Function GetParameterXml()
GetParameterXml = _
"<Parameters>" &_
"<Parameter Value='Age' Code='A' Description='Age' Type='Combo' Tooltip='Would you like the newest or oldest Reason?'>" &_
" <Options>" &_
" <Option Code='O' Description='Oldest' Value='OLD' />" &_
" <Option Code='N' Description='Newest' Value='NEW' />" &_
" </Options>" &_
"</Parameter>" &_
"</Parameters>"
End Function

'Parameter Variables
Dim Age : Set Age = Parameters.Item( Bookmark , "Age" )

' PlaceHolder Variables
Dim CommentNodes

''' stop here and look around
stop

Select Case Age.Value
Case "OLD":
Set CommentNodes = XmlDoc.SelectNodes("Record/CelloXml/Integration/Case/ServiceEvent[0]/Service/Comment")
Case "NEW":
Set CommentNodes = XmlDoc.SelectNodes("Record/CelloXml/Integration/Case/ServiceEvent[last()]/Service/Comment")
End Select

For Each CommentNode In CommentNodes
ReturnData = ReturnData & CommentNode.Text & MD
Next

If Len(ReturnData) > 0 Then
ReturnData = Left(ReturnData, Len(ReturnData) - Len(MD))
Else
ReturnData = vbNullString
End If

出于某种原因,它不喜欢 last() 还有其他方法吗?我需要最后一个函数的功能,这样即使只有一个 ServiceEvent 节点,它仍会获取该节点。


我不是 VBScript Guy(目前),我所学到的关于 xPath 的一切都是我在工作中学到的。

最佳答案

只需添加以下属性

XmlDoc.SetProperty "SelectionLanguage", "XPath"

我的测试xml如下

<root>
<child1>
<child2>
<child3>test1</child3>
</child2>
<child2>
<child3>test2</child3>
</child2>
<child2>
<child3>test3</child3>
</child2>
<child2>
<child3>test4</child3>
</child2>
</child1>
</root>

我的测试代码如下

strXMLReadFile = "C:\Test.xml"

Set xmlDoc = CreateObject("Microsoft.XMLDOM")
xmlDoc.SetProperty "SelectionLanguage", "XPath"
xmlDoc.Async = False
xmlDoc.Load(strXMLReadFile)

Set nodeXML = xmlDoc.SelectNodes("//root/child1/child2[last()]")
msgbox nodeXML(0).Text

我得到 test4

关于xpath - 由 VBScript 运行的 xPath 中的未知方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20617236/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com