Warenkorb - Methoden

Guten Morgen, um einen Artikel im Warenkorb zu manipulieren gibt es ja mehrere Möglichkeiten. Bis jetzt habe ich immer sUpdateVoucher und UpdateArticle verwendet. Man könne auch in sGetBasket bzw. FilterResult seine Änderungen einbringen. Ruft man den Warenkrob auf, so wird aber sGetBasket ganze 8x ausgeführt? Warum? Gibt es dazu einen festen Grund? D.h. mein Code wird auch 8x ausgeführt. Wie macht ihr das? Danke für die Info.

Will niemand seine Geheimnisse preis geben :slight_smile: Wie gesagt, ich mache Artikelkalkulationen im Moment in der sUpdateVoucher und sUpdateArticle als After. Wenn ich es nur in sUpdateArticle mache, so stimmen die Gutscheine nicht, wenn Sie prozentual sind. Der Artikel wird frei kalkuliert, wenn der Kunde auf der Artikelseite ein individuelle Parameter angibt. Diese wird in der Session gespeichert und eben dann in den Methoden kalkuliert. Funktionert soweit auch alles. Problem ist eben nur, dass die Methoden mehrfach aufgerufen werden: Detailseite / AddArticle = 2x Cart = 8x Confirm = 14x Finish = 3x Da ich beide Methoden per After nutze, verdoppeln sich die Ausführungen. Habt ihr andere Ideen? Tipps? Danke

Wo liegt denn das Problem? Viele Teile des Shops brauchen den aktuellen Warenkorb - zb Versandarten oder Zahlungsbedingungen. Daher ist es logisch, dass die Funktion „hole den Warenkorb“ oft im Programmablauf aufgerufen wird. Viele Grüße

Es konnte zu Performance Problemen kommen. Ich habe aber nun den Ablauf geändert und den kalkulierten Preis in die Session geschrieben. Dies hat den Vorteil, dass ich nur noch ein SQL Query in den folgeaufrufen der Funktion habe. Davor wurde bei jedem Aufruf der Preis frisch kalkuliert.