Bedarfsrechner (JTL-Shop 5)

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

 

Plugin Einstellung.png

Das Plugin verfügt über folgende Einstellungen

Einstellung

Optionen

 Beschreibung

Einstellung

Optionen

 Beschreibung

Aktivieren

  • Aktiv

  • Nur Admin aktiv

  • Inaktiv

Steuert für wen das Plugin aktiviert ist oder ob es inaktiv ist

Aufschlag optional

  • Ja

  • Nein

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

  • Prepend

  • Before

  • After

  • Append

  • ReplaceWith

Steuert, wo genau das Frontend am Selektor eingefügt werden soll

Button Farbe

  • Dark

  • Info

  • Light

  • Danger

  • Primary

  • Success

  • Warning

  • Secondary

Steuert die Farbe des Buttons (Bootstrap Button Klassen)

Button Größe

  • Groß

  • Klein

Regelt die Größe des Buttons

CSS-Klassen

 

Können mehrere CSS Klassen verwendet werden um das Styling etc. anzupassen

Betrieb

Darstellung

 

Frontend Plugin.png

 

Wawi Funktionsattribute

Das Plugin benötigt für jedes Produkt, welches den Rechner anbieten soll, die folgenden Funktionsattribute.

 

 

 

 

 

Funktionsattribut

Inhalt

Typ

Pflichtfeld

 Beschreibung

Funktionsattribut

Inhalt

Typ

Pflichtfeld

 Beschreibung

s360_berechnung_einheit

Syntax:
ISO:Wert|ISO:Wert…

Beispiel:
ger:Kilogramm|eng:kilogram

Freitext

ja

Gibt die Einheit an, die beim Input Feld stehen soll.

 

 

s360_berechnung_faktor

Beispiel:
2,0

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:
5

Ganzzahl

Optional

Gibt einen benötigten Aufschlag in Prozent an (Zusätzlich zum Absoluten)

s360_berechnung_aufschlag_absolut

Beispiel:
5,5

Fließkommazahl

Optional

Gibt einen benötigten absoluten Aufschlag an (Zusätzlich zum Prozent)

s360_berechnung_aufschlag_text

Syntax:
ISO:Wert|ISO:Wert…

Beispiel:
ger:Aufschlag zum Gewicht|eng:Weight surcharge

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 “clipping“ genutzt

Zusätzlich verwendet das Plugin die folgenden Werte aus der Wawi. Den Inhalt, die Mindestbestellmenge und den Abnahmeintervall

Berechnung

  1. Ergebnis = Eingegebene Zahl im Eingabefeld

  2. Wenn Aufschlag berechnet werden soll:

    1. Wenn s360_berechnung_aufschlag_prozent gesetzt ist:
      Ergebnis = Ergebnis + Eingegebene Zahl im Eingabefeld * (s360_berechnung_aufschlag_prozent/100)

    2. Wenn s360_berechnung_aufschlag_absolut gesetzt ist:
      Ergebnis = Ergebnis + s360_berechnung_aufschlag_absolut

  3. Wenn Faktor gesetzt ist und größer als 0 ist
    Ergebnis = Ergebnis * Faktor

  4. Ergebnis = Ergebnis durch Inhalt/Menge

  5. Wenn Ergebnis kleiner als die Mindestabnahme ist:
    Ergebnis = Mindestabnahme

  6. immer aufrunden vom Ergebnis

  7. 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

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:
ISO:Wert|ISO:Wert…

Beispiel:
ger:Gramm|eng:gram

ja

Gibt die Einheit an, die beim Input Feld stehen soll.

s360_berechnung_faktor (Funktionsattribut)

Beispiel:
2,0

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:
5

Optional

Gibt einen benötigten Aufschlag in Prozent an (Zusätzlich zum Absoluten)

s360_berechnung_aufschlag_absolut (Funktionsattribut)

Beispiel:
5,5

Optional

Gibt einen benötigten absoluten Aufschlag an (Zusätzlich zum Prozent)

s360_berechnung_aufschlag_text (Funktionsattribut)

Syntax:
ISO:Wert|ISO:Wert…

Beispiel:
ger:Aufschlag hinzufügen?|eng:add surcharge?

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

Name

 Beschreibung

title

Gibt den “Titel“ an

 

result

Text vor dem Ergebnis

clipping

Standardtext nach den Aufschlagswerten. Kann für einzelne Artikel mit Hilfe vom Funktionsattribut s360_berechnung_aufschlag_text überschrieben werden.

button_calculate

Text vom Button

product_unit_default

Gibt die Produkteinheit an, die angezeigt werden soll, wenn keine Verkaufseinheit in der Wawi keine angegeben wurde.

Bsp.: als Standardeinheit wird x

error_msg_empty_quantity

Fehlermeldung, wenn das Eingabefeld leer oder 0 ist.

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.1 (November 2024)

  • Verbesserung: Javascript wird async geladen

  • Fixed: Beim Variationswechel berechnen Button ohne Funktion

v1.0.0 (Oktober 2024)

  • Initiales Release