Projekt

Allgemein

Profil

« Zurück | Weiter » 

Revision c42bd9c2

Von Moritz Bunkus vor etwa 10 Jahren hinzugefügt

  • ID c42bd9c2d915cc36b91801311fe751a833efef54
  • Vorgänger d2910d36
  • Nachfolger e43a9252

Benutzerdefinierte Variablen via Trigger löschen Bugfix

Die ID-Spalte heißt in der contacts-Tabelle cp_id und nicht id.

Unterschiede anzeigen:

sql/Pg-upgrade2/delete_cvars_on_trans_deletion_fix1.sql
1
-- @tag: delete_cvars_on_trans_deletion_fix1
2
-- @description: Bugfix 1 für das Löschen von benutzerdefinierten Variablen via Triggerfunktionen
3
-- @depends: delete_cvars_on_trans_deletion
4

  
5
-- 2.2. Nun die Funktionen, die als Trigger aufgerufen wird und die
6
-- entscheidet, wie genau zu löschen ist:
7
CREATE OR REPLACE FUNCTION delete_custom_variables_trigger()
8
RETURNS TRIGGER AS $$
9
  BEGIN
10
    IF (TG_TABLE_NAME IN ('orderitems', 'delivery_order_items', 'invoice')) THEN
11
      PERFORM delete_custom_variables_with_sub_module('IC', TG_TABLE_NAME, old.id);
12
    END IF;
13

  
14
    IF (TG_TABLE_NAME = 'parts') THEN
15
      PERFORM delete_custom_variables_with_sub_module('IC', '', old.id);
16
    END IF;
17

  
18
    IF (TG_TABLE_NAME IN ('customer', 'vendor')) THEN
19
      PERFORM delete_custom_variables_with_sub_module('CT', '', old.id);
20
    END IF;
21

  
22
    IF (TG_TABLE_NAME = 'contacts') THEN
23
      PERFORM delete_custom_variables_with_sub_module('Contacts', '', old.cp_id);
24
    END IF;
25

  
26
    IF (TG_TABLE_NAME = 'project') THEN
27
      PERFORM delete_custom_variables_with_sub_module('Projects', '', old.id);
28
    END IF;
29

  
30
    RETURN old;
31
  END;
32
$$ LANGUAGE plpgsql;

Auch abrufbar als: Unified diff