update_postal_address_is_invalid — trigger: postal_address(invalid)
This commit is contained in:
parent
549df60002
commit
07f0b6aad6
1 changed files with 19 additions and 2 deletions
|
@ -145,7 +145,7 @@ CREATE UNIQUE INDEX donor_postal_address_mapping_single_prefferred_per_donor
|
|||
DROP VIEW IF EXISTS UserOperation_postal_address_change;
|
||||
CREATE VIEW UserOperation_postal_address_change AS
|
||||
SELECT ledger_entity_id as donor_name, map.preferred as preferred_override, pa.date_encountered as entered_date,
|
||||
pa.formatted_address as formatted_postal_address, pa.id as address_id, dd.id as donor_id
|
||||
pa.formatted_address as formatted_postal_address, pa.id as address_id, dd.id as donor_id, pa.invalid as is_invalid
|
||||
FROM donor dd, donor_postal_address_mapping map, postal_address pa
|
||||
WHERE dd.id = map.donor_id AND pa.id = map.postal_address_id
|
||||
AND map.preferred is NOT NULL
|
||||
|
@ -153,7 +153,7 @@ CREATE VIEW UserOperation_postal_address_change AS
|
|||
UNION
|
||||
|
||||
SELECT ledger_entity_id as donor_name, map.preferred as preferred_override, pa.date_encountered as entered_date,
|
||||
pa.formatted_address as formatted_postal_address, pa.id as address_id, dd.id as donor_id
|
||||
pa.formatted_address as formatted_postal_address, pa.id as address_id, dd.id as donor_id, pa.invalid as is_invalid
|
||||
FROM donor dd, donor_postal_address_mapping map, postal_address pa
|
||||
WHERE dd.id = map.donor_id AND pa.id = map.postal_address_id
|
||||
AND map.preferred is NULL
|
||||
|
@ -179,6 +179,23 @@ SELECT CASE
|
|||
|
||||
END;
|
||||
|
||||
DROP TRIGGER IF EXISTS update_postal_address_is_invalid;
|
||||
CREATE TRIGGER update_postal_address_is_invalid
|
||||
INSTEAD OF UPDATE OF is_invalid on UserOperation_postal_address_change
|
||||
BEGIN
|
||||
|
||||
UPDATE postal_address SET invalid = NEW.is_invalid
|
||||
WHERE id = OLD.address_id;
|
||||
|
||||
SELECT CASE
|
||||
WHEN ( (SELECT invalid FROM postal_address
|
||||
WHERE id = OLD.address_id)
|
||||
!= NEW.is_invalid )
|
||||
THEN RAISE(FAIL, "Error encountered while updating invalid setting; please verify your changes worked!")
|
||||
END;
|
||||
|
||||
END;
|
||||
|
||||
|
||||
DROP TRIGGER IF EXISTS update_formatted_postal_address;
|
||||
CREATE TRIGGER update_formatted_postal_address
|
||||
|
|
Loading…
Reference in a new issue