Shop Hosting
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: MODUL: Änderung der Mehrwertsteuer

    noRiddle (revilonetz)

    • Experte
    • Beiträge: 13.743
    • Geschlecht:
    Re: MODUL: Änderung der Mehrwertsteuer
    Antwort #45 am: 26. Juni 2020, 18:23:24
    [...]
    ich hätte da eine Frage zu dem Modul, also installiert habe ich es, und beim Test hat es auch brav die Mehrwertsteuer gesenkt.

    Leider ist beim zurück setzen wieder 19% der Preis höher geworden als er am Anfang war. Kann es daran liegen, dass ich im Adminbereich Brutto Admin eingestellt habe?
    [...]

    Ich meine ja, dass das Modul falsch rundet...

    Anbei mal eine überarbeitete Version mit unserer Berechnungs-Formel. ;-)

    Wir freuen uns natürlich über eine Rückmeldung.
    [...]

    Abgesehen davon, daß du die Faktoren auf etwas andere Art berechnest als AGI, was ja legitim ist, verstehe ich zwei Dinge nicht:
    • Wieso rundest du auf lediglich 2 Stellen ?
      Sollte man (auch in dem ursprünglichen Modul) nicht eigtl. den Wert für PRICE_PRECISION für die Stellen hinter dem Komma nehmen ? (Konfiguration => Adminbereich Optionen => "Brutto/Netto Dezimalstellen")
    • Wieso benutzt du beide Faktoren für die Berechnung, multiplizierst mit $factor1 rundest das Ergebnis (warum nicht das Endergebnis ?) und teilst dann noch durch $factor2 ?
      Diese Berechnung verstehe ich überhaupt nicht. Könntest du die mal in Worte fassend erklären ?

    Gruß,
    noRiddle
    Managed Server

    Tomcraft

    • modified Team
    • Gravatar
    • Beiträge: 46.185
    • Geschlecht:
    Re: MODUL: Änderung der Mehrwertsteuer
    Antwort #46 am: 26. Juni 2020, 19:28:48
    Der Unterschied besteht darin, wann man welchen Betrag rundet. AGI rundet das Gesamt Ergebnis und wir runden eben anders. ;-)

    Kurz gefasst:

    Code: PHP  [Auswählen]
    ROUND((products_price * (1 + (19 / 100))), 2) / (1 + (16 / 100))

    vs:

    Code: PHP  [Auswählen]
    ROUND(products_price * (100+19) / (100+16), 5)

    Wir runden an anderer Stelle, was unserer Meinung richtig ist und Cent-Abweichungen vermeidet beim hin und her stellen der Mehrwertsteuer.

    Grüße

    Torsten

    web4design

    • Experte
    • Beiträge: 1.122
    Re: MODUL: Änderung der Mehrwertsteuer
    Antwort #47 am: 26. Juni 2020, 19:37:33
    Ohne jetzt die Rundungsproblematik durchzuspielen, der von noRiddle vorgeschlagene Einsatz von PRICE_PRECISION, ist hier von Vorteil. So hast du eine einheitliche Rundung innerhalb der Steuerberechnung.

    Das hier wird doch dann gar nicht benötigt, oder übersehe ich was:

    Code: PHP  [Auswählen]
    $factor = $factor1 / $factor2;

    An die Funktion renew_prices werden ja nur die Einzelwerte übergeben.

    Tomcraft

    • modified Team
    • Gravatar
    • Beiträge: 46.185
    • Geschlecht:
    Re: MODUL: Änderung der Mehrwertsteuer
    Antwort #48 am: 26. Juni 2020, 19:39:34
    Das war hierfür nötig:

    Code: PHP  [Auswählen]
          if ($factor <> 0 && $factor != 1) {
            [...]
          }

    Bitte einfach mal testen, ob es damit noch zu Cent-Differenzen kommt, dann können wir weitere Überlegungen anstrengen. ;-)

    Grüße

    Torsten

    web4design

    • Experte
    • Beiträge: 1.122
    Re: MODUL: Änderung der Mehrwertsteuer
    Antwort #49 am: 26. Juni 2020, 19:44:36
    Das war hierfür nötig:

    Code: PHP  [Auswählen]
          if ($factor <> 0 && $factor != 1) {
            [...]
          }
    [...]

    Loool, bin ich deppert, steht echt direkt da drunter.

    Ich schiebs mal auf die gefühlten 40 Grad. ;-)

    CBaumi02

    • Mitglied
    • Beiträge: 108
    Re: MODUL: Änderung der Mehrwertsteuer
    Antwort #50 am: 26. Juni 2020, 20:47:33
    [...]
    ich hätte da eine Frage zu dem Modul, also installiert habe ich es, und beim Test hat es auch brav die Mehrwertsteuer gesenkt.

    Leider ist beim zurück setzen wieder 19% der Preis höher geworden als er am Anfang war. Kann es daran liegen, dass ich im Adminbereich Brutto Admin eingestellt habe?
    [...]

    Ich meine ja, dass das Modul falsch rundet...

    Anbei mal eine überarbeitete Version mit unserer Berechnungs-Formel. ;-)

    Wir freuen uns natürlich über eine Rückmeldung.
    [...]

    Hallo Torsten,
    danke schön, werde es mal testen.

    Gruß
    Chris

    noRiddle (revilonetz)

    • Experte
    • Beiträge: 13.743
    • Geschlecht:
    Re: MODUL: Änderung der Mehrwertsteuer
    Antwort #51 am: 27. Juni 2020, 17:57:30
    @Tomcraft
    Jetzt habe ich's verstanden, das sollte in der Tat genauer sein, (*EDIT* würde ich auf den ersten Blick denken...*END_EDIT*).
    Ich fasse es mal in die Worte die ich von dir erhofft hatte: ;-)

    Der Netto-Preis aus der DB wird mit dem alten Steuersatz 19% erst in den Brutto-Preis auf 2 Stellen gerundet umgerechnet
    - also der Preis den der Shop auch mit dem alten Satz als Brutto-Preis anzeigen dürfte -
    und dann mittels des neuen Steuersatzes 16% zurück auf den Netto-Preis gerechnet.


    2 Stellen natürlich weil der Brutto-Preis immer auf 2 Stellen gerundet ist (wir haben nun mal keine Zehntel-Cent).
    PRICE_PRECISION hat hier in der Tat nichts zu suchen wenn man so rechnet.

    Ein Beispiel mit eurer Rechnung:
    Netto: 2,3330
    Brutto: 2,3330 * 1,19 = 2,77627 => gerundet 2,78
    Neuer Netto: 2,78 / 1,16 =  2,396551724137931 => in der DB wegen DECIMAL(15,4) 2,3965
    Neuer Brutto: 2,3965 * 1,16 = 2,77994 => gerundet 2,78


    Sieht also gut aus.

    Ein Beispiel mit AGIs Berechnung:
    Netto: 2,3330
    Brutto: 2,3330 * 1,19 = 2,77627 => gerundet 2,78
    Neuer Netto: 2,3330 * (1,19/1,16) = 2,393336206896551 => in der DB wegen DECIMAL(15,4) 2,3933
    Neuer Brutto:  2,3933 * 1,16 = 2,776228 => gerundet 2,78


    Ich könnte da jetzt nicht sagen was bei einer Vielzahl an unterschiedlichen Preisen am Ende genauer ist.
    Wie habt Ihr das beurteilt ?

    Eigtl. off topic aber gerade Nebenthema:
    In dem Zusammenhang frage ich mich wofür überhaupt PRICE_PRECISION genau da ist.
    Soweit ich das bei einem Code-Scan sehe wird das fast ausschließlich für die Anzeige der Preise im Admin-Bereich verwendet - die DB hat immer 4 Stellen mit DECIMAL(15,4), was ja bedeutet, daß bei Speichern von mehr Stellen auf 4 Stellen gerundet wird.
    Ausnahme vom Admin-Bereich: /includes/extra/default/listing_sql/99_advanced_search_result.php
    was ich an der Stelle gar nicht verstehe. Für den Fall, daß ein Kunde bei der erweiterten Suche im Shop zig Stellen hinter dem Komma eingibt bei "Preis ab" oder "Preis bis" ?
    Sollte PRICE_PRECISION am Ende nicht mit den Stellen der Preisfelder in der DB korrespondieren und somit gar nicht einstellbar sein ?
    Was habe ich davon wenn  ich PRICE_PRECISION auf z.B. 6 stelle wenn die DB ohnehin immer auf 4 Stellen rundet ?
    Will sagen, stelle ich PRICE_PRECISION auf 6 hat das genau Null Auswirkungen,
    stelle ich es auf 2 (also weniger als die DB-Felder) habe ich auch nichts davon die Preise nun mit lediglich 2 Stellen hinter dem Komma angezeigt zu bekommen. (Bei Brutto-Admin bekommt man ja sogar immer die bei der Währung eingestellten Nachkommastellen angezeigt).
    Irre ich da ?

    Außerdem:
    Die Beschreibung
    "Umrechnungsgenauigkeit (Hat keinen Einfluss auf die Anzeige im Shop, dort werden immer 2 Nachkommastellen angezeigt.)"
    halte ich für irrig.
    1. hat das nichts mit Umrechnungsgenauigkeit zu tun (und wenn ja welche, also von was nach was ?)
    und 2. meint "im Shop" das Frontend, was dort dann auch stehen sollte.

    Gruß,
    noRiddle

    Tomcraft

    • modified Team
    • Gravatar
    • Beiträge: 46.185
    • Geschlecht:
    Re: MODUL: Änderung der Mehrwertsteuer
    Antwort #52 am: 27. Juni 2020, 20:35:21
    Gerhard kann dazu mehr sagen, denn die Formel ist von ihm, die ich ins Modul übernommen hatte, nachdem hier im Thema Probleme mit Cent-Abweichungen gemeldet wurden.
    Auch zur PRICE_PRECISION kann er sicherlich mehr sagen als ich. Vielleicht rufst du ihn einmal mal an?

    Grüße

    Torsten

    Q

    • Fördermitglied
    • Beiträge: 1.502
    Re: MODUL: Änderung der Mehrwertsteuer
    Antwort #53 am: 28. Juni 2020, 16:17:57
    Ich denke die Umrechnung kommt auch darauf an, wie ich den Shop (Fontend) betreibe. B2B (netto) oder B2C (brutto).

    Wenn ich hin und her rechne, kommt es immer zu Abweichungen. Auch mit dem Beispiel von noRiddle mit 2,3330 Netto würde ich den Nettopreis so nicht in die DB eintragen - ja, ich weiß, es war nur ein Beispiel :-D
    2,78 EUR brutto sind 2,33613... EUR netto. Entsprechend würde ich es aktuell auch mit 2,3361 dort eintragen. Von daher finde ich die "modified-Team Rechnung" am zweckmäßigsten, wenn man einen B2C Shop hat.  :thx:

    Und jetzt ab ins Plantschbecken!  :flee-mrgreen:

    AGI

    • modified Team
    • Beiträge: 299
    • Geschlecht:
    Re: MODUL: Änderung der Mehrwertsteuer
    Antwort #54 am: 29. Juni 2020, 11:37:09
    Ja, wenn die Netto-Preise in der Datenbank mit nur 2 Nachkommastellen gespeichert sind, gibt es bei meiner Rundung eine Abweichung von einem Cent. Insbesondere dann, wenn der Nettopreis auf 50 Cent endet.

    Viele Grüße
    Andreas

    Michael.TB

    • Mitglied
    • Beiträge: 180
    Re: MODUL: Änderung der Mehrwertsteuer
    Antwort #55 am: 29. Juni 2020, 18:05:58
    Ich habe einen etwas erweiterten Shop mit zusätzlichen Spalten in der Tabelle products. Ist es möglich eine gewisse Spalte von der Umrechnung auszunehmen?

    noRiddle (revilonetz)

    • Experte
    • Beiträge: 13.743
    • Geschlecht:
    Re: MODUL: Änderung der Mehrwertsteuer
    Antwort #56 am: 29. Juni 2020, 19:25:01
    Das Modul weiß doch nichts von deinen neuen "Spalten" und kann deshalb damit auch nichts anstellen.
    Was genau willst du denn ausnehmen ?

    Gruß,
    noRiddle

    Michael.TB

    • Mitglied
    • Beiträge: 180
    Re: MODUL: Änderung der Mehrwertsteuer
    Antwort #57 am: 29. Juni 2020, 19:29:08
    Doch, mir wurde eine zusätzliche Spalte programmiert, die ebenfalls einen Preis enthält. Dieser ist ein netto Preis der unverändert bleiben muss. Alles andere stimmt, nur diese Spalte nicht. Gibt doch bestimmt eine Möglichkeit Tabelle products, Spalte "sonstwas" auszulassen, oder?

    noRiddle (revilonetz)

    • Experte
    • Beiträge: 13.743
    • Geschlecht:
    Re: MODUL: Änderung der Mehrwertsteuer
    Antwort #58 am: 29. Juni 2020, 19:30:41
    Was "Doch" ?
    Dir hat jemand in das gerade erst erschienene Modul die "zusätzliche Spalte" eingebaut ?

    Gruß,
    noRiddle

    Michael.TB

    • Mitglied
    • Beiträge: 180
    Re: MODUL: Änderung der Mehrwertsteuer
    Antwort #59 am: 29. Juni 2020, 19:37:08
    edit: war nicht ganz richtig was ich geschrieben habe. Das Modul ist natürlich unverändert, mein Shop hingegen hat in der Tabelle products eine extra Spalte. Ich bräuchte also einen zusätzlichen Befehl der eine für das Modul unbekannte Spalte ebenfalls ändert.

    meine Idee:
    statt

    Code: PHP  [Auswählen]
    xtc_db_query("UPDATE ".TABLE_PRODUCTS." SET products_price = ROUND(products_price*".$factor.",5) WHERE products_tax_class_id=".$tax_class_id);

    so eine ähnliche Zeile nochmal drunter

    Code: PHP  [Auswählen]
    xtc_db_query("UPDATE ".TABLE_PRODUCTS." SET products_price = ROUND(products_price*".$factor.",5) WHERE products_tax_class_id=".$tax_class_id);
    xtc_db_query("UPDATE ".TABLE_PRODUCTS." SET products_meinText = ROUND(products_meinText*".$factor.",5) WHERE products_tax_class_id=".$tax_class_id);

    funktioniert das?
    3 Antworten
    4881 Aufrufe
    14. März 2011, 20:14:08 von Tomcraft
    10 Antworten
    1760 Aufrufe
    26. November 2021, 09:11:20 von Murkel
    10 Antworten
    4289 Aufrufe
    12. Mai 2016, 18:21:35 von MaBo
               
    anything