Creating Routing Rules

Print Friendly and PDF Follow

By using routing rules, you can change default Ares processes by having the system automatically skip or add steps to the basic Reserves process.

Each time the status of an item is changed by the Ares client, the system runs a query to cycle through any rules that exist in the Routing table and determine if any active routing rules should be applied to that item.

You can create routing rules in the Ares Customization Manager under System | General | Routing.

  1. Click New Record.
  2. Fill out the following values:

    RuleID

    Type in a number you want to be assigned with the routing rule.
    Each routing rule must have a unique ID.

    Active

    If checked this rule will be active. If unchecked, the rule will be inactive.

    Status

    The transaction status to which the rule will apply

    Match

    The query string for the routing rule. This string should only reference
    the Courses and Items tables.

    New Status

    The transaction status to which the request will be routed to.

    Description

    Text that describes what the rule is intended to do.

  3. Click Save.

General Guidelines

  • Routing rules should be created so that no two routing rules apply to the same transaction at the same time. This means that the Status and Match values, taken together, should be unique for each rule in the table.
  • Routing rules should be created so that they are unique to your process tracking. In other words, the same rule should not apply to the same transaction multiple times during the course of standard processing. Routing rules should be created to be unique to a specific step in your process.
  • Routing rules can only reference the Items and Courses tables.
  • The Routing rule Match value cannot exceed 500 characters.

The Match Value

The Match value in a routing rule is arguably the most important piece of the Routing entry. This value is where you may set the conditions that distinguish one routing rule from another. These conditions, coupled with the other conditions specified in a routing rule, determine which transactions are impacted by the rule and which are not. As stated before, this query string should only reference the Items and Courses tables unless a compound routing rule is used. For the match value:

  • Each item, course, and user table value name in the match string must be preceded by an (i.) for the items table, a (c.) for the courses table, or a (u.) for the users table.
  • Only single quotation marks ('), not double quotation marks (") may be used in the match string.
  • There cannot be any extra characters or spaces in the match string.
  • If you are using OR clauses in your match string, it's a good practice to surround them with parentheses.

    For example:

    (i.Location like '%alpha%' or i.Location like '%beta%')
    (i.CallNumber like ‘%gamma%’ or i.CallNumber like ‘%omega%')

See the examples below for demonstrations on how to correctly write and format the match string. If a match string is not formatted correctly, the routing rule will not work.

Example Routing Rules

In this example, you want to send all item requests received from users in the Psychology department to a special queue called Awaiting Reserves Processing - Psychology when they are received.

For this routing example to work properly, you would also have to create a custom queue named Awaiting Reserves Processing - Psychology.

RuleID

1

Active

True (checked)

Status

Awaiting Reserves Processing

Match

c.Department = 'Psychology'

NewStatus

Awaiting Reserves Processing - Psychology

Description

Moves requests from Psychology Dept to Awaiting Processing Psychology.

In this example, you want all Video requests to go to a special review queue.

For this routing example to work properly, you would also have to create a custom queue named Awaiting Reserves Video Processing.

RuleID

2

Active

True (checked)

Status

Awaiting Reserves Processing

Match

i.ItemFormat = 'Video'

NewStatus

Awaiting Reserves Video Processing

Description

Moves all video requests to Awaiting Reserves Video Processing

In this example, you want to send all requests received from the high-priority faculty members John Doe and Jane Doe to a supervisor review queue.

For this routing example to work properly, you would also have to create a custom queue named Awaiting Supervisor Review.

RuleID

3

Active

True (checked)

Status

Awaiting Reserves Processing

Match

u.Username IN ('johndoe','janedoe')

You could also write the string this way:

u.Username = 'johndoe' OR u.Username = 'janedoe'

NewStatus

Awaiting Supervisor Review

Description

Moves John Doe and Jane Doe requests to Awaiting Supervisor Review

Questions?

If this article didn’t resolve your issue, please contact Atlas Support for assistance:

Contact Support