Neuigkeiten
  • Die modified eCommerce Shopsoftware ist kostenlos, aber nicht umsonst.
    Spenden
  • Damit wir die modified eCommerce Shopsoftware auch zukünftig kostenlos anbieten können:
    Spenden
  • Thema: Attributpreise: 4stellige Genauigkeit, Dezimalpunkt, Netto/Brutto

    kaisa

    • Schreiberling
    • Beiträge: 365
    Wie kann ich 4 Dezimalstellen bei Attributspreisen einstellen, um Rundungsfehler wg. Nettopreisen vermeiden?
    Warum wird die dt. Schreibweise nicht angenommen "20,32" wird kommentarlos zu "20" umgewandelt? Hat das jemand mal gepatcht?

    Linkback: https://www.modified-shop.org/forum/index.php?topic=31844.0
    Managed Server

    ralph_84

    • Fördermitglied
    • Beiträge: 499
    • Geschlecht:
    Alle Preise werden schon immer mit einem Punkt eigegeben.
    Ein Komma wird nicht erkannt.
    Gruß Ralph

    kaisa

    • Schreiberling
    • Beiträge: 365
    Thema verfehlt, Setzen, 6. ;)

    Nun, es ist keine offizielle Schreibweise in Deutschland, Dezimalzahlen mit einem Punkt einzugeben.
    Meine Frage steht nach wie vor: Hat das mal jemand gepatcht und wie kann ich die Eingabegenauigkeit auf 4 Stellen erhöhen?

    hpzeller

    • Experte
    • Beiträge: 4.129
    • Geschlecht:
    Hallo kaisa

    Ja ich denke das ist tatsächlich ein Mangel, denn je nach dem ob  'Admin Brutto' auf 'true' oder 'false' gesetzt ist, stehen einem zwei oder vier Nachkommastellen bei der Eingabe von Attribut-Preisen zur Verfügung.

    Vorausgesetzt das Du in 'Adminbereich Optionen -> Brutto Admin' auf 'true' und  in 'Mein Shop -> Brutto/Netto Dezimalstellen' auf '4' gesetzt hast, schlage ich dir zur Lösung des Problems folgendes  vor in 'admin/includes/modules/new_attributes_include.php' ca. Zeile 154
    Code: PHP  [Auswählen]
                  $attribute_value_price_calculate = $xtPrice->xtcFormat(xtc_round((isset($attr_array['options_values_price'])?$attr_array['options_values_price']:0)*((100+(xtc_get_tax_rate(xtc_get_tax_class_id($_POST['current_product_id']))))/100),PRICE_PRECISION),false);
     
    mit folgender Zeile zu ersetzen
    Code: PHP  [Auswählen]
                  $attribute_value_price_calculate = xtc_round((isset($attr_array['options_values_price'])?$attr_array['options_values_price']:0)*((100+(xtc_get_tax_rate(xtc_get_tax_class_id($_POST['current_product_id']))))/100),PRICE_PRECISION);
     
    damit wird dann der Bruttopreis mit vier Nachkommastellen angezeigt.

    Optional, damit auch der Nettopreis mit vier Nachkommastellen angezeigt wird kannst Du noch in 'admin/includes/modules/new_attributes_include.php' ca. Zeile 167
    Code: PHP  [Auswählen]
                   echo '<span style="font-size:11px">'.TEXT_NETTO .'<strong>'.$xtPrice->xtcFormat(xtc_round((isset($attr_array['options_values_price'])?$attr_array['options_values_price']:0),PRICE_PRECISION),true).'</strong></span>  '. PHP_EOL;                              
     
    mit folgender Zeile zu ersetzen
    Code: PHP  [Auswählen]
                                 
                   echo '<span style="font-size:11px">'.TEXT_NETTO .'<strong>'.$xtPrice->xtcFormat(xtc_round((isset($attr_array['options_values_price'])?$attr_array['options_values_price']:0),PRICE_PRECISION),true, 0, false , 0 , 0, PRICE_PRECISION).'</strong></span>  '. PHP_EOL;
     
    Obiger Nettopreis ist dann auch der Wert welcher in der Datenbank gespeichert wird.

    Gruss
    Hanspeter
    Trade Republic - Provisionsfrei Aktien handeln
    1 Antworten
    2738 Aufrufe
    02. November 2013, 20:31:29 von WayneTsun
    1 Antworten
    2793 Aufrufe
    08. Mai 2012, 14:29:09 von zoidborg
    15 Antworten
    12197 Aufrufe
    29. November 2012, 14:41:49 von sternschnuppe
    2 Antworten
    3423 Aufrufe
    10. März 2010, 18:30:00 von FrankDN
               
    anything