Variable templates are the registration records that the task administrator creates and defines for variables in TMS.
Variables are pieces of data (for example, in a change request or an entry in the parent object) that are passed to and from task groups and tasks, and into flows in TMS. This information can be recorded and used as the basis for making decisions in qualifications or as input for other tasks, task groups, and flows. Variable data can be generated automatically, or it can be supplied manually by resources working on the task.
In the definition stage, the task administrator creates variable templates that are used for mapping in to or out of fields. Then, during the execution stage, these variables exchange data between the task group, task, or flow at runtime.
You can register any piece of information as a variable template. You give it a name and assign it a default value, if needed.
A default value is not required in the variable template. Values in the variables can be dynamically assigned at runtime.
When data is created at runtime, the instantiation of the variable can have its value modified. However, the default values of the variable template itself are not modified.
There are three types of variable templates:
- Global—Used for data that is global to the system and across all requests, for example, in the Remedy ITSM Suite of applications. Usually this type of variable is not written to, but it can be. These variables allow general, shared data to be stored across the organization. Examples include the name of the company.
- System—Used for characteristics of the entire request that are automatically available. These are usually pieces of information that are common to all types of requests, but have a unique value.
- Local—Used for data within a specific context, for example, within the flow of a task, task group, or flow. Their value exists only within the context in which they are used, not across the request. For example, although a variable can be used across different task groups in a request, its value is unique for each task group.
Each variable template has the option to be global or associated with a specific company. If you specify a company, your variable template can be further classified using a category and subcategory that shows the integrating system.
The values of variables inside a task group, task, or flow are initialized by the input variables of the task group.
Any task, task group, or flow can access any variable value. If no value exists for a variable, its value is returned as NULL.
For example, the Create or Modify Policy with Closed Loop Verification task group template automatically performs a closed loop" verification to make sure that the task was executed properly. The advanced task group template here is a container for the two associated task templates. Its main purpose is to provide flow between the two task templates, which also helps in passing data along for the variables to use.
The two task templates in the task group template use several variable templates when creating or modifying a BMC BladeLogic Client Automation policy in the following flow:
- The Create or Modify Policy - BMC BladeLogic Client Automation Policy Manager task template has an output variable defined that, at runtime, passes the current Task ID of the task into the Prior Task ID variable.
- The Closed Loop Verification (automatic) task template has Prior Task ID mapped as an input variable to a field on the Data tab of the runtime task. When the first manual task completes successfully and the automatic task is started, the Prior Task ID is passed in and used in this task's processing.
This scenario uses the Prior Task ID as a variable because BMC Policy Manager must retrieve information from the previous manual task for the automatic task to work successfully.
Four predefined best practice variable templates are automatically installed with Change Management for integration with BMC BladeLogic Client Automation. As an administrator, you can predefine additional variable templates to use with Change Management.