Base and Related Languages
In the case of rule packages, the source and target database need not have the same base language. The rule packager, using Data Mover functionality, can identify the base language in the target database and use the correct language from either the base or related language table if that language existed in the source package. Additionally, the rule packager also creates a related language entry on the target database for the source database's base language. Consider the following example:
A German (DEU) target database contains the following data:
Base Data
| PIN_NUM | PIN_CODE | Translatable Data | Nontranslatable Data |
|---|---|---|---|
|
701 |
GP_TEMP001_DEU |
Current German Text content |
Current values on the target database |
You create a package from an English (ENG) source database copying PIN_CODE GP_TEMP001 for base language only. The system:
-
Exports a data file containing information for PIN_CODE GP_TEMP001 from the ENG database.
The data file contains the new PIN_NUM of 50 000 701.
-
Imports the data file to the target database.
Upon import, DataMover automatically creates a related language row with a language code of ENG.
The German target database now looks like this:
| PIN_NUM | PIN_CODE | Translatable Data | Nontranslatable Data |
|---|---|---|---|
|
701 |
GP_TEMP001_DEU |
CONTENT |
Current values on the target database |
|
50 000 701 |
GP_TEMP001_DEU |
SALARY |
New values from the source database |
Related Language Data
| PIN_NUM | PIN_CODE | LANGUAGE_CD | Translatable Data |
|---|---|---|---|
|
50 000 701 |
GP_TEMP001_DEU |
ENG |
SALARY |
The system then:
-
Connects 50 000 701 with 701 using the PIN_CODE.
-
Copies the DEU translatable fields from 701 to 50 000 701.
-
Deletes the original PIN_NUM 701.
-
Renumbers the new rows with the PIN_NUM of the target database.
The result of the process is updated information on the base table and a new ENG entry on the related language table, as shown below.
Base Table
| PIN_NUM | PIN_CODE | Translatable Data | Nontranslatable Data |
|---|---|---|---|
|
701 |
GP_TEMP001 DEU |
CONTENT |
New values from the source database |
Related Language Table
| PIN_NUM | PIN_CODE | LANGUAGE_CD | Translatable Data |
|---|---|---|---|
|
701 |
GP_TEMP001 DEU |
ENG |
SALARY |
Had the package been defined as both base and related languages, the swapping of languages to some extent would already have been completed by datamover during the package import (if a related language row for the language of the target database was part of the package.) This would result in overlaying translatable fields of the base row with the contents of the copied language row. If only the related language was copied with the package, the process is the same as described above, except for translatable fields of the base row of the target database, which would be updated to contain the values of the moved language row.