Automation Engine Script Guide > Ordered by Function > Read or Modify Objects > :PUT_ATT

:PUT_ATT

Script Statement: It changes an attribute's value during the generation process.

Syntax

:PUT_ATT Attribute = Value

Syntax

Description/Format

Attribute

The name of the attribute to which a value should be assigned.
Format: AE name

Value

A suitable value that should be assigned to the attribute.
Format: script literal, script variable or script function

Comments

Objects are usually processed by using the attributes that have been defined for them. Despite this face, you can use the statement :PUT_ATT in order to change attributes dynamically and assign new values during the generation process. These values are only valid for the particular generation and they are not permanently stored in the object.

The values that can be assigned to an attribute depend on the system environment. The start type " " can only be assigned to a job that starts immediately or to a group that has already been defined. Any other specification will cause an error during the generation process.

For a list of all object attributes including their allowed values, refer to the User Guide.

Attributes of Rapid Automation jobs may change when new versions of the Rapid Automation agents are released. When this happens, :PUT_ATT commands that have been defined in earlier versions of the agents will no longer work. It is possible to use object variables for field replacements instead of :PUT_ATT commands for RA specific attributes.

To change a job from using a :PUT_ATT command to an object variable, do the following:

  1. Remove the :PUT_ATT command from the job's Process or Pre-Process tab.
  2. Add a variable and its value to the Variables & Prompts tab of the job.
  3. In the field where the you wish to replace a value, enter the object variable in the format &<Variable># where <Variable> represents the variable name you entered on the Variables & Prompts tab.

Note that as of version 3 of the RA FTP and Web Service agents, there are no field replacements anymore for RA attributes. In this case, you must set the attributes using :PUT_ATT.

Changing attributes is only useful before an object is processed. Therefore, you cannot use :PUT_ATT in Post-Process tabs.

Note that attributes can have different maximum lengths. :PUT_ATT does not check the specified value but truncates it to the relevant attribute's maximum length.

You cannot change the start type by using :PUT_ATT if the option "Generate at runtime'" is activated in the object.

Agent groups are resolved before the script is processed. This means that the selection on which agent the task will run takes place beforehand. You can use :PUT_ATT in order to define a different agent but not to define a different agent group. The script function PREP_PROCESS_AGENTGROUP can be used to read the agents of an agent group.

The script statement :PUT_ATT has no effect when you use it in the ! Process tab of an Event object and in Post-Process tabs.

The attributes ATTR_DLG, HOST and SYSLST_DB, SYSLST_FILE, SYSOUT_DB, SYSOUT_FILE, OL, OO (in BS2000 jobs) can only be set using :PUT_ATT in the Pre-Process tab.

:PUT_ATT does not modify the contents of script variables. 

You can use this script element in the Process tab in order to limit the maximum number of parallel runs (attribute: MAX_PARALLEL_TASKS). In this case, the limit will only be checked after the script has been processed when the task is generated at runtime.

For example:

:SET &TYPE# = GET_ATT(EVENT_TYPE)
:PUT_ATT EVENT_CHECK_METHOD2 = "FILE_STABLE"
:PRINT &TYPE#

Explanation: Let's assume that the script variable &TYPE# obtains the value "FA" through GET_ATT. After the :PUT_ATT call, the event type is "FT" because the attribute "FILE_STABLE" belongs to the FileSystem event. Despite this fact, the variable &TYPE# still includes the value "FA."

You cannot change the attributes of a particular object (such as the Login object) by using :PUT_ATT if the user has write access (W) to the old value but not to the attribute's new value.

To set the queue for a task (QUEUE attribute ), you can use the script element :PUT_ATT in the Pre-Process tab.
Note that when the option Generate at runtime is set in this task, the system will check the available slots and the status of the queue before it starts processing the Pre-Process tab. The effect is that the task starts in the modified queue but the system checks the queue that is specified in the object. This means that the limit of the new queue is not verified and as a result, the task may start too early. For example, if the CLIENT_QUEUE is still specified in the queue, the task will start in any case unless it is in a stopped status.

Examples

The following example shows how a new agent can be assigned to an object.

:PUT_ATT HOST = "UNIX02"

 

See also:

Script element Description

:ADD_ATT

Adds recipients to a notification at runtime.
:REMOVE_ATT Removes receivers in a notification at runtime.
:PUT_ATT_APPEND Extends the notification's message text at runtime.
GET_ATT This function returns the values of a task's attributes during generation.
GET_ATT_SUBSTR Supplies part of the message text in a notification.

 

Script Elements - Read or Modify Objects

Sample Collection
Notification with variable Message Text

About Scripts
Script Elements - Alphabetical Listing

Script Elements - Ordered by function