When designing for internalization (I18N) support, be aware of the following issues:
- Avoid hard coding strings within a workflow that need to be translated. This includes qualifications, and passing data via open window calls.
- All message IDs must be unique and should be stored in the message catalog forms.
- Any forms that are being queried from menus or using active links with the fallback locale mechanism must have the special Locale field (Field 160) on the forms. This will enable the system to perform the appropriate locale lookup.
- Design installations with I18N in mind. You should be able to choose which languages you want to install.
- Sample data must be localizable.
- An application should have only one code line. A different set of code should never be required for a specific language.
- If messages will be exposed to end users, any executables that are included with the application must include a message catalog.
- Do not construct sentences or concatenate strings together to relay information. Different languages require different orderings for the words.
- Leave extra space in your user interface to accommodate longer label names when translated.