Nicolas hätte seine wahre Freude…


… wenn – ja wenn…. er sich seinen Nachnamen hätte schützen lassen! Denn dann könnte er sich zur Ruhe setzen und sich entspannt zurücklehnen – und ganz bequem von den Lizenzgebühren leben!

Denn: Kaum jemand wird so oft als vermeintlich Schuldiger benannt wie der Star aus “The Rock – Fels der Entscheidung”… Richtig – die Rede ist von Mr. N. Cage. Verantwortlich für die Schuldzuweisung ist sein Name, der [keedsch] gesprochen wird.

Warum auch immer – aber neben Caroline Müller alias C.C.Catch, gesprochen [ketsch], muß der gute Nick immer herhalten, wenn es bei irgendwelchen CMS- oder Shop-Systemen zu Anzeigeproblemen kommt…

Üblicher Verdächtiger in solchen Fällen ist nämlich der Cache – gesprochen [käsch].

Soweit der Epilog.

Nun ist es so, daß wir mal wieder einen Shopware-Shop am Wickel haben – den ersten der 5er Generation. Obwohl es am responsiven Design noch etwas zu fummeln gibt, will man ja irgendwie außer Strichen, Punkten und Hintergründen doch etwas sehen. Also wurde der veranwortliche “Shop System Articles and Products Manager” (SSAaPM), wie es wohl auf Neu-Deutsch heißen würde (in Anlehnung an “Content Manager”, “Content Manager Assistant” and… – sorry – … und “Social Media Community Manager”), gebeten, 3-4, bis max. 12 Mio Artikel einzuspielen… ;-)

So weit, so gut. Auftrag erledigt? Jo! Füße hoch? Nö! Es folgte nämlich noch der kleinlaute Kommentar, daß man an den Kategorien etwas verändert hätte. Und nun shoppt der Shop nicht mehr! Irgendwas (!!!) wäre wohl zerschossen…

Eingeloggt, nix zu sehen…. Aaaaah  – ein Anzeigeproblem….  *lol* Cache *noch-loller* gelöscht – nichts! Denn der war es ausnahmsweise mal nicht! Und die Startseite lädt trotzdem nicht… Obwohl: Falsch! Sie lädt und lädt und lädt… – wie man’s nimmt!

Nun ja – heute gibt es dann wohl wieder keinen Sex. Frauchen muß mit der Mohrrübe zufrieden sein… Denn die Nacht wird wieder einmal lang. Oder eher zu kurz? Morgen hilft jedenfalls nur exzessiver Coffein-Mißbrauch… Und ein Streichholz zum Aufhalten des einen wachen Auges… Ma gugge…

Shop-Frontend aufgerufen, gewartet, geguckt, zwischendurch rasiert und Frauchen die Rübe weggenommen, den Job erledigt, zurückgekommen, weiter gewartet, Kaffee gekocht, länger gewartet, Frauchen die Rübe wieder weggenommen, nochmal den Rübendienst erledigt, zurückgekommen – [Dreimal raten!] – gewartet… Shopware lädt den Header samt Grafik und Main-Navigation – und rööööööööödelt… Keine Einkaufswelt, kein Main-Content, kein Footer… Keine Seitennavigation! Nichts!

Main-Navigation getestet. Außer Home (wo es ja “rödelt”)  3 Kategorien: 2 davon ok, 1 nok. Beim Aufruf besagter Kategorie endlich eine Fehlermeldung:

Screenshot :: Shop: Fatal Error

In besagter Klasse “CheapestPriceService” findet man an der Stelle nur eine Methode, in deren Verlauf eine Preisgruppen-ID ermittelt werden soll:

Screenshot :: Shop: Preisgruppe Funktion

Ohne jetzt großartig irgendwelche Debugger oder Konsolen und deren Meldungen zu bemühen, erinnerte ich mich dunkel, daß ich letztens eine Preisgruppe “Kostenlos” für Gratis-Katalog-Versand angelegt hatte.. Danach funzte aber noch alles, trotz entleerten Caches – gesprochen übrigens [käschs] bis [käsches], mit ganz kurzem, fast nach [i] klingendem [e], also am besten irgendwas in Richtung [käschis] !!!

Aber wo könnte man etwas an den Preisgruppen drehen und schrauben? Was hat der “SSAaPM” getan? Grund-Konfig geändert? Unter Einstellungen > Grundeinstellungen > Artikel > Preisgruppen ??? Nö – alles clean! Aber was – in Dreiteufelsnamen – hat der “SSAaPM” da veranstaltet? Hiiiiiiiilfe!

Dann die Erleuchtung:
Aha – an den Artikeln selbst wurde rumgeschraubt!

Der Witz ist, daß es bei den Artikeln keine Default-Preisgruppe gibt. Trotzdem wurde bei einem einzigen der Artikel der Haken “Preisgruppe aktiv” gesetzt – und dann sofort gespeichert, ohne auch eine Preisgruppe zu hinterlegen!

Setzt man den Haken “Preisgruppe aktiv”, erwartet Shopware natürlich auch eine. Ist aber keine angegeben (in Ermangelung von “Default”), läuft die Suche nach der Preisgruppe natürlich ins Leere, was null zurückgibt. Und was bei null (als non-object) -> getId() rauskommt, kann sich wohl jeder denken: Ein kleiner, niedlicher FATAL ERROR !!!
Screenshot :: Shop Preisgruppe

Übersetzt: Nutze eine Preisgruppe – und zwar die Gruppe “Undefined”. Und von dieser (nicht definierten) Gruppe ziehe die ID aus der Datenbanktabelle… Das kann ja wohl nur in die Hose gehen.. Von NICHTS kann man wohl nur sehr schlecht eine ID ziehen – schon allein weil die Zeile mit dieser ominösen ID gar nicht existiert! Logisch – oder?.

Ergo: Haken raus…  (Übrigens: Haken lassen + irgendeine Preisgruppe auswählen funzt natürlich auch…) Fehler behoben !!! (Die fehlerhafte Kategorie funzt, weil alle ihre Artikel ohne Fehler abgefragt werden können. Und die Startseite funzt, weil die eingebundene Einkaufswelt mit den Artikeln der strittigen Kategorie auch keine Probs mehr hat… Also alles wieder i.O. !!!)

Schnell zum Frauchen, die Mohrrübe aufgegessen und den “Job” noch mal erledigt. Vorsichtshalber. Die Nacht wird ja doch länger als erwartet… Und ein wenig schlafen will selbst ich… Irgenwann mal… ;-)

Wenn es jetzt ohne Zwischenfälle weitergeht und mir nicht wieder ein Oberschlaumeier erzählt, ich solle doch mal den  [keedsch] leeren, kann der Shop vielleicht ja auch bald endlich Cash (gesprochen [käsch]) generieren…

Die Kommentarfunktion ist geschlossen.