Daten aus XML-Dokumenten einlesen

Lies diesen Artikel und viele weitere mit einem kostenlosen, einwöchigen Testzugang.

Hin und wieder fragen Leser nach einer Möglichkeit, die Daten eines XML-Dokuments in eine Tabelle einzulesen. Dies ist nicht trivial und muss in der Regel programmiert werden – Access liefert keine passende Funktion. Dieser Beitrag zeigt, wie Sie die Daten des XML-Dokuments auf eine oder mehrere Tabellen der Datenbank mappen und diese importieren.

Beispiellösung

Die Beispiellösung zu diesem Beitrag erlaubt das Importieren von Daten aus XML-Dokumenten. Die Lösung kommt als Access-Add-In, das heißt, Sie müssen es erst installieren.

Wenn Sie gleich unsere Beispiele ausprobieren möchten, öffnen Sie zunächst die Datenbank XMLImportBeispiele.mdb.

Danach starten Sie den Add-In-Manager von Access und fügen die Datei aiuXMLImport.mda als neues Add-In hinzu. Anschließend taucht es in der Liste der Add-Ins auf und kann durch einen Mausklick auf den entsprechenden Eintrag gestartet werden.

Sie finden dann zunächst einen Dialog mit den Elementen aus Bild 1 vor. Rechts davon befindet sich ein noch leerer Rahmen, hier wird später die Struktur der zu importierenden XML-Datei angezeigt.

Listing 1: Diese Prozedur sucht das nächste aktive Steuerelement und verschiebt den Fokus darauf.

Public Function ActivateAnotherControl(ctl As Control)
    Dim i As Integer
    Dim frm As Form
    If Val(SysCmd(acSysCmdAccessVer)) < 14 Then
        Set frm = ctl.Parent
        For i = 0 To frm.Controls.Count - 1
            If Not i = ctl.TabIndex Then
                Select Case frm.Controls(i).ControlType
                Case acTextBox, acCommandButton, acComboBox, acListBox, acSubform, _
                acToggleButton, acCheckBox, acOptionButton
                If frm.Controls(i).Enabled = True Then
                    frm.Controls(i).SetFocus
                    Exit For
                End If
                End Select
            End If
        Next i
    End If
End Function

pic001.png

Bild 1: Das XML-Import-Add-In im Urzustand

Zunächst legen Sie jedoch fest, welche XML-Datei überhaupt importiert werden soll. Dazu betätigen Sie die Schaltfläche Neues Dokument einlesen. Es erscheint die Meldung aus Bild 2, die sicherstellt, dass Sie keine nicht gespeicherten änderungen an der vorher geöffneten Konfiguration verlieren.

pic002.png

Bild 2: Warnmeldung vor dem Anlegen einer neuen Konfiguration

Danach geben Sie einen Namen für die neue Konfiguration an (siehe Bild 3). Hierzu sei angemerkt, das eine Konfiguration eine ganze Reihe von Daten enthält:

pic003.png

Bild 3: Angeben des Namens für die neue Konfiguration

  • Dateiname des zu importierenden XML-Dokuments
  • Zieltabelle für die enthaltenen Daten
  • Informationen darüber, in welchen Feldern der Zieltabelle der Inhalte der Elemente des Dokuments landen sollen

Im folgenden Schritt legen Sie dann schließlich das XML-Dokument fest, aus dem die Daten eingelesen werden sollen (s. Bild 4).

pic004.png

Bild 4: Auswählen des XML-Dokuments

Sofern das XML-Dokument valide ist, zeigt das Hauptfenster des Add-Ins nun die Struktur des XML-Dokuments an (s. Bild 5).

pic005.png

Ende des frei verfügbaren Teil. Wenn Du mehr lesen möchtest, hole Dir ...

Testzugang

eine Woche kostenlosen Zugriff auf diesen und mehr als 1.000 weitere Artikel

diesen und alle anderen Artikel mit dem Jahresabo

Schreibe einen Kommentar