Ankündigung

Einklappen
Keine Ankündigung bisher.

[behoben in 1.5.6d] Zwischensumme weicht beim Checkout vom Warenkorb ab

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

    (Zen-Cart 1.5.6) [behoben in 1.5.6d] Zwischensumme weicht beim Checkout vom Warenkorb ab

    Ich habe seit der Umstellung auf 1.5.6 das Problem, dass die Order-Totals falsch berechnet werden.

    Im Warenkorb habe ich 6 Stück eines Artikels für 9.25/Stück, also 55.50 gesamt.

    Im 2. Checkout-Schritt wird mir dann folgendes angezeigt:

    Zwischensumme: €55.48
    Versandkosten nach Zonen (nach DE): €5.50
    Netto-Betrag: €51.24
    Enthaltene Mwst. 19% Mwst: €9.74
    Endsumme: €60.98

    Wenn die die Währung auf 3 Nachkommastellen einstelle, wird es etwas besser:

    Zwischensumme: €55.499
    Versandkosten nach Zonen (nach DE): €5.500
    Netto-Betrag: €51.260
    Enthaltene Mwst. 19% Mwst: €9.739
    Endsumme: €60.999

    Würde daher vermuten, dass es ein Rundungsproblem bei der Steuerberechnung ist. Habt Ihr einen Tipp für mich, wo ich suchen muss?

    Viele Grüße
    Christian

    #2
    Folgende Änderung in der includes/classes/order.php sollte dieses Rundungsproblem auch in Deinem Szenario beheben:

    ca. Zeile 580

    ändern von:

    Code:
    /*********************************************
    * Calculate taxes for this product
    *********************************************/
    $shown_price = (zen_add_tax($this->products[$index]['final_price'] * $this->products[$index]['qty'], $this->products[$index]['tax']))
    + zen_add_tax($this->products[$index]['onetime_charges'], $this->products[$index]['tax']);
    $this->info['subtotal'] += $shown_price;
    auf:

    Code:
    /*********************************************
    * Calculate taxes for this product
    *********************************************/
    $shown_price = (zen_add_tax($this->products[$index]['final_price'], $this->products[$index]['tax']))
    + zen_add_tax($this->products[$index]['onetime_charges'], $this->products[$index]['tax']);        
    $this->info['subtotal'] += $currencies->value($shown_price)* $this->products[$index]['qty'];
    Ist auf Github bereits so vorgesehen und wird in die kommende 1.5.6d übernommen
    Zen Cart ist eine kostenlose unter der GPL-Lizenz veröffentlichte Open-Source Shopsoftware. Das System wird in den USA entwickelt. Die deutsche Zen Cart Version ist eine Anpassung der amerikanischen Version an die Bedürfnisse von Onlineshopbetreibern im deutschsprachigen Raum. - Fix für Rundungseffekte bei Zwischensumme · zencartpro/zencart-german-grundsystem@c0b6b4c


    Bitte poste ob es damit ok ist.

    Kommentar


      #3
      Erst einmal danke für die schnelle Antwort.

      Leider hat diese Änderung in meinem speziellen Fall nicht bewirkt. Es scheint mir, dass damit ein anderes Problem gelöst werden sollte, da der neue Code die One-Time-Charges mit der Quantity multipliziert. Und wenn alles floats sind und nirgendwo implizit gerundet wird, sollte das Verschieben der Multiplikation sonst keine Auswirkungen haben.

      Ich tippe im Moment mehr darauf, dass der Final Price in Zeile 500 nicht gerundet werden darf. Da ich keine Erfahrung mit PHP habe, werde ich die viele freie Zeit morgen mal nutzen, um da hineinzuschauen.

      Kommentar


        #4
        Vergessen:

        Zusätzlich ca. Zeile 500 ändern von

        Code:
        'final_price' => zen_round($products[$i]['price'] + $_SESSION['cart']->attributes_price($products[$i]['id']), $decimals),
        auf

        Code:
        'final_price' => $products[$i]['price'] + $_SESSION['cart']->attributes_price($products[$i]['id']),

        Kommentar


          #5
          Das war's. Danke Dir!
          Christian

          Kommentar

          Info zu diesem Forenarchiv:
          Mit Release von 1.5.7 wurde die deutsche Zen Cart Version auf eine reine DIY-Lösung umgestellt.
          Für einen Support via Forum stehen keine personellen und zeitlichen Ressourcen mehr zur Verfügung.
          Dieses Supportforum bleibt im Nur-Lesen-Modus als Wissensarchiv noch online verfügbar.
          PM Funktionalität, Registrierung und Posten neuer Beiträge sind deaktiviert.
          Zugriff auf Anhänge in den Postings ist auch ohne Registrierung/Einloggen möglich.
          FAQ und Downloadbereich des Forums wurden in die neue umfangreiche Knowledgebase auf der zen-cart-pro.at Website übernommen.

          Das Development der deutschen Zen Cart Version geht wie bisher auf Github weiter.
          Wir werden auch weiterhin neue Versionen bereitstellen und die Onlinedokumentation/Knowledgebase aktualisieren.
          Fehler in der Software können auf Github als Issues gemeldet werden.
          Follow us
          aktuelle version
          Zen Cart 1.5.7g deutsch
          vom 12.12.2023
          [Download]
          Lädt...
          X