]> git.evergreen-ils.org Git - working/Evergreen.git/blob - docs/admin/floating_groups.adoc
LP 1768715: Use named arguments in function calls in pingest.pl.
[working/Evergreen.git] / docs / admin / floating_groups.adoc
1 Floating Groups
2 ===============
3
4 Before floating groups copies could float or not. If they floated then they floated everywhere, with no restrictions.
5
6 After floating groups where a copy will float is defined by what group it has been assigned to.
7
8 Floating Groups
9 ---------------
10
11 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.
12
13 The manual flag dictates whether or not the "Manual Floating Active" checkin modifier needs to be active for a copy to float. This allows for greater control over when items float. It also prevents automated checkins via SIP2 from triggering floats.
14
15 Floating Group Members
16 ~~~~~~~~~~~~~~~~~~~~~~
17
18 Each member of a floating group references an org unit and has a stop depth, an optional max depth, and an exclude flag.
19
20 Org Unit
21 ~~~~~~~~
22
23 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.
24
25 Stop Depth
26 ~~~~~~~~~~
27
28 The stop depth is the highest point from the current copy 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.
29
30 Max Depth
31 ~~~~~~~~~
32
33 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.
34
35 Exclude
36 ~~~~~~~
37
38 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.
39
40 Examples
41 --------
42
43 Float Everywhere
44 ~~~~~~~~~~~~~~~~
45
46 This is a default floating rule to emulate the previous floating behavior for new installs and upgrades.
47
48 One member:
49
50 * Org Unit: CONS
51 * Stop Depth: 0
52 * Max Depth: Unset
53 * Exclude: Off
54
55 Float Within System
56 ~~~~~~~~~~~~~~~~~~~
57
58 This would permit a copy to float anywhere within a system, but would return to the system if it was returned elsewhere.
59
60 One member:
61
62 * Org Unit: CONS
63 * Stop Depth: 1
64 * Max Depth: Unset
65 * Exclude: Off
66
67 Float To All Branches
68 ~~~~~~~~~~~~~~~~~~~~~
69
70 This would permit a copy to float to any branch, but not to sublibraries or bookmobiles.
71
72 One member:
73
74 * Org Unit: CONS
75 * Stop Depth: 0
76 * Max Depth: 2
77 * Exclude: Off
78
79 Float To All Branches Within System
80 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
81
82 This would permit a copy to float to any branch in a system, but not to sublibraries or bookmobiles, and returning to the system if returned elsewhere.
83
84 One member:
85
86 * Org Unit: CONS
87 * Stop Depth: 1
88 * Max Depth: 2
89 * Exclude: Off
90
91 Float Between BR1 and BR3
92 ~~~~~~~~~~~~~~~~~~~~~~~~~
93
94 This would permit a copy to float between BR1 and BR3 specifically, excluding sublibraries and bookmobiles.
95
96 It would consist of two members, identical other than the org unit:
97
98 * Org Unit: BR1 / BR3
99 * Stop Depth: 0
100 * Max Depth: 2
101 * Exclude: Off
102
103 Float Everywhere Except BM1
104 ~~~~~~~~~~~~~~~~~~~~~~~~~~~
105
106 This would allow an item to float anywhere except for BM1. It accomplishes this with two members.
107
108 The first includes all org units, just like Float Everywhere:
109
110 * Org Unit: CONS
111 * Stop Depth: 0
112 * Max Depth: Unset
113 * Exclude: Off
114
115 The second excludes BM1:
116
117 * Org Unit: BM1
118 * Stop Depth: 0
119 * Max Depth: Unset
120 * Exclude: On
121
122 That works because excludes are applied first.
123
124 Float into, but not out of, BR2
125 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
126
127 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*.
128
129 One member:
130
131 * Org Unit: BR2
132 * Stop Depth: 0
133 * Max Depth: Unset
134 * Exclude: Off