Source data management process

Source Data Management (SDM) is the process to capture data from the ONESOURCE system. This process runs according to a schedule defined and maintained by the Thomson Reuters DevOps team.
SDM captures a snapshot of data for all companies. This is an important consideration because the Staging process executes for an extract definition which is owned by a company.
Upon startup, SDM creates a new internal batch in the EX_SRC_BATCHES table. It then reads data from the ONESOURCE services to populate tables (see the following table). Once SDM is complete, the next execution of Staging will process the most current successful batch and remove the SDM data from all previous batches.
During this process, SDM generates its own key values for each table. These values are generated using the columns in the source table that make that record unique, concatenating them together to make the key value and then generating a hash key from that value to generate the numeric key.
Table
Description
EX_SRC_AUTHORITIES
Stores all the authorities from Determination (TB_AUTHORITIES).
EX_SRC_AUTH_OPTIONS
Stores all the authority options from Determination (TB_AUTHORITY_REQUIREMENTS). This data is used to determine if an authority is turned on or off.
EX_SRC_BATCHES
Manages SDM batches
EX_SRC_COMPANIES
Stores all the companies in Determination (TB_MERCHANTS).
EX_SRC_ESTABLISHMENTS
Stores the establishment data found in the 3 established tables (TB_ESTABLISHED_AUTHORITIES, TB_ESTABLISHED_AUTHORITY_TYPES, and TB_ESTABLISHED_ZONES)
EX_SRC_JURISDICTIONS
Jurisdictions are stacks of authorities. For example, if a city has an applicable state tax and a city tax, then the 2 authorities would be combined together to create a jurisdiction. The jurisdiction key is a combination of the authority UUID values.
EX_SRC_JURISDICTION_AUTHS
Jurisdiction authorities manage the many-to-many relationship between jurisdiction and authority.
EX_SRC_JURISDICTION_LOCS
Jurisdiction locations are a flattened representation of TB_ZONES. It also includes the jurisdiction for each zone. In cases where there is one or more custom authorities associated with a zone, the zone data is repeated once for each jurisdiction.
EX_SRC_PRODUCTS
Product records represent the product mappings stored in Determination. Each record contains foreign keys to EX_SRC_PRODUCT_CATEGORIES and EX_SRC_PROD_MAP_GROUPS.
EX_SRC_PRODUCT_CATEGORIES
Contains all the product categories that have one or more product mappings configured in the system.
EX_SRC_PRODUCT_EXEMPTS
Contains the product exemption rules. These rules aren’t used very often anymore, but if they exist then this table will store the data and the Staging process will use the data to exempt the product appropriately.
EX_SRC_PROD_MAP_GROUPS
Stores all the product mapping groups in Determination.
EX_SRC_RATES
Stores all the rates for all the authorities in Determination (TB_RATES).
EX_SRC_RATE_TIERS
Stores all the rate tiers from Determination (TB_RATE_TIERS).
EX_SRC_REFERENCE_LISTS
Stores all the reference lists from Determination (TB_REFERENCE_LISTS).
EX_SRC_REFERENCE_LIST_VALUES
Stores all the reference list values from Determination (TB_REFERENCE_LIST_VALUES).
EX_SRC_RULES
Stores all the rules from Determination, excluding rules whose product category is not mapped in a product mapping.
EX_SRC_RULE_QUALIFIERS
Stores all the rule qualifiers from Determination whose rules have been selected.
EX_SRC_STORES
Stores all the locations in Determination (TB_LOCATIONS).