TransportCostMatrix();
Returns Transport Cost Matrix as a hashref <to branch code> => <from branch code> => cost
UpdateTransportCostMatrix($records);
Updates full Transport Cost Matrix table. $records is an arrayref of records. Records: { frombranch => <code>, tobranch => <code>, cost => <figure>, disable_transfer => <0,1> }
GetHoldsQueueItems($branch);
Returns hold queue for a holding branch. If branch is omitted, then whole queue is returned
CreateQueue();
Top level function that turns reserves into tmp_holdsqueue and hold_fill_targets.
my $biblionumber_aref = GetBibsWithPendingHoldRequests();
Return an arrayref of the biblionumbers of all bibs that have one or more unfilled hold requests.
my $requests = GetPendingHoldRequestsForBib($biblionumber);
Returns an arrayref of hashrefs to pending, unfilled hold requests on the bib identified by $biblionumber. The following keys are present in each hashref:
biblionumber
borrowernumber
itemnumber
priority
branchcode
reservedate
reservenotes
borrowerbranch
The arrayref is sorted in order of increasing priority.
my $available_items = GetItemsAvailableToFillHoldRequestsForBib($biblionumber, $branches_ar);
Returns an arrayref of items available to fill hold requests for the bib identified by $biblionumber. An item is available to fill a hold request if and only if:
* it is not on loan
* it is not withdrawn
* it is not marked notforloan
* it is not currently in transit
* it is not lost
* it is not sitting on the hold shelf
MapItemsToHoldRequests($hold_requests, $available_items, $branches, $transport_cost_matrix)