Import über einen Cronjob ausführen

Thema wurde von Anonymous, 25. Juni 2024 um 20:09 Uhr erstellt.

  1. Anonymous

    Anonymous Erfahrener Benutzer

    Registriert seit:
    18. August 2021
    Beiträge:
    606
    Danke erhalten:
    65
    Danke vergeben:
    259
    Hallo,

    ist es möglich, eine .csv-Datei automatisiert über einen Cronjob zu importieren?

    Gruß

    Bernd
     
  2. Walter Lenk

    Walter Lenk Erfahrener Benutzer

    Registriert seit:
    28. September 2011
    Beiträge:
    512
    Danke erhalten:
    218
    Danke vergeben:
    85
    Guten Morgen Bernd,

    per Individualprogrammierung ja - haben wir mehrfach umgesetzt um z.B. Daten (CSV, XML, JSON, API) direkt von Herstellern regelmäßig einzulesen.

    Im Standard ist das nicht vorgesehen. Für den Standard-Import von Gambio (der meiner Meinung nach nur bedingt benutzbar ist) könnte man einen Import sicherlich auch zeitgesteuert umsetzen.

    Viele Grüße
    Walter
     
  3. Anonymous

    Anonymous Erfahrener Benutzer

    Registriert seit:
    18. August 2021
    Beiträge:
    606
    Danke erhalten:
    65
    Danke vergeben:
    259
    Hallo Walter,

    Danke für Deine Antwort.

    Könntest Du kurz sagen, warum dieser Import über den "Gambio-Eigenen" Import nur bedingt nutzbar ist?

    Gruß

    Bernd
     
  4. Walter Lenk

    Walter Lenk Erfahrener Benutzer

    Registriert seit:
    28. September 2011
    Beiträge:
    512
    Danke erhalten:
    218
    Danke vergeben:
    85
    Hallo Bernd,

    zum einen weil es Einschränkungen hinsichtlich Varianten (früher Eigenschaften) gibt - siehe Handbuch dazu. Außerdem ist es nicht möglich im Zuge des Imports Daten automatisch aufzubereiten und evtl. weitere Logiken zu integrieren (z.B. "wenn Hersteller noch nicht vorhanden, dann vor Zuordnung anlegen" oder "Preise auf volle 5 Cent runden" usw.).

    Bezüglich des automatischen Imports:
    Die CSV-Datei muss beim Standard Import ja immer zwingend am eigenen Server liegen. D.h. man müsste auch erst einmal eine CSV-Datei, die zudem genau das erwartete Gambio-Schema hat, "abholen" und dann automatisch einlesen.

    Alles machbar, aber ob ich da auf den Standard-Import setzen würde weiß ich nicht. Wir tun es bei unseren Projekten definitiv nicht.

    Grüße
    Walter
     
  5. Anonymous

    Anonymous Erfahrener Benutzer

    Registriert seit:
    18. August 2021
    Beiträge:
    606
    Danke erhalten:
    65
    Danke vergeben:
    259
    Hallo Walter,

    die Hersteller CSV Datei kann ich mittels Cronjob in das /Export-Verzeichnis einlesen.

    Die Exportdatei von meinem Shop mit den Shopdaten wird auch über den in Gambio eingerichteten Cronjob in das Exportverzeichnis abgelegt - die legt Gambio automatisch dorthin.

    Über ein Script, das auch im /Export-Verzeichnis liegt, werden die Daten beider Dateien verglichen, das Ergebnis wird als eine eigene CSV Datei auch in das Export-Verzeichnis gelegt.

    Nun muss man nur noch über einen Cronjob die neu angelegte Datei in den Shop importieren - daran hakt es bei mir.

    Gruß

    Bernd
     
  6. Walter Lenk

    Walter Lenk Erfahrener Benutzer

    Registriert seit:
    28. September 2011
    Beiträge:
    512
    Danke erhalten:
    218
    Danke vergeben:
    85
    Hallo Bernd,

    dann bist Du ja eh schon recht weit. Letztendlich den Import per Cronjob anzustoßen wird trotzdem nicht total trivial werden denke ich. Aber das müsste man sich im Details dann wirklich ansehen. Kann einfach werden, kann aber auch komplexer sein. An der Stelle waren wir tatsächlich noch nie dran, daher kann ich da auch keine schnelle Aussage treffen.

    Grüße
    Walter
     
  7. Anonymous

    Anonymous Erfahrener Benutzer

    Registriert seit:
    18. August 2021
    Beiträge:
    606
    Danke erhalten:
    65
    Danke vergeben:
    259
    Walter, das funktioniert bisher recht gut. In der neu generierten Datei stehen Bestandsänderungen, Preisänderungen und die google_export_availability Spalte, die bei Nullbestand oder Neubestand entsprechend gefüllt wird. Außer zusätzlich die p_model Variable steht in der bearbeiteten Datei nicht mehr drin. Wie schon angedeutet, es ist nur eine Update-Datei, keine Datei für das Anlegen neuer Artikel.


    Man kann den Import manuell in Gambio ausführen, Datei hochladen --> Importieren, fertig.

    Das heißt, das Script oder die PHP Datei, die das macht, gibt es ja im Shop schon. Ich dachte, dass man in dieser Import-PHP-Datei nur den Dateinamen der Importdatei vorbelegt. Also, die so geänderte Import-PHP-Date ins Export-Verzeichnis legen und via Cronjob ausführen.

    Die Original Import-PHP-Datei muss natürlich weiterhin im Original erhalten bleiben, damit der manuelle Import auch weiterhin funktioniert.

    Danke für Deine Antworten!

    Gruß

    Bernd