d3c9ced062f10ec6a79e878a5aaa7d74f69765e1
[kivitendo-erp.git] / sql / Pg-upgrade2 / delete_translations_on_tax_delete.sql
1 -- @tag: delete_translations_on_tax_delete
2 -- @description: Übersetzungen löschen, wenn Steuer gelöscht wird
3 -- @depends: release_3_0_0
4
5 CREATE OR REPLACE FUNCTION generic_translations_delete_on_tax_delete_trigger()
6 RETURNS TRIGGER AS $$
7   BEGIN
8     DELETE FROM generic_translations
9       WHERE translation_id = OLD.id AND translation_type LIKE 'SL::DB::Tax/taxdescription';
10     RETURN OLD;
11   END;
12 $$ LANGUAGE plpgsql;
13
14 DROP TRIGGER IF EXISTS after_delete_tax_trigger ON tax;
15
16 CREATE TRIGGER after_delete_tax_trigger
17   AFTER DELETE ON tax
18   FOR EACH ROW EXECUTE PROCEDURE generic_translations_delete_on_tax_delete_trigger();
19
20 -- delete orphaned translations
21 DELETE FROM generic_translations
22   WHERE translation_type LIKE 'SL::DB::Tax/taxdescription'
23   AND   translation_id NOT IN (SELECT id FROM tax);