From: Thomas Berezansky Date: Tue, 10 Dec 2013 17:31:52 +0000 (-0500) Subject: Upgrade script for search_label usage X-Git-Url: https://old-git.evergreen-ils.org/?a=commitdiff_plain;h=refs%2Fheads%2Fuser%2Ftsbere%2Fsearch_label_icons;p=working%2FEvergreen.git Upgrade script for search_label usage Signed-off-by: Thomas Berezansky --- diff --git a/Open-ILS/src/sql/Pg/upgrade/XXXX.search_label.sql b/Open-ILS/src/sql/Pg/upgrade/XXXX.search_label.sql new file mode 100644 index 0000000000..379d2d8941 --- /dev/null +++ b/Open-ILS/src/sql/Pg/upgrade/XXXX.search_label.sql @@ -0,0 +1,30 @@ +CREATE OR REPLACE FUNCTION unapi.mra ( obj_id BIGINT, format TEXT, ename TEXT, includes TEXT[], org TEXT, depth INT DEFAULT NULL, slimit HSTORE DEFAULT NULL, soffset HSTORE DEFAULT NULL, include_xmlns BOOL DEFAULT TRUE ) RETURNS XML AS $F$ + SELECT XMLELEMENT( + name attributes, + XMLATTRIBUTES( + CASE WHEN $9 THEN 'http://open-ils.org/spec/indexing/v1' ELSE NULL END AS xmlns, + 'tag:open-ils.org:U2@mra/' || mra.id AS id, + 'tag:open-ils.org:U2@bre/' || mra.id AS record + ), + (SELECT XMLAGG(foo.y) + FROM (SELECT XMLELEMENT( + name field, + XMLATTRIBUTES( + key AS name, + cvm.value AS "coded-value", + cvm.search_label AS "search-value", + rad.filter, + rad.sorter + ), + x.value + ) + FROM EACH(mra.attrs) AS x + JOIN config.record_attr_definition rad ON (x.key = rad.name) + LEFT JOIN config.coded_value_map cvm ON (cvm.ctype = x.key AND code = x.value) + )foo(y) + ) + ) + FROM metabib.record_attr mra + WHERE mra.id = $1; +$F$ LANGUAGE SQL STABLE; +