1. PostgreSQL copy of all MySQL created and tested.\n 2. Purchase Orders and Sales Orders and stock level management added to MySQL, PostgreSQL, and server and front end code.
This commit is contained in:
71
static/MySQL/322_tri_Shop_Delivery_Option.sql
Normal file
71
static/MySQL/322_tri_Shop_Delivery_Option.sql
Normal file
@@ -0,0 +1,71 @@
|
||||
|
||||
# Shop Delivery Option Type
|
||||
|
||||
USE PARTSLTD_PROD;
|
||||
|
||||
DROP TRIGGER IF EXISTS before_insert_Shop_Delivery_Option;
|
||||
DROP TRIGGER IF EXISTS before_update_Shop_Delivery_Option;
|
||||
|
||||
|
||||
DELIMITER //
|
||||
CREATE TRIGGER before_insert_Shop_Delivery_Option
|
||||
BEFORE INSERT ON Shop_Delivery_Option
|
||||
FOR EACH ROW
|
||||
BEGIN
|
||||
SET NEW.created_on = NOW();
|
||||
SET NEW.created_by = CURRENT_USER();
|
||||
END //
|
||||
DELIMITER ;
|
||||
|
||||
|
||||
DELIMITER //
|
||||
CREATE TRIGGER before_update_Shop_Delivery_Option
|
||||
BEFORE UPDATE ON Shop_Delivery_Option
|
||||
FOR EACH ROW
|
||||
BEGIN
|
||||
IF OLD.id_change_set <=> NEW.id_change_set THEN
|
||||
SIGNAL SQLSTATE '45000'
|
||||
SET MESSAGE_TEXT = 'New change Set ID must be provided.';
|
||||
END IF;
|
||||
|
||||
INSERT INTO Shop_Delivery_Option_Audit (
|
||||
id_option,
|
||||
name_field,
|
||||
value_prev,
|
||||
value_new,
|
||||
id_change_set
|
||||
)
|
||||
# Changed code
|
||||
SELECT NEW.id_option, 'code', OLD.code, NEW.code, NEW.id_change_set
|
||||
WHERE NOT OLD.code <=> NEW.code
|
||||
UNION
|
||||
# Changed name
|
||||
SELECT NEW.id_option, 'name', OLD.name, NEW.name, NEW.id_change_set
|
||||
WHERE NOT OLD.name <=> NEW.name
|
||||
UNION
|
||||
# Changed latency_delivery_min
|
||||
SELECT NEW.id_option, 'latency_delivery_min', CONVERT(OLD.latency_delivery_min, CHAR), CONVERT(NEW.latency_delivery_min, CHAR), NEW.id_change_set
|
||||
WHERE NOT OLD.latency_delivery_min <=> NEW.latency_delivery_min
|
||||
UNION
|
||||
# Changed latency_delivery_max
|
||||
SELECT NEW.id_option, 'latency_delivery_max', CONVERT(OLD.latency_delivery_max, CHAR), CONVERT(NEW.latency_delivery_max, CHAR), NEW.id_change_set
|
||||
WHERE NOT OLD.latency_delivery_max <=> NEW.latency_delivery_max
|
||||
UNION
|
||||
# Changed quantity_min
|
||||
SELECT NEW.id_option, 'quantity_min', CONVERT(OLD.quantity_min, CHAR), CONVERT(NEW.quantity_min, CHAR), NEW.id_change_set
|
||||
WHERE NOT OLD.quantity_min <=> NEW.quantity_min
|
||||
UNION
|
||||
# Changed quantity_max
|
||||
SELECT NEW.id_option, 'quantity_max', CONVERT(OLD.quantity_max, CHAR), CONVERT(NEW.quantity_max, CHAR), NEW.id_change_set
|
||||
WHERE NOT OLD.quantity_max <=> NEW.quantity_max
|
||||
UNION
|
||||
# Changed active
|
||||
SELECT NEW.id_option, 'active', CONVERT(OLD.active, CHAR), CONVERT(NEW.active, CHAR), NEW.id_change_set
|
||||
WHERE NOT OLD.active <=> NEW.active
|
||||
UNION
|
||||
# Changed display_order
|
||||
SELECT NEW.id_option, 'display_order', CONVERT(OLD.display_order, CHAR), CONVERT(NEW.display_order, CHAR), NEW.id_change_set
|
||||
WHERE NOT OLD.display_order <=> NEW.display_order
|
||||
;
|
||||
END //
|
||||
DELIMITER ;
|
||||
Reference in New Issue
Block a user