Neu Kundenrabatt nachträglich in JTL-Shop 5 importieren

fibergirl

Sehr aktives Mitglied
14. April 2016
833
266
Hallo,

gibt es die Möglichkeit, Kunden im Onlineshop per Import zu aktualisieren?

Ich habe festgestellt, dass beim Kundenimport der Rabatt gefehlt hat.
Jetzt würde ich gern nur das Feld Rabatt aktualisieren.
Die Kunden sind aber bereits vorhanden und diese Daten sollen nicht zerstört werden.

Die Updatedatei enthielte dann nur die Felder cKundenNr und fRabatt.
Kann ich die Importfunktion dafür verwenden?

Dank & Gruß,
fibergirl
 

fibergirl

Sehr aktives Mitglied
14. April 2016
833
266
Habs mal probiert.

Hm, tja ...
Zeile 1: Kunde mit dieser E-Mail-Adresse bereits vorhanden: xxx@yyy.de. Datensatz wurde übersprungen.

Und jetzt?
Gibt es noch eine andere Möglichkeit?

Dank & Gruß,
fibergirl
 

McAvity

Sehr aktives Mitglied
7. September 2016
595
146
Und jetzt?
Gibt es noch eine andere Möglichkeit?

Uff, das die Importfunktion noch nicht mal ne einfache Aktualisierung kann ist natürlich schon "speziell".

Laut Doku ( https://guide.jtl-software.de/jtl-s...in-jtl-shop-importieren/#format-der-csv-datei ) wird beim Vorhandensein der E-Mailadresse der Datensatz übersprungen.

Ich würde das dann, wenn es keinen anderen Weg gibt, per SQL direkt in die Datenbank schreiben. Nicht sauber, aber effizient.

MfG

McAvity
 

McAvity

Sehr aktives Mitglied
7. September 2016
595
146
@fibergirl

Mir fällt gerade ein, könnte man das nicht per Ameise lösen?
Wird nicht der Rabatt aus der Wawi auch an den Shop übermittelt?

MfG

McAvity
 

fibergirl

Sehr aktives Mitglied
14. April 2016
833
266
Mir fällt gerade ein, könnte man das nicht per Ameise lösen?
Wird nicht der Rabatt aus der Wawi auch an den Shop übermittelt?
Nein, leider nicht. Das funktioniert bei mir gerade nicht.

Da hilft wohl nur SQL, z.B. per PhPMyAdmin. Muss mal sehen wie man da aus einer CSV-Datei eine Tabelle updaten kann.
Ungern, äußerst ungern.

Gruß,
fibergirl
 

McAvity

Sehr aktives Mitglied
7. September 2016
595
146
@fibergirl

Ich weiß jetzt nicht wie fit Du in MySQL bist, aber ich würde das wie folgt lösen:

1.) Datenbank-Dump erstellen
2.) Den Dump auf einem Testsystem zurückspielen (alternativ: einen leeren Shop aufsetzen)
3.) MySQL Qeury Logging aktivieren (bei SSH-Zugriff auf dem Server wie hier beschreiben: https://dev.mysql.com/doc/refman/8.0/en/query-log.html / alternativ in eine MySQL-Tabelle loggen: https://tableplus.com/blog/2018/10/how-to-show-queries-log-in-mysql.html )
4.) Testimport durchführen, bei dem das relevante Rabatt-Feld beschrieben wird
5.) Logging deaktivieren und auswerten (ich tippe mal dass Du das auf etwas wie "UPDATE tabellenname SET fRabatt = '5' where cKundenNr = '1234';" runterbrechen kannst
6.) Query-String zusammenbauen (geht zur Not auch in Excel, Du hast ja schon cKundenNr und fRabatt, nehme ich zumindest an. Geht man davon aus das in Spalte A die Kundennummern stehen und in Spalte B der Rabatt würde ich analog zu dem Beispiel oben in die Zelle C1 folgendes einfügen: ="UPDATE tabellenname SET fRabatt = '" & B1 & "' where cKundenNr = '" & A1 &"'"
7.) am Testsystem probieren
8.) noch ein Datenbank-Dump vom Produktivsystem erstellen
9.) Feuer frei 😉

MfG

McAvity
 

Ähnliche Themen