Most of the receipts that print from the Evergreen staff client software are managed via the Print Template Editor (Administration → Workstation → Print Templates) and can be customized on an individual workstation basis. Typically, library systems will set up the receipts the way they want them to print out on one workstation at a branch, then export the settings as a file and import that file to each of the other workstations at that branch.
If Hatch is installed receipts can be forced to use specific printer settings. Printer Settings can be set at Administration → Workstation → Printer Settings.
This is a complete list of the receipts currently in use in Evergreen.
List of Receipts
Select the Template Name of the receipt you wish to customize.
Click Save Locally.
The print templates follow W3C HTML standards http://w3schools.com/html/default.asp.
Print templates use variables for various pieces of information coming from the Evergreen database. These variables deal with everything from the library name to the due date of an item. Information from the database is entered in the templates with curly brackets. Different types of print templates have access to different pieces of information.
Example: {{checkout.title}}
Some print templates have sections that are repeated for each item in a list. For example, the portion of the Checkout print template below repeats every item that is checked out in HTML list format by means of the ng-repeat in the li tag.
<ol> <li ng-repeat="checkout in circulations"> <b>{{checkout.title}}</b><br/> Barcode: {{checkout.copy.barcode}}<br/> Due: {{checkout.circ.due_date | date:"short"}}<br/> </li> </ol>
Table 58.1. Text Formatting
Goal | Original | Code | Result |
---|---|---|---|
Bold (HTML) | hello |
| hello |
Bold (CSS) | hello |
| hello |
Capitalize | circulation |
| Circulation |
Currency | 1 |
| $1.00 |
Table 58.2. Date Formatting
Code | Result |
---|---|
| 2017-08-01T14:18:51.445Z |
| 8/1/17 10:18 AM |
| 8/1/2017 |
You can use Angular JS to only print a line if the data matches. For example:
`$$<div ng-if="hold.email_notify == 't'">Notify by email: {{patron.email}}</div>$$`
This will only print the “Notify by email:” line if email notification is enabled for that hold.
To print just a substring of a variable, you can use a limitTo function: {{variable | limitTo:limit}}
where limit is the number of characters you want.
Original | Code | Result |
The Sisterhood of the Traveling Pants |
| The Sisterhood of th |
123456789 |
| 56789 |
You can use HTML and CSS to add an image to your print template if you have the image uploaded onto a publicly available web server. The logo image from your Evergreen public catalogue can be used for this.
<img src="https://LIBRARYCODE.PROVINCE.catalogue.libraries.coop/eg/opac/images/small_logo.png" style="width:150px;padding:5px;">
You can sort the items in an ng-repeat block using orderBy. For example, the following will sort a list of holds by the shelving location first, then by the call number:
`$$<tr ng-repeat="hold_data in holds | orderBy : ['copy.location.name','volume.label']">$$`
To quickly set up all workstations in a branch in the same way, set up one workstation’s receipt templates completely, then use the “Export Customized Templates” function to save an external file of templates that you can import into other workstations. Just remember to 'Save Locally' once you import the receipts on the new machine.
Table 58.4. Any Type of Print Template
Tag | Notes |
---|---|
{{current_location.name}} | Current library’s full name |
{{current_location.shortname}} | Current library’s short name |
{{current_location.email}} | Current library’s email address |
{{current_location.phone}} | Current library’s phone number |
{{today}} | Today’s time and date - raw data |
{{today|date:'short'}} | Readable time and date: 8/1/17 10:18 AM |
{{today|date:'M/d/yyyy'}} | Date only: 8/1/2017 |
{{staff.first_given_name}} | Staff first name |
Table 58.5. Bills, Current
Tag | Notes |
---|---|
{{xact.summary.balance_owed}} | Balance remaining |
{{xact.copy_barcode}} | Barcode |
{{xact.id}} | Bill ID |
{{xact.xact_start}} | Bill start date |
{{xact.summary.xact_type}} | Bill type (circulation vs. grocery) |
{{xact.summary.last_billing_note}} | Last billing note |
{{xact.summary.last_billing_type}} | Last billing type |
{{xact.summary.last_payment_note}} | Last payment note |
{{xact.summary.last_payment_type}} | Last payment type |
{{xact.title}} | Title |
{{xact.summary.total_owed}} | Total billed |
{{xact.summary.total_paid}} | Total paid |
Table 58.6. Bills, Historical
Tag | Notes |
---|---|
{{xact.summary.balance_owed}} | Balance remaining |
{{xact.copy_barcode}} | Barcode |
{{xact.id}} | Bill ID |
{{xact.xact_start}} | Bill start date |
{{xact.summary.xact_type}} | Bill type (circulation vs. grocery) |
{{xact.summary.last_billing_type}} | Last billing type |
{{xact.summary.total_owed}} | Total billed |
{{xact.summary.total_paid|currency}} | Total paid |
{{xact.summary.last_billing_note}} | Last billing note |
{{xact.summary.last_billing_type}} | Last billing type |
{{xact.summary.last_payment_note}} | Last payment note |
{{xact.summary.last_payment_type}} | Last payment type |
{{xact.title}} | Title |
{{xact.summary.total_owed}} | Total billed |
{{xact.summary.total_paid}} | Total paid |
Table 58.7. Bills, Payment
Tag | Notes |
---|---|
{{payment_applied}} | Amount paid |
{{amount_voided}} | Amount voided |
{{change_given}} | Change given |
{{payment_note}} | Payment note |
{{payment_type}} | Payment type |
{{previous_balance}} | Previous balance |
{{new_balance}} | Remaining balance |
{{payment.xact.copy_barcode}} | Barcode |
{{payment.xact.summary.last_billing_type}} | Last billing type |
{{payment.xact.id}} | Payment ID |
{{payment.amount}} | Payment received |
{{payment.xact.title}} | Title |
Table 58.8. Checkin
Tag | Notes |
---|---|
{{checkin.copy_barcode}} | Barcode |
{{checkin.call_number.label||"Not Cataloged"}} | Call Number (if no call number, displays “Not Cataloged”) |
{{checkin.title}} | Title |
Table 58.9. Checkout
Tag | Notes |
---|---|
{{patron_money.balance_owed}} | Amount Owed |
{{checkout.author}} | Author |
{{checkout.copy_barcode}} | Barcode |
{{checkout.call_number.label}} | Call Number |
{{checkout.circ.due_date}} | Due Date |
{{checkout.copy.price}} | Price |
{{checkout.title}} | Title |
Table 58.10. Hold Pull List
Tag | Notes |
---|---|
{{hold_data.author}} | Author |
{{hold_data.copy.barcode}} | Barcode |
{{hold_data.volume.label}} | Call number |
{{hold_data.hold.hold_type}} | Hold type |
{{hold_data.part.label}} | Part |
{{hold_data.copy.location.name}} | Shelving location |
{{hold.title}} | Title |
Table 58.11. Hold Shelf Slip
Tag | Notes |
---|---|
{{call_number.label}} | Call Number |
{{today}} | Hold available date |
div ng-switch on="hold.behind_desk">div ng-switch-when="t">strong>Private - Hold Behind Desk/strong>/div>div ng-switch-when="f">strong>Public Holds Shelf/strong>/div>/div> | Hold location (Hold behind desk or public holds shelf) |
ol>li ng-repeat="note in hold_notes|filter: {slip : 't'}">strong>{{note.title}}/strong>br/>{{note.body}}/li>/ol> | Hold Notes |
{{hold.request_time | date:'M/d/yyyy'}} | Hold request date |
{{hold.shelf_expire_time | date:'M/d/yyyy'}} | Hold shelf expire date |
{{author}} | Item author |
{{copy.barcode}} | Item barcode |
{{title}} | Item title |
{{hold.email_notify}} | Returns true or false flag |
{{hold.phone_notify}} | Notification phone number |
{{hold.sms_notify}} | Notification SMS text number |
{{patron.card.barcode}} | Patron barcode |
{{patron.email}} | Patron email address |
{{patron.first_given_name}} | Patron first name |
{{patron.family_name}} | Patron last Name |
{{patron.second_given_name}} | Patron middle name |
Table 58.12. Hold Transit Slip
Tag | Notes |
---|---|
{{dest_address.city}} | Destination city |
{{dest_courier_code}} | Destination courier code |
{{dest_location.name}} | Destination full name |
{{dest_location.shortname}} | Destination short name |
{{dest_address.state}} | Destination state |
{{dest_address.street1}} | Destination street address 1 |
{{dest_address.street2}} | Destination street address 2 |
{{dest_address.post_code}} | Destination zip code |
{{hold.behind_desk}} | Hold behind desk |
{{hold.request_time}} | Hold request date |
{{author}} | Item author |
{{copy.barcode}} | Item barcode |
{{title}} | Item title |
{{hold.email_notify}} | Notification email address |
{{hold.phone_notify}} | Notification phone number |
{{hold.sms_notify}} | Notification SMS text number |
{{patron.card.barcode}} | Patron barcode |
{{patron.first_given_name}} | Patron first name |
{{patron.family_name}} | Patron last Name |
{{patron.second_given_name}} | Patron middle name |
Table 58.13. Holds for Bib Record
Tag | Notes |
---|---|
{{holds[0].title}} | Title |
{{hold_data.author}} | Author |
{{hold.copy.barcode}} | Hold target copy barcode |
{{hold.hold.request_time}} | Hold request date |
{{hold.patron_barcode}} | Patron barcode |
{{hold.patron_alias}} | Patron hold alias |
{{hold.patron_last}} | Patron last name |
Table 58.14. Holds for Patron
Tag | Notes |
---|---|
{{hold.author}} | Author |
div ng-if="hold.hold.email_notify == 't'"> {{hold.hold.requestor.email}} /div> | Notify by email (shows email only if selected) |
{{hold.hold.phone_notify}} | Notify by phone (shows number) |
{{hold.hold.sms_notify}} | Notify by SMS text (shows number) |
{{hold.hold.pickup_lib.name}} | Pickup library |
{{hold.hold.request_time}} | Request date |
{{hold.title}} | Title |
Table 58.16. Item Status
Tag | Notes |
---|---|
{{copy.barcode}} | Barcode |
{{copy['call_number.record.simple_record.title']}} | Title |
Table 58.17. Items Out
Tag | Notes |
---|---|
{{checkout.copy.barcode}} | Barcode |
{{checkout.circ.due_date}} | Due date |
{{checkout.title}} | Title |
Table 58.18. Patron Address
Tag | Notes |
---|---|
{{patron.first_given_name}} | Patron first name |
{{patron.second_given_name}} | Patron middle name |
{{patron.family_name}} | Patron last name |
{{address.street1}} | Street address 1 |
{{address.street2}} | Street address 2 |
{{address.city}} | City |
{{address.state}} | State |
{{address.post_code}} | Zip code |
Table 58.19. Patron Note
Tag | Notes |
---|---|
{{note.value}} | Note contents |
{{note.create_date}} | Note creation date |
{{note.title}} | Note title |
{{note.usr.card.barcode}} | Patron barcode |
{{note.usr.first_name}} | Patron first name |
{{note.usr.family_name}} | Patron last name |
{{note.usr.second_given_name}} | Patron middle name |
Table 58.20. Renew
Tag | Notes |
---|---|
{{renewal.copy.barcode}} | Barcode |
{{renewal.circ.due_date}} | Due date |
{{renewal.title}} | Title |
Table 58.21. Transit List
Tag | Notes |
---|---|
{{transit.target_copy.barcode}} | Barcode |
{{transit.source_send_time}} | Date sent |
{{transit.dest.shortname}} | Short name of destination library |
{{transit.source.shortname}} | Short name of sending library |
{{transit.target_copy.call_number.record.simple_record.title}} | Title |
Table 58.22. Transit Slip
Tag | Notes |
---|---|
{{dest_address.city}} | Destination city |
{{dest_courier_code}} | Destination courier code |
{{dest_location.name}} | Destination full name |
{{dest_location.shortname}} | Destination short name |
{{dest_address.state}} | Destination state |
{{dest_address.street1}} | Destination street address 1 |
{{dest_address.street2}} | Destination street address 2 |
{{dest_address.post_code}} | Destination zip code |
{{author}} | Item author |
{{copy.barcode}} | Item barcode |
{{title}} | Item title |