Hallo, kann mir jemand den SQL Befehl sagen, mit dem man bei allen Artikeln wo bei der Grundpreisberechnung ml angegeben ist dies auf die Maßeinheit Liter umzustellen?
- Versuch:
Milliliter ist im Standard gar nicht vorhanden. Muss also eine eigene Anpassung sein. Für die Umstellung wird die ID (unitID) der Maßeinheit „ml“ benötigt.
Update:
- Angaben Milliliter in Liter umrechnen
- Maßeinheit in Liter umstellen, unitID = 1
Auf eigene Gefahr:
UPDATE s_articles_details AS sad, s_core_units AS scu
SET sad.purchaseunit = (sad.purchaseunit/1000), sad.unitID = 1
WHERE scu.id = sad.unitID AND scu.unit = 'ml'
Wenn die ID vom „ml“ bekannt ist, z.B. 10, dann so:
UPDATE s_articles_details
SET purchaseunit = (purchaseunit/1000), unitID = 1
WHERE unitID = 10
Vorher ein Backup der DB machen!
Ich habe nun herausgefunden das Liter die unitID „1“ hat und Milliliter die unitID „10“, das hat mir schonmal sehr viel weiter geholfen, da ich nicht wusste wo der Wert angegeben wird.
Müsste der Befehl dann nicht einfach so lauten:
UPDATE s_articles_details SET unitID = REPLACE(unitID,„10“,„1“);
Nein, Du musst ja auch die Einheit des Gebindes von der ml Angabe in Liter umrechnen, also durch 1000 teilen (siehe den Teil der Formel: sad.purchaseunit/1000 !). 250 ml → 0,25 Liter