Bedarfsrechner (JTL-Shop 5)
- 1 Einleitung
- 2 Installation / Update
- 3 Konfiguration
- 3.1 Einstellungen
- 4 Betrieb
- 4.1 Darstellung
- 4.2 Wawi Funktionsattribute
- 4.3 Berechnung
- 5 Artikel anlegen
- 5.1 Wawi
- 6 Sprachvariablen
- 7 Fallbeispiele
- 8 Troubleshooting
- 8.1 Logs prüfen
- 8.1.1 Browser-Log
- 8.1.2 Shop-Log
- 8.1.3 Webserver-Log
- 8.1 Logs prüfen
- 9 Changelog
Einleitung
Das s360_quantity_calculation_shop5
Plugin für JTL-Shop 5 bietet die Möglichkeit dem Kunden die benötigte Anzahl von einem Produkt zu berechnen.
Installation / Update
Systemvoraussetzungen
JTL-Shop 5.2.0+ und dessen Voraussetzungen
Plugin-Installation
Die Installation des Plugins erfolgt nach JTL-Standard, wie es hier beschrieben ist oder sie können Ihre vorhandene ZIP-Datei des Plugins auch über den Reiter “Upload“ in der Pluginverwaltung bereitstellen und anschließend im Reiter “Vorhanden“ die Installation starten.
Plugin-Update
Bei einem Update auf eine neuere Version können Sie der allgemeinen Installation folgen mit dem Unterschied, dass Sie direkt in der Pluginverwaltung den Update-Button zur Aktualisierung betätigen müssen.
Konfiguration
Einstellungen
Das Plugin verfügt über folgende Einstellungen
Einstellung | Optionen | Beschreibung |
---|---|---|
Aktivieren |
| Steuert für wen das Plugin aktiviert ist oder ob es inaktiv ist |
Aufschlag optional |
| Steuert, ob der gewählte Aufschlag optional für den Kunden wählbar ist |
Selektor |
| Ist der Selektor an dem das Plugin im Frontend eingebunden werden soll |
Einfüge-Methode |
| Steuert, wo genau das Frontend am Selektor eingefügt werden soll |
Button Farbe |
| Steuert die Farbe des Buttons (Bootstrap Button Klassen) |
Button Größe |
| Regelt die Größe des Buttons |
CSS-Klassen |
| Können mehrere CSS Klassen verwendet werden um das Styling etc. anzupassen |
Betrieb
Darstellung
Wawi Funktionsattribute
Hier beispielhaft, wie die Funktionsattribute an einem Artikel gepflegt werden können (in der Tabelle unterhalb des Screenshots können Sie sehen, welche Funktionsattribute pflicht und welche optional sind):
Funktionsattribut | Inhalt | Typ | Pflichtfeld | Beschreibung |
---|---|---|---|---|
s360_berechnung_einheit | Syntax: Beispiel:
ISO = Kennung für Namen von Sprachen (ger, eng, ita usw.) | Freitext | ja | Gibt die Einheit an, die beim Input Feld stehen soll.
|
s360_berechnung_faktor | Beispiel: | Fließkommazahl | Optional | Gibt den Faktor an, wie oft das Produkt benötigt wird. Bsp. Hantelstange. Für eine Hantelstange werden zwei Gewichte benötigt |
s360_berechnung_aufschlag_prozent | Beispiel: | Ganzzahl | Optional | Gibt einen benötigten Aufschlag in Prozent an (Zusätzlich zum Absoluten) |
s360_berechnung_aufschlag_absolut | Beispiel: | Fließkommazahl | Optional | Gibt einen benötigten absoluten Aufschlag an (Zusätzlich zum Prozent) |
s360_berechnung_aufschlag_text | Syntax: Beispiel:
ISO = Kennung für Namen von Sprachen (ger, eng, ita usw.) | Freitext | Optional | Gibt die Möglichkeit einen eigenen Text für “Verschnitt hinzufügen?“ für einzelne Artikel. Wenn das Attribut nicht vorhanden ist, wird die Sprachvariable “ |
Zusätzlich verwendet das Plugin die folgenden Werte aus der Wawi. Den Inhalt, die Mindestbestellmenge und den Abnahmeintervall
Berechnung
Ergebnis = Eingegebene Zahl im Eingabefeld
Wenn Aufschlag berechnet werden soll:
Wenn s360_berechnung_aufschlag_prozent gesetzt ist:
Ergebnis = Ergebnis + Eingegebene Zahl im Eingabefeld * (s360_berechnung_aufschlag_prozent/100)Wenn s360_berechnung_aufschlag_absolut gesetzt ist:
Ergebnis = Ergebnis + s360_berechnung_aufschlag_absolut
Wenn Faktor gesetzt ist und größer als 0 ist
Ergebnis = Ergebnis * FaktorErgebnis = Ergebnis durch Inhalt/Menge
Wenn Ergebnis kleiner als die Mindestabnahme ist:
Ergebnis = Mindestabnahmeimmer aufrunden vom Ergebnis
Wenn Ergebnis mod Abnahmeintervall größer als 0 ist
Ergebnis = Ergebnis + (Abnahmeintervall - (Ergebnis mod Abnahmeintervall))
Artikel anlegen
Wawi
Damit der Bedarfsrechner auf der Artikeldetailseite angezeigt wird, benötigt der Artikel bestimmte Attribute und Werte in der Wawi, die für die Berechnung benötigt werden. In der folgenden Tabelle werden die benötigten Einstellungen erklärt und was sie machen, die Funktionsattribute finden sie dazu ebenfalls hier.
Einstellung | Inhalt | Pflichtfeld | Beschreibung |
---|---|---|---|
Inhalt/Menge |
| ja | Beinhaltet die Menge vom Artikel
|
Mindestabnahme |
| Optional | Gibt die Mindestabnahme von dem Artikel an, wie viel mindestens gekauft werden müssen
|
Abnahmeintervall |
| Optional | Gibt den Abnahmeintervall des Artikels an, |
s360_berechnung_einheit (Funktionsattribut) | Syntax: Beispiel:
ISO = Kennung für Namen von Sprachen (ger, eng, ita usw.) | ja | Gibt die Einheit an, die beim Input Feld stehen soll. |
s360_berechnung_faktor (Funktionsattribut) | Beispiel: | Optional | Gibt den Faktor an, wie oft das Produkt benötigt wird. Bsp. Hantelstange. Für eine Hantelstange werden zwei Gewichte benötigt |
s360_berechnung_aufschlag_prozent (Funktionsattribut) | Beispiel: | Optional | Gibt einen benötigten Aufschlag in Prozent an (Zusätzlich zum Absoluten) |
s360_berechnung_aufschlag_absolut (Funktionsattribut) | Beispiel: | Optional | Gibt einen benötigten absoluten Aufschlag an (Zusätzlich zum Prozent) |
s360_berechnung_aufschlag_text (Funktionsattribut) | Syntax: Beispiel:
ISO = Kennung für Namen von Sprachen (ger, eng, ita usw.) | Optional | Gibt den Text nach dem Aufschlag an, wenn ein anderer Text gewählt werden soll, wie in der Plugin Sprachvariable clipping |
Sprachvariablen
Name | Beschreibung |
---|---|
| Gibt den “Titel“ an
|
| Text vor dem Ergebnis |
| Standardtext nach den Aufschlagswerten. Kann für einzelne Artikel mit Hilfe vom Funktionsattribut |
| Text vom Button |
| Gibt die Produkteinheit an, die angezeigt werden soll, wenn keine Verkaufseinheit in der Wawi keine angegeben wurde. Bsp.: als Standardeinheit wird x |
| Fehlermeldung, wenn das Eingabefeld leer oder 0 ist. |
Fallbeispiele
Flüssiges Produkt in Flaschen
Situation: Ein Kunde benötigt 6,37 Liter eines Produkts, welches in flüssiger Form flaschenweise erhältlich ist. Der Inhalt einer Flasche beträgt 20 ml. Es besteht die Möglichkeit, dass ein wahrscheinlicher Restinhalt sowie ein zusätzlicher Puffer bei der Berechnung berücksichtigt werden.
Berechnung ohne Option (kein ausgewähltes Feld): Ohne Auswahl des Feldes wird nur die reine Menge berechnet:
Berechnung mit Option (ausgewähltes Feld): Sobald das, von Ihnen vorher festgelegte, Feld ausgewählt wurde, wird es verrechnet:
Bei einem angenommenen Restinhalt von 5 ml und einem Puffer von 2% wird die Flaschenanzahl aufgerundet, um auf die genaue Menge zu kommen.
Einstellungen in der WaWi:
Matten für Fitnessstudio
Situation: Eine Fitnessstudiokette möchte im Rahmen geplanter Umbaumaßnahmen den Boden mit Matten auslegen. Die zu bedeckende Fläche beträgt 113,67 m².
Da der Bedarfsrechner nur eine Dezimalstelle berücksichtigt, kann die Fläche mit 113,7 m² angegeben werden. Die Matten haben jeweils eine Fläche von 1 m². Zusätzlich wird ein Verschnitt von 2 m² als Option eingeplant.
Berechnung ohne Option (kein ausgewähltes Feld): Ohne Verschnitt zeigt der Bedarfsrechner an, dass 114 Matten benötigt werden, da auf die nächsthöhere natürliche Zahl gerundet wird:
Berechnung mit Option (ausgewähltes Feld): Wird der Verschnitt von 2 m² mit eingeplant, erhöht sich der Bedarf auf 116 Matten:
Einstellungen in der WaWi:
Sonderaktion nach Produkteinführung
Situation: Ein Kleinunternehmen mit einem Laden plant eine Sonderaktion für einen Schokoriegel, der zuvor ohne Rabatte schnell ausverkauft war. Der Händler rechnet aufgrund der hohen Nachfrage mit einer Verdreifachung des Verkaufs.e.
Berechnung ohne Option (kein ausgewähltes Feld): Im Einkauf wird der Schokoriegel im 4er-Pack verkauft, aber im Laden einzeln angeboten. Da zuvor 158 Riegel verkauft wurden, erwartet der Händler nun einen Absatz von 474 Schokoriegeln. Der Bedarfsrechner berechnet die benötigte Packungsmenge:
Mit dieser Berechnung sind 119 Packungen erforderlich.
Berechnung mit Option (ausgewähltes Feld): Um sicherzustellen, dass der Vorrat für die gesamte Dauer der Sonderaktion reicht, kann ein prozentualer Aufschlag von 5% eingeplant werden:
Dies stellt sicher, dass ausreichend Ware vorhanden ist, selbst wenn unvorhergesehene Ereignisse eintreten.
Einstellungen in der WaWi:
Parkett für die Wohnung
Situation: Ein Endkunde möchte den Boden seiner Wohnung mit Parkett auslegen. Die Fläche, die er verlegen möchte, beträgt 45 m². Das Parkett wird in Kisten verkauft, wobei jede Kiste eine Fläche von 2,5 m² abdeckt.
Berechnung ohne Option (kein ausgewähltes Feld): Hierbei werden 18 Kisten mit Parkett benötigt, da pro Kiste 2,5² zur Verfügung stehen. Eine Aufrundung findet in diesem Fall nicht statt, weil dies passend teilbar ist:
Berechnung mit Option (ausgewähltes Feld): Der Kunde möchte jedoch einen kleinen Puffer für mögliche Zuschnitte oder Fehler bei der Verlegung einplanen und wählt einen Puffer von 5%. Der Bedarfsrechner berücksichtigt nun den Puffer und berechnet die benötigte Menge. Mit der ausgewählten Option wird eine zusätzliche Kiste benötigt. In diesem Fall wurde auf das nächste Objekt gerundet:
Einstellungen in der WaWi:
Umzugskartons für einen Umzug
Situation: Ein Endkunde plant einen Umzug und benötigt Umzugskartons. Die gesamte Menge an Gegenständen, die verpackt werden muss, wird auf ein Volumen von 7 m³ geschätzt. Die angebotenen Umzugskartons haben ein Volumen von 0,1 m³ pro Karton. Hierbei wird für den Bedarfsrechner das Volumen genommen, welches verpackt werden soll.
Berechnung ohne Option (kein ausgewähltes Feld): Hier wird erneut nur die reine Menge berechnet; in diesem Fall werden 70 Kartons benötigt.
Berechnung mit Option (ausgewähltes Feld): Der Kunde möchte sicherstellen, dass er nicht zu wenig Kartons hat, falls einige Gegenstände etwas mehr Platz benötigen oder zusätzliche Verpackung erforderlich ist. Er wählt die Option für einen Aufschlag von 10%. So ergeben sich 77 Kartons bzw. ein Volumen von 7,7 m³:
Einstellungen in der WaWi:
Zu beachten:
Bei der Einstellung des Bedarfsrechner ist zu beachten, dass Sie die korrekten Aufschläge auswählen. Ein zu niedriger Wert kann möglicherweise die benötigte Toleranz nicht abdecken und ein zu hoher Wert kann mögliche Kunden vom Kauf abschrecken. Bei gewissen Produkten kann eine Aufschlagsempfehlung ausgesprochen werden, wenn Sie die Erfahrung sammeln konnten, dass Ihre Kunden zu wenig, für den benötigten Zweck, bestellten:
Troubleshooting
Logs prüfen
Um herauszufinden, wo ein Problem liegt, helfen Ihnen und uns die Logs. Je nach Fehlerbild ist eines der folgenden 3 Logs dafür mehr oder weniger relevant.
Browser-Log
Das Browser-Log ist meist relevant, wenn irgendwas im Frontend des Shops sich merkwürdig verhält oder nicht reagiert. (Beispiel: Sie klicken einen Button und augenscheinlich passiert gar nichts.)
Das Browser-Log sehen Sie, wenn Sie im Browser F12 drücken und dort dann auf Konsole (oder Console) wechseln.
Shop-Log
Das Shop-Log ist immer dann interessant, wenn im Frontend unerwartete Fehlermeldungen ausgegeben werden oder das Plugin zwar auf Eingaben im Frontend reagiert, aber nicht das Ergebnis liefert, was erwartet wurde. Manchmal ergibt sich auch durch das Browser-Log, dass die Informationen eher im Shop-Log zu suchen sind.
Das Shop-Log finden Sie im JTL-Adminbereich unter System → Wartung → Log.
Das JTL-Log arbeitet mit Log-Levels, um nicht die Datenbank unbegrenzt mit Logdaten zu befüllen. Im Umkehrschluss heißt das, dass Sie Logmeldungen aber auch erst dann sehen, wenn diese nach der Änderung des Loglevels erzeugt worden sind.
Das Plugin loggt außer kritischer Fehler fast ausschließlich im Debug-Log-Level. Wenn also etwas nicht klappt, sollten Sie zunächst das Debug-Loglevel aktivieren, dann eine Testbestellung durchführen, dann das Debug-Loglevel wieder deaktivieren und die zwischenzeitlich geloggten Meldungen zurate ziehen.
Webserver-Log
Das Webserver-Log wird dann relevant, wenn Sie irgendwo auf einen Error 500 (= weiße Seite) stoßen.
Das Webserver-Log kann Ihnen Ihr Hoster zur Verfügung stellen.
In der Standardkonfiguration loggt der JTL-Shop überhaupt nichts in das Webserverlog, nicht mal kritische Fehler wie einen Error 500.
Damit der Shop diese Fehler loggt, müssen in der /includes/config.JTL-Shop.ini.php die einzelnen *_LOG_LEVEL Werte von 0 auf E_ERROR geändert werden.
Achtung: Editieren Sie die Config-Datei des Shops nur, wenn Sie wissen, was Sie tun! Fehlerhafte Anpassungen hier können Ihren Shop unerreichbar oder (verschlüsselte) Daten unbrauchbar machen. Im Zweifelsfall sollten Sie Ihren Hoster oder Servicepartner um Hilfe fragen.
Changelog
v1.0.3 (Januar 2025)
Dashboard hinzugefügt
v1.0.2 (Dezember 2024)
Fixed: Beim wechseln von einem Vaterartikel zum Kindartikel berechnen Button ohne Funktion
Verbesserung: Formularfeld und Einheit besser dargestellt
v1.0.1 (November 2024)
Verbesserung: Javascript wird async geladen
Fixed: Beim Variationswechel berechnen Button ohne Funktion
v1.0.0 (Oktober 2024)
Initiales Release