Neuigkeiten
  • Die modified eCommerce Shopsoftware ist kostenlos, aber nicht umsonst.
    Spenden
  • Damit wir die modified eCommerce Shopsoftware auch zukünftig kostenlos anbieten können:
    Spenden
  • Thema: Bestellstatus Import

    Firebird

    • Frisch an Board
    • Beiträge: 75
    Bestellstatus Import
    am: 08. Dezember 2017, 11:50:08
    Hallo modified Community,

    Ich komme bei einem hartnäckigen Thema nicht weiter:

    gibt es ein Script oder ähnliches mit dem ich den bestellstatus auf "versendet" stellen kann?
    Wir kriegen von unserem Versand jeden Tag eine .csv die versendete Bestellungen enthält, diese prüfen und pflegen wir jeden Tag händisch ein. (1 Spalte Bestellnummer, 2 Spalte Status)

    gibt es eine Möglichkeit diese als .csv zu importieren?
    -ist eine modified 1.06 SP4 Version.

    Reicht es wenn grundsätzlich der Wert "versendet" bzw die dazugehörige ID je Bestellnummer in die Datenbank eingetragen wird oder gibt es hier evtl abhängige Fallstricke?

    Wenn jemand eine idee /alte Vorlage/ Hilfestellung verfügbar machen würde worauf man aufbauen kann, wäre das echt Top. Ich würde gern unsere Damen von der Auftragssachbearbeitung in dem Punkt entlasten.
     Quasi als kleines Weihnachtsgeschenk für Ihre Geduld mit so manchem Kunden... komme aber partout nicht weiter

    Gruß

    Firebird

    Linkback: https://www.modified-shop.org/forum/index.php?topic=38365.0
    Trade Republic - Provisionsfrei Aktien handeln

    awids

    • Experte
    • Beiträge: 3.803
    • Geschlecht:
    Re: Bestellstatus Import
    Antwort #1 am: 08. Dezember 2017, 12:51:04
    Da kann man sich ein Script erstellen, dass

    a) überprüft, ob die CSV-Datei auf dem Server vorhanden ist
    b) diese dann per PHP auslesen und verarbeiten
    c) und die Daten in einer While-Schleife per Query verarbeiten.
    d) Anschließend die verarbeitete Datei vom Server löschen.

    Sowas machen wir für eKomi-Bewertungen (ohne Schritt D, weil sie auf dem eKomi-Server liegt und dort regelmäßig aktualisiert wird), die werden jede Nacht neu eingelesen.

    webald

    • modified Team
    • Beiträge: 2.791
    Re: Bestellstatus Import
    Antwort #2 am: 08. Dezember 2017, 13:15:28
    Im Prinzip so wie awids das beschrieben hat, aber ich würde eine kleine Äanderung noch machen.

    1. Prüfen ob Datei vorhanden
    2. Umbenennen der Datei
    3. Datei verarbeiten
    4. Löschen

    So könnte auch während der Verarbeitung der Daten eine neue Datei eratellt werden ohne das dort gemachte Änderungen/Ergänzungen unbearbeitet bleiben.

    awids

    • Experte
    • Beiträge: 3.803
    • Geschlecht:
    Re: Bestellstatus Import
    Antwort #3 am: 08. Dezember 2017, 13:22:14
    Ja, den Schritt hätte ich auch mit aufgezählt, aber oben schrieb er ja, dass sie jeden Tag 1 Datei erhalten. Daher hielt ich es für unnötig.

    Vielleicht wäre es auch sinnvoll, die Datei nicht wirklich zu löschen, sondern in ein Unterverzeichnis des FTP-Ordners, z. B. "Done" zu verschieben.

    Firebird

    • Frisch an Board
    • Beiträge: 75
    Re: Bestellstatus Import
    Antwort #4 am: 08. Dezember 2017, 13:38:54
    Mein Problem ist der Befehl

    ne Datenbankanbindung in einer php kein Problem.
    Der Cronjob auch nicht.
    Schaffe es aber nicht einen sauberen Befehl hinzubekommen der mir das gewünschte umsetzt.
    Bzw. einliest und updated

    - daher auch die Frage ob es etwas gibt worauf man aufbauen kann.

    Die Idee mit dem Unterordner ist schon umgesetzt :-)
     Auch habe ich die Datei mit Zeitstempel gesetzt, per makro in excel wird die datei nun mit zeitsempel versendet.

    Ich verstehe den Ablauf aber nicht 100 % die Ausführung
    (werde am WE nochmal einen 1.06 SP4 aufsetzen zum testen , hatte ihn vor ein paar wochen auf 2.+
    gesetzt :-(
    )

    noRiddle (revilonetz)

    • Experte
    • Beiträge: 13.990
    • Geschlecht:
    Re: Bestellstatus Import
    Antwort #5 am: 12. Dezember 2017, 18:08:34
    Vielleicht hilft dir das:
    Es müssen zwei Tabellen upgedatet werden, die orders und die orders_status_history.
    • In der Tabelle orders muß bei der entprechenden orders_id die ID des neuen Status "versendet" gesetzt werden, also ein UPDATE.
    • In der Tabelle orders_status_history muß ein neuer Eintrag generiert werden, also ein INSERT.

    orders:
    Code: SQL  [Auswählen]
    UPDATE orders
       SET orders_status = 'DEIN_STATUS',
             last_modified = now()
     WHERE orders_id = 'DIE_ORDERS_ID;

    orders_status_history:
    Hier mußt du entscheiden ob du die Felder customer_notified, comments, comments_sent bestücken möchtest.
    Das heißt wahrscheinlich customer_notified 0 (= Kunde nicht informiert), comments '' (= kein Kommentar), comments_sent 0 (= Kommentar nicht an Kunde gesendet).
    Es sähe also wahrscheinlich so aus:
    Code: SQL  [Auswählen]
    INSERT INTO orders_status_history (orders_id, orders_status_id, date_added, customer_notified, comments, comments_sent) VALUES('DIE_ORDERS_ID', 'DEIN_STATUS', 'now()' '0', '', '0');

    Gruß,
    noRiddle

    Firebird

    • Frisch an Board
    • Beiträge: 75
    Re: Bestellstatus Import
    Antwort #6 am: 13. Dezember 2017, 09:22:45
    Hallo,

    ehrlich herzlichen Dank, ich glaube darauf kann ich aufbauen.
    Da kriegt man echt Motivation, und lernen tu ich auch jedesmal.

    eine Klasse Community hier !
    1 Antworten
    2167 Aufrufe
    16. Februar 2010, 12:20:59 von Tomcraft
    0 Antworten
    1853 Aufrufe
    03. November 2013, 12:31:28 von ShadowByte
    0 Antworten
    2084 Aufrufe
    09. Oktober 2012, 16:54:33 von uberbacon
               
    anything