Grouping And Group Operations
Groups are used to combine devices or any other system resources (event filters, alerts, etc.) to simplify management of large device/resource sets and make batch operations more convenient. It is easy to execute an operation over all objects in a group, e.g. reboot ten devices at once. Groups also provide an easy way to apply similar settings to all members or automatically replicate configuration changes between them.
Groups are integrated with Common Data facility. That means you can have "master" values for group member properties. Changes of master values are automatically applied to all group members.
While it's possible to add members to any group using drag and drop, some groups may also auto-populate their contents. Such a dynamic group has a so-called Validity Expression that is used to check whether every system resource is valid for this group. If it is, the resource is automatically added to the group, and it will be auto-removed once it will no longer match the Validity Expression.
Example use case: each device has a Type property, and certain AggreGate distributions include dynamic groups holding devices of particular types, e.g. printers or routers.
It's possible to put groups into other groups. Group nesting level is not limited.
For sets of devices and other "dynamic" resources, groups provide an aggregate status calculation method. For example, a group of devices may get red ("Problem" status) if at least one device in a group has synchronization errors. If no devices have errors, a group will be yellow ("Offline" status) if at least one member is disconnected and green ("Normal" status) otherwise. This is totally flexible.