16.08.2013 Views

Koha 3 Administration: Some Easy Tools Using PHP - DSpace at ...

Koha 3 Administration: Some Easy Tools Using PHP - DSpace at ...

Koha 3 Administration: Some Easy Tools Using PHP - DSpace at ...

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

<strong>Koha</strong> 3 <strong>Administr<strong>at</strong>ion</strong>: <strong>Some</strong> <strong>Easy</strong> <strong>Tools</strong> <strong>Using</strong> <strong>PHP</strong><br />

Dr.Veerankutty Chel<strong>at</strong>ayakkot<br />

Assistant Librarian<br />

Cochin University of Science and Technology<br />

E-mail : veerankutty@cus<strong>at</strong>.ac.in<br />

Abstract: <strong>Koha</strong> is leading Open Source Software in ILS. <strong>Koha</strong> uses<br />

Mysql d<strong>at</strong>abase as its back-end. By using <strong>PHP</strong> script, librarian can easily<br />

enhance the capability of <strong>Koha</strong>, add new flowers in <strong>Koha</strong> and easily<br />

manage retrospective d<strong>at</strong>a conversion.<br />

1. Introduction<br />

<strong>Koha</strong> is the first open-source<br />

Integr<strong>at</strong>ed Library System (ILS). In use<br />

worldwide, its development is steered by a<br />

growing community of libraries<br />

collabor<strong>at</strong>ing to achieve their technology<br />

goals. <strong>Koha</strong>'s impressive fe<strong>at</strong>ure set<br />

continues to evolve and expand to meet the<br />

needs of its user base.<br />

The important futures of <strong>Koha</strong> are :<br />

• Full-fe<strong>at</strong>ured Integr<strong>at</strong>ed<br />

Library System. It includes<br />

modules for circul<strong>at</strong>ion,<br />

c<strong>at</strong>aloging, acquisitions,<br />

serials, reserves, p<strong>at</strong>ron<br />

management, branch<br />

rel<strong>at</strong>ionships, and more<br />

• Dual D<strong>at</strong>abase Design: .<br />

<strong>Koha</strong> uses a dual d<strong>at</strong>abase<br />

design th<strong>at</strong> utilizes the<br />

strengths of the two major<br />

industry-standard d<strong>at</strong>abase<br />

types (text-based and<br />

RDBMS).<br />

• Compliment of Library<br />

Standards<br />

• Web based interfaces<br />

• Free / Open Source which<br />

have no Vendor lock-in<br />

2. Added flowers to <strong>Koha</strong><br />

<strong>Koha</strong> uses Mysql d<strong>at</strong>abase for backend.<br />

We can develop many easy tools th<strong>at</strong><br />

help us to work more freely in <strong>Koha</strong> using<br />

<strong>PHP</strong> scripts bypassing the <strong>Koha</strong> software<br />

up to some extent. Here some examples.<br />

2.1. Sequential Bar Coding<br />

In koha, barcodes can be cre<strong>at</strong>ed by<br />

searching and adding each books in <strong>Tools</strong>-><br />

Label and P<strong>at</strong>ron Card Cre<strong>at</strong>or -> Set<br />

Active Layout -> Cre<strong>at</strong>e New B<strong>at</strong>ch -><br />

Search -> and Add to selected b<strong>at</strong>ch. While<br />

doing this, <strong>Koha</strong> inserts ‘itemnumber’ to the<br />

table ‘lables’ in its d<strong>at</strong>abase ‘koha’.<br />

Suppose our library purchased 50<br />

new books, we have to search and add each<br />

book to cre<strong>at</strong>e barcodes. Instead, by using<br />

following script (List 1A,1B), we can<br />

directly insert ‘itemnumbers’ of newly<br />

purchased books to the table ‘labels’ by<br />

giving ‘From this Accession No’ to ‘This<br />

Accession Number’. eg 11320 to 11380 and<br />

barcodes can be cre<strong>at</strong>ed sequentially.


By using the same method, we can<br />

also cre<strong>at</strong>e barcodes for P<strong>at</strong>rons. In <strong>Koha</strong>,<br />

the search results of p<strong>at</strong>ron are arranged<br />

alphabetically. Suppose, if we want to take<br />

barcodes of newly admitted students, we<br />

have to search and add each student<br />

sequentially or browse alphabetically. By<br />

modifying the same script we can cre<strong>at</strong>e<br />

barcodes of newly admitted students from<br />

‘this membership no ‘ to ‘this membership<br />

no’<br />

2.2. View Accession Register<br />

form<strong>at</strong><br />

In most of newly autom<strong>at</strong>ing<br />

libraries, the retrospective conversion of<br />

d<strong>at</strong>a entry is done by using c<strong>at</strong>alogue cards.<br />

At the same time, the c<strong>at</strong>alogue cards of<br />

some books may be missing. Also, for spell<br />

checking of author, title, publisher etc, it<br />

will be very useful if we get d<strong>at</strong>a from <strong>Koha</strong><br />

in the sequence and form<strong>at</strong> of Accession<br />

Register. By using the following script (List<br />

2A,2B), we can view the d<strong>at</strong>a in the form<strong>at</strong><br />

of accession register and we can edit it<br />

directly by avoiding search/edit options in<br />

<strong>Koha</strong>.<br />

2.3. Support to Circul<strong>at</strong>ion<br />

Section<br />

The script in the list 3A,3B will be<br />

helpful to take list of books issued in a day.<br />

In <strong>Koha</strong>, we will get only count of total<br />

issue. Also, we can make list of books<br />

returned in a particular day. While returning<br />

a book, <strong>Koha</strong> insert itemnumber to a table<br />

‘old_issues’. We can cre<strong>at</strong>e list of books<br />

returned in a particular day by modifying the<br />

script (ie change the table name as<br />

‘old_issues’ instead of ‘issues’ in $query )<br />

2.4. Support to Acquisition<br />

Section.<br />

After the d<strong>at</strong>a entry of newly<br />

purchased books including price, we can<br />

verify with Invoices by giving Accession<br />

Number ‘From’ and ‘To’. Also, this report<br />

will help us to cre<strong>at</strong>e total list of books<br />

purchased in a particular period,say in a<br />

year, with no of copies and total amount<br />

spent and discount. The script is given in<br />

List 5A,5B<br />

Reference<br />

1. www.koha.org


Appendix<br />

List 1 A<br />

===========================================================<br />

// Save this file as ‘barcode.php’<br />


.<br />

List 2 A<br />

// Save this file as ‘accession.php’<br />


$biblio <br />

Edit<br />

//edit web address ‘ http://172..... ‘ as wh<strong>at</strong> is in your system<br />

EOD; }<br />

$display=


List 3 A<br />

========================================================================<br />

// SAVE THIS FILE AS ' issue.php'<br />

<br />

=============================================================================


List 3 B<br />

============================================================================<br />

// Save this file as 'index.html'<br />

<br />

<br />

Help Page <br />

Name of Library <br />

<br />

Today’s Issue <br />

<br />

<br />

<br />

D<strong>at</strong>e(Form<strong>at</strong>: yyyy-mm-dd): <br />

<br />

<br />

<br />

<br />

<br />

============================================================================<br />

List 4 A<br />

============================================================================<br />

//Save this file AS 'order.php'<br />


Title <br />

Publisher <br />

Nos <br />

Price<br />

<br />

EOD;<br />

while ($row =mysql_fetch_array($result))<br />

{<br />

$author=$row['author'];<br />

$title=$row['title'];<br />

$publisher= $row['publishercode'];<br />

$count= $row['count(items.biblionumber)'];<br />

$price= $row['sum(items.price)'];<br />

$details .=


List 4 B<br />

===============================================================<br />

//save this file as index.html<br />

<br />

View List of Books <br />

<br />

NAME OF LIBRARY <br />

//<br />

Enter Range From Accession Register <br />

<br />

<br />

Accession Number From: <br />

<br />

To: <br />

<br />

<br />

<br />

<br />

=============================================================================<br />

Instruction to use the Script:<br />

1. Install <strong>PHP</strong> 5<br />

2. Cre<strong>at</strong>e a directory ,say accession , in root directory of Web Server .For example, in the<br />

case of apache ,the root directory will be /var/www/<br />

3. Save both files, say List 2A and List 2B, in the newly cre<strong>at</strong>ed directory ,say accession.<br />

4. Edit the <strong>PHP</strong> script to add user name and password of Mysql<br />

5. Edit the HTML script to add your library name<br />

6. Open Web Browser and search http://localhost/directoryname/ say<br />

‘http://localhost/accession ‘<br />

7. If you are using accession number as string (Prefixed with letters) eg ‘SE1200’, some<br />

modific<strong>at</strong>ion in script is required . (a) add $length = strlen(“$from”); in the fourth line<br />

of the script. (b) Modify the Mysql query in $query adding length(items.barcode) =<br />

‘$length’ AND after SELECT ……….. WHERE

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!