From 2d62f8ddeb3ca493ee962bfcf2865132d40bd618 Mon Sep 17 00:00:00 2001 From: Bernd Bestel Date: Mon, 26 Dec 2022 09:28:18 +0100 Subject: [PATCH] Automatically create a default (product specific 1 to 1) QU conversion when a product with qu_stock != qu_purchase was created and when no default QU conversion applies --- migrations/0209.sql | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/migrations/0209.sql b/migrations/0209.sql index e437a3e2..dc0e3166 100644 --- a/migrations/0209.sql +++ b/migrations/0209.sql @@ -85,3 +85,19 @@ SELECT FROM stock s JOIN products_view p ON s.product_id = p.id; + +CREATE TRIGGER default_qu_conversion AFTER INSERT ON products +BEGIN + /* + Automatically create a default (product specific 1 to 1) QU conversion when a product + with qu_stock != qu_purchase was created and when no default QU conversion applies + */ + + INSERT INTO quantity_unit_conversions + (from_qu_id, to_qu_id, factor, product_id) + SELECT p.qu_id_purchase, p.qu_id_stock, 1, p.id + FROM products p + WHERE p.id = NEW.id + AND p.qu_id_stock != qu_id_purchase + AND NOT EXISTS(SELECT 1 FROM quantity_unit_conversions_resolved WHERE product_id = p.id AND from_qu_id = p.qu_id_stock AND to_qu_id = p.qu_id_purchase); +END;