[open-ils-commits] r11829 - trunk/Open-ILS/src/sql/Pg
svn at svn.open-ils.org
svn at svn.open-ils.org
Wed Jan 14 16:49:51 EST 2009
Author: erickson
Date: 2009-01-14 16:49:46 -0500 (Wed, 14 Jan 2009)
New Revision: 11829
Modified:
trunk/Open-ILS/src/sql/Pg/999.functions.global.sql
Log:
stored proc to replace an address with its pending address
Modified: trunk/Open-ILS/src/sql/Pg/999.functions.global.sql
===================================================================
--- trunk/Open-ILS/src/sql/Pg/999.functions.global.sql 2009-01-14 20:33:11 UTC (rev 11828)
+++ trunk/Open-ILS/src/sql/Pg/999.functions.global.sql 2009-01-14 21:49:46 UTC (rev 11829)
@@ -165,3 +165,29 @@
*/
$$;
+
+
+CREATE OR REPLACE FUNCTION actor.approve_pending_address(pending_id INT) RETURNS VOID AS $$
+DECLARE
+ old_id INT;
+BEGIN
+ SELECT INTO old_id replaces FROM actor.usr_address where id = pending_id;
+ IF old_id IS NULL THEN
+ RAISE NOTICE 'Address % does not replace any address', pending_id;
+ RETURN;
+ END IF;
+ 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;
+END
+$$ LANGUAGE plpgsql;
+
+COMMENT ON FUNCTION actor.approve_pending_address(INT) IS $$
+/**
+ * Replaces an address with a pending address. This is done by giving the pending
+ * address the ID of the old address. The replaced address is retained with -id.
+ */
+$$;
+
+
+
More information about the open-ils-commits
mailing list