Task Execution - Overriding Parameters

A task execution can override execution parameters by:

  • setting the active environment based on the task's environments.
  • setting key-value parameters on a session level.
  • overriding Globals' values on a session level.
  • overriding the Sync Mode of the task execution.
  • overriding additional execution parameters without changing the task itself.

Setting Active Environments

Extract Tasks

The task execution process sets the task's environment as the active environment on the executed task.

Load Tasks

The task execution process sets the active environment as follows:

  1. It first sets the task's source environment as the active environment and gets the LUI from Fabric.
  2. After the LUI sync, it sets the task's target environment as the active environment and runs the delete and/or load flows on the target environment.

Overriding Globals' Values

A project's Global can be overridden on either a TDM environment or a TDM task level.

The task execution process sets the values on the Globals on a session level.

Note: Task-level variables have a higher priority than TDM environment-level variables. That is, if a variable (Global) is set on both - the task and the related environment levels - the task's Global value gets the higher priority.

Overriding the Sync Mode on the Task Execution

When executing a TDM task, set the Sync mode according to the following table:

Source env -  Override Sync Mode

Task - Source env - policy for fetching data

Execution Sync Mode

Results

Empty

  • Available data from the Test data store, new data from <source env> 

On

LUIs are synced according to their sync method. See the Sync Behavior Summary table.

Empty

  • All data from <source env>

Force

LUIs are synced from the source.

Empty

  • Available <source env> data in the Test data store 
  • Selected snapshot (version) 

If the task includes a delete => On

Else => Off

  • If this is the first sync, return an error.
  • If the LUIs exist in Fabric:
    • Source LU tables:
    • Get the data from Fabric.
    • Target LU tables (populated for a delete activity):
    • Sync the data from the target environment.

Always sync

  • Available data from the Test data store, new data from <source env> 

Force

LUIs are synced from the source.

Always sync

  • All data from <source env>

Force

LUIs are synced from the source.

Do Not Sync

  • Only the following options are available in the task:
    • Available <source env> data in the Test data store 
    • Selected snapshot (version) 

If the task includes a delete => On

Else => Off

  • If this is the first sync, return an error.
  • If the LUIs exist in Fabric:
    • Source LU tables:
    • Get the data from Fabric.
    • Target LU tables:
    • Sync the data from the target environment.

Overriding Additional Task Execution Parameters

The TDM API that starts a task execution can get a list of parameter-value pairs to override the original values of these parameters on the task execution without changing the task data.

This way, various users can use a task as a template and change (override) the execution parameters without changing the task itself: Each user can run the task on their environment and update the execution parameter according to their needs.

TDM supports overriding the following parameters:

Parameter Name

Parameter Description

Task Actions

Data Versioning

entitieslist

Populated by a list of Business Entity IDs separated by a comma. This list can contain only one Business Entity ID when executing a task that clones a Business Entity.

All task actions except a Generate task

True/False

sourceEnvironmentName

Source environment name

Load or Extract tasks

True/False

targetEnvironmentName

Target environment name

Load, Delete, or Reserve tasks

True/False

taskGlobals

A list of Global variables (task variables) and their values

All tasks

True/False

numberOfEntities

Populated with a value that limits the number of entities to be processed by the task. This parameter is relevant only if an explicit entity list was not set.

All tasks

False

dataVersionExecId

Populated with the task execution id of the selected data version. The parameter can be set on Data Versioning load tasks.

Load task

True

dataVersionRetentionPeriod

Populated with the retention period of the extracted data version. This parameter contains the unit (Hours, Days, Weeks…) and the value.

Extract task True

reserveInd

Populated with True or False. Set to True if the task execution needs to reserve the entities on the target environment.

Load or Reserve tasks

Load task: True/False

 

Reserve task: N/A

reserveRetention

Populated with the reservation period of the task's entities. This parameter contains the unit (Hours, Days, Weeks.) and the value.

Load or Reserve tasks

Load task: True/False

 

Reserve task: N/A

executionNote

Free text. Adds a note to the execution.

All tasks

True/False

Note:

  • TDM supports overriding the task execution parameters only when invoking the start task execution API outside the TDM Portal. Currently, this option is not supported when executing the task using the TDM Portal.

Validate the Task Execution Parameters

This API validates the overridden parameters with the user's permissions on the task's environments:

Validate the Task Execution Parameters

  • Verify that the TDM task execution processes are up and running. If the TDM task execution processes are down, the API returns an error message.
  • Test the connection details of the source and target environments of the task execution if the forced parameter is false.
  • Do not enable an execution when another execution, with the same execution parameters, is already running on the task.
  • Validate the task's BE and LUs with the systems of the task execution's source and target environment.
  • Verify that the user is permitted to execute the task on the task execution's source and target environment. For example, a user cannot run a Load task with a sequence replacement on environment X if he/she does not have permissions to run such a task on this environment.
Data Versioning (snapshot) Validations
  • Data versioning extract tasks - validate the retention period to verify that it does not exceed the maximum days allowed for the tester.
Entity Reservation Validations
  • Validate the number of reserved entities - this validation runs if the task reserves the entities whether the reservationInd parameter is set to True in the task itself or in the overridden parameters. The validation accumulates the number of entities in the task to the total number of reserved entities for the user on the target environment. If the accumulated number of reserved entities exceeds the user's permissions on the environment, the API returns an error.
    • For example, if a user is allowed to reserve up to 70 entities in ST1 and there are 50 entities already reserved for him in ST1, he can reserve up to additional 20 entities in ST1.
  • Validate the retention period to verify that the number of days does not exceed the maximum number of days allowed for the tester.

If at least one of the validations fails, the API does not start the task and returns validation errors.

Task Execution Process

Overriding task execution parameters does not update the task itself, but rather impacts the given task execution:

The task execution process gets the overridden parameters from task_execution_override_attrs TDM DB table and executes the task based on the overridden parameters.

Previous

Task Execution - Overriding Parameters

A task execution can override execution parameters by:

  • setting the active environment based on the task's environments.
  • setting key-value parameters on a session level.
  • overriding Globals' values on a session level.
  • overriding the Sync Mode of the task execution.
  • overriding additional execution parameters without changing the task itself.

Setting Active Environments

Extract Tasks

The task execution process sets the task's environment as the active environment on the executed task.

Load Tasks

The task execution process sets the active environment as follows:

  1. It first sets the task's source environment as the active environment and gets the LUI from Fabric.
  2. After the LUI sync, it sets the task's target environment as the active environment and runs the delete and/or load flows on the target environment.

Overriding Globals' Values

A project's Global can be overridden on either a TDM environment or a TDM task level.

The task execution process sets the values on the Globals on a session level.

Note: Task-level variables have a higher priority than TDM environment-level variables. That is, if a variable (Global) is set on both - the task and the related environment levels - the task's Global value gets the higher priority.

Overriding the Sync Mode on the Task Execution

When executing a TDM task, set the Sync mode according to the following table:

Source env -  Override Sync Mode

Task - Source env - policy for fetching data

Execution Sync Mode

Results

Empty

  • Available data from the Test data store, new data from <source env> 

On

LUIs are synced according to their sync method. See the Sync Behavior Summary table.

Empty

  • All data from <source env>

Force

LUIs are synced from the source.

Empty

  • Available <source env> data in the Test data store 
  • Selected snapshot (version) 

If the task includes a delete => On

Else => Off

  • If this is the first sync, return an error.
  • If the LUIs exist in Fabric:
    • Source LU tables:
    • Get the data from Fabric.
    • Target LU tables (populated for a delete activity):
    • Sync the data from the target environment.

Always sync

  • Available data from the Test data store, new data from <source env> 

Force

LUIs are synced from the source.

Always sync

  • All data from <source env>

Force

LUIs are synced from the source.

Do Not Sync

  • Only the following options are available in the task:
    • Available <source env> data in the Test data store 
    • Selected snapshot (version) 

If the task includes a delete => On

Else => Off

  • If this is the first sync, return an error.
  • If the LUIs exist in Fabric:
    • Source LU tables:
    • Get the data from Fabric.
    • Target LU tables:
    • Sync the data from the target environment.

Overriding Additional Task Execution Parameters

The TDM API that starts a task execution can get a list of parameter-value pairs to override the original values of these parameters on the task execution without changing the task data.

This way, various users can use a task as a template and change (override) the execution parameters without changing the task itself: Each user can run the task on their environment and update the execution parameter according to their needs.

TDM supports overriding the following parameters:

Parameter Name

Parameter Description

Task Actions

Data Versioning

entitieslist

Populated by a list of Business Entity IDs separated by a comma. This list can contain only one Business Entity ID when executing a task that clones a Business Entity.

All task actions except a Generate task

True/False

sourceEnvironmentName

Source environment name

Load or Extract tasks

True/False

targetEnvironmentName

Target environment name

Load, Delete, or Reserve tasks

True/False

taskGlobals

A list of Global variables (task variables) and their values

All tasks

True/False

numberOfEntities

Populated with a value that limits the number of entities to be processed by the task. This parameter is relevant only if an explicit entity list was not set.

All tasks

False

dataVersionExecId

Populated with the task execution id of the selected data version. The parameter can be set on Data Versioning load tasks.

Load task

True

dataVersionRetentionPeriod

Populated with the retention period of the extracted data version. This parameter contains the unit (Hours, Days, Weeks…) and the value.

Extract task True

reserveInd

Populated with True or False. Set to True if the task execution needs to reserve the entities on the target environment.

Load or Reserve tasks

Load task: True/False

 

Reserve task: N/A

reserveRetention

Populated with the reservation period of the task's entities. This parameter contains the unit (Hours, Days, Weeks.) and the value.

Load or Reserve tasks

Load task: True/False

 

Reserve task: N/A

executionNote

Free text. Adds a note to the execution.

All tasks

True/False

Note:

  • TDM supports overriding the task execution parameters only when invoking the start task execution API outside the TDM Portal. Currently, this option is not supported when executing the task using the TDM Portal.

Validate the Task Execution Parameters

This API validates the overridden parameters with the user's permissions on the task's environments:

Validate the Task Execution Parameters

  • Verify that the TDM task execution processes are up and running. If the TDM task execution processes are down, the API returns an error message.
  • Test the connection details of the source and target environments of the task execution if the forced parameter is false.
  • Do not enable an execution when another execution, with the same execution parameters, is already running on the task.
  • Validate the task's BE and LUs with the systems of the task execution's source and target environment.
  • Verify that the user is permitted to execute the task on the task execution's source and target environment. For example, a user cannot run a Load task with a sequence replacement on environment X if he/she does not have permissions to run such a task on this environment.
Data Versioning (snapshot) Validations
  • Data versioning extract tasks - validate the retention period to verify that it does not exceed the maximum days allowed for the tester.
Entity Reservation Validations
  • Validate the number of reserved entities - this validation runs if the task reserves the entities whether the reservationInd parameter is set to True in the task itself or in the overridden parameters. The validation accumulates the number of entities in the task to the total number of reserved entities for the user on the target environment. If the accumulated number of reserved entities exceeds the user's permissions on the environment, the API returns an error.
    • For example, if a user is allowed to reserve up to 70 entities in ST1 and there are 50 entities already reserved for him in ST1, he can reserve up to additional 20 entities in ST1.
  • Validate the retention period to verify that the number of days does not exceed the maximum number of days allowed for the tester.

If at least one of the validations fails, the API does not start the task and returns validation errors.

Task Execution Process

Overriding task execution parameters does not update the task itself, but rather impacts the given task execution:

The task execution process gets the overridden parameters from task_execution_override_attrs TDM DB table and executes the task based on the overridden parameters.

Previous