From: erickson Date: Tue, 10 Feb 2009 20:46:08 +0000 (+0000) Subject: handle case where an address is pending but replaces no other address X-Git-Url: https://old-git.evergreen-ils.org/?a=commitdiff_plain;h=26de42152d8e1b1a6e6dad240ef14b519423df91;p=Evergreen.git handle case where an address is pending but replaces no other address git-svn-id: svn://svn.open-ils.org/ILS/trunk@12138 dcc99617-32d9-48b4-a31d-7c20da2025e4 --- diff --git a/Open-ILS/src/sql/Pg/999.functions.global.sql b/Open-ILS/src/sql/Pg/999.functions.global.sql index dd3514f95c..7fb7a0c93c 100644 --- a/Open-ILS/src/sql/Pg/999.functions.global.sql +++ b/Open-ILS/src/sql/Pg/999.functions.global.sql @@ -189,8 +189,10 @@ DECLARE BEGIN SELECT INTO old_id replaces FROM actor.usr_address where id = pending_id; IF old_id IS NULL THEN + UPDATE actor.usr_address SET pending = 'f' WHERE id = pending_id; RETURN NULL; END IF; + -- address replaces an existing address DELETE FROM actor.usr_address WHERE id = -old_id; UPDATE actor.usr_address SET id = -id WHERE id = old_id; UPDATE actor.usr_address SET replaces = NULL, id = old_id WHERE id = pending_id;