[open-ils-commits] r16438 - in trunk/Open-ILS/src/sql/Pg: . upgrade (miker)

svn at svn.open-ils.org svn at svn.open-ils.org
Sun May 16 15:16:47 EDT 2010


Author: miker
Date: 2010-05-16 15:16:42 -0400 (Sun, 16 May 2010)
New Revision: 16438

Added:
   trunk/Open-ILS/src/sql/Pg/upgrade/0263.schema.reporter.simple_rec.sql
Modified:
   trunk/Open-ILS/src/sql/Pg/002.schema.config.sql
   trunk/Open-ILS/src/sql/Pg/reporter-schema.sql
Log:
allow multiple 260 tags in summary view

Modified: trunk/Open-ILS/src/sql/Pg/002.schema.config.sql
===================================================================
--- trunk/Open-ILS/src/sql/Pg/002.schema.config.sql	2010-05-16 19:13:56 UTC (rev 16437)
+++ trunk/Open-ILS/src/sql/Pg/002.schema.config.sql	2010-05-16 19:16:42 UTC (rev 16438)
@@ -65,7 +65,7 @@
     install_date    TIMESTAMP WITH TIME ZONE NOT NULL DEFAULT NOW()
 );
 
-INSERT INTO config.upgrade_log (version) VALUES ('0262'); -- berick
+INSERT INTO config.upgrade_log (version) VALUES ('0263'); -- miker
 
 CREATE TABLE config.bib_source (
 	id		SERIAL	PRIMARY KEY,

Modified: trunk/Open-ILS/src/sql/Pg/reporter-schema.sql
===================================================================
--- trunk/Open-ILS/src/sql/Pg/reporter-schema.sql	2010-05-16 19:13:56 UTC (rev 16437)
+++ trunk/Open-ILS/src/sql/Pg/reporter-schema.sql	2010-05-16 19:16:42 UTC (rev 16438)
@@ -156,8 +156,8 @@
 	r.tcn_value,
 	title.value AS title,
 	FIRST(author.value) AS author,
-	publisher.value AS publisher,
-	SUBSTRING(pubdate.value FROM $$\d+$$) AS pubdate,
+	ARRAY_TO_STRING(ARRAY_ACCUM( DISTINCT publisher.value), ', ') AS publisher,
+	ARRAY_TO_STRING(ARRAY_ACCUM( DISTINCT SUBSTRING(pubdate.value FROM $$\d+$$) ), ', ') AS pubdate,
 	ARRAY_ACCUM( DISTINCT SUBSTRING(isbn.value FROM $$^\S+$$) ) AS isbn,
 	ARRAY_ACCUM( DISTINCT SUBSTRING(issn.value FROM $$^\S+$$) ) AS issn
   FROM	biblio.record_entry r
@@ -167,7 +167,7 @@
 	LEFT JOIN metabib.full_rec pubdate ON (r.id = pubdate.record AND pubdate.tag = '260' AND pubdate.subfield = 'c')
 	LEFT JOIN metabib.full_rec isbn ON (r.id = isbn.record AND isbn.tag IN ('024', '020') AND isbn.subfield IN ('a','z'))
 	LEFT JOIN metabib.full_rec issn ON (r.id = issn.record AND issn.tag = '022' AND issn.subfield = 'a')
-  GROUP BY 1,2,3,4,5,6,8,9;
+  GROUP BY 1,2,3,4,5,6;
 
 CREATE TABLE reporter.materialized_simple_record AS SELECT * FROM reporter.old_super_simple_record WHERE 1=0;
 ALTER TABLE reporter.materialized_simple_record ADD PRIMARY KEY (id);

Added: trunk/Open-ILS/src/sql/Pg/upgrade/0263.schema.reporter.simple_rec.sql
===================================================================
--- trunk/Open-ILS/src/sql/Pg/upgrade/0263.schema.reporter.simple_rec.sql	                        (rev 0)
+++ trunk/Open-ILS/src/sql/Pg/upgrade/0263.schema.reporter.simple_rec.sql	2010-05-16 19:16:42 UTC (rev 16438)
@@ -0,0 +1,27 @@
+BEGIN;
+
+INSERT INTO config.upgrade_log (version) VALUES ('0263'); --miker
+
+CREATE OR REPLACE VIEW reporter.old_super_simple_record AS
+SELECT  r.id,
+    r.fingerprint,
+    r.quality,
+    r.tcn_source,
+    r.tcn_value,
+    title.value AS title,
+    FIRST(author.value) AS author,
+    ARRAY_TO_STRING(ARRAY_ACCUM( DISTINCT publisher.value), ', ') AS publisher,
+    ARRAY_TO_STRING(ARRAY_ACCUM( DISTINCT SUBSTRING(pubdate.value FROM $$\d+$$) ), ', ') AS pubdate,
+    ARRAY_ACCUM( DISTINCT SUBSTRING(isbn.value FROM $$^\S+$$) ) AS isbn,
+    ARRAY_ACCUM( DISTINCT SUBSTRING(issn.value FROM $$^\S+$$) ) AS issn
+  FROM  biblio.record_entry r
+    LEFT JOIN metabib.full_rec title ON (r.id = title.record AND title.tag = '245' AND title.subfield = 'a')
+    LEFT JOIN metabib.full_rec author ON (r.id = author.record AND author.tag IN ('100','110','111') AND author.subfield = 'a')
+    LEFT JOIN metabib.full_rec publisher ON (r.id = publisher.record AND publisher.tag = '260' AND publisher.subfield = 'b')
+    LEFT JOIN metabib.full_rec pubdate ON (r.id = pubdate.record AND pubdate.tag = '260' AND pubdate.subfield = 'c')
+    LEFT JOIN metabib.full_rec isbn ON (r.id = isbn.record AND isbn.tag IN ('024', '020') AND isbn.subfield IN ('a','z'))
+    LEFT JOIN metabib.full_rec issn ON (r.id = issn.record AND issn.tag = '022' AND issn.subfield = 'a')
+  GROUP BY 1,2,3,4,5,6;
+
+COMMIT;
+



More information about the open-ils-commits mailing list