From 4c21518b658e7c56b819acb78b626a239a13ca24 Mon Sep 17 00:00:00 2001 From: Bill Erickson <berick@esilibrary.com> Date: Tue, 21 Jun 2011 16:11:44 -0400 Subject: [PATCH] Wrapped DB script Signed-off-by: Bill Erickson <berick@esilibrary.com> --- Open-ILS/src/sql/Pg/002.schema.config.sql | 2 +- Open-ILS/src/sql/Pg/100.circ_matrix.sql | 4 +--- Open-ILS/src/sql/Pg/110.hold_matrix.sql | 4 +--- ...tive_date.sql => 0562.schema.copy_active_date.sql} | 19 +++++++++++++------ 4 files changed, 16 insertions(+), 13 deletions(-) rename Open-ILS/src/sql/Pg/upgrade/{XXXX.active_date.sql => 0562.schema.copy_active_date.sql} (98%) diff --git a/Open-ILS/src/sql/Pg/002.schema.config.sql b/Open-ILS/src/sql/Pg/002.schema.config.sql index d998f7f991..0a11e2f652 100644 --- a/Open-ILS/src/sql/Pg/002.schema.config.sql +++ b/Open-ILS/src/sql/Pg/002.schema.config.sql @@ -86,7 +86,7 @@ CREATE TRIGGER no_overlapping_deps BEFORE INSERT OR UPDATE ON config.db_patch_dependencies FOR EACH ROW EXECUTE PROCEDURE evergreen.array_overlap_check ('deprecates'); -INSERT INTO config.upgrade_log (version, applied_to) VALUES ('0561', :eg_version); -- miker +INSERT INTO config.upgrade_log (version, applied_to) VALUES ('0562', :eg_version); -- berick CREATE TABLE config.bib_source ( id SERIAL PRIMARY KEY, diff --git a/Open-ILS/src/sql/Pg/100.circ_matrix.sql b/Open-ILS/src/sql/Pg/100.circ_matrix.sql index 9074ba7867..77e975e0f4 100644 --- a/Open-ILS/src/sql/Pg/100.circ_matrix.sql +++ b/Open-ILS/src/sql/Pg/100.circ_matrix.sql @@ -128,9 +128,7 @@ BEGIN END IF; -- Ditto - IF item_object.active_date IS NOT NULL THEN - SELECT INTO my_item_age age(item_object.active_date); - END IF; + SELECT INTO my_item_age age(coalesce(item_object.active_date, now())); -- Grab the closest set circ weight setting. SELECT INTO weights cw.* diff --git a/Open-ILS/src/sql/Pg/110.hold_matrix.sql b/Open-ILS/src/sql/Pg/110.hold_matrix.sql index 76a1259a03..0bb95dee55 100644 --- a/Open-ILS/src/sql/Pg/110.hold_matrix.sql +++ b/Open-ILS/src/sql/Pg/110.hold_matrix.sql @@ -81,9 +81,7 @@ BEGIN SELECT INTO item_cn_object * FROM asset.call_number WHERE id = item_object.call_number; SELECT INTO rec_descriptor * FROM metabib.rec_descriptor WHERE record = item_cn_object.record; - IF item_object.active_date IS NOT NULL THEN - SELECT INTO my_item_age age(item_object.active_date); - END IF; + SELECT INTO my_item_age age(coalesce(item_object.active_date, now())); -- The item's owner should probably be the one determining if the item is holdable -- How to decide that is debatable. Decided to default to the circ library (where the item lives) diff --git a/Open-ILS/src/sql/Pg/upgrade/XXXX.active_date.sql b/Open-ILS/src/sql/Pg/upgrade/0562.schema.copy_active_date.sql similarity index 98% rename from Open-ILS/src/sql/Pg/upgrade/XXXX.active_date.sql rename to Open-ILS/src/sql/Pg/upgrade/0562.schema.copy_active_date.sql index 7c361ed38c..8bfc1dcdac 100644 --- a/Open-ILS/src/sql/Pg/upgrade/XXXX.active_date.sql +++ b/Open-ILS/src/sql/Pg/upgrade/0562.schema.copy_active_date.sql @@ -1,3 +1,12 @@ +-- Evergreen DB patch 0562.schema.copy_active_date.sql +-- +-- Active Date + +BEGIN; + +-- check whether patch can be applied +SELECT evergreen.upgrade_deps_block_check('0562', :eg_version); + ALTER TABLE asset.copy ADD COLUMN active_date TIMESTAMP WITH TIME ZONE; @@ -277,9 +286,7 @@ BEGIN END IF; -- Ditto - IF item_object.active_date IS NOT NULL THEN - SELECT INTO my_item_age age(item_object.active_date); - END IF; + SELECT INTO my_item_age age(coalesce(item_object.active_date, now())); -- Grab the closest set circ weight setting. SELECT INTO weights cw.* @@ -460,9 +467,7 @@ BEGIN SELECT INTO item_cn_object * FROM asset.call_number WHERE id = item_object.call_number; SELECT INTO rec_descriptor * FROM metabib.rec_descriptor WHERE record = item_cn_object.record; - IF item_object.active_date IS NOT NULL THEN - SELECT INTO my_item_age age(item_object.active_date); - END IF; + SELECT INTO my_item_age age(coalesce(item_object.active_date, now())); -- The item's owner should probably be the one determining if the item is holdable -- How to decide that is debatable. Decided to default to the circ library (where the item lives) @@ -616,3 +621,5 @@ UPDATE asset.copy SET active_date = create_date WHERE id IN (SELECT id FROM exte -- Assume create date for status change time while we are at it. Because being created WAS a change in status. UPDATE asset.copy SET status_changed_time = create_date WHERE status_changed_time IS NULL; + +COMMIT; -- 2.11.0