The Softkeys sheet is used to include "soft" Keys in the subsetted data. Soft Keys are Keys that are not implemented as hard coded constraints in the source database. They can be either Primary or Foreign Keys.

SoftKeys can be specified prior to running the Basic Subset. The definition of the Keys drives the formulation of the Subset Rules. Data Subsetting using Test Data Automation automatically formulates rules for creating a Subset that satisfies where the data satisfies the relationships defined by Primary and Foreign keys. The SUBSET action will then "Crawl" up and down the tables collecting data until it produces a data set that satisfies all the hard and soft relationships.

Note: Subset Rules are formulated to generate a set of data that fulfils the relationships in the Source Database. It therefore creates a data set where the data reflects the Primary and Foreign Key relationships. However, the core actions involved in running a Subset (GETMETADATA, PREPENV, BUILDMODEL, and SUBSET) do not implement these Keys in the Staging database. To implement them, you must perform Post-Subset actions to add Keys.

The Softkeys sheet contains the following columns:

  1. Active: Set to "Yes" or "No", this will either include or exclude a relationship.

  2. FK_Schema: This should be left blank when defining Softkeys.

  3. FK_Table: This should be left blank when defining Softkeys.

  4. FK_Columns: This should be left blank when defining Softkeys.

  5. PK_Schema: The source primary key schema

  6. PK_Table: Primary key table name

  7. PK_Columns: The column names for the primary key. For composite keys the column names are delimited by a semi-colon.

  8. FK_Name: Foreign key name.

An empty Softkeys sheet therefore appears as follows:

To define a "soft" primary key for your Subset, simply leave the FK_Schema, FK_Table and FK_Columns cells empty. Next, specify the source primary key schema, the primary key table name, column names, and foreign key name:

You can define multiple Softkeys for a subset. To toggle between including them or not in your subsetted data, set the Active column to "Yes" or "No".