TDM Parameters Handling

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). A BE can have flat or hierarchical structure and each LU can have its own parameters list and its own LU PARAMS table.

The entities 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 as well. Therefore, it is highly important to have the linkage between the root entity and the children entities when selecting entities based on parameters.

Clicking the parameters matched icon in the [task window] invokes wsGetNumberOfMatchingEntities Fabric Web-Service (imported from the TDM Library) to for the number of root entities that match the selected parameters. The Web-Service generates a MATERIALIZED VIEW in the [TDM DB] on each combination of BE and source environment:

lu_relations_<BE name>_<Source Environment Name>

Each root entity ID is populated in one single record that contains all the related parameters and values of all the LUs. The select of matching entities runs on the MATERIALIZED VIEW.

This VIEW is refreshed by the checkMigrateAndUpdateTDMDB job refreshes the view to get the newly synched entities when updating extract tasks status to completed.

Example:

  • Customer BE has four LUs:

    • Two root LUs: Customer and Collection.
    • Customer LU has two children LUs:
    • Billing
    • Order
  • Even LU of the BE has its own LU_PARAMS table in the TDM DB.

  • Customer #65 has the following children IDs:

    • Billing LU: #169, #170, #171, #172, and #173.
    • Order LU: #279, #280, #281, #282, #283, #284, and #285.
  • Synching Customer ID #1 inserts the following record into CUSTOMER_PARAMS TDM DB table:

entity_id source_environment CUSTOMER.FIRST_NAME CUSTOMER.LAST_NAME CUSTOMER.LINE_NUMBER CUSTOMER.NO_OF_OPEN_CASES CUSTOMER.OPEN_CASE_DATE CUSTOMER.NO_OF_SUBSCRIBERS
65 SRC {"Maisie"} {"Berger"} {"719 764 1363","404 376 5891","(248) 143-7235","342-203-6253","+1 (929) 454-2178"} {"3"} {"2015-09-16 06:14:40","2016-01-13 04:27:36","2017-02-10 20:44:54"} {"5"}
  • Synching Collection ID #1 inserts the following records into COLLECTION_PARAMS TDM DB table:

entity_id source_environment COLLECTION.COLLECTION_STATUS
65 SRC {"5","4","3","1","2"}
  • Synching Billing IDs #169, #170, #171, #172, and #173 inserts the following records into BILLING_PARAMS TDM DB table:

entity_id source_environment BILLING.NO_OF_OPEN_INVOICES BILLING.VIP_STATUS BILLING.TOTAL_PAYMENT_AMOUNT BILLING.SUBSCRIBER_TYPE
169 SRC {"2"} {"Gold"} {"3789"} {"2"}
170 SRC {"2"} {"Silver"} {"824"} {"1"}
171 SRC {"0"} {"Gold"}   {"4"}
172 SRC {"0"} {"Gold"}   {"3"}
173 SRC {"1"} {"Platinum"} {"1898"} {"4"}
  • Synching Order IDs #279, #280, #281, #282, and #283. #284, and #285 inserts the following records into ORDER_PARAMS TDM DB table:

entity_id source_environment ORDERS.ORDER_TYPE ORDERS.ORDER_STATUS
279 SRC {"Device"} {"New"}
280 SRC {"Network"} {"Closed"}
281 SRC {"Billing"} {"Closed"}
282 SRC {"Billing"} {"New"}
283 SRC {"Network"} {"Closed"}
284 SRC {"Billing"} {"In Progress"}
285 SRC {"Billing"} {"Closed"}
  • The tester selects entities based on the following parameters:

    • NO_OF_OPEN_CASES > 0 AND VIP_STATUS = "Gold" AND ORDER_TYPE = "New"
  • wsGetNumberOfMatchingEntities Fabric Web-Service generates a new MATERIALIZED VIEW in the TDM DB named lu_relations_Customer_SRC:

customer_root_id BILLING.NO_OF_OPEN_INVOICES BILLING.SUBSCRIBER_TYPE BILLING.TOTAL_BALANCE_AMOUNT BILLING.TOTAL_PAYMENT_AMOUNT BILLING.VIP_STATUS CUSTOMER.FIRST_NAME CUSTOMER.LAST_NAME CUSTOMER.LINE_NUMBER CUSTOMER.NO_OF_OPEN_CASES CUSTOMER.NO_OF_SUBSCRIBERS CUSTOMER.OPEN_CASE_DATE ORDERS.ORDER_STATUS ORDERS.ORDER_TYPE collection_root_id COLLECTION.COLLECTION_STATUS
65 {0,1,1,1,1,2,2,2,2,0,0,1} {1,2,2,4,4,1,2,2,1,4,3,4} {1644.0,179.0,3215.0,2720.0,3138.0,2178.0,4350.0,4673.0,2388.0,2498.0,4950.0,2445.0} {1154,1343,541,3989,1221,1961,3789,824,1898} {Gold,Silver,Platinum,Bronze} {Maisie} {Berger} {719 764 1363,404 376 5891,(248) 143-7235,342-203-6253,+1 (929) 454-2178} {3} {5} {2015-09-16 06:14:40,2016-01-13 04:27:36,2017-02-10 20:44:54} {Closed,Closed,Closed,Closed,New,New,In Progress} {Network,Billing,Billing,Network,Billing,Billing,Device} 65 {5,4,3,1,2}

Previous

TDM Parameters Handling

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). A BE can have flat or hierarchical structure and each LU can have its own parameters list and its own LU PARAMS table.

The entities 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 as well. Therefore, it is highly important to have the linkage between the root entity and the children entities when selecting entities based on parameters.

Clicking the parameters matched icon in the [task window] invokes wsGetNumberOfMatchingEntities Fabric Web-Service (imported from the TDM Library) to for the number of root entities that match the selected parameters. The Web-Service generates a MATERIALIZED VIEW in the [TDM DB] on each combination of BE and source environment:

lu_relations_<BE name>_<Source Environment Name>

Each root entity ID is populated in one single record that contains all the related parameters and values of all the LUs. The select of matching entities runs on the MATERIALIZED VIEW.

This VIEW is refreshed by the checkMigrateAndUpdateTDMDB job refreshes the view to get the newly synched entities when updating extract tasks status to completed.

Example:

  • Customer BE has four LUs:

    • Two root LUs: Customer and Collection.
    • Customer LU has two children LUs:
    • Billing
    • Order
  • Even LU of the BE has its own LU_PARAMS table in the TDM DB.

  • Customer #65 has the following children IDs:

    • Billing LU: #169, #170, #171, #172, and #173.
    • Order LU: #279, #280, #281, #282, #283, #284, and #285.
  • Synching Customer ID #1 inserts the following record into CUSTOMER_PARAMS TDM DB table:

entity_id source_environment CUSTOMER.FIRST_NAME CUSTOMER.LAST_NAME CUSTOMER.LINE_NUMBER CUSTOMER.NO_OF_OPEN_CASES CUSTOMER.OPEN_CASE_DATE CUSTOMER.NO_OF_SUBSCRIBERS
65 SRC {"Maisie"} {"Berger"} {"719 764 1363","404 376 5891","(248) 143-7235","342-203-6253","+1 (929) 454-2178"} {"3"} {"2015-09-16 06:14:40","2016-01-13 04:27:36","2017-02-10 20:44:54"} {"5"}
  • Synching Collection ID #1 inserts the following records into COLLECTION_PARAMS TDM DB table:

entity_id source_environment COLLECTION.COLLECTION_STATUS
65 SRC {"5","4","3","1","2"}
  • Synching Billing IDs #169, #170, #171, #172, and #173 inserts the following records into BILLING_PARAMS TDM DB table:

entity_id source_environment BILLING.NO_OF_OPEN_INVOICES BILLING.VIP_STATUS BILLING.TOTAL_PAYMENT_AMOUNT BILLING.SUBSCRIBER_TYPE
169 SRC {"2"} {"Gold"} {"3789"} {"2"}
170 SRC {"2"} {"Silver"} {"824"} {"1"}
171 SRC {"0"} {"Gold"}   {"4"}
172 SRC {"0"} {"Gold"}   {"3"}
173 SRC {"1"} {"Platinum"} {"1898"} {"4"}
  • Synching Order IDs #279, #280, #281, #282, and #283. #284, and #285 inserts the following records into ORDER_PARAMS TDM DB table:

entity_id source_environment ORDERS.ORDER_TYPE ORDERS.ORDER_STATUS
279 SRC {"Device"} {"New"}
280 SRC {"Network"} {"Closed"}
281 SRC {"Billing"} {"Closed"}
282 SRC {"Billing"} {"New"}
283 SRC {"Network"} {"Closed"}
284 SRC {"Billing"} {"In Progress"}
285 SRC {"Billing"} {"Closed"}
  • The tester selects entities based on the following parameters:

    • NO_OF_OPEN_CASES > 0 AND VIP_STATUS = "Gold" AND ORDER_TYPE = "New"
  • wsGetNumberOfMatchingEntities Fabric Web-Service generates a new MATERIALIZED VIEW in the TDM DB named lu_relations_Customer_SRC:

customer_root_id BILLING.NO_OF_OPEN_INVOICES BILLING.SUBSCRIBER_TYPE BILLING.TOTAL_BALANCE_AMOUNT BILLING.TOTAL_PAYMENT_AMOUNT BILLING.VIP_STATUS CUSTOMER.FIRST_NAME CUSTOMER.LAST_NAME CUSTOMER.LINE_NUMBER CUSTOMER.NO_OF_OPEN_CASES CUSTOMER.NO_OF_SUBSCRIBERS CUSTOMER.OPEN_CASE_DATE ORDERS.ORDER_STATUS ORDERS.ORDER_TYPE collection_root_id COLLECTION.COLLECTION_STATUS
65 {0,1,1,1,1,2,2,2,2,0,0,1} {1,2,2,4,4,1,2,2,1,4,3,4} {1644.0,179.0,3215.0,2720.0,3138.0,2178.0,4350.0,4673.0,2388.0,2498.0,4950.0,2445.0} {1154,1343,541,3989,1221,1961,3789,824,1898} {Gold,Silver,Platinum,Bronze} {Maisie} {Berger} {719 764 1363,404 376 5891,(248) 143-7235,342-203-6253,+1 (929) 454-2178} {3} {5} {2015-09-16 06:14:40,2016-01-13 04:27:36,2017-02-10 20:44:54} {Closed,Closed,Closed,Closed,New,New,In Progress} {Network,Billing,Billing,Network,Billing,Billing,Device} 65 {5,4,3,1,2}

Previous