IIS サーバーに XML ファイル ストアがあります。タグ<amount>
内の値を取得しようとしています。<TotalNetCharge>
ファイルの場所にあるタグは次のとおりです。
<TotalNetCharge>
<Currency>USD</Currency>
<Amount>92.33</Amount>
</TotalNetCharge>
変数で XML を使用し、ファイルから読み込もうとしました。どちらも機能しません。コードは次のとおりです。
Set oXML = Server.CreateObject("MSXML2.DomDocument.4.0")
'oXML.LoadXML(SOAPResponse)
oXML.LoadXML("D:\myfile\XMLReply.xml")
For Each oNode In oXML.SelectNodes("//TotalNetCharge/Amount")
Response.Write "test"
Next
Set oXML = Nothing
画面には何も書き込まれないので、ループに入って画面に「テスト」が書き込まれるため、データが読み込まれていないと想定しています。また、コメントアウトされた部分 (SOAPResponse) を読み込んでみました。これは、Response.Write を画面に表示するため、データが含まれていることがわかっています。誰?このナンセンスで2日間。
更新、これが機能した代替コードです。
Set objXMLDoc = CreateObject("Microsoft.XMLDOM")
objXMLDoc.async = False
objXMLDoc.loadXML(SOAPResponse)
Dim TransactionDetail, CustomerTransactionId
Set NodeList = objXMLDoc.getElementsByTagName("ServiceType")
For Each Node In NodeList
Response.write(Node.text & "<br>")
Next
Set NodeList = objXMLDoc.getElementsByTagName("TotalNetCharge")
For Each Node In NodeList
Response.write(Node.text & "<br>")
Next