Quicktip – Ordering the display of your custom patron fields

An easy-peasy way to order the display of Koha’s ExtendedPatronAttributes fields.

This is going to be a brief tutorial, ExtendedPatronAttributes provide the capability to add custom fields to Koha’s patron management e.g. if we wish to capture say Program enrolled or Roll No. or other demographic details that we may be required to maintain under (a) law of the land or (b) governing rules of our library, this feature of Koha is friend we need to take help of.

If you have just landed on this blog and have no idea what we are talking about, we suggest that you may like to first read this earlier post – Harnessing Koha’s ExtendedPatronAttributes (aka patron custom fields). And while you are here, you may also like to visit this article.

Ok! Enough backstory, now back on topic! 🙂 When we define new custom fields to Koha using Home › Administration › Patron attribute types, the key thing to remember here is that these are ordered and displayed using alphabetic ascending sorting order of the defined Patron attribute type code.

Which means, when we defined a list of custom fields to capture student registration details e.g. as given in the screenshot below, we want them to be displayed in the order of the codes are numbered in the blue circles i.e. Student code, Registration No. and Roll No. in that order respectively.

Instead what we get is this:

The Solution

We simply need to number our codes. The way to do this is simply to prefix them with a serial number. Here we chose to use 00_, 01_, 02_”. Of course, this also meant that we had to dump off our old codes and put in these as replacement.

Hint: Do this before you start using the defined fields while entering your patron records. While it can be done later, you need to know what you are doing if you don’t want to mess up your patron data.

You can see what we did below:

And as you can see below, we have the fields displayed exactly in the order we had wanted in the first place.

A knotty problem – an Arabic catalog that refused to work in Koha 17.11

Watching out for custom developed themes during Koha upgradation will save you a lot of grief.

Once you eliminate the impossible, whatever remains, no matter how improbable, must be the truth.

– Sherlock Holmes [by Arthor Conan Doyle]

Early last week my good friend Vimal Kumar Vazaphally asked me if he could connect me to a friend of his who was facing some trouble after migrating to Koha 17.11 from 3.18. I agreed to take a look, since the problems that Vimal sends my way from time to time are usually interesting rather than mundane. Soon I was talking to Hussain (‎حسين رضوي‎) who manages the systems at the Public Library of Imam Hussain (AS) Holy Shrine, at Bab Alqibla, Karbala, Iraq.

The problem

Hussain informed that things used to be fine in the older 3.18 system, but after migrating to 17.11, they could no longer use the cataloging editor properly as the value builder for 008 MARC21 tag i.e. Fixed-Length Data Elements-General Information was not being displayed properly anymore, and the data being pushed back was the default value.

The chase begins

After looking at his system over Teamviewer and not making much headway, I asked Hussain to send over a copy of his database and went to bed.

By next day he had sent over his 1.2 GB database. I had it hoisted up on a test 17.11.01 system we have around, the same one which we had used the week before to migrate Bangabasi College from their earlier Koha 3.14.06. Since it was a multi-tenanted setup I could see the staged Bangabasi catalog working OK in it. Once the zebra reindexing has been done, our sleuthing started, we were able to reproduce the error.

The steps to the Truth

The first thing to check was for MARC framework validation – Ok! that was clean. Next up – detailed manual check of the framework in use. But everything looked shipshape. So what we had here was a curious beast. Since we were on a multi-tenant system and one was working just fine, the problem therefore had to be coming up from somewhere in Hussain’s database. But from what exactly was the question. When I mentioned about it on #koha (the IRC channel of Koha ILS), @wizzyrea (Liz Rea from CatalystIT) said that the issue sounded familiar and asked me to check whether it was bug no. 19473. It was not. However, 19473 looked interested so I added myself to the bug for tracking its status in future, and as I did bugzilla prompted – “The next bug in your list is bug 19965”

Bug no. 19965 turned out to be Hussain’s bug which he had reported on the Koha bug tracking database on 12th Jan 2018. This was from before we had connected. As I read through the comments on the bug by @cait – Katrin Fischer our indomitable QA lead, and incidentally visiting India at the moment for LTC2018 in Goa, I had my light bulb moment! 😉 I ran the 008 value builder and checked the JavaScript console. Firefox gave some hint that there was something wrong, but it was Google Chrome that showed exactly what was wrong.

Apparently, we had a 404 (file not found) error for marc21_field_088.xml. Now this was the file that Koha uses to load the list of values possible in the 008 field. This is what drives the drop-downs in the 008 value builder. I knew that we certainly had the file on the system, which is why things had worked for Bangabasi. The error message showed that somehow Koha was looking for the marc21_field_088.xml at a different location – intranet-tmpl/imam/en/data/marc21_field_008.xml rather than where it should intranet-tmpl/prog/en/data/marc21_field_008.xml.

The story was clear – this Koha installation had a custom staff client theme / template installed with the name of imam. So now we checked the template system preference under “Staff client” of Administration -> System preferences. But no the system preference showed only prog as the solitary value. Knowing that rhe staff client system preferences values are principally driven via a YAML file inside Koha called staff_client.pref, I decided to go for the source, in other words – the database itself.

A simple query :

SELECT * FROM `systempreferences` WHERE variable = "template"

showed what I had suspected, the actual value was set to “imam“. Another line of SQL later

UPDATE `systempreferences` SET value = "prog" WHERE variable = "template"

I was ready to test it. And Voila! there was it was… all working again! 😀

An explanation and an update

Now, you may be wondering why did Koha show the system preference template as only “prog” while its actual value was set to “imam”… is that not a bug? Well, not really! The value in the database is supposed to be one from the possible values in the YAML code for that system preference. So when you actually add a different value into the database and do not update the value in the YAML script, this is the expected fallback behavior.

You may also wonder so what happened to the bug no 19965 that Hussain had filed in the Koha bugzilla. Since, I had been able to verify that this was not a Koha bug, rather a user infused data error, I closed the bug report with the status – “RESOLVED-INVALID” along with this comment.

For Hussain, the first level solution was to update his database and point the installation to use the “prog” staff client theme / template rather than “imam”. At the secondary level, he had to port his old 3.18 theme – “imam” over to 17.11, which is quite likely to be a non-trivial exercise, should he / the library authority choose to do that.

Quick Tip – What to avoid when adding news items to your Koha OPAC

Avoiding common errors while using Koha – setting the library name correctly for news.

The News tool available in the Home -> Tools -> Additional tools section of the Koha staff client allows us to publish news and updates across – (a) OPACs (b) staff client and (c) printed slips generated by the library.

Being a handy way to publish library related updates, librarians like to use it. However, there are a few things that we need to keep in mind when doing this. For starters, we should not be logged in into the staff client as Koha’s database administrator; we must be logged in either as a superlibrarian OR as a library staff user with access rights to the News tool. The next thing to understand is even more important – the “Display location” and “Library” drop-downs.

Earlier today, we received a ticket on our online helpdesk –

“We have written a new notice but nothing is displayed on the opac.”

When we cross-checked, we found that to be true. So we checked the new notice to find out what may be the problem. And sure enough it was exactly what we had expected had happened. The notice / news was set to display on the OPAC of client-partner’s defined library branch, instead of being set to “All libraries”.

Now you may ask how can this be wrong??? Well, up until an user logs in via the OPAC, the “library (branch)” is *NOT* set as Koha has no way of knowing which branch (since a Koha instance can cater to multiple library branches of an organisation) of the library the user is looking at at the moment. The notices / news would have showed up *if* the user had logged in into *that* defined branch in this case.

So, the logic to keep in mind while publishing a news item on the OPAC – select a specific branch for display *ONLY* if you want the notice to be branch specific, otherwise, keep it generic as “All libraries”.

Once this was corrected, the news defined showed up just fine as can be seen below.

New and improved SLA management from L2C2 Technologies

Adding weekly SLA Management Reports for our hosted accounts of Koha ILS.

Starting this January, on every Monday (first day of the week for us) we will be mailing out weekly service level management reports and updates to our hosted Koha ILS client partners. We already have phone calls and the online support helpdesk covered and are now trying to figure out how to manage the instant messaging requests via Whatsapp, Telegram, Twitter and FB Messanger etc.

While the LIS professionals working with us from our client partners’ side already know where they stand with their SLA status, often the management is not fully aware of the work being done. With this new initiative we hope for greater transparency in our communication with our clients. Enclosed below are sample of these reports with the contact details reducted.

Planning new data quality QA tools

Looking at cataloging data for institution after institution, it often appears that LIS professionals themselves are their greatest adversaries. Plagued by short staffing, pressed for time, pressured by management deadlines and objectives, often their own poor IT skills or even a lack of attention to details – all these factors and more, often lead to poor quality cataloging data.

Most of them love the fact that Koha is Free Software, but usually choose to overlook the fact that being Free Software means, the users themselves need to step up to the plate either learn new concepts, upgrade skills OR seek qualified support (often paid). Short of attention to these, Koha is not a magic wand that one can wield like Harry Potter and utter “Catalogus Bibliothecam” (‘catalogue the library’).

And once poor quality bibliographic data makes it way into a catalog, without oversight and correction, Koha is often unable to deliver the goods. This is not Koha’s short-coming. I will be harsh here and say that the fault largely lies with the catalogers for entering bad data in the first place. You need to be nit-picky about data and logically sharp in order to be a good cataloger – either you one, or you can acquire the habit with practice or you do not.

On L2C2 Technologies’s online helpdesk, we often encounter requests that lead us back to bad quality cataloging data entered by our client partners. While LIS professionals need to upgrade / sharpen their skills, we have decided to regularly release a bunch of cataloging data quality audit tools for Koha so that we can help our user community.

In the spirit of Koha Library System Project these will all be released as open source via the blog (http://blog.l2c2.co.in) and our GitHub repository.

#Koha #cataloging #data_quality #new_stuff

Koha ILS workshop at ICAR-NAARM, Hyderabad, Feb 5 – 9, 2018.

Indranil Das Gupta, Co-Founder, L2C2 Technologies will conduct sessions at the upcoming ICAR-NAARM organised Koha workshop.

Indranil Das Gupta, Co-Founder, L2C2 Technologies has been invited by ICAR-NAARM as resource person and faculty at ICAR-NAARM’s upcoming Koha ILS workshop in Hyderabad, India.

About the program

The ICAR – National Academy of Agricultural Research Management (NAARM) is organizing a training programme on Koha for library staff of ICAR during February 5-9, 2018. Dr. S.K. Soam, Head, ICM Division, NAARM and Dr. N. Srinivasa Rao, Principal Scientist are the programme directors for this training. They are expecting about 35 librarians to participate from various ICAR institutes in this training programme


The National Academy of Agricultural Research Management (NAARM) is a national-level research center located in Hyderabad, Telangana, India. It was established by the Indian Council of Agricultural Research (ICAR) in 1976, to address issues related to agricultural research and education management, in India. In the initial years, the Academy primarily imparted foundation training to the new entrants of the Agricultural Research Service of ICAR.

Subsequently, its role expanded to include research, capacity building of senior professionals of national and international NARS in agricultural research and education management, and policy and consultancy support to NARS. The Academy also renders services for building IP portfolios like patents and geographical indications to various stakeholders including farmers and scientists.

About L2C2 Technologies

L2C2 Technologies is a leading member of the global Koha developer community from India. Aside from upstream contribution, L2C2 Technologies have been active in the global Koha Release team for version 3.22, 16.05, 16.11 and 17.05. L2C2 started cloud hosting of Koha ILS in eastern India and have to its credit the first fully hosted Koha ILS having passed NAAC inspection in entire eastern India. We collaborate globally with people who write and publish Koha ILS software, thus ensuring international quality support while always being at the forefront of latest Koha development.​


Queen Mission School Salt Lake your future catalog thanks you :-)

A high school adopts the use of authority records in their Koha ILS based library catalog.

Client-partners who work with L2C2 Technologies know how fond we are of authority records. Without basic authority control of the personal names and subjects, catalogs over times end up having a mish-mash of variously spelled names and subjects which are essentially one and the same. One of the particular horror stories from the time when we started cloud hosting of Koha in Eastern India in 2015 was a case when we encountered the subject heading of “Commerce” spelled with 19 different spellings in the catalog and it’s bengali variant “বাণিজ্য” spelled in 3 more ways. And that was just one of those things. The author name variations of the same author were even greater horrors. Yes, as you can tell by now, we feel rather strongly about the use of authority records, which essentially help create better quality catalog data and also provide an easy way to update and manage spellings of headings.

It makes us happy that the three young women working on the cataloging project of Our Lady Queen of the Mission School, Salt Lake have taken heed of our suggestion to use authority files since they are starting from scratch. They began with the most simple personal name authorised heading for authors and editors of the books in the school’s collection. This work is being carried out by Priya Show and Shreya Mullick under the leadership of Swarnali Mitra, Librarian. Priya had earlier participated a departmental workshop I had helped conduct at the Department of Library & Information Science, Calcutta University. For Shreya and Swarnali, I am working with them for the first time. But luckily for their project, all these young ladies are showing that they have what it takes – the vision and eagerness to do things the right way. Wishing them all the best.