If BlockReturnofWithdrawnItems is set to block and an item that is both withdrawn and lost is checked in, Koha will not mark the item as returned but will mark it as found and generate a refund if circ rules allow refunds. To test: - Set BlockReturnofWithdrawnItems to Block - Set BlockReturnofLostItems to Don't Block - Set Default lost item fee refund on return policy to Yes - Check out an item with a replacement cost to a patron - Mark the item as lost - Mark the item as withdrawn - Note that the patron now has a charge for the replacement fee - Check the item in - Note that the patron now has a credit for the replacement fee
Bug 21231 plugged this same hole for BlockReturnofLostItems: https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=21231
This is a problematic bug for our library. We've been on Koha for a few months and have just encounter this bug. We use this setting to prevent our employees from check in items that our library cannot accept back. Either due to a no refund policy or due to collection agency rules.
Still valid on master
This bug continues to cause problems with lost-paid items that we cannot accept back and refund the money.
Created attachment 133123 [details] [review] Bug 22042: Block all return actions when BlockReturnOfWithdrawn items is set to block Currently this syspref only bokcs the literal 'return' from a patron, i.e. the checkin It still processes transfers, refunds lost items, updates NotForLoan status etc. We should block all of these things To test: 1 - Set BlockReturnOfWithdrawn to block 2 - Set an item as lost and withdrawn 3 - Check it in 4 - Item is found 5 - Apply patch 6 - Repeat 1-3 7 - Checkin is blocked, item still lost
Created attachment 136693 [details] [review] Bug 22042: Block all return actions when BlockReturnOfWithdrawn items is set to block Currently this syspref only bokcs the literal 'return' from a patron, i.e. the checkin It still processes transfers, refunds lost items, updates NotForLoan status etc. We should block all of these things To test: 1 - Set BlockReturnOfWithdrawn to block 2 - Set an item as lost and withdrawn 3 - Check it in 4 - Item is found 5 - Apply patch 6 - Repeat 1-3 7 - Checkin is blocked, item still lost Signed-off-by: Michal Urban <michalurban177@gmail.com>
Comment on attachment 136693 [details] [review] Bug 22042: Block all return actions when BlockReturnOfWithdrawn items is set to block Review of attachment 136693 [details] [review]: ----------------------------------------------------------------- Sorry Nick.. this doesn't look quite right yet.. ::: C4/Circulation.pm @@ +2096,5 @@ > > + if ( $item->withdrawn ) { # book has been cancelled > + $messages->{'withdrawn'} = 1; > + $doreturn = 0 if C4::Context->preference("BlockReturnOfWithdrawnItems"); > + return ( $doreturn, $messages, $issue, ( $patron ? $patron->unblessed : {} )); This doesn't look quite right to me.. we're returning early now regardless of the BlockReturnOfWithdrawnItems preference?
Created attachment 143373 [details] [review] Bug 22042: Block all return actions when BlockReturnOfWithdrawn items is set to block Currently this syspref only bokcs the literal 'return' from a patron, i.e. the checkin It still processes transfers, refunds lost items, updates NotForLoan status etc. We should block all of these things To test: 1 - Set BlockReturnOfWithdrawn to block 2 - Set an item as lost and withdrawn 3 - Check it in 4 - Item is found 5 - Apply patch 6 - Repeat 1-3 7 - Checkin is blocked, item still lost
Created attachment 143379 [details] [review] Bug 22042: Block all return actions when BlockReturnOfWithdrawn items is set to block Currently this syspref only bokcs the literal 'return' from a patron, i.e. the checkin It still processes transfers, refunds lost items, updates NotForLoan status etc. We should block all of these things To test: 1 - Set BlockReturnOfWithdrawn to block 2 - Set an item as lost and withdrawn 3 - Check it in 4 - Item is found 5 - Apply patch 6 - Repeat 1-3 7 - Checkin is blocked, item still lost Signed-off-by: Andrew Fuerste-Henry <andrewfh@dubcolib.org>
Created attachment 145279 [details] [review] Bug 22042: Block all return actions when BlockReturnOfWithdrawn items is set to block Currently this syspref only bokcs the literal 'return' from a patron, i.e. the checkin It still processes transfers, refunds lost items, updates NotForLoan status etc. We should block all of these things To test: 1 - Set BlockReturnOfWithdrawn to block 2 - Set an item as lost and withdrawn 3 - Check it in 4 - Item is found 5 - Apply patch 6 - Repeat 1-3 7 - Checkin is blocked, item still lost Signed-off-by: Andrew Fuerste-Henry <andrewfh@dubcolib.org> Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Nice work everyone! Pushed to 23.05.x for the next release
Nice work, thanks everyone! Pushed to 22.11.x for the next release.
tests don't apply cleanly to 22.05.x, no backport. If needed please rebase
Created attachment 145659 [details] [review] Bug 22042: [22.05.x] Block all return actions when BlockReturnOfWithdrawn items is set to block Currently this syspref only bokcs the literal 'return' from a patron, i.e. the checkin It still processes transfers, refunds lost items, updates NotForLoan status etc. We should block all of these things To test: 1 - Set BlockReturnOfWithdrawn to block 2 - Set an item as lost and withdrawn 3 - Check it in 4 - Item is found 5 - Apply patch 6 - Repeat 1-3 7 - Checkin is blocked, item still lost Signed-off-by: Andrew Fuerste-Henry <andrewfh@dubcolib.org> Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Backported to 22.05.x for upcoming 22.05.09
applied to 21.11.x for 21.11.16.
Not backported to 21.05.x