Merge branch 'b-3.6.1' of ../kivitendo-erp_20220811
[kivitendo-erp.git] / sql / Pg-upgrade2 / delete_translations_on_payment_term_delete.sql
1 -- @tag: delete_translations_on_payment_term_delete
2 -- @description: Übersetzungen löschen, wenn Lieferbedingung gelöscht wird
3 -- @depends: payment_terms_translation2
4
5 CREATE OR REPLACE FUNCTION generic_translations_delete_on_payment_terms_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::PaymentTerm/description_long';
10     RETURN OLD;
11   END;
12 $$ LANGUAGE plpgsql;
13
14 DROP TRIGGER IF EXISTS after_delete_payment_term_trigger ON payment_terms;
15
16 CREATE TRIGGER after_delete_payment_term_trigger
17   AFTER DELETE ON payment_terms
18   FOR EACH ROW EXECUTE PROCEDURE generic_translations_delete_on_payment_terms_delete_trigger();
19
20 -- delete orphaned translations
21 DELETE FROM generic_translations
22   WHERE translation_type LIKE 'SL::DB::PaymentTerm/description_long'
23   AND   translation_id NOT IN (SELECT id FROM payment_terms);