[Koha-devel] RFC: Koha 3.2 : Split Issuing rules into Circ rules and Circ policies

Ryan Higgins ryan.higgins at liblime.com
Tue Jan 27 00:36:36 CET 2009


RFC : Split issuingrules into Circ rules and Circ policies

Full version : http://wiki.koha.org/doku.php?id=en:development:rfcs3.2:rfc32_circ_policies


Synopsis:

The issuingrules table and smart-rules.pl interface currently mix
definition of circulation policy with definition of when those
policies should be applied. This proposal suggests two distinct
interfaces for these operations.
Details

The issuingrules table currently holds performs two discrete functions:

   1.  it holds data describing circulation & fines policy, i.e. loan
length, maxissues, fine, etc.
   2.  it describes which transactions should cause those policies to
be applied.

This RFC proposes that these two data sets be represented in two new
tables in the Koha database, circ_rules and circ_policies, which would
supercede the issuingrules table (i.e. issuingrules will be dropped).

Benefits:

   1.  Database normalization. as described above.
   2.  Simplifies interface for those libraries that have many
itemtype & borrower categories.
   3.  Simplifies future enhancements, allowing us to attach other
types of policies to a given transaction context, e.g. adding a
holds_policies table.

Drawbacks:

   1. Having the Policies described on a separate page than where they
are assigned adds a level of complexity to assignment.

This drawback is addressed by including in smart_rules.pl  a  'policy
lookup' allowing the user to look up
any available circ policies, as well as an on-hover display of a
policy in the rules display.  (see screenshot).

Database changes:

    *  circ_rules will include branchcode, itemtype, categorycode and
circ_policies_id (and circ_termset_id, see rfc: term loans)
    *  circ_policies will include remaining columns from issuingules,
with some cleanup.

The patch set will include an updatedatabase patch that will extract
repeated policies from the issuingrules table, name them in English
with an appropriate description, and assign those policies to the
circ_rules table.

Please see wiki page for screenshot of interface.
http://wiki.koha.org/doku.php?id=en:development:rfcs3.2:rfc32_circ_policies
Comments appreciated.


-- 
Ryan Higgins

LibLime  *  Open-Source Solutions for Libraries
Featuring KohaZOOM ILS
888-564-2457  x704



More information about the Koha-devel mailing list