Jump to content
xt:Commerce Community Forum

Aufrunden Des Preises " Sonderangebote "


rxboe

Recommended Posts

Hallo liebe Users,

kurze Erl?uterung:

Ich und euer Super User " Dreamer " suchen seit neustem nach einer L?sung um die Preise aufzurunden !!

folgendes Problem:

da ich einen Shop in der Schweiz betreibe musste ich die W?hrung auf CHF umstellen, was ich auch nach einiger Zeit schaffte.

Doch folgendes Problem bannte sich an --> da wir in der Schweiz keine Cents haben sondern nur 5 Rappen M?nzen als kleinstes Zahlungsmittel, bestehen unsere Preise nur aus 16.85 ; 88.25 ; 9.95 etc.

Jetzt wenn ich ein Sonderangebot reinhaue und 20% angebe zeigt es mir im Shop zum Beispiel 15.92 an, was ich ?berhaupt nicht gebrauchen kann.

Kennt von euche jemand eine L?sung ??

Selbstverst?ndlich habe ich auch rumgeschaut und habe nur eine L?sung gefunden um die Endrechnung zu runden, was mir aber nicht gen?gt. Mein Vorstellung w?ren das alle Preise ( meistens ja nur die in der Sparte Sonderangebote ) gerundet werden.

Ich hoffe auf euere Hilfe

Link to comment
Share on other sites

  • 11 months later...

Diese Angaben beziehen sich auf einer 2er Shop. Zumindest hab ich hier grad keinen anderen. Es k?nnte aber sein, dass es trotzdem mit einem 3er geht.

Da die Sonderpreise nicht jedesmal f?r das Produkt neu berechnet werden (bei prozentangaben) sondern nur einem berechnet und dann in die Datenbank eingtragen werden, ist eine solche ?nderung recht einfach. Man rundet einfach im Adminbereich an der entsprechenden Stelle.

Die Datei ist: shopverzeichnis/admin/speicals.php

Dort sucht man die folgenden Zeilen:


   if (substr($_POST['specials_price'], -1) == '%') {

    $new_special_insert_query = xtc_db_query("select products_id,products_tax_class_id, products_price from " . TABLE_PRODUCTS . " where products_id = '" . (int)$_POST['products_id'] . "'");

    $new_special_insert = xtc_db_fetch_array($new_special_insert_query);

    $_POST['products_price'] = $new_special_insert['products_price'];

    $_POST['specials_price'] = ($_POST['products_price'] - (($_POST['specials_price'] / 100) * $_POST['products_price']))+5000;

   } else {

Und f?gt folgendes vor der else-Zeile ein: Mit dem folgenden Befehl wird der Preis ggfs. in 5Cent Schritten abgerundet(!)

So entsteht also insgesamt:

   if (substr($_POST['specials_price'], -1) == '%') {

    $new_special_insert_query = xtc_db_query("select products_id,products_tax_class_id, products_price from " . TABLE_PRODUCTS . " where products_id = '" . (int)$_POST['products_id'] . "'");

    $new_special_insert = xtc_db_fetch_array($new_special_insert_query);

    $_POST['products_price'] = $new_special_insert['products_price'];

    $_POST['specials_price'] = ($_POST['products_price'] - (($_POST['specials_price'] / 100) * $_POST['products_price']))+5000;


    $_POST['specials_price'] = $_POST['specials_price'] - ((($_POST['specials_price']*100)%5)/100);


   } else {

Das ist ungetestet!!

Link to comment
Share on other sites

ja, im 3.04 siehts da noch gleich aus, und ich konnte das auch einbauen, aber das bringt nichts, weil das ja an die netto preise geht, aber ausgegeben werden dann brutto.

also m?sste man an der stelle ansetzen, wo die mwst dazugerechnet wird.

ich werde das bei gelegenheit mal suchen...

thomas

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
  • Create New...