New Books List
Information for Developers
All of the New Books List scripts are written in Perl, an interpreted high-level programming language of many wondrous and varied uses. Customization of the programs beyond the configuration options, language modules, and SQL queries, assumes some Perl (or similar) programming experience.
This program extracts data out of the Voyager database and puts it into a flat file (newBooks.txt). The Perl DBI and DBD::Oracle modules provide an SQL interface.
The easiest thing to modify in this program would be the SQL queries. Just be sure to map the output into the proper format (see the newBooks.txt section).
This program lends itself to minor modifications of HTML output, but any structural changes to things like the sorting routines will be more of a challenge.
Developers should not limit themselves to the language modules (e.g. newBooks.English, newBooks.Finnish, et al.) that come with the New Books List. New and different language modules can easily be created by using the newBooks.Language file as a template.
This is the flat-file database that is output by the newBooks.pl script. Each line constitutes a record, and each record contains a set number of tab-delimited fields. Some fields may contain no data.
It is important for developers to understand that the structure of this file is the only thing that ties together newBooks.pl and newBooks.cgi. Any change to the upstream program (newBooks.pl) that impacts the structure of newBooks.txt, must be accommodated in the newBooks.cgi code that reads in and parses the file.
Datamap for Tomcat Version 7.0
|10||Call Number (Display)||mfhd_master.display_call_no|
|11||Call Number (Normalized)||mfhd_master.normalized_call_no|
|12||Time Interval*||(see SQL algorithm)|
|* The time interval data element has a value of either 1, 2, 3, or 4. This number corresponds to the week/month that item falls within: the the 1st, 2nd, 3rd, or 4th week/month.|