Task Execution - Overriding Parameters

A task execution can override execution parameters, as follows:

  • 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:

  1. Sets the task's source environment as the active environment.
  2. Gets the LUI from Fabric.
  3. Sets the task's target environment as the active environment.
  4. Runs the delete and/or load flows on the target environment.

Setting Key-Value Parameters

Set execution parameters like the following indicators:

  • Replace sequence
  • Delete before load
  • Insert to target

These parameters are based on the task's settings and are set on a session level.

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 variable. I.e. 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:

Override Sync - Source Env Level

Set Sync Policy - Task Level

Task Type

Task Execution Sync Mode

Results

None

Sync New Data

Extract, Load, Delete

On

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

None

Refresh all Data From Source

Extract, Load, Delete

Force

LUIs are synced from the source.

Always sync

Sync New Data

Extract, Load, Delete

Force

LUIs are synced from the source.

Always sync

Refresh all Data From Source

Extract, Load, Delete

Force

LUIs are synced from the source.

Do Not Sync

Refresh all Data From Source

Extract, Load, Delete

Force

LUIs are synced from the source.

 

Sync New Data

Do Not Sync

 

 

 

Load

Off

  • First sync, return an error.
  • If the LUIs exist in Fabric:
  • Get the data from Fabric.

None

Do Not Sync From Source Data

Load and Delete On
  • 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.

Do Not Sync

Sync New Data

Load and Delete On
  • 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.

N/A

N/A

Delete On Target LU tables are synced from the target environment.

N/A

 

 

Do Not Sync From Source Data

 

 

Load

Off

  • First sync, return an error.
  • If the LUIs exist in Fabric:
  • Get the data from Fabric. 

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 his environment and update the execution parameter according to his needs.

TDM supports the override of the following parameters:

Parameter Name

Parameter Description

Task Types

Data Versioning

entitieslist

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

Load 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. Add a note to the execution.

All tasks

True/False

Note:

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

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 if 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 does not have permissions to run such a task on this environment.
Data Versioning 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 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 an 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 validation fails, the API does not start the task and returns validation errors.

Task Execution Process

The override of 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, as follows:

  • 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:

  1. Sets the task's source environment as the active environment.
  2. Gets the LUI from Fabric.
  3. Sets the task's target environment as the active environment.
  4. Runs the delete and/or load flows on the target environment.

Setting Key-Value Parameters

Set execution parameters like the following indicators:

  • Replace sequence
  • Delete before load
  • Insert to target

These parameters are based on the task's settings and are set on a session level.

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 variable. I.e. 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:

Override Sync - Source Env Level

Set Sync Policy - Task Level

Task Type

Task Execution Sync Mode

Results

None

Sync New Data

Extract, Load, Delete

On

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

None

Refresh all Data From Source

Extract, Load, Delete

Force

LUIs are synced from the source.

Always sync

Sync New Data

Extract, Load, Delete

Force

LUIs are synced from the source.

Always sync

Refresh all Data From Source

Extract, Load, Delete

Force

LUIs are synced from the source.

Do Not Sync

Refresh all Data From Source

Extract, Load, Delete

Force

LUIs are synced from the source.

 

Sync New Data

Do Not Sync

 

 

 

Load

Off

  • First sync, return an error.
  • If the LUIs exist in Fabric:
  • Get the data from Fabric.

None

Do Not Sync From Source Data

Load and Delete On
  • 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.

Do Not Sync

Sync New Data

Load and Delete On
  • 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.

N/A

N/A

Delete On Target LU tables are synced from the target environment.

N/A

 

 

Do Not Sync From Source Data

 

 

Load

Off

  • First sync, return an error.
  • If the LUIs exist in Fabric:
  • Get the data from Fabric. 

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 his environment and update the execution parameter according to his needs.

TDM supports the override of the following parameters:

Parameter Name

Parameter Description

Task Types

Data Versioning

entitieslist

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

Load 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. Add a note to the execution.

All tasks

True/False

Note:

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

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 if 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 does not have permissions to run such a task on this environment.
Data Versioning 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 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 an 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 validation fails, the API does not start the task and returns validation errors.

Task Execution Process

The override of 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