[open-ils-commits] r8801 - in branches/rel_1_2_1/Open-ILS: examples src/sql/Pg

svn at svn.open-ils.org svn at svn.open-ils.org
Wed Feb 20 12:47:07 EST 2008


Author: miker
Date: 2008-02-20 12:16:36 -0500 (Wed, 20 Feb 2008)
New Revision: 8801

Modified:
   branches/rel_1_2_1/Open-ILS/examples/fm_IDL.xml
   branches/rel_1_2_1/Open-ILS/src/sql/Pg/example.reporter-extension.sql
Log:
add "classic item list" PINES/example source

Modified: branches/rel_1_2_1/Open-ILS/examples/fm_IDL.xml
===================================================================
--- branches/rel_1_2_1/Open-ILS/examples/fm_IDL.xml	2008-02-20 16:01:14 UTC (rev 8800)
+++ branches/rel_1_2_1/Open-ILS/examples/fm_IDL.xml	2008-02-20 17:16:36 UTC (rev 8801)
@@ -2667,6 +2667,54 @@
 		</links>
 	</class>
 
+	<class id="rocit" controller="open-ils.reporter-store" oils_obj:fieldmapper="reporter::classic_item_list" oils_persist:tablename="reporter.classic_item_list" reporter:core="true" reporter:label="Classic Item List">
+		<fields oils_persist:primary="id">
+			<field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
+			<field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
+			<field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
+			<field reporter:label="Title" name="title" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="text"/>
+			<field reporter:label="Author" name="author" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="text"/>
+			<field reporter:label="Pubdate" name="pubdate" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="text"/>
+			<field reporter:label="Copy ID" name="id" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="id"/>
+			<field reporter:label="Price" name="price" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="money"/>
+			<field reporter:label="Barcode" name="barcode" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="text"/>
+			<field reporter:label="Callnumber Label" name="call_number_label" oils_obj:array_position="9" oils_persist:virtual="false" reporter:datatype="text"/>
+			<field reporter:label="Dewy Tens" name="dewey_block_tens" oils_obj:array_position="10" oils_persist:virtual="false" reporter:datatype="text"/>
+			<field reporter:label="Dewy Hundreds" name="dewey_block_hundreds" oils_obj:array_position="11" oils_persist:virtual="false" reporter:datatype="text"/>
+			<field reporter:label="Use Count" name="use_count" oils_obj:array_position="12" oils_persist:virtual="false" reporter:datatype="int"/>
+			<field reporter:label="Circ Modifier" name="circ_modifier" oils_obj:array_position="13" oils_persist:virtual="false" reporter:datatype="text"/>
+			<field reporter:label="Shelving Location Name" name="shelving_location" oils_obj:array_position="14" oils_persist:virtual="false" reporter:datatype="text"/>
+			<field reporter:label="Legacy Stat Cat 1" name="stat_cat_1" oils_obj:array_position="15" oils_persist:virtual="false" reporter:datatype="text"/>
+			<field reporter:label="Legacy Stat Cat 2" name="stat_cat_2" oils_obj:array_position="16" oils_persist:virtual="false" reporter:datatype="text"/>
+			<field reporter:label="Legacy Stat Cat 1 Value" name="stat_cat_1_value" oils_obj:array_position="17" oils_persist:virtual="false" reporter:datatype="text"/>
+			<field reporter:label="Legacy Stat Cat 2 Value" name="stat_cat_2_value" oils_obj:array_position="18" oils_persist:virtual="false" reporter:datatype="text"/>
+			<field reporter:label="Edit Date" name="edit_date" oils_obj:array_position="19" oils_persist:virtual="false" reporter:datatype="timestamp"/>
+			<field reporter:label="Create Date" name="create_date" oils_obj:array_position="20" oils_persist:virtual="false" reporter:datatype="timestamp"/>
+			<field reporter:label="Owning Lib Name" name="owning_lib_name" oils_obj:array_position="21" oils_persist:virtual="false" reporter:datatype="text"/>
+			<field reporter:label="Circ Lib Name" name="circ_lib_name" oils_obj:array_position="22" oils_persist:virtual="false" reporter:datatype="text"/>
+			<field reporter:label="Owning Lib" name="owning_lib" oils_obj:array_position="23" oils_persist:virtual="false" reporter:datatype="link"/>
+			<field reporter:label="Circ Lib" name="circ_lib" oils_obj:array_position="24" oils_persist:virtual="false" reporter:datatype="link"/>
+			<field reporter:label="Creator" name="creator" oils_obj:array_position="25" oils_persist:virtual="false" reporter:datatype="link"/>
+			<field reporter:label="Age Protection" name="age_protect" oils_obj:array_position="26" oils_persist:virtual="false" reporter:datatype="link"/>
+			<field reporter:label="OPAC Visible" name="opac_visible" oils_obj:array_position="27" oils_persist:virtual="false" reporter:datatype="bool"/>
+			<field reporter:label="Reference" name="ref" oils_obj:array_position="28" oils_persist:virtual="false" reporter:datatype="bool"/>
+			<field reporter:label="Deposit Amount" name="deposit_amount" oils_obj:array_position="29" oils_persist:virtual="false" reporter:datatype="text"/>
+			<field reporter:label="Deleted" name="deleted" oils_obj:array_position="30" oils_persist:virtual="false" reporter:datatype="bool"/>
+			<field reporter:label="TCN" name="tcn_value" oils_obj:array_position="31" oils_persist:virtual="false" reporter:datatype="text"/>
+			<field reporter:label="Status" name="status" oils_obj:array_position="32" oils_persist:virtual="false" reporter:datatype="link"/>
+			<field reporter:label="Stop Fines Reason" name="stop_fines" oils_obj:array_position="33" oils_persist:virtual="false" reporter:datatype="text"/>
+			<field reporter:label="Due Date" name="due_date" oils_obj:array_position="34" oils_persist:virtual="false" reporter:datatype="timestamp"/>
+			<field reporter:label="Patron Barcode" name="patron_barcode" oils_obj:array_position="35" oils_persist:virtual="false" reporter:datatype="text"/>
+			<field reporter:label="Patron Name" name="patron_name" oils_obj:array_position="36" oils_persist:virtual="false" reporter:datatype="text"/>
+		</fields>
+		<links>
+			<link field="owning_lib" reltype="has_a" key="id" map="" class="aou"/>
+			<link field="circ_lib" reltype="has_a" key="id" map="" class="aou"/>
+			<link field="creator" reltype="has_a" key="id" map="" class="au"/>
+			<link field="age_protect" reltype="has_a" key="id" map="" class="crahp"/>
+			<link field="status" reltype="has_a" key="id" map="" class="ccs"/>
+		</links>
+	</class>
 
 	<!-- ********************************************************************************************************************* -->
 

Modified: branches/rel_1_2_1/Open-ILS/src/sql/Pg/example.reporter-extension.sql
===================================================================
--- branches/rel_1_2_1/Open-ILS/src/sql/Pg/example.reporter-extension.sql	2008-02-20 16:01:14 UTC (rev 8800)
+++ branches/rel_1_2_1/Open-ILS/src/sql/Pg/example.reporter-extension.sql	2008-02-20 17:16:36 UTC (rev 8801)
@@ -154,7 +154,77 @@
 	JOIN reporter.demographic dem ON (dem.id = u.id)
 	JOIN actor.usr_address paddr ON (paddr.id = u.billing_address);
 
+CREATE OR REPLACE VIEW reporter.classic_item_list AS
+SELECT	t.value as title,
+	a.value as author,
+	p.value as pubdate,
+	cp.id,
+	cp.price,
+	cp.barcode,
+	cn.label as call_number_label,
+	CASE
+		WHEN call_number_dewey(cn.label) ~  E'^[0-9.]+$'
+			THEN
+				btrim(
+					to_char(
+						10 * floor((call_number_dewey(cn.label)::float) / 10), '000'
+					)
+				)
+		ELSE NULL
+	END AS dewey_block_tens,
+	CASE
+		WHEN call_number_dewey(cn.label) ~  E'^[0-9.]+$'
+			THEN
+				btrim(
+					to_char(
+						100 * floor((call_number_dewey(cn.label)::float) / 100), '000'
+					)
+				)
+		ELSE NULL
+	END AS dewey_block_hundreds,
+	(SELECT COUNT(*) FROM action.circulation WHERE target_copy = cp.id) as use_count,
+	cp.circ_modifier,
+	sl.name AS shelving_location,
+	sc1.stat_cat_entry AS stat_cat_1,
+	sc2.stat_cat_entry AS stat_cat_2,
+	sce1.value AS stat_cat_1_value,
+	sce2.value AS stat_cat_2_value,
+	cp.edit_date,
+	cp.create_date,
+	ol.shortname AS owning_lib_name,
+	cn.owning_lib,
+	cl.shortname AS circ_lib_name,
+	cl.id AS circ_lib,
+	cp.creator,
+	cp.age_protect,
+	cp.opac_visible,
+	cp.ref,
+	cp.deposit_amount,
+	cp.deleted,
+	b.tcn_value,
+	cp.status,
+	circ.stop_fines,
+	circ.due_date,
+	circ_card.barcode as patron_barcode,
+	circ_u.first_given_name || ' ' || circ_u.family_name as patron_name
+  FROM	asset.copy cp
+	JOIN asset.copy_location sl ON (cp.location = sl.id)
+	JOIN asset.call_number cn ON (cp.call_number = cn.id)
+	JOIN biblio.record_entry b ON (cn.record = b.id)
+	JOIN actor.org_unit ol ON (cn.owning_lib = ol.id)
+	JOIN actor.org_unit cl ON (cp.circ_lib = cl.id)
+	LEFT JOIN metabib.full_rec t ON (cn.record = t.record AND t.tag = '245' and t.subfield = 'a')
+	LEFT JOIN metabib.full_rec a ON (cn.record = a.record AND a.tag = '100' and a.subfield = 'a')
+	LEFT JOIN metabib.full_rec p ON (cn.record = p.record AND p.tag = '260' and p.subfield = 'c')
+	LEFT JOIN action.circulation circ ON (circ.target_copy = cp .id AND circ.checkin_time IS NULL)
+	LEFT JOIN actor.usr circ_u ON (circ_u.id = circ.usr)
+	LEFT JOIN actor.card circ_card ON (circ_u.id = circ_card.usr)
+	LEFT JOIN asset.stat_cat_entry_copy_map sc1 ON (sc1.owning_copy = cp.id AND sc1.stat_cat = 1)
+	LEFT JOIN asset.stat_cat_entry sce1 ON (sce1.id = sc1.stat_cat_entry)
+	LEFT JOIN asset.stat_cat_entry_copy_map sc2 ON (sc2.owning_copy = cp.id AND sc2.stat_cat = 2)
+	LEFT JOIN asset.stat_cat_entry sce2 ON (sce2.id = sc2.stat_cat_entry);
 
+
 COMMIT;
 
 



More information about the open-ils-commits mailing list