EnterWorks supports multi-language attributes, which may have values for each language EnterWorks has been configured to support. If a repository has multi-language attributes, and those attributes are defined as relational, and the repository has been configured to create multi-language snapshot tables, an additional snapshot table will be created for each language enabled in the Language List other than the default language.
The names of the multi-language snapshot tables will be suffixed with their language code. So if a repository is named:
Product_Staging
and EnterWorks has been configured with English as its default language and configured to support the French, German, and Spanish languages, the following multi-language snapshot tables will be created:
-
Product_Staging_fr
-
Product_Staging_de
-
Product_Staging_es
The attribute's value for the default language will be stored in the main snapshot table, while any values for the attribute's non-default languages will be stored in their respective language-specific snapshot tables.
Unlike the main snapshot table view, which have an attribute column for each attribute that is defined as relational, the multi-language snapshot tables will only have attribute columns for the multi-language attributes.
The first few columns in the multi-language snapshot table are system bookkeeping columns. They are:
-
InternalRecordId
: This is the ID of the repository's record. -
Created
: When the repository record was created. -
Last_Updated
: The last time the repository record was updated for any reason, including validation. -
Data_Last_Updated
: The last date any attribute in the repository record was last updated. -
Snapshot_Last_Updated
: The last time the snapshot record was updated. This may not match theData_Last_Updated
value if a change is made to one of the repository record's attributes that is NOT in the snapshot table or if the snapshot table has been regenerated.
The attribute columns follow the system columns. They are:
-
InternalRecordId
: This maps to theInternalRecordId
of the record in the repository. It can be used to join a multi-language snapshot table row to a row in the main snapshot table. -
KeyName
: The name of the attribute. This will exactly match the attribute name in the repository, which can be seen by viewing the repository's profile or opening the repository in the Detail Editor. -
KeyRestrictedName
: The restricted name of the attribute, as defined in the repository's attribute definition. -
KeyValue
: The attribute's value. -
KeySequence
: If a display sequence is set for the attributes in the repository, an attribute's sequence value will be reflected in the multi-language snapshot table's attribute'sKeySequence
field.
To use SQL to access an attribute in a multi-language snapshot table, query the main snapshot table to get all the global attributes, including the default language attribute values, then query or join it with the desired multi-language snapshot table, using the internal record ID to get the attribute values for that same record.
For example, if English is the default language, to get an attribute's French value, you would query the main snapshot table to get the global attributes, then query or join it with the French snapshot table, using the internal record ID to get the French attribute value.