Hallo,
gegeben sei ein bescheidenes ERP auf Access-Basis. Nun sollen die Daten auch ins Web exportiert werden können. Es liegen Produktbeschreibungen, Bilder, Preise, Lagerbestände usw. in Access vor.
Welches Format würdet ihr Euch für den Export ins Web wünschen und warum?
Kommt drauf an.
Hast Du dafür einen Webshop dann in dem Format welches der Webshop verwendet um dort so wenig arbeit wie möglich zur Implementierung zu haben.
Geht es dabei um Information verschiedener Verteiler dann im PDF Format damit sich die Empfänger das Zeug einfach ausdrucken können.
Geht es um Workflowplanung ebenfalls PDF sofern Acrobat vorhanden istr, damit nur zuständige Personen in den Dateien etwas ändern können.
mit xml bist du aber deutlich flexibler; gerade wenn es um breite produktpaletten geht wo die einzelnen produkte viele verschiedene eigenschaften haben (gemuese: verfallsdatum, herkunft; auto: farbe, km, verbrauch).
csv ist doch nur brauchbar bei einer flachen tabelle die keine querverbindungen zu anderen datensaetzen hat; oder nur 1:1 beziehungen kennt.
Das stimmt und da muss ich dir absolut Recht geben. Natürlich ist XML hierbei bedeutend flexibler und man kann mehr Daten angeben. Es gibt bedeutend weniger Schnittstellen, die Open Source zur Verfügung stehen. Es ist nun halt mal die Frage für welche Anwendungen man diese Schnittstelle programmiert. Hierbei würde ich immer darauf achten, was für Schnittstellen mir zur Verfügung stehen wo ich den Import tätigen möchte. Wenn ich eine breite Masse ansprechen möchte, fahre ich am besten mit CSV Dateien.
Ich denke aber das Querverbindungen in einer CSV Datei auch möglich sind, es ist nur schwieriger, diese dann wieder zu importieren. Da deine Importroutine so intelligent sein muss, dass die Attribute des einzelnen Produktes wieder erkannt werden und entsprechend in den MySQL Tabellen die Einträge getätigt werden.
Kleines Beispiel noch, im Abrechnungsbereich wird sehr häufig auch EdiFact (https://de.wikipedia.org/wiki/EDIFACT) verwendet. Vor allem setzen große Firmen dieses Format ein. Ich habe hierzu mal eine Lösung in VB.net auf Klassenbasis umgesetzt. Es dauert bloß extrem lang diesem Syntax zu verstehen.