Selecting by Dependency Explosion
Objects can be selected based on their dependency on other objects by using the selection criteria “x”. The dependency explosion criteria uses the set of objects selected so far to select the objects that depend on those objects. It takes the set of currently selected objects and performs a dependency explosion operation on that set of objects. The nature and extent of the explosion is determined by attaching further criteria qualifiers. If no qualifier is attached, all objects that depend on the object are added to the set of objects selected. If a “p” is attached, this indicates a program dependency explosion. If followed by a “t”, this indicates an object creation dependency explosion. The “h” option indicates a Hollow explosion process, which results only in the set of exploded objects without the original objects.
In the following example, all objects named “Customers” are selected along with all other objects that depend on the “Customers” objects:
ZOMList Customers +x
Since the dependency explosion depends on having previously selected some objects, the “x” selection operator should never be used as the first selection criteria.
In a hollow dependency explosion, the original set of objects is excluded from the result. The following command finds all objects which depend on objects named “Customers” but excludes the “Customers” objects:
ZOMList Customers +x h
The following command finds all objects which depend on the object “Customers” and all objects depending on them, and recurses until no further depending objects are found. Program references are omitted from the dependency tree exploded.
ZOMList Customers +x t
The following command finds all objects that depend on the object “pMainMenu” and all objects that depending on them, and recurses until no further depending objects are found. Program references are used rather than object creation dependencies when the dependency tree is exploded.
ZOMList pMainMenu +x p
Note: Dependencies between objects and dependency explosions are explained in Object Dependencies.