Avatar of LaMoS
LaMoS
 asked on

XML in ViBa with DOM

Using Visual Basic together with Ms Xml 4.0 SP1

with the following xml-file:

<?xml version="1.0" ?>
<!DOCTYPE data SYSTEM "-------Censored--------">
<data>
<error code="-3002804">
<string>WARNING: vault..proc_insertMSG. Message cannot be queued. Transmission is within 60 seconds of existing entry in queue.</string>
</error>
</data>

Now, i'm looking for ways to read the <string> , but strangely it works no matter what i try, but i can't read the error code itself

VB code i have sofar:

Dim doc As New DOMDocument40
doc.async = False
doc.validateOnParse = False
doc.resolveExternals = False
xmlPath = "temp.xml"
doc.Load xmlPath
message = doc.selectSingleNode("data").Text  '<-- still gives the whole line :S
Visual Basic Classic

Avatar of undefined
Last Comment
WHalphen

8/22/2022 - Mon
Richie_Simonetti

learning...
Anthony Perkins

Change this line:
message = doc.selectSingleNode("data").Text

To:
message = doc.selectSingleNode("data/error/string").Text

Anthony
WHalphen

It's not clear whether you want the string or the error code.  If you want the string, then acperkins' suggestion should work.  If you want the error code you need to use:
oNode=doc.selectSingleNode("data/error")
If Not oNode Is Nothing then
  message=oNode.Attributes.getNamedItem("default").nodeValue
End If
Experts Exchange is like having an extremely knowledgeable team sitting and waiting for your call. Couldn't do my job half as well as I do without it!
James Murphy
ASKER CERTIFIED SOLUTION
WHalphen

Log in or sign up to see answer
Become an EE member today7-DAY FREE TRIAL
Members can start a 7-Day Free trial then enjoy unlimited access to the platform
Sign up - Free for 7 days
or
Learn why we charge membership fees
We get it - no one likes a content blocker. Take one extra minute and find out why we block content.
Not exactly the question you had in mind?
Sign up for an EE membership and get your own personalized solution. With an EE membership, you can ask unlimited troubleshooting, research, or opinion questions.
ask a question