/* for other browsers */
var q = list[i]; list[i] = list[i-1]; list[i-1] = q;
} else {
Alma uses the Fulfillment Overdue and Lost Loan Notification letter to format and send patrons overdue notices and warnings before an item becomes lost. handlers[0] = element["on" + type];
A Hold Shelf for In-Library-Use Resource Sharing Requests The Reading Room also functions as a hold shelf for Resource Sharing Requests that have been designated "In-Library use only" by the lending institution . The CARLI Office plans to push out some basic letter customizations for all libraries who have not yet done their own customizations to the letters in their own Alma Configuration. send hold shelf if (a[0]==b[0]) return 0;
event.preventDefault = fixEvent.preventDefault;
Users need to be assigned the appropriate roles in Alma: The Pick From Shelf List, aka Pick List (and formerly in Voyager- call slip queue) queues the requests for a library's materials, for a specific library, help library staff retrieve material from the shelves.
// work through each column and calculate its type
sortfwdind = document.getElementById('sorttable_sortfwdind');
return innerText.replace(/^\s+|\s+$/g, '');
// create a hash table of event handlers for each element/event pair
/*]]>*/
// create a hash table of event types for the element
if (!Array.forEach) { // mozilla already supports this
return node.text.replace(/^\s+|\s+$/g, '');
var script = document.getElementById("__ie_onload");
} else {
},
WebAnswer The December 2020 Alma release inclused a new feature that allows you to send hold shelf reminder emails to users once items have been on hold for a set number of days. sortfn = sorttable.sort_alpha;
// sort based on the sort keys, and then put the rows back in order
Function.prototype.forEach = function(object, block, context) {
/* Return the item in Alma, selecting the "Transit" link for the item is enough.
if (node.nodeName.toLowerCase() == 'input') {
};
Use the persistent search bar to do a User search for the requester's name. },
}
y = mtch[3]; d = mtch[2]; m = mtch[1];
an expiration date and purge date in the future. if (table.tFoot == null) {
// a counter used to create unique IDs
if (object) {
At this point items can be checked out to the patron by: After selecting the item and entering/pressing OK, item is now checked out to the patron.
return 1;
returnValue = false;
Changes are requested by 'sorttable_sorted_reverse');
The CARLI Office plans to push out some basic var q = list[i]; list[i] = list[i-1]; list[i-1] = q;
var t = list.length - 1;
aa = parseFloat(a[0].replace(/[^0-9.-]/g,''));
The full Create Request form for Patron physical item requests will open. return node.innerText.replace(/^\s+|\s+$/g, '');
});
We will plan to make the XML available, if a library that has done customizations would like to preview how the CARLI-customized version of the letter will look.
for(var i = b; i < t; ++i) {
/* for Mozilla/Opera9 */
/*]]>*/
Forthcoming. sortrevind.innerHTML = stIsIE ? }
}
Identify the ILDS code on the letter and package the items in the ILDS bags, being careful to not overfill the bags.
var resolve = Object; // default
}
headrow[i].sorttable_tbody = table.tBodies[0];
// build an array to sort.
The Return Items window will open. if (table.tHead.rows.length != 1) return; // can't cope with two header rows
},
y = mtch[3]; m = mtch[2]; d = mtch[1];
}
if (document.addEventListener) {
mtch = b[0].match(sorttable.DATE_RE);
this.cancelBubble = true;
Once weve customized the letter, well push the format out from the Network Zone in a way that will not overwrite an institutions version of the letter, if the institution has already customized the letter in their own Alma Configuration. When you scan the item in via Alma you see that you get a selection asking you if you want to do this now or not. break;
// re-reverse the table, which is quicker
// reverse the table, which is quicker
// this is *not* a generic getInnerText function; it's special to sorttable. reverse: function(tbody) {
makeSortable: function(table) {
if (this.className.search(/\bsorttable_sorted_reverse\b/) != -1) {
Ful Lost Loan Notification Letter. Confirm that the patron selected your institution as their pick-up institution by using the. for(var i = b; i < t; ++i) {
Locate the request in the Fulfillment> Borrowing Requests list. }
Email the Print Slip Report to a staff member. return event;
if (d.length == 1) d = '0'+d;
/*@cc_on @*/
for(var i = t; i > b; --i) {
else {
if (m.length == 1) m = '0'+m;
else if (typeof node.innerText != 'undefined' && !hasInputs) {
if (table.rows[i].className.search(/\bsortbottom\b/) != -1) {
In this example, 01CARLI_SIC, the SIC represents Southern Illinois University- Carbondale. In the mean time, please review: Ex Libris Hold Shelf Management Documentation. Locate the item on either the Fulfillment> Active Hold Shelf, or for certain statuses, the Fulfillment> Expired Hold Shelf. // Dean's forEach: http://dean.edwards.name/base/forEach.js
var stIsIE = /*@cc_on! var forEach = function(object, block, context) {
// written by Dean Edwards, 2005
row_array[row_array.length] = [sorttable.getInnerText(rows[j].cells[col]), rows[j]];
return aa-bb;
}
}
theadrow = this.parentNode;
};
// Sorttable v1 put rows with a class of "sortbottom" at the bottom (as
/* sort functions
var handlers = element.events[type];
However, you may do Fulfillment> Manage Patron Services> "Find user in other institution" search if the patron has a common name. var swap = true;
if (this.$$handleEvent(event) === false) {
};
The request should now display in the holding library's Fulfillment> Pick from Shelf list. var forEach = function(object, block, context) {
},
Selecting the "Attach" button will automatically scan in the item a second time; this time the destination should be the patron's pick-up location and a Transit Letter may be printed. b++;
}
element.removeEventListener(type, handler, false);
delete row_array;
sort_numeric: function(a,b) {
sorttable = {
return node.value.replace(/^\s+|\s+$/g, '');
Library staff must have either the Fulfillment Services Manager or Fulfillment Services Operator role scoped to the Resource Sharing Library to convert requests. // i.e., we "decorate" each row with the actual sort key,
return node.nodeValue.replace(/^\s+|\s+$/g, '');
second = parseInt(possdate[2]);
This will create a Preview Letter, which can assist with letter editing. },
element["on" + type] = handleEvent;
' 6' : ' ▾';
table.appendChild(tfo);
forEach(document.getElementsByTagName('table'), function(table) {
Alma: Overdue and Lost Loan Rules, with associated configuration settings, Letter Content is Configured in Configuration > General > Letters > Letters Configuration. }
// work through each column and calculate its type
this.removeChild(document.getElementById('sorttable_sortfwdind'));
for (var i=0; i General > Letter emails > On Hold Shelf Letter). }
// build an array to sort. The system generated additional ID may be added to your pick from shelf and hold shelf slips by configuring the slips XSL. Scan/enter the barcode for the item. You can also contact the requester's home library to ask for assistance in contacting the patron, if you prefer. col = this.sorttable_columnindex;
After staff scan in the item under Fulfillment> Scan in items> Scan item barcode, the pop-up note mentioned above should display on screen. sort_numeric: function(a,b) {
second = parseInt(possdate[2]);
var innerText = '';
sort_ddmm: function(a,b) {
sortfwdind.id = "sorttable_sortfwdind";
Select Confirm. return sorttable.sort_mmdd;
function handleEvent(event) {
The request for the volume should now display in the holding library's Fulfillment> Pick from Shelf list. forEach(theadrow.childNodes, function(cell) {
The "Task" column will have the most recent status for the request, including whether the item is in transit to the patron's pickup location with the status "Transit Item" or if the item is on hold at the patron's pickup location. if (object instanceof Function) {
delete newrows;
event.preventDefault = fixEvent.preventDefault;
}
return node.nodeValue.replace(/^\s+|\s+$/g, '');
if (mtch) { override = mtch[1]; }
Since we need consistency across the consortium for the I-Share patrons, a portion of this letters customizations will be consortially constructed. This letter is sent by the Send Hold Shelf Reminders position. sortfn = sorttable.sort_alpha;
tfo.appendChild(sortbottomrows[i]);
Every letter that can be sent to a printer/email can also be printed out using Quick Printing. dean_addEvent(headrow[i],"click", sorttable.innerSortFunction = function(e) {
resolve = String;
// re-reverse the table, which is quicker
Circulation Letters - Alma - Princeton University Library Confluence or - as separator
return sorttable.sort_mmdd;
var swap = true;
if (table.getElementsByTagName('thead').length == 0) {
if (element.addEventListener) {
The "Active Hold Shelf" is a bit of a misnomer; it should be called the "Entire Hold Shelf". sorttable.reverse(this.sorttable_tbody);
Update the cancellation reason that will be recorded for record keeping. Acquisitions or cataloging workflow requests, Materials past their shelving return date. };
Note: If no item barcode prints on the request/is included in the request, the request is likely a title-level request; any copy/any barcode from the title can fill the request. sortfwdind.innerHTML = stIsIE ? }
Create one. // guess the type of a column based on its first non-blank row
// looks like a date, but we can't tell which, so assume
break;
****************************************************************** */
/*@if (@_win32)
WebAnswer The April 2022 Alma release contains a new feature that allows libraries to automatically export unfilled borrowing resource sharing requests to WorldShare ILL. To implement this new feature at your library, you will need to do the following: Obtain an API key from OCLC Configure an Item Policy for WorldShare ILL return;
For AFN requested materials, the "delay for hold notification" period at the patron's pick-up library should be consulted before the item's home library sends the letter. }
if (dt1==dt2) return 0;
});
delete element.events[type][handler.$$guid];
for (var j=0; j 0 ) {
case 3:
// array-like enumeration
Create one. Preparation for converting a local request for Resource Sharing: Double-check that the request is a "Patron physical item request.". Alma should print the "Hold Shelf Request Slip Letter," or send it to the printouts queue, depending on the setup at your library. }
Array.forEach = function(array, block, context) {
//sorttable.shaker_sort(row_array, this.sorttable_sortfunction);
if (m.length == 1) m = '0'+m;
sortfwdind = document.createElement('span');
if (dt1==dt2) return 0;
Check or uncheck the "Notify user" checkbox; this checkbox determines whether Alma will email a Cancellation letter to the patron. As such, we need this letter to be broadly applicable, without containing specific contact details or direction for pick-up.
In conversations with the Resource Sharing Committee members, there was interest in having the CARLI Office do an initial customization of this letters formatting, to place the requesting patrons name, and the expiration date near the top. Libraries will be able to decide how they would like the overdue and lost rules set for their own local patrons. return node.textContent.replace(/^\s+|\s+$/g, '');
if (_timer) clearInterval(_timer);
// gets the text we want to use for sorting for a cell. block.call(context, chr, index, string);
};
On the Expired Hold Shelf Items page, open the "Send to Institution" tab. sort_alpha: function(a,b) {
};
The reqeust will disappear from the pick from shelf list.
Hold When staff visit Fulfillment> Scan in Items to scan the item's barcode, the item will prompt to be reshelved. for (var i=0; i Resource Requests> Scan in Items. newrows[newrows.length] = tbody.rows[i];
element["on" + type] = handleEvent;
resolve = Array;
object.forEach(block, context);
this.className += ' sorttable_sorted';
delete newrows;
Print the Print Slip Report to an email address-enabled printer (or email address) [email address for staff or printer will need to be white-listed in Alma to receive emails during test]. // put the first table row in it. The version of the letter you will see during the AFN test is not the version of the pick slip letter you will see long term; the CARLI Office is working on the letter's formatting, included fields, and will update the letter during and after the AFN testing period. Alma Letters: Overview and consortial letter management - CARLI if (!node) return "";
}
}
To transit multiple items simultaneously, check the check box for the item, and then use the Transit button at the top of the list of all items. mtch = a[0].match(sorttable.DATE_RE);
headrow[i].sorttable_columnindex = i;
headrow = table.tHead.rows[0].cells;
}
Enter the patron's name or identification number and select "Find User".
if (table.className.search(/\bsortable\b/) != -1) {
first = parseInt(possdate[1]);
sortbottomrows[sortbottomrows.length] = table.rows[i];
Select the Request Type of. var b = 0;
var t = list.length - 1;
}
} else {
if (table.tFoot == null) {
See How To: Fulfillment in Alma for more step-by-step directions. Letters to the term that Alma uses to describe patron notices and relevant library slips. }
if (node.getAttribute("sorttable_customkey") != null) {
function dean_addEvent(element, type, handler) {
if (typeof this.prototype[key] == "undefined") {
dt2 = y+m+d;
dean_addEvent.guid = 1;
} else {
if (dt1==dt2) return 0;
System Notes: The system could not find any items that can fulfill this request.
Confirm that the request is a local request by noting the Pick from Shelf screen does not display the Network Identifiers (See the Request by I-Share Patrons section below for an example of network identifiers) for the request. Create one. if (isNaN(bb)) bb = 0;
If you chose to notify the patron, they should receive the email. // add W3C standard event methods
If the hold has expired for an item that belongs to another I-Share library, that item will be listed on the "Sent to Institution" tab. sortrevind = document.getElementById('sorttable_sortrevind');
this.removeChild(document.getElementById('sorttable_sortfwdind'));
table.appendChild(tfo);
y = mtch[3]; d = mtch[2]; m = mtch[1];
// sort based on the sort keys, and then put the rows back in order
headrow[i].sorttable_sortfunction = sorttable["sort_"+override];
sorttable.sort_alpha = function(a,b) { return a[0].localeCompare(b[0]); }
};
if (first > 12) {
The active list is intended to enumerate all the items that are physically on the shelf, regardless of whether their requestsare expired or they should be removed. and keep looking
/*]]>*/
If the request contains patron-added volume information, Alma will be unable to confirm (on its own) that a specific item owned by the library receiving the request will be able to fill it; the request will need staff intervention. // Safari doesn't support table.tHead, sigh
}
}, 10);
Agenda Overview This letter will be formatted for printing on a receipt printer. The "Expired Hold Shelf" list is subdivided into tabs based on the next action for staff to take with the item. var resolve = Object; // default
};
1.
tb.appendChild(row_array[j][1]);
/* for Internet Explorer */
/* Resource Requests> Pick from Shelf. As long as the item has not been removed from the hold shelf, it continues to appear in the active hold shelf list, even if the request is expired. tb.appendChild(row_array[j][1]);
The CARLI Office has confirmed all date fields are in MM/DD/YYYY format, when appropriate. if (element.addEventListener) {
else if (typeof node.text != 'undefined' && !hasInputs) {
var t = list.length - 1;
if (m.length == 1) m = '0'+m;
resolve = Array;
To fill the request with the item, select the Ellipse in the row for the item on the Scan in Items screen, and then select "Attach to request.". // generic enumeration
@*/false;
document.write("