Jump to content
Sign in to follow this  
FloboX3

Read Values from XML

Recommended Posts

FloboX3

Hey

first sorry for my maybe bad englisch, i am german :)

I wish to write a function, which reads XML values from a file. I am using the _XMLDomWrapper.au3 and in my oppinion the function looks correct.

Func LoadConfig()
$Optionpath = "/Configfile/Config/"

$sXmlFile = FileOpenDialog("", @ProgramFilesDir, "XML (*.xml)", 1)
If @Error Then
MsgBox(4096, "Fail", "File not found")
Exit
Else
$oOXml = ""
$oOXml = _XMLFileOpen($sXmlFile)
If @Error then
MsgBox(4096, "Fail", "Opening the file failed")
Exit
EndIf
$benutzer = _XMLGetValue($Optionpath & "Username")
$aktionen = _XMLGetValue($Optionpath & "Aktionen")
$anzahlds = _XMLGetValue($Optionpath & "AnzahlDatensaetze")
$anzahlwdh = _XMLGetValue($Optionpath & "AnzahlWiederholung")
$pausenachsk = _XMLGetValue($Optionpath & "PauseNachSkript")
$pausenachla = _XMLGetValue($Optionpath & "PauseNachLauf")


; Fill formularfields with data
GUICtrlSetData($cmbUser, $benutzer) ; Benutzername
GUICtrlSetData($edtAktionen, $aktionen) ; Aktionen
GUICtrlSetData($inpAnzahlDS, $anzahlds) ; Anzahl Datensätze
GUICtrlSetData($inpAnzahlWiederh, $anzahlwdh) ; Anzahl Wiederholungen
GUICtrlSetData($inpPauseSkript, $pausenachsk) ; Pause nach Skript
GUICtrlSetData($inpPauseLauf, $pausenachla) ; Pause nach Lauf
EndIf
EndFunc

But the variables $benutzer, $aktionen, $anzahlds, $anzahlwdh, $pausenachsk and $pausenachla are empty. Why the hell...?!

Jear, i forgott the XML-File. Here:

<?xml version="1.0"?><Configfile>    <Config>        <Username>Username</Username>        <Aktionen>Test1|Test2|Test3|Test4</Aktionen>        <AnzahlDatensaetze>10</AnzahlDatensaetze>        <AnzahlWiederholung>5</AnzahlWiederholung>        <PauseNachSkript>20</PauseNachSkript>        <PauseNachLauf>20</PauseNachLauf>    </Config></PSR_Dauertest_Config>

Edited by FloboX3

Share this post


Link to post
Share on other sites
FloboX3

I did it. Topic can be closed

Func LoadConfig()
    $Optionpath = "//Configfile/Config/"

    $sXmlFile = FileOpenDialog("", @ProgramFilesDir, "XML (*.xml)", 1)
    If @Error Then
        MsgBox(4096, "Fail", "File not found")
        Exit
    Else
        $oOXml = ""
        $oOXml = _XMLFileOpen($sXmlFile)
        If @Error then
            MsgBox(4096, "Fail", "Opening the file failed")
            Exit
        EndIf
        
        Local $benutzer_node = $Optionpath & "Username"
        Local $benutzer_array = _XMLGetValue($benutzer_node)
        Local $aktionen_node = $Optionpath & "Aktionen"
        Local $aktionen_array = _XMLGetValue($aktionen_node)
        Local $anzahlds_node = $Optionpath & "AnzahlDatensaetze"
        Local $anzahlds_array = _XMLGetValue($anzahlds_node)
        Local $anzahlwdh_node = $Optionpath & "AnzahlWiederholung"
        Local $anzahlwdh_array = _XMLGetValue($anzahlwdh_node)
        Local $pauseSkri_node = $Optionpath & "PauseNachSkript"
        Local $pauseSkri_array = _XMLGetValue($pauseSkri_node)
        Local $pauseLauf_node = $Optionpath & "PauseNachLauf"
        Local $pauseLauf_array = _XMLGetValue($PauseLauf_node)
        
        
        ; Formularfelder mit entsprechenden Daten füllen    
        GUICtrlSetData($cmbUser, $benutzer_array[1]) ; Benutzername
        GUICtrlSetData($edtAktionen, $aktionen_array[1]) ; Aktionen
        GUICtrlSetData($inpAnzahlDS, $anzahlds_array[1]) ; Anzahl Datensätze
        GUICtrlSetData($inpAnzahlWiederh, $anzahlwdh_array[1]) ; Anzahl Wiederholungen
        GUICtrlSetData($inpPauseSkript, $pauseSkri_array[1]) ; Pause nach Skript
        GUICtrlSetData($inpPauseLauf, $pauseLauf_array[1]) ; Pause nach Lauf
    EndIf
EndFunc

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

×