We have a small library in the school, the existing system is a proprietary personal collector system that is quite handy. Unfortunately is is NOT a library system, the loan management is terrible and its OPAC is hosted on the company (CollectorZ)’s website.
After a lot of search, seems Koha is the right choice, and confirmed by another experienced teacher librarian (Thanks Dianne!) as well. Here’s an extremely dark shot of expresso after my 1 month trial an error.
It seems the simplest way to migrate our existing collection to Koha is through using ISBN, since then we can skip all the manual entry but obtain the record from big library (e.g. Library of Congress) through Z39.50 instead. It all sounds simple but it took me almost 3 weeks…
We will work backward to understand this procedure. The last step fro Koha to read a batch file is through a tool called “Staged MARC import”. MARC is a standard for book collection and you can see an option called “MARC export” in many University library. It is essential a specially formatted text which store information from book title, author to physical description of the article.
Sounds quite easy, but wait, the plan was just getting a list of ISBN from CollecterZ and inject it directly to Koha and update it, right? BUT there’s no “batch Z39.50 update” option in Koha, which means the first time you put in the record it has to be a full MARC21 record. How can we make such a file?
Seems this is the best tool recommended by many website, so I tried to download it but it isn’t really that easy to get it working on Mac/Linux. I had to install virtualBox and put MarcEdit there to run it.
There’s a tool in MarcEdit which convert delimited text file (e.g. csv, tsv), so it is GREAT! We just need to export the required field (e.g. Book title, ISBN.. etc) from CollectorZ and feed it to MarcEdit, then it *should* work… but.. it didn’t
The file generated by CollectorZ generate a csv file with default Mac line break carrier (LF only), while MarcEdit, runs in windows, require a (LFCR) line break. Thus I had to fiddle the file through Processing (not really the right tool, but it works). Everything sounds right till now…
.mrk and .mrc file
The delimited text import in MarcEdit worked great after you know the mapping (in marc system, code 245 refers to ISBN, and in the mapping part you have to put in 245$a to map it), it quickly generate a .mrk (marc text file). Without any prior knowledge of the differences between .mrk and .mrc file, I simply plug the .mrk file into Koha, and of cause it didn’t work.
You need to convert the .mrk file to .mrc file through the “MARC Maker” in MarcEdit! (Took me 2 days to figure out….)
Back to basic
So it all goes well, all books are imported to Koha, until I found some crazy record using the book description as the book name, which means there’s something wrong during the conversion…
Mercury Z39.50 client
Then I went back to the first idea, obtaining a complete record through other Z39.50 server with ISBN as the unique search key. The Z39.50 client in MarcEdit didn’t like the .mrk file it generated… another tool maybe? Mercury Z39.50 could be the savior…
I just need a file with all the ISBN and it will connect to the Z39.50 server and retrieve the complete record, sounds perfect! Except it keep giving me error (e.g. invalid pointer) after retrieving certain number of records.
All you need is…ISBN
I just don’t understand why it took me so long to figure out, nor why no one actually put it on a blog (That’s why I’m writing all these down), we really just need a text file with all the ISBN in separate lines and MarcEdit can do the rest.
The Z39.50 client in MarcEdit need no .mrk or .mrc file, it takes in numbers and there’s a batch mode there to read this text file. It will then slowly, book by book, bit by bit, retrieve book information from big libraries and generate a nice MARC21 record for you to feed in to Koha!