The TDM enables the user to select entities based on predefined parameters when creating a load task.
The list of available parameters is displayed on the task's BE (Business Entity). The list of parameters for each LU and the parameters' information - the valid values of combo parameters, number of values, parameter type, and minimum and maximum values for numeric parameters - are kept in the tdm_params_distinct_values TDM DB table.
A BE can have either a flat or a hierarchical structure and each LU has its own parameters list and its own LU parameters table in the TDM DB. The LU parameters table is created and populated in the TDM DB by the LUI sync. The naming convention of the parameters tables is <LU Name>_params
.
The entity selection on a TDM task selects a subset of root entities, but the parameters for selection can be based on the child LU's parameters. Therefore, it is important to have the linkage between the root entity and the children entities when selecting entities based on parameters. Previous TDM versions created a MATERIALIZED VIEW in the TDM DB on each combination of BE and source environment to have the linkage between the root entity and the children entities. From TDM 8.1 onwards, each LU parameters table contains the following fields for connecting the entity id to its root entity:
Example:
Customer BE has 4 LUs:
Customer #65 has the following children IDs in the Production environment:
Syncing Customer ID #1 inserts the following record into CUSTOMER_PARAMS TDM DB table:
Syncing Collection ID #1 inserts the following records into COLLECTION_PARAMS TDM DB table:
root_lu_name | root_iid | entity_id | source_environment | COLLECTION.COLLECTION_STATUS |
Collection | 65 | 65 | Production | {"5","4","3","1","2"} |
Syncing Billing IDs #169, #170, #171, #172, and #173 inserts the following records into BILLING_PARAMS TDM DB table:
Syncing Order IDs #279, #280, #281, #282, #283, #284, and #285 inserts the following records into ORDER_PARAMS TDM DB table:
The tester selects entities based on the following parameters:
The following Select statement runs on the TDM DB to get the available entities:
SELECT ROOT_IID FROM crm_params WHERE source_environment = 'Production' AND root_lu_name = ANY('Customer', 'Collection') AND 0 < ANY("CRM.NUM_OF_OPEN_CASES"::numeric[] )
INTERSECT
SELECT ROOT_IID FROM billing_params WHERE source_environment = 'Production' AND root_lu_name = ANY('Customer', 'Collection') AND 'Gold' = ANY("BILLING.VIP_STATUS")
INTERSECT
SELECT ROOT_IID FROM order_params WHERE source_environment = 'Production' AND root_lu_name = ANY('Customer', 'Collection') AND 'New' = ANY("ORDER.ORDER_TYPE") ;
The TDM enables the user to select entities based on predefined parameters when creating a load task.
The list of available parameters is displayed on the task's BE (Business Entity). The list of parameters for each LU and the parameters' information - the valid values of combo parameters, number of values, parameter type, and minimum and maximum values for numeric parameters - are kept in the tdm_params_distinct_values TDM DB table.
A BE can have either a flat or a hierarchical structure and each LU has its own parameters list and its own LU parameters table in the TDM DB. The LU parameters table is created and populated in the TDM DB by the LUI sync. The naming convention of the parameters tables is <LU Name>_params
.
The entity selection on a TDM task selects a subset of root entities, but the parameters for selection can be based on the child LU's parameters. Therefore, it is important to have the linkage between the root entity and the children entities when selecting entities based on parameters. Previous TDM versions created a MATERIALIZED VIEW in the TDM DB on each combination of BE and source environment to have the linkage between the root entity and the children entities. From TDM 8.1 onwards, each LU parameters table contains the following fields for connecting the entity id to its root entity:
Example:
Customer BE has 4 LUs:
Customer #65 has the following children IDs in the Production environment:
Syncing Customer ID #1 inserts the following record into CUSTOMER_PARAMS TDM DB table:
Syncing Collection ID #1 inserts the following records into COLLECTION_PARAMS TDM DB table:
root_lu_name | root_iid | entity_id | source_environment | COLLECTION.COLLECTION_STATUS |
Collection | 65 | 65 | Production | {"5","4","3","1","2"} |
Syncing Billing IDs #169, #170, #171, #172, and #173 inserts the following records into BILLING_PARAMS TDM DB table:
Syncing Order IDs #279, #280, #281, #282, #283, #284, and #285 inserts the following records into ORDER_PARAMS TDM DB table:
The tester selects entities based on the following parameters:
The following Select statement runs on the TDM DB to get the available entities:
SELECT ROOT_IID FROM crm_params WHERE source_environment = 'Production' AND root_lu_name = ANY('Customer', 'Collection') AND 0 < ANY("CRM.NUM_OF_OPEN_CASES"::numeric[] )
INTERSECT
SELECT ROOT_IID FROM billing_params WHERE source_environment = 'Production' AND root_lu_name = ANY('Customer', 'Collection') AND 'Gold' = ANY("BILLING.VIP_STATUS")
INTERSECT
SELECT ROOT_IID FROM order_params WHERE source_environment = 'Production' AND root_lu_name = ANY('Customer', 'Collection') AND 'New' = ANY("ORDER.ORDER_TYPE") ;