Excel und CSV: Eine Bewährungsprobe

Irgendwann, während ein Shop entsteht, kommt idealerweise der Punkt, an dem es daran geht, die Inhalte einzupflegen. Hier gibt es mehr oder weniger gute Import (und ggf. auch Export)-mechanismen, meist auf Basis von Excel oder CSV. CSV ist definitiv kein Format, mit dem man den Kunden allein lassen kann. Aber auch Excel ist für den Neuling eine echte Bewährungsprobe.

Ein paar Überlegungen, festgemacht an einer Geschichte rund um Virtuemart und CSV Improved.

Bei allen Shops, die ich bisher realisiert habe, waren Produktimport und -export der große Knackpunkt des Projekts, insbesondere dann, wenn es sich um große Mengen Warenbestand handelte. Während die Erstellung von Inhalten nach Einweisung und einem gut konfigurierten Editor meist kein Problem darstellt, verhält es sich mit den reinen Shopdaten dann schon ganz anders. Der Import gehorcht zwangsläufig immer einem gewissen Regelwerk. Sonderlich flexibel macht es nicht, intuitiv scheint es auch nicht.

CSVImproved

Mit CSVImproved gestaltet sich der Import der Virtuemart Kategorien und Produkte soweit recht komfortabel. Virtuemart verzichtet inzwischen auf einen eigenen Import - danke CSVImproved. Die Macher arbeiten hier offensichtlich recht eng zusammen. Für Kategorien und Produkte können verschiedene Import- und Exporttemplates erstellt werden, die entweder sämtliche Felder im- bzw. exportieren oder spezialisiert sein können, falls nur eine Preiserhöhung Preisänderung ansteht.

Einiges muss man wissen, damit der Import reibungslos funktioniert. Beispielsweise, dass die Kategorie nur bei Elternprodukten, nicht jedoch bei Kindkategorien angegeben werden darf. Eine recht umfangreiche Liste auf der CSVImproved Website hilft weiter und erläutert, zum Teil mit Beispielen, wie es funktioniert.

Gelungen auch der Preview zum Import. Stimmt hier etwas nicht, kann man recht schnell auf den Fehler schließen.

Leider bleiben da noch Excel und CSV

Leider bleibt immer noch die Erstellung jener Dateien. Mir wäre es lieber, ich hätte eine direkte Schnittstelle zur Warenwirtschaft und der Kunde müsse sich um nichts kümmern. Nun gibt es allerdings die, die überhaupt keine Warenwirtschaft haben, weil sie alles über den Shop lösen oder auch Projekte, die eine entsprechende Funktionalität im Budget einfach nicht vorsehen.

Ein großes Problem ist folgendes: Virtuemart möchte gerne die Angabe der Preise mit Punkt als Dezimaltrennzeichen. Excel jedoch passt sich den Ländereinstellungen an und arbeitet hierzulande demzufolge mit einem Komma. Auch das lässt sich gut umstellen - aber was ist, wenn parallel noch andere Excel Dokumente bearbeitet werden sollen? Und wie soll man dieses durchaus durchdachte, dann aber doch wenig klarer Feature einem Anwender erklären?

Ich bin also dazu übergegangen, ein Excel Template zu erstellen. Im einen Tabellenblatt geben die Anwender das ein, was für sie intuitiv ist, in der Form wie sie es eingeben möchten. In einem zweiten Tabellenblatt im Hintergrund generiert das Template neue Daten so wie sie für den CSV Import entsprechend der von mir definierten Importroutine benötigt werden.

Wer ganz frisch mit Excel arbeitet und auch keine Erfahrung hat mit Dateiuploads oder sogar FTP, stellt sich erfahrungsgemäß übrigens auch einige andere Fragen, beispielsweise: Wie funktioniert das mit den Bildern? Wie bekomme ich mein Bild ins Excel  und dann in den Shop? Nein! Kein Problem des so wenig liebevoll benannten DAU - sondern ein ganz alltägliches, das einfach durch eine eigene, vielleicht verzweifelte Idee entstehen mag, wie das überhaupt alles gehen kann.

Ein Problem bleibt und das heißt HTML: die Produktbeschreibung. Der, der wenig firm ist mit HTML, der sich leidlich mit Word ausgekenn, wird versucht sein, die Tabellenzellen, in denen die Produktbeschreibung angegeben wird, sorgsam zu formatieren mit Fettdruck, Zeilenumbruch, Listenformatierung. Und er wird enttäuscht sein, wenn genau das später über den Weg CSV MYSQL alles verloren gegangen ist. Ich habe lange überlegt, ob man aus dem Wunsch dieser liebevollen Formatierung etwas machen könnte. Die Ifs und Elses würden damit ad absurdum geführt. Ich kann nur sehr bedingt ein Regelwerk aufstellen aus “wenn du dieses Zeichen findest, dann interpretier das mal als Liste”….

Gelungener als Excel

Gelungener als Excel empfinde ich im Umgang mit CSV dann doch Open Office. Das ist zwar, wenn es um die Benutzeroberfläche geht, nicht halb so chic, aber die Darstellung von CSV Dateien ist um einiges gelungener, nämlich spaltenweise, und der CSV Export lässt sich besser konfigurieren.

Ich werde also demnächst dazu übergehen, meinen Kunden einfach auch noch Open Office zu installieren bzw. wenigstens nahezulegen. Die Pflege des Warenbestands sollte somit wieder ein Stück einfacher gehen können. Eine Mixtura aus beidem kann ich übrigens nicht empfehlen: manchmal passiert’s, dass Open Office dann etwas seltsam mit den in Excel gepflegten Daten umgeht, insbesondere, wenn Zahlenformate im Spiel sind.

Eigentlich…?

Daraus zu lernen ist einiges, was mich ehrlich gesagt nicht so glücklich macht. Denn es zeigt vor allem eins: so einfach ist das alles gar nicht!

Eigentlich sollte die Frage “Will ich irgendwann einen Online Shop?” immer irgendwie mitschwingen. Die Frage nach dem passenden Warenwirtschaftssystem, die Frage nach der Pflege des Warenbestands im realen und virtuellen Shop ist so eklatant und so wichtig, dass jede Entscheidung, die erst getroffen wird, nachdem man eine Anschaffung in der Richtung getätigt hat, im Zweifel mit mehr Kosten verbunden sein wird, damit das ganze Business wieder aus einem Guss ist.

Und eigentlich haben wir genau an der Stelle eine Benutzbarkeitsproblem. Nicht mal ein Usability-Problem. Das kommt erst an zweiter Stelle. Es fängt viel eher an, nämlich da, wo das Verständnis für die Technik und die Tücken derselben erstmal wachsen muss.

Wieder einmal ist der Dialog gefragt, Kommunikation, Erklärungen, Hilfestellungen. Wenn ich so wie gerade aktuell Lösungen finden konnte, die individuell für den Anwender verständlich und gangbar sind (und dann auch noch zum Produkt passen, das sollte man nicht vergessen!) - klasse! Nur das HTML Problem, das habe ich leider noch nicht lösen können…

 

3 Antworten zum Beitrag “Excel und CSV: Eine Bewährungsprobe”

  1. am 21 Mrz 09 um 15:58 meint

    … ich wusste, dass Du wusstest, dass ich antworte ;-)

    Hallo erstmal,

    die dargestellten Punkte sind ja nur ein Teil der Gesamtproblematik. Ich habe in meinem fortgeschrittenen Alter bereits eine Menge an Schnittstellen programmiert. Zu meiner Schande (?) muss ich sogar zugeben, dass es mir Spass macht. Aber neben der reinen Formatfrage gibt es ja noch die Logik des Anwenders: “wenn bei der Warengruppe das dritte Zeichen ein X oder ein Y ist, darf der Preis nicht angezeigt werden.” oder “Die Lieferantenkürzel müssen aber aus dem Kategorienamen raus - sonst kennt ja jeder unsere Lieferanten”. Viele Warenwirtschaften sind mit so vielen kleinen Besonderheiten eingerichtet, dass man um ein gut konfigurierbares Exportprogramm nicht herumkommt. Ausserdem gibt es immer noch Systeme, die nur zwei Zeilen Produktbeschreibung zulassen…

    Wir machen es daher etwas anders: wiir haben ein Windows Programm geschrieben, das alles enthält, was man für den Datenaustausch benötigt - inclusive Upload und automatischen Import in Virtuemart. In diese Software importieren wir die Daten des Kunden und erstellen ein kleines Übersetzungsprogramm, das eine Virtuemart-konforme CSV-Struktur erstellt und in den Onlineshop überspielt.. Dieses Programm kann beim Kunden auf dem Server ununterbrochen laufen und Daten z.B. stündlich austauschen.

    Nach vielem Hin und Her mit Excel und OO ist dies die sicherste, komfortabelste und flexibelste Lösung. Immerhin hat der Kunde hier nicht das Problem, dass die Software schlauer sein will als er - und dabei mal eben ein paar numerische Werte in Datumsfelder umwandelt ohne dass man es merkt…

    Gruß, Thomas

  2. am 24 Mrz 09 um 00:28 meint

    Wolfgang

    Alles ein Quälerei, ich weiß.

    Ich habe für eine Kundin einen etwas anderen Ansatz gewählt. Ausgangspunkt war, dass man auf die Tabellen ihrer Warenwirtschaft mit ODBC zugreifen kann.

    Also MS Access angeworfen und die notwendigen Tabellen verknüpft. XAMPP installiert, beim Hoster mit phpmyadmin die Daten abgezogen und @home wieder in mySQL eingespielt. Ein bisschen Budenzauber mit Access-Makros und ein paar kleinen Skripten - fertig. Artikel ohne Beschreibung und oder Bild sind erstmal auf nicht öffentlich gesetzt. Jetzt für die Kundin noch ein paar Report (was ist bei welchem Artikel noch zu tun), die Report per mail an die Kundin.

    @home Datenbank wieder mit phpmyadmin abziehen (nur relevante Tabellen) und in der Produktionsumgebung wieder einspielen.

    Beschreibungen der Artikel und einstellen von Bildern passiert nur direkt im Shop-System, da gescheite Beschreibungen in der Warenwirtschaft eh nicht vorhanden sind.

    Nicht elegant, aber es geht. Kostet 30 bis 40 Minuten Zeitaufwand.

    Gruß Wolfgang

  3. am 18 Mai 10 um 23:08 meint

    Hallo in die Runde,
    der große Google hat mich zu Euch geführt. Ich bin wohl das, was ihr liebevoll Dau oder wenns freundlich ist Newbee nennt, zumindest hab ich mich auch gefragt, wie ich die Bilder über ne Exel hochgeladen bekomme :-) *schäm*
    Also ich habe eben auch den Shop und jedes Teil einzeln hochzuladen ist einfach zu viel, da ich eine OneWomanShow bin, die das ganze nur im Nebenerwerb betreibt.

    Mir stellt sich nun auch nach aufmerksamem Lesen des Beitrages und der Kommentare (wobei mir die Lösung von Thomas am besten gefiel) gibt es für mich eine Freeware oder möglichst kostengünstige Lösung, viel in kurzer Zeit mit wenig Aufwand in den Shop zu bekommen?

    Ich habe leider einen Programmierer gehabt, der nicht gerade als Erklärbär taugt und habe auch noch keine Beiträge gefunden, die mir wirklich weier helfen, gescheige denn Literatur.

    Würde mich auf und über eine Antwort freuen.
    LG
    Alexandra

Auch was dazu sagen?