Revision 84326477
Von Bernd Bleßmann vor fast 11 Jahren hinzugefügt
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 |
-- @encoding: utf-8 |
|
5 |
|
|
6 |
CREATE OR REPLACE FUNCTION generic_translations_delete_on_tax_delete_trigger() |
|
7 |
RETURNS TRIGGER AS $$ |
|
8 |
BEGIN |
|
9 |
DELETE FROM generic_translations |
|
10 |
WHERE translation_id = OLD.id AND translation_type LIKE 'SL::DB::Tax/taxdescription'; |
|
11 |
RETURN OLD; |
|
12 |
END; |
|
13 |
$$ LANGUAGE plpgsql; |
|
14 |
|
|
15 |
DROP TRIGGER IF EXISTS after_delete_tax_trigger ON tax; |
|
16 |
|
|
17 |
CREATE TRIGGER after_delete_tax_trigger |
|
18 |
AFTER DELETE ON tax |
|
19 |
FOR EACH ROW EXECUTE PROCEDURE generic_translations_delete_on_tax_delete_trigger(); |
|
20 |
|
|
21 |
-- delete orphaned translations |
|
22 |
DELETE FROM generic_translations |
|
23 |
WHERE translation_type LIKE 'SL::DB::Tax/taxdescription' |
|
24 |
AND translation_id NOT IN (SELECT id FROM tax); |
Auch abrufbar als: Unified diff
Übersetzungen von Steuern löschen, wenn Steuer gelöscht wird.
Via Trigger. Außerdem löscht das Update-Skript alle verweisten Übersetzungen
der Steuern.