RemoveLanguageFromData
RemoveLanguageFromData.exe can be used in two different ways: to convert a multilingual field into a unilingual one or to remove specific multilingual data.
Be advised to create a backup before applying this tool.
To convert a multilingual field into a unilingual one
This way to use the tool will remove all language attributes (of possibly multiple languages) and only keeps the data of the primary language.
If in the command-line command "nl-NL" is set as the primary language, while there are nl-NL and en-GB values, then all en-GB values are deleted entirely, while the nl-NL values are kept without language attribute.
Change all relevant fields to NON-multilingual before you run the tool. (The multilingual settings in the .pbk can stay as they are, if desired.)
The syntax of calling the tool (which can be displayed by starting the tool without any parameters) is as follows:
RemoveLanguageFromData <data folder> [fix (default)|check] [*|database table names (comma separated list)] [primary language (de-fault="en-GB")]
Remove certain multilingual data
The alternative way to use this tool is to use it to remove data in specified languages (along with their language attributes of course) from the database whilst maintaining the multilingual character of the field.
You can specify to remove data in one of more languages. Specify an empty primary language, using two double quotes. The syntax then becomes (with an optional last parameter):
RemoveLanguageFromData <data folder> [fix (default)|check] [*|database table names (comma separated list)] [primary language (de-fault="en-GB", so use "")] [specific languages to remove (comma separated list of language attribute codes)]
Example, to remove data in languages iv-IV and fr-FR:
RemoveLanguageFromData C:\Collections\data fix collect "" "iv-IV,fr-FR"
Monolingual data (data without language attributes) should never occur in multilingual fields, but if it does anyway, you can remove it (even if it has proper multilingual data too), by leaving the last parameter empty as well, like so for example:
RemoveLanguageFromData C:\Collections\data fix collect "" ""
The log
The check or fix log will only be visible in the command line window. Note that when using the check option, nothing is changed although the log implies it has: it states that values were deleted, while actually they weren't. The fix option reports the same log and has actually deleted values and/or language attributes.