XML Einstigerhilfe

Morgen,

also ich bin absoluten XML Anfänger. Und habe folgendes Problem. Die Firma bei der ich arbeite hat einen Online Shop und ab nächste Woche bekommen wir Stammartikeldaten unseres Großhändlers in Form von XML Datein. Mein Problem ist das ich die XML Datein irgendwie in eine Exceltabelle einspeißen muss. Da ich die Daten noch für unseren Shop anpassen muss. Und ausserdem können wir auf unseren Shop nur CSV Datein hochladen. Wenn ich die XML Datei also in Excel öffnen will, gibt es eine Fehlermeldung von wegen kann das Schema nicht erkennen.

Zuerst fragt mich Excel in welchem Format ich die Datei einfügen will (XML Tabelle hab ich genommen) und dann kommt folgende Meldung:

Es besteht ein Problem mit der angegebenen XML- oder Schemaquelle. Klicken Sie auf OK, um mit Excel ein Schema basierend auf den XML-Quelldaten zu erstellen.

Da klicke ich auf OK und dann läd mein Excel ewig irgendwas aber selbst nach ner halben Stunde passiert nichts.

Hoffe einer kann mir helfen wie ich das hinbekomme. Also die XML Datei in eine Exceltabelle zu bringen

Hallo Alexander,

Öffne das XML mal in einem Texteditor und prüfe im ob im ersten Element, also am Anfang des Dokuments so was steht wie hier:

<?xml version="1.0" encoding="UTF-8" ?>

Versuch mal statt

<?xml version="1.0" encoding="UTF-8" ?>

diese

<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>

oder

Prüfe mal was unter der schemaLocation angeben ist. Evlt. ist das Schema hier gar nicht notwendig. Test mal, ob du die Attribute xmlns löschen kannst.

Hallo, danke für die schnelle Hilfe.

Bis oben in der Datei stand das:

<?xml version="1.0" encoding="UTF-8"?> das habe ich dann durch <?xml version="1.0" encoding="UTF-8" standalone="yes" ?> ausgetauscht. Hat aber leider nicht funktioniert, der Fehler kam wieder.

Dann wollte ich die Attribute von xmlns löschen, war ich aber unsicher habe da diese Zeile gefunden (habe die Domains aber abgeändert da ich die hier nicht angeben darf:

Die Zeile einfach mal löschen oder wie? Wenn ja, das hat auch nicht funkioniert, da läd er erst gar nicht sondern sagt gleich das es nicht geht.

Hallo Alexander,

dann bleibt dir wohl nichts anders übrige, als bei dem der dir die Daten zur Verfügung gestellt hat, nachzufragen, ob du auch das dazugehörige Schema bekommen kannst. Das ist wohl der sinnvollste Weg.

Du könntest dir natürlich mit Hilfe eines Tools ein Schema aus dem bestehenden Xml erzeugen.
Mit diesem Tool:
http://www.haiders.net/post/Download-xsdexe.aspx
Und hier die Anleitung:
http://msdn.microsoft.com/de-de/library/x6c1kb0s%28v…

Hallo,
wenn „nichts passiert“ dann nehme ich an, dass Excel rechnet und rechnet? Dann würde ich die Datei mit den Daten einfach kleiner machen. D. h. kopiere nur einen Teil der Daten darin und mache dann das Gleiche. Vielleicht gibt es dann mehr Informationen, was Excel dann macht oder nicht macht.

Ansonsten ist deine Frage sehr allgemein.
Besser wäre zu wissen, wie die XML Daten strukturiert sind, damit man in der Lage ist, das nachvollziehen zu können.

Viele Grüße,
Wolfgang

Hallo,

also ich hab jetzt einen Fortschritt gemacht. Ich habe noch eine kleinere Datei vom Lieferanten bekommen in der Artikelbestände drin stehen, die war knapp 1,3 MB groß. Und da hatte ich zwar auch den Fehler aber trotzdem hat Excel die Datei richtig geladen. Also müsste es normalerweise mit der anderen Datei auch gehen, nur die ist 26 MB groß. Also am besten mal laden lassen oder?

Danke für eure Hilfe :smile:

Wie gesagt,
nur einen Teil der Datei verwenden,
um zu sehen, ob die Daten überhaupt richtig geladen werden. Natürlich dabei darauf achten, dass das XML Format erhalten bleibt.

Gruß Wolfgang

Hallo Alexander,

mit welcher Excel-Version arbeitest du?

Also ich hab eine XML-Datei gerade in Excel 2010, so wie du beschrieben, importiert und es gab keine Fehler.

Mögliche Probleme, die ich sehe, könnten bei dir sein:

  • Deine Excel-Version kommt nicht so richtig mit XML-Dateien zurecht.
  • Die XML-Datei ist zu groß für Excel.
  • Die XML-Datei ist nicht valide bzw. wohlgeformt.

Beim letzten Punkt kannst du das z.B. mit dem Internet Explorer testen, ob er ganz unten eine Fehlermeldung bringt (wenn die Datei komplett geladen ist).

Evtl. könntest du die XML-Datei ja auch mal bereitstellen!?

Gruß m8080

Hi, Alexander.

Du brauchst ein paar Dinge, um dies halbwegs professionell zu erledigen:

  1. Jemanden finden, der XSLT kann und somit XML in CSV umzusetzen in der Lage ist.
  2. Wenn möglich ein XML-Schema über die angelieferten Daten. Alternativ tuen es auch Beispiele, die möglichst alle Varianten enthalten. Mit letzterem zu arbeiten, statt mit einem Schema, ist jedoch viel mehr Aufwand.
  3. die Spalten-Namen und -Bedeutung der Excel-Datei.
  4. die Zuordnung der XML-Elemente zu den Spalten, falls dies nicht offensichtlich ist.

herzliche Grüße,

Rolf

Leider kann ich dir nicht bei deinem Problem helfen. Dafür bin auch noch zu sehr anfänger

Hallo & Danke für deine Hilfe.

Erstens mal also ich hab die Tabelle erstmal geöffnet bekommen. Es lag wirklich einfach daran das diese so groß war. Zum zweiten, ich bekomme eine Dokumentation dazu, sprich ein PDF indem die einzelnen Spalten erklärt werden. Und eigentlich ist der Rest ja einfach, nur die Spalten anpassen die man braucht, Spaltenheader an die Shopsoftware anpassen und die Excel-Datei als CSV Exportieren? Oder denke ich jetzt zu einfach?

Möglicherweise liegst du richtig, Alexander.

Wie das XML-Interface von Excel aussieht, weiss ich nicht. Ich habe dir den Weg mit dem CSV-Zwischenschritt beschrieben.

Aber möglicherweise brauchst du den gar nicht. Dann kann ich dir aber leider nicht helfen.

Gruß

Rolf

Hi!
Sorry wegen der späten Antwort.
Über den Umweg InternetExplorer kannst Du die Daten auch nach Excel kopieren.
Dazu einfach die Daten mit dem InternetExplorer öffnen, dann kopieren und in Excel einfügen.
Wenn das nicht geht einfach einen XML-Viewer verwenden.
Ich hoffe ich kontne Dir weiterhelfen.

Gruß Thomas

Hallo,

das Forum mein ich hätte auf Deine Frage nicht geantwortet doch ich erinnere mich an die Mail…

Na gut. Es liegt ne weile zurück. Ist es noch ein Thema?

Ich meine damals gesagt zu haben, daß man die Daten aus XML nach CSV konvertieren müßte -> dafür muss man programmieren.

Oder man schreibt in Excel per Macros ein „Import“ -> aber da muss man auch programmieren.

Ich würde das per Google recherchieren. Probier mal „Excel XML import“ …

Grüße
Thomas