Skip to main content
ExLibris
  • Subscribe by RSS
  • Ex Libris Knowledge Center

    vxws: Hold Per Item API does not include timestamp

    • Article Type: General
    • Product: Voyager
    • Product Version: 8.2.2

    Description:
    Issue number: 16384-20337
    Module: vxws / Hold Per Item RESTful API
    Server platform affected: all
    Releases replicated in: 8.1.1
    Last version without bug: n/a

    Expected results: If a patron places a hold request with an expiration / not needed after date that is today’s date, the hold will expire at the end of today.

    Actual results: If a patron places a hold request with an expiration / not needed after date that is today’s date, the Hold Per Item API does not submit a time with the date, and the expiration is recorded as [today’s date] 00:00:00 in the Voyager database.

    Workflow implications: Patron hold requests expire immediately. Also, expiration is shortened by a day for dates in the future.

    Replication steps:
    Using the Hold Per Item RESTful API and PUT, fill in the <bracketed> information with valid data and submit the following URL to the Voyager server:

    http://<IP>:<port>/vxws/record/<bib_id>/items/<item_id>/hold?patron=<patron_id>&patron_homedb=1@<db_key>

    along with this XML (filling in the {bracketed} information with valid data)
    <?xml version="1.0" encoding="UTF-8"?>
    <hold-request-parameters>
    <pickup-location>{valid pickup location id}</pickup-location>
    <last-interest-date>{today’s date in YYYYMMDD format}</last-interest-date>
    <comment>testing hold request</comment>
    <dbkey>1@{db_key}</dbkey>
    </hold-request-parameters>

    Voyager should respond with XML indicating the request is successful.

    Check the hold request in the database. The example patron’s patron_id=435.

    SQL> alter session set nls_date_format='YYYY-MM-DD hh24:mi:ss';

    Session altered.

    SQL> select * from hold_recall where patron_id=435;

    HOLD_RECALL_ID PATRON_ID H PICKUP_LOCATION EXPIRE_DATE AVAILABLE_NOTICE_COUNT AVAILABLE_NOTICE_DA CREATE_DATE
    -------------- ---------- - --------------- ------------------- ---------------------- ------------------- -------------------
    CREATE_OPI CREATE_LOCATION_ID BIB_ID R REQUEST_ITEM_COUNT REQUEST_GROUP_ID
    ---------- ------------------ ---------- - ------------------ ----------------
    PATRON_COMMENT PATRON_GROUP_ID CALL_SLIP_ID
    ---------------------------------------------------------------------------------------------------- --------------- ------------
    HOLDING_DB_ID MODIFY_OPI MODIFY_DATE MODIFY_LOCATION_ID
    ------------- ---------- ------------------- ------------------
    316 435 H 12 2012-11-14 00:00:00 0 2012-11-14 08:56:59
    OPAC 8 7950 C 1 0
    testing hold request 2 0

    Note the create_date is today at 8:56 a.m. and the expire date is today at 12:00 a.m.

    Workaround: None on the backend. Patrons will have to choose the tomorrow's date to create a hold request that expires at the end of today.

    Resolution:
    Fixed in Voyager 8.2.2.


    • Article last edited: 3/16/2015