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

Emmi Takkinen <[email protected]> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |ASSIGNED

--- Comment #1 from Emmi Takkinen <[email protected]> ---
The problem seems to be in the Koha::Hold->cancel. In the section where we
charge a cancel fee there is a if statement "if $charge" after calling sub
add_debit. This allows value "0.00" to be passed to the add_debit and it then
gets caught in statement "unless ( $amount > 0 )" which then calls exception
AmountNotPositive. This also happens when syspref
ExpireReservesMaxPickUpDelayCharge has value 0.00, not just with rule "Expired
hold charge".

To reproduce:
1. Enable syspref ExpireReservesMaxPickUpDelay.
2. Set syspref ReservesMaxPickUpDelay value as 1.
3. Set syspref ExpireReservesMaxPickUpDelayCharge value as 0.00.
4. Find a waiting hold which has expiration date further than 
ReservesMaxPickUpDelay value is.
5. Run cronscript cancel_expired_holds.pl.
=> Exception 'Koha::Exceptions::Account::AmountNotPositive' thrown 'Debit
amount passed is not positive' is raised.
6. Set syspref ExpireReservesMaxPickUpDelayCharge value as 0 and run cron
again.
=> NO exception is raised.

-- 
You are receiving this mail because:
You are watching all bug changes.
You are the assignee for the bug.
_______________________________________________
Koha-bugs mailing list
[email protected]
https://lists.koha-community.org/cgi-bin/mailman/listinfo/koha-bugs
website : http://www.koha-community.org/
git : http://git.koha-community.org/
bugs : http://bugs.koha-community.org/

Reply via email to