Bug 6499: Add Zebra index "Other-control-number" covering MARC21 035$a, 035$z and 035 (entire tag)

1) Apply patch
2) Make sure that you have a bib that has MARC21 035$a (and possibly also 035$z) populated.

pre 3) Replace all modified zebra files and restart zebra server

3) Rebuild zebra: misc/migration_tools/rebuild_zebra.pl -x -b -z
4) Add the following to the intranetuserjs syspref:

$(document).ready(function(){
    // Add Other Control Number to advanced search
    if (window.location.href.indexOf("catalogue/search.pl") > -1) {
        $(".advsearch").append('<option value="Other-control-number">Other Control Number</option>');
    }
});

5) Do an advanced search, select "Other Control Number" from the search menu, then add the Other Control Number in 035$a for the bib specified in step 1.

Signed-off-by: Bernardo Gonzalez Kriegel <bgkriegel@gmail.com>
Works, no koha-qa errors

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
This commit is contained in:
Barton Chittenden 2014-07-10 09:54:56 -04:00 committed by Kyle M Hall
parent 7f50e9f686
commit 84f51549c9
6 changed files with 51 additions and 3 deletions

View File

@ -1179,6 +1179,7 @@ sub getIndexes{
'notes',
'ns',
'nt',
'Other-control-number',
'pb',
'Personal-name',
'Personal-name-heading',

View File

@ -191,7 +191,8 @@ att 1207 Instruments-total-number
att 1208 Instruments-distint-number
att 1209 Identifier-URN
att 1210 Sears-Subject-Heading
att 1211 OCLC-Number
#att 1211 OCLC-Number
att 1211 Other-control-number
att 1212 Composition
att 1213 Intellectual-level
att 1214 EAN

View File

@ -364,6 +364,9 @@ dtlm Date/time-last-modified
Dissertation-information 1=1056
diss Dissertation-information
#OCLC Number 1211 OCLC Number MARC21 035
Other-control-number 1=1211
#EAN 1214 European article number UNIMARC 073
EAN 1=1214
ean EAN

View File

@ -180,7 +180,19 @@
<index_data_field tag="034">
<target_index>Map-scale:w</target_index>
</index_data_field>
<!--record.abs line 68: melm 037 Identifier-standard,Stock-number-->
<!--record.abs line 75: melm 035$a Other-control-number-->
<index_subfields tag="035" subfields="a">
<target_index>Other-control-number:w</target_index>
</index_subfields>
<!--record.abs line 76: melm 035$z Other-control-number-->
<index_subfields tag="035" subfields="z">
<target_index>Other-control-number:w</target_index>
</index_subfields>
<!--record.abs line 77: melm 035 Other-control-number-->
<index_data_field tag="035">
<target_index>Other-control-number:w</target_index>
</index_data_field>
<!--record.abs line 78: melm 037 Identifier-standard,Stock-number-->
<index_data_field tag="037">
<target_index>Identifier-standard:w</target_index>
<target_index>Stock-number:w</target_index>

View File

@ -191,6 +191,22 @@ definition file (probably something like {biblio,authority}-koha-indexdefs.xml)
</xslo:for-each>
</xslo:if>
</xslo:template>
<xslo:template mode="index_subfields" match="marc:datafield[@tag='035']">
<xslo:for-each select="marc:subfield">
<xslo:if test="contains('a', @code)">
<z:index name="Other-control-number:w">
<xslo:value-of select="."/>
</z:index>
</xslo:if>
</xslo:for-each>
<xslo:for-each select="marc:subfield">
<xslo:if test="contains('z', @code)">
<z:index name="Other-control-number:w">
<xslo:value-of select="."/>
</z:index>
</xslo:if>
</xslo:for-each>
</xslo:template>
<xslo:template mode="index_subfields" match="marc:datafield[@tag='041']">
<xslo:for-each select="marc:subfield">
<xslo:if test="contains('a', @code)">
@ -1588,6 +1604,19 @@ definition file (probably something like {biblio,authority}-koha-indexdefs.xml)
<xslo:value-of select="normalize-space($raw_heading)"/>
</z:index>
</xslo:template>
<xslo:template mode="index_data_field" match="marc:datafield[@tag='035']">
<z:index name="Other-control-number:w">
<xslo:variable name="raw_heading">
<xslo:for-each select="marc:subfield">
<xslo:if test="position() &gt; 1">
<xslo:value-of select="substring(' ', 1, 1)"/>
</xslo:if>
<xslo:value-of select="."/>
</xslo:for-each>
</xslo:variable>
<xslo:value-of select="normalize-space($raw_heading)"/>
</z:index>
</xslo:template>
<xslo:template mode="index_data_field" match="marc:datafield[@tag='037']">
<z:index name="Identifier-standard:w Stock-number:w">
<xslo:variable name="raw_heading">

View File

@ -72,7 +72,9 @@ melm 028 Identifier-publisher-for-music,Identifier-standard
melm 030 CODEN,Identifier-standard
#melm 033 Date
melm 034 Map-scale
#melm 035 Local-number,Identifier-standard
melm 035$a Other-control-number
melm 035$z Other-control-number
melm 035 Other-control-number
melm 037 Identifier-standard,Stock-number
melm 040 Code-institution,Record-source
melm 041$a ln,ln-audio:w