Making the receipt printer program better


Our head of circulation came back from the regional library delivery meeting with the news that we might be changing our routing codes. She asked me whether it would be a problem for our receipt printer program. I told her that I'd mess around with it and give her a reply. So, I've been working on taking the location specific code, i.e., library names, routing codes, exceptions, etc. out of the receipt printer program, and making them external ini files that can be changed without recompiling the source.

I banged out a rough version to send to Dean for the once over, and it made the cut, then I just got off the phone with Michele who has modified the code for NOBLE. I asked her to send me some samples of the text files that their ILS spits out, specifically the In Transit slips. I want to integrate her work into one program "to rule them all". A grand unified program for our regional delivery system. Alles klar, Herr Kommissar? Schmeckt gut!

What I've done is make three new ini files: routing_codes.ini, exceptions.ini, and main_locations.ini to take care of the problem. If an agency string isn't found in the routing codes, the program looks in the exceptions "table", which tells if the exception is a branch or a alternate spelling/name, then gets the appropriate routing code. With the routing code known, it then goes back to the main locations table to get the name for the route location.

The folks that sort for the region don't need to worry about the subdivisions of the individual libraries, so I continued to keep the main location name and routing number prominent, but for the benefit of "in-house" sorting, e.g., when the staff at Chelmsford's main library sort the items going to their branch, I emphasized the word "branch". I still have the original name printed on the slip, but lower down.

Once Michele shows me what her slip input looks like, and we get that system's routing handled, we'll be able to put a line for consortium name in the setup.ini, and use a single program for both consortia. And then it might be usable on any Horizon or III system. It might be worth setting up a source forge collaboration for the future, if it pans out.

Posted: Fri - May 11, 2007 at 03:50 PM      


©