Home → Circulation in Evergreen → Holds Management → Hold Fulfillment in NC Cardinal
Last Updated 06/18/2024
There are three ways that holds can be limited in NC Cardinal:
If any of these three indicates that the item cannot circulate, then NC Cardinal will block the hold.
Once a patron places an eligible hold request, they are added to a queue. If there are patrons in the hold queue, the Evergreen Hold Targeter begins to search for a specific copy to fulfill that hold. It targets in the following order:
If there is not an available copy at the branch level, the targeter moves on to the system level. If there is not an available copy in the system, it will begin to target in the wider consortium, beginning with systems that are closest by geographic proximity.
When an item is targeted for a hold, it will show up on the owning library's Holds Pull List. If the target library does not act on the hold within 24 hours, the hold will automatically retarget and a new target copy and location are identified.
When an item with an active hold request is scanned for checkin, that item will be targeted for the next hold in line. However, if there is a hold request for pickup at the branch where the copy is checked in, that hold request will move to the top of the queue. This reduces the amount of time items spend in transit, thereby moving through the queue more quickly.
The 24-hour targeter is part of the reason it is important for staff at all Cardinal libraries run their pull list every morning that the library is open and get everything pulled and scanned right away. There are often lots of patron holds placed overnight. At least once a day is necessary; twice is even better. The targeter re-evaluates every 24 hours, even if the library is closed.
There are actually two ways an item can be targeted/captured to fill a hold. The second way is called opportunistic capture, which means that, when an item that is eligible to fill a hold is checked in, Evergreen may immediately target that item and put it into transit to the pickup library for a patron. Those two functions act in concert to fill holds.
There has sometimes been a misconception among some staff that a targeted item shows up on multiple pull lists at the same time because, by the time the library pulls the item from the shelf and scans it on the check in screen, Evergreen says to put the item back on the shelf rather than targeting a hold. That usually happens because there was a gap between the time the hold list was run/printed and the time the item was actually pulled and scanned. In that gap, someone at another branch had checked in an eligible item and Evergreen targeted that item instead. Only one item is targeted at a time and shows up on only one pull list at a time.
Hold limits are rather complex, and unfortunately there is nothing as simple as checking a box to indicate whether a particular hold policy should or should not apply to a particular patron group or item. There are hold policies that apply to your library patrons which may be set to limit your patrons to 10 holds. However, the consortium sharing limit on holds is 25, so there cannot be holds policies that block users at other libraries from placing holds on books, audiobooks, and videos from your library up to that limit per patron. In other words, you can have policies that limit your own patrons to 10 holds, but not other consortium library patrons.
In Evergreen, hold policies do not consider the circulation modifier when applying the max hold limit to determine whether a hold is permissible. Evergreen only considers how many holds the patron currently has, regardless of whether the circulation modifier of the items on hold matches the circulation modifier for the max hold limit on the hold policy applying to the hold the patron is placing. So, if a library has set a hold limit of 1 for TECHNOLOGY items, patrons will not be able to place a hold on those TECHNOLOGY items if they already have an active hold on anything else, regardless of the type of materials those other holds are for. Staff with Circ Lead or above permission group can override and place the hold for the patron, so it is something you will need to educate staff on, so that they are aware and prepared to override and inform patrons, as needed.
Which policy a particular hold request hits can be complex, as it involves many different factors — the particular patron account, permission group, item settings, shelving location, owning library, and pickup location — so it may be possible for a number of different hold policies to be eligible to apply to a patron's hold request, based on those factors. However, Evergreen will only choose one policy, based on weighting and then random selection if 2 or more policies have the same weight.
Reason for Block | Explanation | Evergreen Error |
---|---|---|
The patron is barred | Barred patrons cannot place holds | actor.usr.barred |
The item's circulation library does not fulfill holds | Circ library is skipped for hold targeting | circ.holds.target_skip_me |
Hold rules reject this item as unholdable | Hold request hit a blocking policy | config.hold_matrix_test.holdable |
The patron has reached the maximum number of holds | Hit a hold policy with a max holds lower than # of holds on patron record; max holds could be zero | config.hold_matrix_test.max_holds |
The item is too new to transit this far | Item has active age hold protection in place | config.rule_age_hold_protect.prox |
The item is not holdable | Item record is marked Holdable=False or Reference=True | item.holdable |
The item's location is not holdable | Shelving location is marked Holdable=False or Reference=True | location.holdable |
The item is not in a holdable status | Item status does not allow holds (see Item Statuses in Reports kb Appendix D) | status.holdable |
The system could not find this item | Rare — haven't seen this one | no_item |
The system could not find any items to match this hold request | No items in an Available or Checked out status (items could be Missing, Lost, Damaged, etc.) | no_ultimate_items |
System rules do not define how to handle this item | Evergreen could not find a matching hold policy to allow/deny the hold request | no_matchpoint |
The item cannot transit this far | Range from owning library is not compatible with hold pickup location | transit_range |