From 5d80c0b64e4a6db818a321c0509f0149a696c4d2 Mon Sep 17 00:00:00 2001 From: Jason Boyer Date: Thu, 7 Dec 2017 14:45:21 -0500 Subject: [PATCH] LP1737016: Ease Constraints on afs.code acq.funding_source.code currently has a UNIQUE constraint applied, which can be confusing to users. This branch only requires that a code be unique to the funding source's owner, simplifying the management of funding sources. Signed-off-by: Jason Boyer Signed-off-by: Remington Steed Signed-off-by: Dan Wells --- Open-ILS/src/sql/Pg/200.schema.acq.sql | 3 ++- .../sql/Pg/upgrade/XXXX.schema.lp1737016_afs_code.sql | 9 +++++++++ .../Acquisitions/RELEASE_NOTE_TEMPLATE.adoc | 9 +++++++++ 3 files changed, 20 insertions(+), 1 deletion(-) create mode 100644 Open-ILS/src/sql/Pg/upgrade/XXXX.schema.lp1737016_afs_code.sql create mode 100644 docs/RELEASE_NOTES_NEXT/Acquisitions/RELEASE_NOTE_TEMPLATE.adoc diff --git a/Open-ILS/src/sql/Pg/200.schema.acq.sql b/Open-ILS/src/sql/Pg/200.schema.acq.sql index c0670bb14c..60088d19b4 100644 --- a/Open-ILS/src/sql/Pg/200.schema.acq.sql +++ b/Open-ILS/src/sql/Pg/200.schema.acq.sql @@ -154,7 +154,8 @@ CREATE TABLE acq.funding_source ( name TEXT NOT NULL, owner INT NOT NULL REFERENCES actor.org_unit (id) DEFERRABLE INITIALLY DEFERRED, currency_type TEXT NOT NULL REFERENCES acq.currency_type (code) DEFERRABLE INITIALLY DEFERRED, - code TEXT UNIQUE, + code TEXT NOT NULL, + CONSTRAINT funding_source_code_once_per_owner UNIQUE (code,owner), CONSTRAINT funding_source_name_once_per_owner UNIQUE (name,owner) ); diff --git a/Open-ILS/src/sql/Pg/upgrade/XXXX.schema.lp1737016_afs_code.sql b/Open-ILS/src/sql/Pg/upgrade/XXXX.schema.lp1737016_afs_code.sql new file mode 100644 index 0000000000..bea3fb53a4 --- /dev/null +++ b/Open-ILS/src/sql/Pg/upgrade/XXXX.schema.lp1737016_afs_code.sql @@ -0,0 +1,9 @@ +BEGIN; + +SELECT evergreen.upgrade_deps_block_check('XXXX', :eg_version); + +ALTER TABLE acq.funding_source DROP CONSTRAINT funding_source_code_key; +ALTER TABLE acq.funding_source ALTER COLUMN code SET NOT NULL; +ALTER TABLE acq.funding_source ADD CONSTRAINT funding_source_code_once_per_owner UNIQUE (code,owner); + +COMMIT; diff --git a/docs/RELEASE_NOTES_NEXT/Acquisitions/RELEASE_NOTE_TEMPLATE.adoc b/docs/RELEASE_NOTES_NEXT/Acquisitions/RELEASE_NOTE_TEMPLATE.adoc new file mode 100644 index 0000000000..82c3b235b0 --- /dev/null +++ b/docs/RELEASE_NOTES_NEXT/Acquisitions/RELEASE_NOTE_TEMPLATE.adoc @@ -0,0 +1,9 @@ +Funding Source Codes are now Unique per Owner +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +Funding source codes had to be unique across an +entire installation which is aggravating when +you can't actually see the other source codes. + +Now multiple locations can have the same codes if +they desire. + -- 2.43.2