Alle Preise mit 19% ändern

Beim konvertieren und importieren ist mir ein kleiner Fehler unterlaufen so das alles Preise mit 19 % zu hoch sind.  Jetzt wollte ich die in der Datenbank einfach neu berechnen lassen
Intelligenterweise ist die TaxID in der Tabelle s_articles und die preise in der Tabelle s_articles_prices
Die Verbindung beider Tabellen erfolgt über s_article feld id und s_articles_prices feld articleID.
taxID=1 sind 19% und taxID=4 müßten 7% sein. Zumindest sieht man es an der Artikeln.
Also habe ich ein Script gebastelt das mir die Preise erst halbiert und dann mit 1,2 multipliziert. Leider bekomme ich die Meldung 0 Datensätze geändert.

UPDATE s_articles
JOIN s_articles_prices
   ON s_articles.taxID = s_articles_prices.id
SET s_articles_prices.price = s_articles_prices.price/2*1.2
WHERE s_articles.taxID=1

Hi,

Die s_articles_prices sind doch Netto-Preise oder irre ich mich?
Wenn dem so wäre, dann würde die Steuer doch erst später dazu gerechnet und somit wären die Datenbankeinträge gar nicht betroffen.

Ich meine, wenn man die Steuern nun für eine Produktgruppe ändern möchte, dann müsste man ja jedes mal alle Datenbankeinträge ändern, anstatt einfach nur die Steuern anzupassen.

Viele Grüße
Sebastian

Hallo,

natürlich gibt es 0 Datensätze geändert, weil gibt keine Verbindung zwischen TaxID und s_articles_prices.id

Deine Script darf sein:

UPDATE s_articles
JOIN s_articles_prices
   ON s_articles.id = s_articles_prices.articleID
SET s_articles_prices.price = s_articles_prices.price/2*1.2
WHERE s_articles.taxID=1

Viele Grüße,

Ahmad 

1 „Gefällt mir“

Habe den Fehler auch schon bemerkt.
Ja die Preise sind netto in der Datenbank. Kommen halt ein paar krumme Preise raus aber die sind im Backend schnell geändert. Mußte sowieso alle noch mal durchgehen wegen der Grundpreise damit die neu berechnet werden. Ist aber auch relativ schnell erledigt. Einen Import aus einem 14 Jahre alten System ohne Script macht man auch nicht ganz so einfach.
Bis auf Kundenbewertungen und Einkäufe hat schon alles geklappt.