Revision d41acd2d
Von Moritz Bunkus vor mehr als 11 Jahren hinzugefügt
sql/Pg-upgrade2/delete_close_follow_ups_when_order_is_deleted_closed.sql | ||
---|---|---|
CREATE TRIGGER vendor_before_delete_clear_follow_ups
|
||
AFTER DELETE ON vendor
|
||
FOR EACH ROW EXECUTE PROCEDURE follow_up_delete_when_customer_vendor_is_deleted_trigger();
|
||
|
||
-- ============================================================
|
||
|
||
CREATE OR REPLACE FUNCTION follow_up_close_when_oe_closed_trigger()
|
||
RETURNS TRIGGER AS $$
|
||
BEGIN
|
||
IF COALESCE(NEW.closed, FALSE) AND NOT COALESCE(OLD.closed, FALSE) THEN
|
||
UPDATE follow_ups
|
||
SET done = TRUE
|
||
WHERE id IN (
|
||
SELECT follow_up_id
|
||
FROM follow_up_links
|
||
WHERE (trans_id = NEW.id)
|
||
AND (trans_type IN ('sales_quotation', 'sales_order', 'sales_delivery_order',
|
||
'request_quotation', 'purchase_order', 'purchase_delivery_order'))
|
||
);
|
||
END IF;
|
||
|
||
RETURN NEW;
|
||
END;
|
||
$$ LANGUAGE plpgsql;
|
||
|
||
DROP TRIGGER IF EXISTS oe_on_update_close_follow_up ON oe;
|
||
|
||
CREATE TRIGGER oe_on_update_close_follow_up
|
||
AFTER UPDATE ON oe
|
||
FOR EACH ROW EXECUTE PROCEDURE follow_up_close_when_oe_closed_trigger();
|
||
|
||
DROP TRIGGER IF EXISTS delivery_orders_on_update_close_follow_up ON delivery_orders;
|
||
|
||
CREATE TRIGGER delivery_orders_on_update_close_follow_up
|
||
AFTER UPDATE ON delivery_orders
|
||
FOR EACH ROW EXECUTE PROCEDURE follow_up_close_when_oe_closed_trigger();
|
Auch abrufbar als: Unified diff
Wiedervorlagen schließen, wenn dazugehörige Belege geschlossen werden
Siehe #2310.