@@ -, +, @@ --- C4/Circulation.pm | 6 ++++++ ...tanding_branch_transfers_when_marked_as_lost_syspref.sql | 1 + .../prog/en/modules/admin/preferences/circulation.pref | 6 ++++++ 3 files changed, 13 insertions(+) create mode 100644 installer/data/mysql/atomicupdate/bug_21732-cancel_outstanding_branch_transfers_when_marked_as_lost_syspref.sql --- a/C4/Circulation.pm +++ a/C4/Circulation.pm @@ -3679,6 +3679,12 @@ sub LostItem{ MarkIssueReturned($borrowernumber,$itemnumber,undef,undef,$patron->privacy) if $mark_returned; } + + my $transfers = GetTransfers($itemnumber); + if ( C4::Context->preference('LostItemCancelOutstandingTransfers') && $transfers ) { + my $deletedtransfer = DeleteTransfer($itemnumber); + } + } sub GetOfflineOperations { --- a/installer/data/mysql/atomicupdate/bug_21732-cancel_outstanding_branch_transfers_when_marked_as_lost_syspref.sql +++ a/installer/data/mysql/atomicupdate/bug_21732-cancel_outstanding_branch_transfers_when_marked_as_lost_syspref.sql @@ -0,0 +1, @@ +INSERT INTO systempreferences (variable, value, options, explanation, type) VALUES ('LostItemCancelOutstandingTransfers', 0, 'Enable|Disable', 'When an item marked as lost has a outstanding branch transfer, cancel the outstanding transfer', 'YesNo'); --- a/koha-tmpl/intranet-tmpl/prog/en/modules/admin/preferences/circulation.pref +++ a/koha-tmpl/intranet-tmpl/prog/en/modules/admin/preferences/circulation.pref @@ -595,6 +595,12 @@ Circulation: - pref: ReservesMaxPickUpDelay class: integer - days. + - + - pref: LostItemCancelOutstandingTransfers + choices: + yes: "Enable" + no: "Disable" + - When an item marked as lost has a outstanding branch transfer, cancel the outstanding transfer - - pref: ExpireReservesMaxPickUpDelay choices: --