Floating Groups

Before floating groups items could float or not. If they floated then they floated everywhere, with no restrictions.

After floating groups where an item will float is defined by what group it has been assigned to.

The floating groups feature was added in Evergreen 2.5.

What is Floating

Floating refers to items having their circulating library changed to the location they are checked-in at. So instead of always going in transit back to a certain circulating library , the item can stay where it was last returned.

Some of the benefits of floating are the reduction of items going into delivery, and that items may stay more adjacent to patrons that may want to check them out again. One downside can be that the collection at a location can become unbalanced without staff managing it. A book club requesting multiple copies can result in all those copies being shelved at the same location when they are returned for instance.

When Does Floating Happen

Floating happens at the point where an item has been checked in and it would go back into transit to its circulating library to be re-shelved. Instead of being sent back, the circulating library is changed and the items is set to re-shelve at the current branch. It does not happen if an item is going to fill another hold at the current location or at another location.

Floating and Shelving Locations

Floating does not try to update an items shelving location. So it works best if the locations included in the floating group all share the same set of Shelving Locations. Otherwise an item may end up in a shelving location that is not valid for the location that an item floated to.

Floating Troubleshooting

If you run into problems with Floating, here is a checklist of things to check on.

  1. Floating Group has been created.

  2. Locations included in the group have been defined as Floating Group Members.

  3. Item has been marked as a member of the Floating Group in the Holdings Editor.

  4. Item has no holds and is ready to be re-shelved. Floating only happens for a check-in where an item would be going back to be re-shelved.

  5. Item has no current in transit records. If an item is already in-transit, then that transit would be followed first.

Floating Groups

Each floating group comes with a name and a manual flag, plus zero or more group members. The name is used solely for selection and display purposes.

The manual flag dictates whether or not the "Manual Floating Active" checkin modifier needs to be active for an item to float. This allows for greater control over when items float. It also prevents automated checkins via SIP2 from triggering floats.

Floating Group Members

Each member of a floating group references an org unit and has a stop depth, an optional max depth, and an exclude flag.

Org Unit

The org unit and all descendants are included, unless max depth is set, in which case the tree is cut off at the max depth.

Stop Depth

The stop depth is the highest point from the current item circ library to the checkin library for the item that will be traversed. If the item has to go higher than the stop depth on the tree the member rule in question is ignored.

Max Depth

As mentioned with the org unit, the max depth is the furthest down on the tree from the org unit that gets included. This is based on the entire tree, not just off of the org unit. So in the default tree a max depth of 1 will stop at the system level no matter if org unit is set to CONS or SYS1.

Exclude

Exclude, if set, causes floating to not happen for the member. Excludes always take priority, so you can remove an org unit from floating without having to worry about other rules overriding it.

Examples

Float Everywhere

This is a default floating rule to emulate the previous floating behavior for new installs and upgrades.

One member:

  • Org Unit: CONS

  • Stop Depth: 0

  • Max Depth: Unset

  • Exclude: Off

Float Within System

This would permit an item to float anywhere within a system, but would return to the system if it was returned elsewhere.

One member:

  • Org Unit: CONS

  • Stop Depth: 1

  • Max Depth: Unset

  • Exclude: Off

Float To All Branches

This would permit an item to float to any branch, but not to sublibraries or bookmobiles.

One member:

  • Org Unit: CONS

  • Stop Depth: 0

  • Max Depth: 2

  • Exclude: Off

Float To All Branches Within System

This would permit an item to float to any branch in a system, but not to sublibraries or bookmobiles, and returning to the system if returned elsewhere.

One member:

  • Org Unit: CONS

  • Stop Depth: 1

  • Max Depth: 2

  • Exclude: Off

Float Between BR1 and BR3

This would permit an item to float between BR1 and BR3 specifically, excluding sublibraries and bookmobiles.

It would consist of two members, identical other than the org unit:

  • Org Unit: BR1 / BR3

  • Stop Depth: 0

  • Max Depth: 2

  • Exclude: Off

Float Everywhere Except BM1

This would allow an item to float anywhere except for BM1. It accomplishes this with two members.

The first includes all org units, just like Float Everywhere:

  • Org Unit: CONS

  • Stop Depth: 0

  • Max Depth: Unset

  • Exclude: Off

The second excludes BM1:

  • Org Unit: BM1

  • Stop Depth: 0

  • Max Depth: Unset

  • Exclude: On

That works because excludes are applied first.

Float into, but not out of, BR2

This would allow an item to float into BR2, but once there it would never leave. Why you would want to allow items to float to but not from a single library I dunno, but here it is. This takes advantage of the fact that the rules say where we can float to, but outside of stop depth don’t care where we are floating from.

One member:

  • Org Unit: BR2

  • Stop Depth: 0

  • Max Depth: Unset

  • Exclude: Off