Bug 28195

Summary: When on-shelf holds are not allowed, it's impossible to force item-level holds in OPAC
Product: Koha Reporter: Caroline Cyr La Rose <caroline.cyr-la-rose>
Component: Hold requestsAssignee: Bugs List <koha-bugs>
Status: NEW --- QA Contact: Testopia <testopia>
Severity: enhancement    
Priority: P5 - low CC: gmcharlt
Version: Main   
Hardware: All   
OS: All   
GIT URL: Change sponsored?: ---
Patch complexity: --- Documentation contact:
Documentation submission: Text to go in the release notes:
Version(s) released in:
Circulation function:

Description Caroline Cyr La Rose 2021-04-22 16:33:56 UTC
This is the setting: a library doesn't allow on-shelf holds. But we want OPAC users to be able to place holds on checked out serial issues. Serials are catalogued as one record for the title with each issue being an item on this record.

The circulation rule for serials says 
- holds allowed: 5
- holds per record: 5
- on-shelf holds: if all unavailable (aka, no on-shelf holds allowed)
- OPAC item level hold: force (aka, OPAC users must choose a specific item to reserve)

item-level_itypes syspref is set to specific item

So for example, we have this record (there is no serial subscription attached to this record, just regular items)
National Geographic
- June 2020: available
- July 2020: available
- August 2020: checked out
- September 2020: checked out
- October 2020: available
- November 2020: checked out
- December 2020: available

Ideally, in this context, an OPAC user should be able to place a hold on the august, september and/or november issues.

I also tried changing on-shelf holds to "if any unavailable", but it doesn't allow my OPAC user to place a hold either.

To test:
1) Make sure item-level_itypes is set to specific item.
2) Create a circulation rule for serials (Patron/Continuing resources for example) with 
   - holds allowed = 5
   - holds per record = 5
   - on-shelf holds allowed = if all unavailable
   - opac item level hold = force
3) Create a record and add several serial-type items (Continuing resources for example)
4) Check out some (but not all) items to patrons
5) In the OPAC, log in with a patron of the right category (Patron for example)
6) Try to place a hold on a checked out serial item -> it says "There are no items that can be placed on hold."

Is this a bug or am I misunderstanding something?
Comment 1 Katrin Fischer 2021-04-22 18:47:43 UTC
Hi Caroline,

I believe for on shelf holds set to "if all unavailable" what you describe is the intended behaviour: a hold is only possible, if all available items are gone.

What you want, I think is "if any unavailable" and force item level holds. 

It's our standard configuration. If it won't work with "any", then I'd say we have a regression.