Preisberechnung (im Template) falsch bei Variationsartikeln mit Konfiggruppen

t.oster

Gut bekanntes Mitglied
4. Dezember 2013
197
21
Schritte zum Reproduzieren:
- Man erstelle einen Artikel mit Variationen (keine Varikombi), welche einen Aufpreis enthalten.
- Man erstelle eine Konfiggruppe, beliebigen Artikeln und füge diese Gruppe dem Variationsartikel zu

Erwartetes Verhalten:
- Der angezeigte Preis setzt sich zusammen aus Artikelpreis + Aufpreise der Variationen + Preis des in der Konfiggruppe ausgewählten Artikels

Beobachtetes Verhalten (Template JTL-Shop3-Tiny):
- Artikelpreis wird angezeigt. Sobald Variation mit Aufpreis ausgewählt, wird dieser auf den Artikelpreis gerechnet.
- Sobald etwas in der Konfiggruppe gewählt wird, wir der Preis auf Artikelpreis + Konfigartikelpreis geändert, der Variationsaufpreis geht verloren.
- Im Warenkorb ist wieder alles richtig.

Mögliche ähnliche Fehler:
- http://forum.jtl-software.de/fehler...riationen-erst-im-warenkorb-hinzugefuegt.html

Mögliche Ursachen:
- Das Javascript, welches Aufpreise der Konfiggruppen zusammenrechnet berücksichtigt nur den Artikelgrundpreis, nicht aber den Aufpreis der gewählten Variationen?

Systeminfo:
- Shop: 3.19 (bulild 3)
- Template: 3.19, JTL-Shop3-Tiny
 

t.oster

Gut bekanntes Mitglied
4. Dezember 2013
197
21
AW: Preisberechnung (im Template) falsch bei Variationsartikeln mit Konfiggruppen

Schade, dass sich keiner auf diese Frage meldet. Ich habe jetzt mal im Template herumgeschaut und es scheint, als könnte man das Problem wie folgt lösen. Allerdings noch nicht umfangreich getestet (wäre nett, wenn man von den JTL Entwicklern ein Feedback bekommen könnte):

In der Datei "artikel_konfigurator_js.php" in der Funktion "getPrice" muss anstelle des statischen "basePrice" der aktuelle Preis inklusive Variationsaufpreise genutzt werden. Dafür ändert man "var base = basePrice" (Zeile 292) wie folgt:
von
Code:
var base = basePrice;
zu
Code:
var base = preisBerechnen({/literal}{$Artikel->Preise->fVK[$NettoPreise]}{literal});
 

Ähnliche Themen