Seite 1 von 1

XML-Datei iterieren und Wert in Variable speichern

Verfasst: Di Apr 09, 2019 3:30 pm
von Falaffel
Hallo,

ich versuche aktuell mit "XML Datei iterieren" einen Wert in einer XML Datei auszulesen, mit einer Variable zu vergleichen und dann je nach Ergebnis einen korrigierten Wert in die XML Datei zu schreiben oder nichts zu machen.
Der Ablauf der Bausteine sie folgendermaßen aus:
Screenshot 1
Screenshot 1
xml_it1.png (10.44 KiB) 19919 mal betrachtet

Es soll der Wert von "/AnyConnectPreferences/DefaultUser" in die Variable %DEFAULTUSER% geschrieben werden.
Screenshot 2
Screenshot 2
xml_it2.png (93.07 KiB) 19919 mal betrachtet

Im XML-Dateibrowser sieht das folgendermaßen aus:
Screenshot 3
Screenshot 3
xml_it3.png (31.71 KiB) 19919 mal betrachtet

Mit einem "If...Then" Baustein möchte ich die Variable %DEFAULTUSER% mit dem aktuell angemeldeten User vergleichen ...
Screenshot 4
Screenshot 4
xml_it4.png (42.68 KiB) 19919 mal betrachtet

... und wenn dieser es nicht passt den Usernamen des aktuell angemeldeten Users in die XML Datei schreiben.
Screenshot 5
Screenshot 5
xml_it5.png (55.79 KiB) 19919 mal betrachtet

Das Skript läuft durch, erzeugt aber folgende Logdatei (Auszug der Logdatei)
Screenshot 6
Screenshot 6
xml_it6.png (23.32 KiB) 19919 mal betrachtet


Leider ist die Onlinehilfe zu den XML Bausteinen nur sehr allgemein gehalten und hilft mir nicht weiter. Nach meinem Verständnis, müsste das so funktionieren. Es scheint aber schon Probleme beim Baustein "XML Datei iterieren" zu geben und der "If...Then" Baustein wird gar nicht mehr ausgeführt.

Habe ich den Sinn von "XML Datei iterieren" falsch verstanden oder habe ich es falsch umgesetzt? Ich bin für jede Hilfe bzw. jeden Tipp dankbar.

Re: XML-Datei iterieren und Wert in Variable speichern

Verfasst: Di Apr 09, 2019 4:03 pm
von Dennis Koch
Hallo Robert,

gibt es in der XML-Datei ggf. einen Eintrag ala xmlns="http://example.org/?
Falls ja liegt es daran, dass dies als neuer Namespace gewertet wird.
Das Attribut müsste einen Namen haben, xmlns:a="http://example.org/" würde funktionieren.

Re: XML-Datei iterieren und Wert in Variable speichern

Verfasst: Di Apr 09, 2019 4:19 pm
von Falaffel
Hallo Dennis,

es sieht auf den ersten Blick nicht danach aus. Ich habe die gesamte XML Datei mal hier angehängt. Ich musste die Datei zippen, da XML nicht erlaubt ist.

PS: hier der Inhalt der XML Datei (leider ohne Zeilenumbrüche):

Code: Alles auswählen

<?xml version="1.0" encoding="UTF-8"?>
<AnyConnectPreferences>
	<DefaultUser>rommel\r.steichele</DefaultUser>
	<DefaultSecondUser></DefaultSecondUser>
	<ClientCertificateThumbprint></ClientCertificateThumbprint>
	<ServerCertificateThumbprint></ServerCertificateThumbprint>
	<DefaultHostName>sslras.gottlob-rommel.de</DefaultHostName>
	<DefaultHostAddress></DefaultHostAddress>
	<DefaultGroup></DefaultGroup>
	<ProxyHost></ProxyHost>
	<ProxyPort></ProxyPort>
	<SDITokenType>none</SDITokenType>
	<ControllablePreferences>
		<BlockUntrustedServers>false</BlockUntrustedServers></ControllablePreferences>
</AnyConnectPreferences>

Re: XML-Datei iterieren und Wert in Variable speichern

Verfasst: Mi Apr 10, 2019 8:38 am
von Dennis Koch
Ich konnte mit der XML-Datei auch nicht das gewünschte Attribut auslesen. Im Anhang habe ich ein Clientcommand erstellt wie man diese aber trotzdem umsetzen kann.
Ich lasse das Verhalten einmal von unserer Entwicklung untersuchen.
XPath__{A513881A-6C34-4B66-9761-77064F8BDF66}.sim
(4.07 KiB) 294-mal heruntergeladen

Re: XML-Datei iterieren und Wert in Variable speichern

Verfasst: Mi Apr 10, 2019 8:55 am
von Falaffel
Super, vielen Dank für das Command und deine Hilfe. Ich werde versuchen das in unser Command einbauen.