Posting in the Magento forums has been disabled pending the implementation of a new and improved forum solution which should better serve the community.

For new questions please post at magento.stackexchange.com, the community-run support site for the Magento community. We will be providing updates on the new forum solution soon. For questions or concerns please email community@magento.com.

Magento Forum

Page 2 of 2
Rundungsfehler…
 
Vogl
Member
 
Total Posts:  34
Joined:  2009-11-24
 
ds_1984 - 08 February 2010 02:36 AM

Das bei nahezu allen Anwendungen auf volle Prozent gerundet wird ist aber normal - oder meinst du was anderes?

LG - Daniel

Ja das ist mir schon klar, jedoch sind es anhand meines Beispiels eben nur 5, 10 und 15 % und nicht 6, 11 und 16%.
Die Preise stimmen ja eigentlich, nur bei der Prozentausgabe funktioniert etwas nicht.

Gruß Daniel

 
Magento Community Magento Community
Magento Community
Magento Community
 
sepp
Sr. Member
 
Avatar
Total Posts:  120
Joined:  2008-06-14
Hamburg
 

Um 4 stellen hinter dem komma korrekt eingeben zu können und sie auch später sehen zu können folgendes ändern in Version 1.4.0.1
(dürfte auch in älteren versionen funktionieren)

/app/code/core/Mage/Core/Model/Store.php
Zeile 740
return round($price, 2);
ändern in:
return round($price, 4);
---------------------------------------------------------------------------------------------------------------
\app\design\adminhtml\default\default\template\catalog\product\edit\price\tier.phtml
Zeile 161
‘<?php echo sprintf('%.2f', $_item['price']) ?>’
ändern in:
‘<?php echo sprintf('%.4f', $_item['price']) ?>’
-----------------------------------------------------------------------------------------------------------------
app/code/core/Mage/Adminhtml/Block/Catalog/Product/Helper/Form/Price.php
Zeile 86
return number_format($value, 2, null, ‘’);
ändern in:
return number_format($value, 4, null, ‘’);
--------------------------------------------------------------------------------------------------------------
app/code/core/Mage/Adminhtml/Block/Catalog/Product/Edit/Tab/Options/Option.php
Zeile 285

if ($type == ‘percent’) {
return number_format($value, 2, null, ‘’);
} elseif ($type == ‘fixed’) {
return number_format($value, 2, null, ‘’);
ändern in:
if ($type == ‘percent’) {
return number_format($value, 4, null, ‘’);
} elseif ($type == ‘fixed’) {
return number_format($value, 4, null, ‘’);
---------------------------------------------------------------------------------------------------------------------
bei uns im shop funktioniert jetzt die eingabe sowie die richtige berechnung von großen stückzahlen im warenkorb.
Vorher artikelstückpreis: 0,2633 Euro - 1000 stück = 260,00 Euro
Nach änderung : 0,2633 Euro - 1000 stück = 263,30
und es werden im backend die preise mit 4 stellen hinter den komma angezeigt.

 
Magento Community Magento Community
Magento Community
Magento Community
 
lars0202
Jr. Member
 
Total Posts:  4
Joined:  2010-01-27
 

Hallo Zusammen,

wir hatten langezeit das Rundungsproblem und haben es jetzt für uns gelöst.

Kann es sein, dass das Problem hier etwas falsch verstanden wurde. Wie Zeile 740 zeigt

/app/code/core/Mage/Core/Model/Store.php
return round($price, 2);

werden die Preise doch auf 2 Stellen nach dem Komma gerundet.

Wo nicht gerundet in die DB geschrieben wird, ist bei den Versandkosten. Dadruch entstehen dann natürlich beim checkout bzw. später bei paypal Rundungsfehler.

Um die Versandkosten nun auch gerundet in die DB zu schreiben muss in der Datei:

/ app / code / core / Mage / Shipping / Model / Carrier / Abstract.php
in line 238

return $finalMethodPrice;

mit

return round($finalMethodPrice,2);

ersetzt werden.

Damit sind nun sowohl die Preise als auch Versandkosten gerundet in der DB gespeichert. Magento rechnet jetzt im chechout richtig und vor allem genauso wie paypal oder alle anderen System die buchhalterisch runden & rechnen.

Grüße,
Lars

 
Magento Community Magento Community
Magento Community
Magento Community
 
EddyP
Jr. Member
 
Total Posts:  12
Joined:  2008-11-04
 

Funktioniert nicht :(

Alternativ noch eine Lösung?

 
Magento Community Magento Community
Magento Community
Magento Community
 
sepp
Sr. Member
 
Avatar
Total Posts:  120
Joined:  2008-06-14
Hamburg
 

in 1.6.2.0 wieder das gleiche Problem, teilweise werden die Preise in Frontend mit 1 cent zu wenig angezeigt obwohl sie im Backend korrekt sind, ändert mann in:

/app/code/core/Mage/Core/Model/Store.php
Zeile 930
return round($price, 2);
ändern in:
return round($price, 4);

dann stimmt es wieder.

 
Magento Community Magento Community
Magento Community
Magento Community
 
MsHuhu
Member
 
Total Posts:  39
Joined:  2010-04-22
 

...so einfach! Danke für den Hinweis, perfekt!

 
Magento Community Magento Community
Magento Community
Magento Community
 
tyveris
Jr. Member
 
Total Posts:  28
Joined:  2010-05-17
 
MsHuhu - 20 January 2012 12:48 PM

...so einfach! Danke für den Hinweis, perfekt!

Ich muss dem zustimmen! Ich benutze momentan in meiner Test-Umgebung die Magento 1.6.2.0, habe 19% MwSt auf meine Artikel und habe mit PayPal den 1Cent Bug.
Bei dem Versuch in der app/code/core/Mage/Core/Store.php

/**
     * Round price
     *
     * @param mixed $price
     * @return double
     */
    public function roundPrice($price)
    
{
        
return round($price2);
    
}
auf 4 stellen zu Runden, brachte KEINEN Erfolg.  Auch das abschalten der Ãœbertragung der einzelnen Artikel-Posten an PayPal hatte hier nichts gebracht, da die Versandkosten noch dazu kamen! Es wurde also immer falsch gerechnet bei Preisen wie 69,99 inkl. MwSt. und Versandkosten von 4,90 inkl. MwSt.

Was den Erfolg brachte, und dafür bin ich euch sehr dankbar, ist die Rundung der Versandkosten!
Erst hier stellte sich der Erfolg ein, und es wurde richtig gerechnet!

Diese Datei: app/code/core/Mage/Shipping/Model/Carrier/Abstract.php bei Zeile 424 (ca.)

return $finalMethodPrice;
in
return round($finalMethodPrice,2);
ändern, und es wird richtig gerechnet!

Ich hoffe mit der kleinen Zusammenfassung anderen Helfen zu können!

Danke an die Community!

Tyv.

 
Magento Community Magento Community
Magento Community
Magento Community
 
volker2012
Member
 
Total Posts:  33
Joined:  2012-04-25
 

Hallo,

mit einem ähnlichen Problem kämpfen wir uns nun seit Tagen durch Magento und Paypal. Wir verlangen zwar keine Versandkosten, jedoch einen Aufschlag für Paypalzahlungen in Höhe von 3%. Ständig haben wir die Meldung Suspected Fraud. Egal was wir tun - wir bekommen es nicht raus. Runden wir nicht auf 4 Stellen - haben wir das Centproblem. Runden wir auf 4 Stellen - haben wir das Suspected Fraud Problem.

Die diversen Ideen der engl. Community haben wir auch durchprobiert - ohne Erfolg. Eigentlich ein witz was sich Magento und Paypal dort erlauben - aber sind ja nur wir Nutzer.

Vielleicht hat jemand eine Idee wie wir das noch versuchen könnten zu beheben?

Danke in die Runde

 
Magento Community Magento Community
Magento Community
Magento Community
 
Siggi_Schmitz
Enthusiast
 
Avatar
Total Posts:  811
Joined:  2011-07-03
 

Habt Ihr den Aufschlag in Höhe von 3% selber programmiert? “Suspected Fraud” bedeutet das PayPal Unterschiede zwischen 2 Beträgen feststellt die eigentlich gleich sein sollten…

 
Magento Community Magento Community
Magento Community
Magento Community
 
FDA_HH
Jr. Member
 
Total Posts:  13
Joined:  2008-12-18
Hamburg
 

Ein Problem das beim einstellen der Runde auf 4 Stellen entsteht ist das beim übertragen der Beträge nach PayPal sie wieder auf 2 Stellen gerundet werden, was unter Umständen zu einer Differenz führen kann. Leider konnte ich nicht die Stelle finden bei der gerundet wird. Wir Probieren jetzt erstmal einen Fix um das Auftreten von Differenzen auszugleichen.
Dazu dies können wir in der /app/code/core/Mage/Paypal/Model/Cart.php mache. (Magento 1.7.0.2) ab Zeile 294 (siehe Patch)

Der Fix ist nun, dass wir beide Methoden zur Berechnung nutzen und dann die Differenz auf BaseTax addieren. (Beim Nachrechnen der Steuer fällt zwar dann auf, dass diese um 1-2 Cent falsch ausgewiesen wird, jedoch stimmt der Endbetrag und das ist ja das Wichtige.

Es scheint bei diesem Fall zu funktionieren. Vielleicht fällt jemanden ein bessere Lösung ein.

Der Patch ändert die Datei direct in app/code/core und wird möglicherweise bei einem update von Magento Überschrieben.

### Eclipse Workspace Patch 1.0
#P magento17
Indexapp/code/core/Mage/Paypal/Model/Cart.php
===================================================================
--- 
app/code/core/Mage/Paypal/Model/Cart.php    (revision 153757)
+++ 
app/code/core/Mage/Paypal/Model/Cart.php    (working copy)
@@ -
275,+275,11 @@
      */
     protected function 
_render()
     
{
+        function calcTotalDiffPaypal($baseSub,$baseTax,$baseShipping,$baseDiscount{
+            $magentoAmmount round($baseSub+$baseTax+$baseShipping+$baseDiscount,2);
+            
$payPalAmmount round($baseSub,2)+round($baseTax,2)+round($baseShipping,2)+round($baseDiscount,2);
+            return 
$magentoAmmount-$payPalAmmount
+        
}
         
if (!$this->_shouldRender{
             
return;
         
}
@@ -295,+300,@@
             
$shippingDescription $this->_salesEntity->getShippingDescription();
             
$this->_totals = array(
                 
self::TOTAL_SUBTOTAL => $this->_salesEntity->getBaseSubtotal(),
-                
self::TOTAL_TAX      => $this->_salesEntity->getBaseTaxAmount(),
+                
self::TOTAL_TAX      => $this->_salesEntity->getBaseTaxAmount()+calcTotalDiffPaypal($this->_salesEntity->getBaseSubtotal(),$this->_salesEntity->getBaseTaxAmount(),$this->_salesEntity->getBaseShippingAmount(),abs($this->_salesEntity->getBaseDiscountAmount())),
                 
self::TOTAL_SHIPPING => $this->_salesEntity->getBaseShippingAmount(),
                 
self::TOTAL_DISCOUNT => abs($this->_salesEntity->getBaseDiscountAmount()),
             );
@@ -
306,+311,@@
             
$shippingDescription $address->getShippingDescription();
             
$this->_totals = array (
                 
self::TOTAL_SUBTOTAL => $this->_salesEntity->getBaseSubtotal(),
-                
self::TOTAL_TAX      => $address->getBaseTaxAmount(),
+                
self::TOTAL_TAX      => $this->_salesEntity->getBaseTaxAmount()+calcTotalDiffPaypal($this->_salesEntity->getBaseSubtotal(),$this->_salesEntity->getBaseTaxAmount(),$this->_salesEntity->getBaseShippingAmount(),abs($this->_salesEntity->getBaseDiscountAmount())),
                 
self::TOTAL_SHIPPING => $address->getBaseShippingAmount(),
                 
self::TOTAL_DISCOUNT => abs($address->getBaseDiscountAmount()),
             );
Image Attachments
Magento_Paypal_total_diff.png
File Attachments
Magento_Paypal_total_diff.txt  (File Size: 3KB - Downloads: 61)
 
Magento Community Magento Community
Magento Community
Magento Community
 
tyveris
Jr. Member
 
Total Posts:  28
Joined:  2010-05-17
 

Hallo Zusammen,

ich habe nun ein neues Problem in unserer Magento 1.4.2.0 Umgebung entdeckt, welches wirklich sehr merkwürdig ist;
Daher Bitte ich um Hilfe ob Ihr das gleich Problem habt oder hättet; wenn ja, wie kann ich es beheben…

Ich habe schon sehr viel Threads hier im Forum durchforstet, aber speziell dazu nichts gefunden.
Folgendes Problem:

Es wird 3% Skonto gewährt bei Vorkasse-Zahlungen.
Dies wurde mittels “Warenkorb-Preisregel” erstellt:
Wenn “Vorkasse” dann 3% auf Warenkorbwert.

Aber nun kommt das Problem:
Es wird von den 3% Rabatt die MwSt (19%) genommen und zum Gesamtbetrag addiert.

Dies ergibt leider überhaupt keinen Sinn für uns. Folgende Rechnung:

Artikel 1 - 95,99 EUR
Artikel 2 - 114,90 EUR
Artikel 3 - 98,95 EUR
Versand 3,90 EUR

Warenwert = 309,84 EUR
Davon gehen 3 % Rabatt weg = 9,2952 EUR
wären dann 300,5448 EUR plus die Versandkosten von 3,90 = 304,4448 EUR = 304,45 EUR.

Jetzt wird aber von dem Rabattbetrag 9,2952 EUR 19% genommen -> -1,48 EUR und zum GESAMTBETRAG addiert: 304,45+1,48 EUR ....

Versteht das jemand?

Wir haben also als Gesamtbetrag nicht 304,45 EUR, sondern 305,93 EUR!

Im Backend und in der Bestätigungs-Mail werden die Gesamtbeträge richtig angegeben, NUR auf der Checkout-Seite nicht.
Ich habe extra das Default-Template eingeschaltet um zu testen ob es an unserem Design hängt. Leider erhalte ich gleiche Ergebnisse mit dem Default-Template.

Kann mir Bitte jemand Helfen?

 
Magento Community Magento Community
Magento Community
Magento Community
 
oxamo
Member
 
Total Posts:  31
Joined:  2010-05-12
 

Interessiert der PayPal Bug überhaupt noch jemanden......
Warum wird er von Varien und Paypal ignoriert und totgeschwiegen?

Es ist verdammt ärgerlich wenn die Kunden abspringen nur weil die Zahlung per PayPal mal funktioniert und mal nicht.

 
Magento Community Magento Community
Magento Community
Magento Community
 
SimonLindner
Member
 
Avatar
Total Posts:  31
Joined:  2011-09-08
Bremen
 

Hello,

please check this solution & tell me if it is the fix:

http://www.magentocommerce.com/boards/viewthread/247201/P45/

Cheerz

 
Magento Community Magento Community
Magento Community
Magento Community
Magento Community
Magento Community
Back to top
Page 2 of 2