From: miker Date: Wed, 30 Jul 2008 02:06:48 +0000 (+0000) Subject: adding definition to lineitem_attr, and setting it for auto-attrs X-Git-Url: https://old-git.evergreen-ils.org/?a=commitdiff_plain;h=2e11ae04c4c9506a399399fd0eff2270765fc435;p=Evergreen.git adding definition to lineitem_attr, and setting it for auto-attrs git-svn-id: svn://svn.open-ils.org/ILS/branches/acq-experiment@10180 dcc99617-32d9-48b4-a31d-7c20da2025e4 --- diff --git a/Open-ILS/examples/fm_IDL.xml b/Open-ILS/examples/fm_IDL.xml index b9d4140374..d971535a70 100644 --- a/Open-ILS/examples/fm_IDL.xml +++ b/Open-ILS/examples/fm_IDL.xml @@ -3665,9 +3665,11 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA + + diff --git a/Open-ILS/src/sql/Pg/200.schema.acq.sql b/Open-ILS/src/sql/Pg/200.schema.acq.sql index 6643faad82..41f1864bfd 100644 --- a/Open-ILS/src/sql/Pg/200.schema.acq.sql +++ b/Open-ILS/src/sql/Pg/200.schema.acq.sql @@ -166,16 +166,6 @@ CREATE TABLE acq.lineitem_detail ( CREATE INDEX li_detail_li_idx ON acq.lineitem_detail (lineitem); -CREATE TABLE acq.lineitem_attr ( - id BIGSERIAL PRIMARY KEY, - lineitem BIGINT NOT NULL REFERENCES acq.lineitem (id), - attr_type TEXT NOT NULL, - attr_name TEXT NOT NULL, - attr_value TEXT NOT NULL -); - -CREATE INDEX li_attr_li_idx ON acq.lineitem_attr (lineitem); - CREATE TABLE acq.lineitem_attr_definition ( id BIGSERIAL PRIMARY KEY, code TEXT NOT NULL, @@ -209,6 +199,17 @@ CREATE TABLE acq.lineitem_local_attr_definition ( id BIGINT PRIMARY KEY DEFAULT NEXTVAL('acq.lineitem_attr_definition_id_seq') ) INHERITS (acq.lineitem_attr_definition); +CREATE TABLE acq.lineitem_attr ( + id BIGSERIAL PRIMARY KEY, + definition BIGINT NOT NULL, + lineitem BIGINT NOT NULL REFERENCES acq.lineitem (id), + attr_type TEXT NOT NULL, + attr_name TEXT NOT NULL, + attr_value TEXT NOT NULL +); + +CREATE INDEX li_attr_li_idx ON acq.lineitem_attr (lineitem); + -- Seed data @@ -283,7 +284,8 @@ BEGIN SELECT extract_acq_marc_field(id, xpath_string, adef.remove) INTO value FROM acq.lineitem WHERE id = NEW.id; IF (value IS NOT NULL AND value <> '') THEN - INSERT INTO acq.lineitem_attr (lineitem, attr_type, attr_name, attr_value) VALUES (NEW.id, atype, adef.code, value); + INSERT INTO acq.lineitem_attr (lineitem, definition, attr_type, attr_name, attr_value) + VALUES (NEW.id, adef.id, atype, adef.code, value); END IF; END IF;