Importing and exporting translated strings in ObjectManager

You can import translated strings to use for a new locale. You can also import updated values for strings.

Procedure

  1. Export the strings for the locale. See Exporting strings for translation.
  2. Modify the string value attributes in the XML file.
  3. Set the overriddenByUser property to true.
    When overriddenByUser is true, the string value is not overwritten during upgrades.
  4. Use the ObjectManager load command to import the strings. For more information, see the Load command syntax.
    The following example shows excerpts of the output from ObjectManager. In this example, an application string was updated for a locale.
    Loading Application Strings ...
          1 total
    Application Strings processed: 1 (1 updated)
    Total Objects processed: 1
    Total Validation Errors: 0
    Total Exceptions: 0
    Processing finished at Wed Sep 11 18:28:14 GMT 2025
    Elapsed time: 10255 milliseconds
    2025-09-11T18:28:18,531+0000 INFO [objectmanager.App] - Exiting after 16385ms with status code 0

What to do next

If the strings you imported are for a new locale and you want the locale to be available to your users, you must enable it. For more information, see Enabling and disabling locales.

Exporting strings for translation

You can export strings for a new locale, or new strings that were added to the system, so that they can be translated. To export (dump) the strings for translation from your system, you must modify some of the settings in the ObjectManager.properties file.

For information about the file, see Modifying the ObjectManager properties file.

Procedure

  1. To export strings for a locale, set the values of the properties in the ObjectManager.properties file as shown in the following code snippet where <locale_code> is the code of the locale for which you want to translate strings. For example, the <locale_code> for Croatian is hr_HR.
    configuration.manager.dump.application.strings=true
    configuration.manager.dump.error.strings=true
    configuration.manager.dump.object.strings=true
    configuration.manager.force.update.object.strings=true
    configuration.manager.force.update.application.strings=true
    configuration.manager.dump.strings.locale.filter=<locale_code>
  2. If you want to localize new strings that have been added, such as after an upgrade, set the values of the properties as shown in step 1 and set the following property where <number_of_days> is the number of days since the new strings were added to the system:
    configuration.manager.dump.strings.days.filter=<number_of_days>
  3. Optional: If you want to export strings embedded in workflows and views, set the following property:
    configuration.manager.dump.include.system.application.strings=true
    Note: The exported strings are in a format that can be imported only onto the system from which they were exported.
  4. Set the dump options for all other objects to false.
  5. Use the ObjectManager dump command to export the data. See the Dump command syntax.
    The following example shows excerpts of the output from ObjectManager.
    Application Strings processed: 17,275
    Error Strings processed: 1,396
    Object Strings processed: 321
    Object Strings processed: 12,329
    
    Total Objects processed: 31,321
    Total Validation Errors: 0
    Total Exceptions: 0
    
    Processing finished at Wed Sep 11 18:12:59 GMT 2025
    Elapsed time: 791 milliseconds
    2025-09-11T18:13:05,587+0000 INFO [objectmanager.App] - Exiting after 7938ms with status code 0

What to do next

Translate the strings in the exported file, then import the translated strings. For more information, see Importing and exporting translated strings in ObjectManager.