SWAG DevBlog: Einstellungen im Performance Modul lassen sich nicht speichern

Tritt der Fall auf das man im Performance Modul plötzlich nicht mehr speichern kann:

Invalide Daten

In den Formularen sind noch invalide Daten eingetragen, bitte kontrollieren Sie die Formulare

Dann fragt man sich erst einmal wo das denn bitte herkommt. Diese Frage kann ich nicht beantworten 🙂 Aber das Problem lĂ€sst sich trotzdem lösen! In diesem Fall fehlen meistens EintrĂ€ge in der Tabelle:

s_core_config_elements

Welche fehlen lÀsst sich mit durchklicken durch alle Optionen des Performancemoduls herausfinden. Fehler werden nach dem erfolglosen Speichern durch eine gewellte rote Linie unterstrichen.

mit einem Rechtsklick auf das Feld gefolgt von der Auswahl des Punktes „Untersuchen“ aus dem KontextmenĂŒ bekommt man eine Ausgabe Ă€hnlich wie die folgende.

In diesem Fall heisst der fehlende Wert „topSellerValidationTime“.

Wo bekommt man die nötigen Werte nun her ?

Wenn man sich die aktuelle Shopware herunterlÀdt gibt es unter/recovery/install/data/sql/install.sql alle nötigen Querys.

Sucht man hier nach „INSERT INTO `s_core_config_elements` VALUES “ findet man die entsprechende Zeile in der alle Werte geschrieben werden.

Sucht man hier weiter nach „topSellerValidationTime“ erhĂ€lt man folgende Zeile aus dem Query:

(915,0,'topSellerValidationTime','i:100;','','','',1,0,0,'')

Daraus basteln wir uns den nötigen Query

INSERT INTO `s_core_config_elements` (`id`, `form_id`, `name`, `value`, `label`, `description`, `type`, `required`, `position`, `scope`) VALUES (915,0,'topSellerValidationTime','i:100;','','','',1,0,0,'')

Das ganze einfach fĂŒr alle fehlenden Werte wiederholen. Der hier Beispielhaft verwendete Name „topSellerValidationTime“ muss selbstverstĂ€ndlich durch den Wert ersetzt werden den Shopware nicht speichern kann.

Den fertigen Query dann im MySQL Backend der Wahl (PhpMyAdmin etc.) in der ausgewĂ€hlten Shopdatenbank ausfĂŒhren.

Erscheint eine Meldung in der Art von : „1 Datensatz eingefĂŒgt“ dann ist alles gut gelaufen.

Erscheint eine Meldung in Richtung : „Fehler, doppelter Datensatz“ oder „Ein Eintrag mit der ID 915 ist bereits vorhanden“ dann hats nicht geklappt. Hier kann man nun aber prĂŒfen ob einfach nur der Wert falsch gespeichert ist:

SELECT * from `s_core_config_elements` WHERE name="topSellerValidationTime";

Dort sollte dann in der Spalte „value“ ein „i:“ gefolgt von einer Zahl stehen. Ist dies nicht der Fall, dort einfach „i:100“ (den SW Standard) eintragen.

2 Antworten auf „SWAG DevBlog: Einstellungen im Performance Modul lassen sich nicht speichern“

  1. Hallo , danke fĂŒr den Tipp. Aber es tut sich nichts, rein garnichts. Muss ich den ganzen String einfĂŒgen? Und fĂŒr topSellerValidationTime eine Zahl ? Oder muss der String in 2 Strings geteilt werden ? Ich habe auch den ganzen String bei topSellerValidationTime getauscht , aber auch nichts , was genau ist mein Fehler, können Sie da mehr ins Detail gehen , da ich kein Codeschreiber bin .

    Danke

  2. Hi,
    ich kann es gern versuchen.

    Erst einmal muss man feststellen ob es sich wirklich um diese Einstellung handelt die es bei mir war.
    Ist es diesselbe Einstellung wie bei mir (topSellerValidationTime) dann kann der Query wie ich ihn gepostet habe direkt so in PhpMyAdmin oder welches Administrationsscript im Einsatz ist verwendet werden. (also Datenbank des Shops auswĂ€hlen, auf SQL klicken, den Query einfĂŒgen und auf „OK“ klicken).
    Dann meldet der Server zurĂŒck das er diesen Datensatz eingefĂŒgt hat, oder das es diesen Datensatz bereits gibt. Bei letzterem war es dann doch ein anderer Datensatz.

    Der Standardwert der hier geschrieben wird ist i:100, also Integer 100.

    Ich werde heut Abend den Text noch etwas ausfĂŒhrlicher schreiben !
    Wenn du magst kann ich mir das auch evtl mal per Teamviewer bei dir anschauen. Ist auch kein Problem.

    Gruß,
    Jens

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.