Setting Status Properties

You can use processing options to set and reset any of the user-designated status properties. The option syntax is similar to the selection syntax for status properties. Specify the processing option ;p followed by the status property indicator. For example, the following command assigns the locked property to all Entity Set objects:

ZOMSet +t Ent ;p l

The ZOMSet service used here is useful in setting status properties. ZOMSet is a special service that has no inherent function of its own but selects the specified objects and obeys the processing options are provided. Contrast the example above with the following example

ZOMList +t Ent ;p l

that also assigns the locked property to all EntitySet objects, but then lists all of the selected objects.

You can reset a status property by using the exclamation point (!). For example

ZOMSet +t Ent ;p l!

removes the locked property from all EntitySet objects (i.e., makes the objects not locked).

Selecting by Named Set

Objects can be selected by a named set that contains a list of objects. This named set must be constructed using the ObjList EntitySet:

find all ObjList where ObjectName like ‘%Cust%’ -> sCust

In this example, all objects of the set “sCust” are selected:

ZOMList +s sCust

Selecting by the Data Property

Objects can be selected by querying the data property using the selection criteria “da”. All data objects (i.e., EntitySet objects and relationships with field objects) are selected. For example, in the following command, all data objects are selected for use by the ZOMLIST service:

ZOMList +p da

In the next example, all objects that are not data objects are selected:

ZOMList +p da!

Selecting by the Selected Property

Objects can be selected by querying the selected property using the selection criteria “s”. All objects that are selected (i.e., have been assigned by the user as selected) are selected. In the following example, all objects that are considered selected by the user are selected:

ZOMList +p s

In the next example, all objects that are not selected are selected:

ZOMList +p s!

 

Selecting by the Locked Property

Objects can be selected by querying the locked property using the selection criteria “l”. All objects that are locked (i.e., have had the locked property set by the user) are selected. For example, in the following command, all objects that are locked are selected for use by the ZOMLIST service:

ZOMList +p l

In the next example, all objects that are not locked are selected:

ZOMList +p l!

 

Selecting by the Datasave Property

Objects can be selected by querying the datasave property using the selection criteria “ds”. All EntitySet and data relationship objects that are datasave (i.e., have had the datasave property set by the user) are selected. (Objects that have the datasave property have their data records automatically preserved when the object definition is changed using a ZOM service.) For example, in the following command, all datasave objects are selected for use by the ZOMLIST service:

ZOMList +p ds

In the next example, all objects that are not datasave objects are selected:

ZOMList +p ds!

Selecting Previously Selected Objects

Objects that were selected by the last ZOM service used can be selected again by using the selection criteria “.”. All objects that were previously selected are selected. For example, ZOMSet is used below to process the same set of objects selected by the ZOMList service. In this case, ZOMSet removes the keyword “User_Interface” for these objects.

ZOMList +k User_Interface
 

ZOMSet +. ;k User_Interface !

The Previously Selected criteria (“.”) is very useful for processing the same set of objects over and over again. It is also convenient for re-selecting a set of objects that you first previewed using ZOMList, as shown above.

Selecting by the Exists Property

Objects can be selected by querying the exists property using the selection criteria “e”. All objects that exist (i.e., have been created in the application) are selected. For example, in the following command, all existing objects are selected for use by the ZOMLIST service:

ZOMList +p e

In the next example, all objects that do not exist are selected:

ZOMList +p e!

You can also select objects that exist but are considered to be corrupt (i.e., out-of-date). An object is considered corrupt if it depends on another object which has been erased or moved to another directory. In the next example, all corrupt objects are selected:

ZOMList +p ec

Selecting by the Compilable Property

Objects can be selected by querying the compilable property using the selection criteria “c”. All objects that are compilable (i.e., document objects that have had the compilable property set by the user) are selected. For example, in the following command, all compilable objects are selected for use by the ZOMLIST service:

ZOMList +p c

In the next example, all objects that are not compilable are selected:

ZOMList +p c!

This example finds all objects which have been declared by the user as macros (a variation on the compilable property):

ZOMList +p cm

This next example finds all objects which have been declared by the user as compilable/ignore warnings (a variation on the compilable property):

ZOMList +p ci

Selecting by the Active Property

Objects can be selected by querying the active property using the selection criteria “a”. All objects that are active (i.e., have had the active property set) are selected. (By default, objects are considered active.) For example, in the following command, all objects which are active are selected for use by the ZOMLIST service:

ZOMList +p a

Normally, objects that are considered inactive (i.e., do not have the active property set) are not processed by the ZOM services. However, you can explicitly make inactive objects available for processing by using the special processing option ;i. For example, in the following command all active and inactive objects are selected for use by the ZOMLIST service:

ZOMList * ;i

In the next example, only the inactive objects are selected:

ZOMList +p a! ;i

In this case, ;i makes inactive objects available for processing and +p a! selects only the not active objects. Note that without ;i, the above command would select no objects at all since the normal behavior is to ignore inactive objects entirely.

en_CAEnglish