Projekt

Allgemein

Profil

« Zurück | Weiter » 

Revision 84326477

Von Bernd Bleßmann vor fast 11 Jahren hinzugefügt

  • ID 843264773a8b604aa3873145641732541e764dad
  • Vorgänger 4ffe46ac
  • Nachfolger ebbabed8

Übersetzungen von Steuern löschen, wenn Steuer gelöscht wird.

Via Trigger. Außerdem löscht das Update-Skript alle verweisten Übersetzungen
der Steuern.

Unterschiede anzeigen:

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