[Koha-bugs] [Bug 7317] Add an Interlibrary Loan Module to Circulation and OPAC

bugzilla-daemon at bugs.koha-community.org bugzilla-daemon at bugs.koha-community.org
Tue Feb 21 10:07:14 CET 2017


https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=7317

--- Comment #20 from Alex Sassmannshausen <alex.sassmannshausen at ptfs-europe.com> ---
Table of Contents
─────────────────

1 Change Log (since last set of patches pushed to bugzilla)
.. 1.1 Core module
.. 1.2 Backends
..... 1.2.1 New backend: FreeForm
..... 1.2.2 New backend: BLDSS (British Library)
..... 1.2.3 Dummy
2 Module Features
.. 2.1 What is handled by the module?
.. 2.2 What is not yet handled
3 Installation
4 Optional
5 Missing before inclusion in community
6 Test plan
.. 6.1 Core Module (+ Dummy backend)
..... 6.1.1 Creating requests (Staff)
..... 6.1.2 Creating requests (Patrons)
..... 6.1.3 Editing requests (Staff)
..... 6.1.4 Editing requests (Patrons)
..... 6.1.5 Requesting Cancellation (Patrons)
..... 6.1.6 Confirming requests (Staff)
..... 6.1.7 Reverting requests (Staff)
..... 6.1.8 Deleting requests (Staff)
..... 6.1.9 Place request with partners (Staff)
.. 6.2 BLDSS backend
.. 6.3 FreeForm backend


1 Change Log (since last set of patches pushed to bugzilla)
═══════════════════════════════════════════════════════════

1.1 Core module
───────────────

  • Many improvements to general documentation in UI and configuration.
  • Many improvements to the user interface.
  • OPAC interface to viewing and commenting on their requests.
  • OPAC interface for creating new requests with backends of choice.
  • Add 'metadata' abstraction allowing backends to translate raw data
    from their source to user friendly content.
  • Add 'custom_capability's, means by which backends can extend the
    workflow of the ILL module in a seamless manner.
  • Add support for custom JS blocks in ILL backend template includes.
  • Add generic 'backend request -> email to partners' functionality.
  • Remove loads of legacy code.


1.2 Backends
────────────

1.2.1 New backend: FreeForm
╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌

  • Allows creation of ILL requests using a manual form, which can be
    extended at creation time.


1.2.2 New backend: BLDSS (British Library)
╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌

  • Allows searching stock held by the british library, and placing
    requests against it.
  • By default uses test account, which means it is useful for learning.


1.2.3 Dummy
╌╌╌╌╌╌╌╌╌╌╌

  • Upgrade to support latest features.


2 Module Features
═════════════════

  • Extensible core for handling interlibrary loan requests in Koha
  • As many backends can be added as desirable
  • OPAC request form as well as Intranet request form
  • Intranet request management
  • Ability to create items against a backend (e.g. British Library),
    using its advanced search features, and to then request the item
    from peer libraries.


2.1 What is handled by the module?
──────────────────────────────────

  • Create new requests
  • Allow staff and customer notes
  • Process those requests using custom workflows for backends
  • Retain associations between requests and biblioitems that may be
    created locally
  • Peer lending libraries contact management (using Koha's
    Organizational borrower types)
  • Storage of core request information (borrower links, branch links,
    request status, staff and customer notes, unique identifiers)
  • Storage of arbitrary data returned by backend, and display of that
    data.


2.2 What is not yet handled
───────────────────────────

  • Automatic processing of received ILLs (biblio + biblioitem creation)
  • Integration into specialized ILL loan & reminder policies


3 Installation
══════════════

  • Apply patches (they should apply cleanly and without trouble on
    master)
  • Run databaseupdate to generate the ILL tables.
  • Copy the 'interlibrary_loans' element from
    '$kohaclone_root/etc/koha-conf.xml' to your active koha_conf.xml
  • Update the path in 'interlibrary_loans > backend_dir' in
    koha_conf.xml to point to '$kohaclone_root/Koha/Illbackends'
  • git clone backends into the backend directory:
    ┌────
    │ cd $kohaclone_root/Koha/ && mkdir Illbackends && cd Illbackends
    │ git clone https://github.com/a-sassmannshausen/{Dummy,FreeForm,BLDSS}
    └────
  • Enable ILLModule in syspreferences


4 Optional
══════════

  • Ensure latest Koha-Conf configuration values for interlibrary_loans
    are set (see $kohaclone_root/etc/koha-conf.xml)
  • Create peer lending libraries (by default they are expected to be
    part of the 'ILLLIBS' borrower category, which also needs to be
    created).


5 Missing before inclusion in community
═══════════════════════════════════════

  • Unit tests
  • Documentation (code + manual)
  • Unmediated ILL Request placement workflow
  • Advanced configuration
  • Complete Generic Requests workflow (allow setting requests to
    completed in this way, allow requests to resume backend specific
    workflows after generic email is sent)
  • Friendlier error handling.


6 Test plan
═══════════

6.1 Core Module (+ Dummy backend)
─────────────────────────────────

  • Ensure the Dummy backend is installed (see [Installation])
  • Enable the ILLModule (located under Administration sysprefs)
  • Create a test patron, grant them at least ILL and usual staff
    permissions.
  • Browse to 'Home > ILL requests' (button should be visible)


[Installation] See section 3

6.1.1 Creating requests (Staff)
╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌

  • Click on the 'New ILL request' button.
    ⁃ If you have multiple backends installed, select 'Dummy'
  • Complete the form
    ⁃ Borrowernumber must be a borrowernumber, not a cardnumber.
    ⁃ You will always be shown the same 2 results
  • Request one of the items
  • You have now 'created' the request


6.1.2 Creating requests (Patrons)
╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌

  • Log in to the OPAC
  • Click on 'Your interlibrary loan requests'
  • Click on 'Create a new request'
    ⁃ If you have multiple backends installed, select 'Dummy'
  • Complete the form
    ⁃ As above, you will always be shown the same 2 results
  • Request one of the items
  • You have now 'created' the request.


6.1.3 Editing requests (Staff)
╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌

  • From the ill-requests list, click on 'Manage request'
  • Click on 'Edit request'
  • Add some staff notes (or change other values)
  • Click 'Submit'.


6.1.4 Editing requests (Patrons)
╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌

  • From the patron screen, click on 'Your interlibrary loan requests'
  • click on 'View'
  • Enter some notes.
  • Click on 'Submit modifications'


6.1.5 Requesting Cancellation (Patrons)
╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌

  • From the patron screen, click on 'Your interlibrary loan requests'
  • Click on 'View'
  • Click on 'Request Cancellation'
  • The request status should have changed
  • The request can now be cancelled by staff if they consider the
    cancellation is still possible


6.1.6 Confirming requests (Staff)
╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌

  Once a request is created, it exists in the ILLModule.  But the
  request has not yet been ordered from the source.  To do the latter, a
  request must be confirmed by staff:
  • From the ill-requests list, click on 'Manage request'
  • Click on 'Confirm request'.
    ⁃ The following process will be different for each backend.
    ⁃ In the case of Dummy, a simple click on the button is sufficient.
    ⁃ Other backends may take you through several screens.


6.1.7 Reverting requests (Staff)
╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌

  Once a request is confirmed it may still be possible to undo this
  operation.  This depends on the backend used, and the policies at the
  source.
  • From the ill-requests list, click on 'Manage request'
  • Click on 'Revert request'.
    ⁃ The following process will be different for each backend
    ⁃ In the case of Dummy, a simple click on the button is sufficient.


6.1.8 Deleting requests (Staff)
╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌

  • From the ill-requests list, click on 'Manage request'
  • Click on 'Delete request'
    ⁃ This button will only be visible when the request has not yet been
      confirmed.


6.1.9 Place request with partners (Staff)
╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌

  Rather than use the sources workflows to source a title for a specific
  interlibrary loan, it may be desirable to ask a friendly library
  whether they are able to satisfy the request.

  The ILLModule supports this through "Generic requests".  To use this
  you will need to create 'Organizational patrons' to represent the
  partner libraries.  They must be of the 'ILLLIBS' patron category
  (this can be changed by editing the koha-conf.xml file), which must
  first be created.

  Ensure that these patrons have email addresses!

  Once a few patrons have been set up:
  • From the ill-requests list, click on 'Manage request'
  • Click on 'Place request with partners'
    ⁃ This button will only be visible if the request has not yet been
      confirmed.
  • Complete the form
    ⁃ You may select multiple partners in the select list
    ⁃ You may edit the email as desired.
  • Click on Send email
  • If your server is correctly configured to send emails, all should
    have worked fine and an email should have been sent.


6.2 BLDSS backend
─────────────────

  A backend to place and manage requests with the British library.

  • Repeat tests as above.
  • The workflows will be different for:
    ⁃ 'create'
    ⁃ 'confirm'
  • There is an additional workflow:
    ⁃ 'status': retrieve the current status of the request at the
      British library.


6.3 FreeForm backend
────────────────────

  A backend to allow arbitrary manual creation of requests using an
  unrestricted form of fields & values.

  This backend has no 'source'.  As such, requests that are created need
  to then be 'confirmed' outside of ILLModule (or using the generic
  requests functionality).

  • Repeat tests as above.
  • The workflows will be different for:
    ⁃ 'create'
    ⁃ 'confirm'
    ⁃ 'revert request'

-- 
You are receiving this mail because:
You are watching all bug changes.


More information about the Koha-bugs mailing list