Windows Task
Before You Begin
The Windows task allows you to run a platform-specific application on a Windows machine. To run a Windows task, you must first complete the following tasks:
- Install Universal Agent for Windows on a Windows machine.
- Launch the Agent. When the Agent connects with the Controller, it automatically creates an Agent resource definition in the database.
- Optionally, customize the Agent heartbeat and log levels, as described in Windows Agent Details Field Descriptions.
Built-In Variables
The following built-in variables can be used in a Windows task to pass data where appropriate:
Creating a Windows Task
Step 1 | From the Automation Center navigation pane, select Tasks > Windows Tasks. The Windows Tasks list displays a list of all currently defined Windows tasks. |
---|---|
Step 2 | Enter/select Details for a new Windows task, using the field descriptions below as a guide.
To display more of the Details fields on the screen, you can either:
|
Step 3 | Click the button. The task is added to the database, and all buttons and tabs in the Task Details are enabled. |
Note
To open an existing record on the list, either:
- Click a record in the list to display its record Details below the list. (To clear record Details below the list, click the New button that displays above and below the Details.)
- Clicking the Details icon next to a record name in the list, or right-click a record in the list and then click Open in the Action menu that displays, to display a pop-up version of the record Details.
- Right-click a record in the a list, or open a record and right-click in the record Details, and then click Open In Tab in the Action menu that displays, to display the record Details under a new tab on the record list page (see Record Details as Tabs).
Windows Task Details
The following Windows Task Details is for an existing Windows task.
Depending on the values that you enter / select for these fields, and whether or not the Windows task has ever been launched, more (or less) fields may display. See the field descriptions, below, for a description of all fields that may display in the Windows Task Details.
Windows Task Details Field Descriptions
The following table describes the fields, buttons, and tabs that display in the Windows Task Details.
Field Name | Description |
---|---|
General | This section contains general information about the task. |
Name | User-defined name of this task (Maximum = 255 alphanumeric characters); variables supported. It is the responsibility of the user to develop a workable naming scheme for tasks. |
Version | System-supplied; version number of the current record, which is incremented by the Controller every time a user updates a record. Click the Versions tab to view previous versions. For details, see Record Versioning. |
Description | Description of this record. Maximum length is 255 characters. |
Member of Business Services | User-defined; Allows you to select one or more Business Services that this record belongs to. (You also can Check All or Uncheck All Business Services for this record.) You can select up to 62 Business Services for any record type, and enter a maximum of 2048 characters for each Business Service. If the Business Service Visibility Restricted Universal Controller system property is set to true, depending on your assigned (or inherited) Permissions or Roles, Business Services available for selection may be restricted. |
Resolve Name Immediately | If enabled, the Instance Name of the task instance will be resolved immediately at trigger/launch time. |
Time Zone Preference | User-defined; Allows you to specify the time zone that will be applied to the task. Options:
|
Hold on Start | If enabled, when the task is launched it appears in the Activity Monitor with a status of Held. The task runs when the user releases it. |
Hold Reason |
Information about why the task will be put on hold when it starts. |
Virtual Resource Priority | Priority for acquiring a resource when two or more tasks are waiting for the resource. This priority applies to all resources required by the task. Options: 1 (high) - 100 (low). Default is 10. |
Hold Resources on Failure |
If enabled, the task instance will continue to hold Renewable resources if the task instance fails. Renewable resources will be returned only if the task instance status is either Complete, Finished, or Skipped. |
Mutually Exclusive With Self | If enabled, the task will not be allowed to run concurrently with itself. Task will not start until the instance that is running finishes. An instance will transition to Exclusive Wait status if it cannot start due to another instance already running. |
Simulate | Specifies if the instance should execute under simulation mode. |
Override Previous Instance Wait | Specifies whether or not to override the parent workflow's Previous Instance Wait configuration. This option only applies for an instance running within a workflow. Options:
|
Agent Details | This section contains assorted detailed information about the Agent / Agent Cluster selected for this task. |
Cluster | Indication that selecting an Agent Cluster is required and selecting Broadcast, which lets you select a Cluster Broadcast, is optional. If Cluster is selected, selecting an Agent is not required unless Agent Variable is selected. |
Agent | Name of the Agent resource that identifies the machine where the operation will run. If you do not specify an Agent, you must specify an Agent Cluster or Cluster Broadcast. |
Agent Variable | Indication of whether the Agent field is a reference field for selecting a specific Agent (unchecked) or a text field for specifying the Agent as a variable (checked). Use the format: ${variable name}. The variable must be a supported type as described in Variables and Functions. Note When updating multiple Tasks, to change from using an Agent reference to using an Agent variable, you must change the Agent Variable field to Yes and specify the Agent variable in the Agent Unresolved field. Conversely, to change from using an Agent variable to using an Agent reference, you must change the Agent Variable field to No and specify the Agent reference in the Agent field. |
Agent Cluster | If Cluster is selected and Broadcast is not selected; Group of Agents, one of which the Controller will choose to run this task (compare with Cluster Broadcast). You can specify an agent cluster in addition to or in place of a specific Agent. If you specify an Agent and an agent cluster, the Controller first tries to run the task on the specific agent. If the Agent is not available, the Controller reverts to the agent cluster. See Agent Clusters for more information. |
Agent Cluster Variable | Indication of whether the Agent Cluster field is a reference field for selecting a specific Agent Cluster (unchecked) or a text field for specifying the Agent Cluster as a variable (checked). Use the format: The variable must be a supported type as described in Variables and Functions. Note When updating multiple Tasks, to change from using an Agent Cluster reference to using an Agent Cluster variable, you must change the Agent Cluster Variable field to Yes and specify the Agent Cluster variable in the Agent Cluster Unresolved field. Conversely, to change from using an Agent Cluster variable to using an Agent Cluster reference, you must change the Agent Cluster Variable field to No and specify the Agent Cluster reference in the Agent Cluster field. |
Broadcast | Displays only if Cluster is selected; Indication that selecting a Cluster Broadcast is required. Selecting Broadcast hides the Agent and Agent Cluster fields; you cannot select values for them. |
Cluster Broadcast | Group of Agents, all of which will run this task (compare with Agent Cluster). If Broadcast is selected for a task, you must select a Cluster Broadcast instead of a specific Agent and/or agent cluster. Each instance of the task running on its own Agent becomes a separate task instance record in the database and displays separately on the Activity Monitor. |
Cluster Broadcast Variable | Indication of whether the Cluster Broadcast field is a reference field for selecting a specific Cluster Broadcast (unchecked) or a text field for specifying the Cluster Broadcast as a variable (checked). Use the format: ${variable name}. The variable must be a supported type as described in Variables and Functions. Note When updating multiple Tasks, to change from using a Cluster Broadcast reference to using a Cluster Broadcast variable, you must change the Cluster Broadcast Variable field to Yes and specify the Cluster Broadcast variable in the Cluster Broadcast Unresolved field. Conversely, to change from using a Cluster Broadcast variable to using a Cluster Broadcast reference, you must change the Cluster Broadcast Variable field to No and specify the Cluster Broadcast reference in the Cluster Broadcast field. |
Credentials | Credentials under which an Agent runs this task. These Credentials override any Credentials provided in the Agent Details for any Agent running this task. If the user does not have a login shell, add a - character in front of the runtime credentials name. The Controller will provide a shell for that user and strip the - character from the name. Required if the Agent Credentials Required Universal Controller system property is true. When required, if the Credential is specified as a variable, and the variable resolves to blank, a Start Failure will occur. |
Credentials Variable | Indication of whether the Credentials field is a reference field for selecting a specific Credential (unchecked) or a text field for specifying the Credential as a variable (checked). Use the format: The variable must be a supported type as described in Variables and Functions. Note When updating multiple Tasks, to change from using a Credentials reference to using a Credentials variable, you must change the Credentials Variable field to Yes and specify the Credentials variable in the Credentials Unresolved field. Conversely, to change from using a Credentials variable to using a Credentials reference, you must change the Credentials Variable field to No and specify the Credentials reference in the Credentials field. |
Run with Highest Privileges | This option must be enabled in order to execute the task using an elevated privileges token, rather than one subject to User Account Control (UAC) restrictions. An elevated token allows a process to execute with all the privileges available to its specified credentials. For example, a task executed with an administrative account will behave as though it received permission via a UAC dialog to perform a privileged operation. Note This option only will affect tasks executed on Windows systems that support User Account Control (UAC). It will have no affect on tasks run on Windows releases prior to Vista (for example, Windows XP, Server 2003). |
Interact with Desktop | If Windows Task Interact With Desktop Permitted system property = true; This option must be enabled for a task that runs an application with a GUI requiring some manual actions from a user (for example, clicking buttons or entering values). Note When using this option to display GUI applications on any version of Windows that enforces session 0 desktop isolation (that is, Windows Vista and later), the GUI will only be accessible from the interactive console session. Further, the task will execute using the credentials of the user logged into that session. This means that any GUI-based application executed via a Windows task will not be visible from a remote desktop session. It will be visible only from console of the interactive session that exists on the system itself (that is, the session you would see from a monitor attached directly to the Windows machine or by logging in via a VM's host UI). |
Create Console | If Interact with Desktop is enabled; Allocates a new console for the process, rather than having it inherit one. |
Windows Details | This section contains assorted detailed information about the task instance. |
Command or Script |
Specifies whether a single command or a script is being executed. Options:
If the Windows/Linux Scripts Permitted Universal Controller system property is set to false:
Note For both command-based tasks that call a .vbs/.js file directly, and script-based tasks that also rely on the systems association with file extension, GUI-based wscript.exe is associated with the vbs and js file extensions. Without explicitly calling one or the other, the Controller would use wscript.exe. |
Command | Required if Command or Script = Command; Command being executed on the remote machine. Variables supported. |
Script | Required if Command or Script = Script; Name of the script in the Controller database that will be executed by this task. Note If you click the Details icon for a Script selected in this field, the Script Type field in the Details is read-only. |
Parameters |
|
Runtime Directory |
|
Environment Variables | Allows you to enter environment variables needed by the program to run. To add a variable, click the + icon and enter a Name and Value. To delete a variable, select in the list of variables and click the - icon. You can add a maximum of 4,000 characters for the combined Names and Values of all variables. The variable is listed in the space underneath. |
Result Processing Details | This section contains assorted detailed information about result processing for this task. |
Exit Code Processing | Specifies how the Controller should determine whether the executed command failed or completed successfully. Options:
|
Output Type | Required if Exit Code Processing = Success Output Contains or Failure Output Contains; type of output. Options:
|
Scan Output For | Required if Exit Code Processing = Success Output Contains or Failure Output Contains; text for which the Controller should scan the output file. The Controller will process this field as a regular expression. |
Output File (for Exit Code Processing) | Required if Output Type = File; path and file name of the output file that should be scanned for the text in the Scan Output For field. |
Exit Codes | Required if Exit Code Processing = Success Exitcode Range or Failure Exitcode Range; range of exit codes. Format: Numeric. Use commas to list a series of exit codes; use hyphens to specify a range. Example: 1,5, 22-30. Variables are supported. |
Automatic Output Retrieval | Specifies whether you want the Controller to automatically retrieve any output from the job and attach it to the task instance record. The Task Automatic Output Retrieval Default Universal Controller system property specifies the default value for this field. Options:
Note |