Inheriting Object and PromptSet Variables

As a developer and object designer, when you create an executable object, you define object variables on its Variables page. They retrieve values either from the object properties (values in the object input fields) or from its runtime instance (the task). Object variables can be used throughout the object. You also determine whether the object can inherit the object variables from its parent when it runs in a Workflow or a Schedule. Inheriting object variables simplifies the maintenance process because it is not necessary to store or maintain the values in the individual objects.

Tasks inherit the object and PromptSet variables of their parents in the following cases:

  • They are part of Workflows or of Schedules.
  • They are executed in one of the following ways:

    • Through a script using the ACTIVATE_UC_OBJECT function, regardless of its Inherit from Parent setting on the Variables page.
    • As child post processes of RemoteTaskManager objects
    • From the Event Process page in Event objects
    • From within the object. For example, the object selected for execution in ELSE: Execute on the Time & Dependencies tab of a task property

Tasks do not inherit the object and PromptSet variables of their parents in the following cases:

  • They are part of a group.
  • They are executed manually.
  • They are executed automatically by the AE system. For example, a Notification (warning) that is executed automatically before the validity of a Calendar expires.
  • They already contain a PromptSet or object variable that has the same name as the one in the parent object.

Important! Inherited object variables always overwrite existing object variables in the child object. However, PromptSet variables are never overwritten.

Note: If you create an object variable with the :PSET script statement, it is automatically passed on to the parent object. If the parent object already includes an object or PromptSet variable with the same name, it is overwritten with the value coming from the child object. Subsequent parent tasks can then access this variable.

See also: