Understanding Language
What is the Language System?
The Language system in AI SCADA enables multi-language support for your SCADA applications. It allows you to create interfaces that can be displayed in different languages, making your applications accessible to users worldwide.
The system automatically translates UI elements, system messages, and user-defined text based on the selected language, providing a seamless localized experience.
When to Use Multi-Language?
Multi-language support is essential for:
- International Deployments: Applications used across different countries and regions
- Multinational Companies: Facilities with operators speaking different languages
- Global Equipment Manufacturers: OEMs selling equipment to international markets
- Regulatory Compliance: Meeting local language requirements in different regions
- Operator Accessibility: Ensuring all operators can use the system in their native language
Key Concepts
Language Packs
Language Packs are built-in translations for system UI elements and messages.
Characteristics:
- Provided by the system (cannot be edited by users)
- Cover all standard UI elements (menus, buttons, dialogs, system messages)
- Determine which languages are available in AI SCADA
- Automatically applied when language is switched
Included Elements:
- System menus and toolbars
- Dialog boxes and prompts
- Error and warning messages
- Standard component labels
- System notifications
User Text (Configurable Text)
User Text refers to custom text entered by users in views and components.
Characteristics:
- Dynamically created by users during development
- Automatically detected and added to translation list
- Requires manual translation by users
- Includes all text in components (buttons, labels, charts, etc.)
Included Elements:
- Button labels
- Text boxes and input prompts
- Chart titles and axis labels
- Menu items
- Custom messages
Translation Workflow
Use Cases
Use Case 1: International Manufacturing Plant
Scenario: A manufacturing plant operates in multiple countries with operators speaking different languages.
Implementation:
- Enable languages: English, Chinese, Spanish, German
- Translate all view text and component labels
- Add language switcher component to main view
- Operators select their preferred language at login
Benefits:
- Reduced training time for new operators
- Fewer operational errors due to language barriers
- Improved safety through clear communication
- Compliance with local regulations
Use Case 2: Equipment OEM
Scenario: An equipment manufacturer sells machines globally and needs to provide localized HMI.
Implementation:
- Create master project in English
- Export text for translation
- Import translations for target markets
- Deliver equipment with pre-configured language options
Benefits:
- Single project supports multiple markets
- Reduced development and maintenance costs
- Faster time to market
- Better customer satisfaction
Use Case 3: Multinational Corporation
Scenario: A global company standardizes SCADA across facilities in different countries.
Implementation:
- Develop standard templates in English
- Translate to all regional languages
- Deploy same project to all facilities
- Local operators use their native language
Benefits:
- Consistent user experience globally
- Easier knowledge transfer between facilities
- Simplified support and training
- Reduced localization costs
Translatable Components
The following components support multi-language translation:
Standard Components
| Component | Translatable Elements |
|---|---|
| Shapes/Text | Text content |
| Buttons | Button text, tooltip text |
| Status Indicators | State labels, tooltip text |
| Input Box | Placeholder text |
| Dropdown | Options, placeholder text |
| Radio Button | Option labels |
| Checkbox | Label text |
| Menu | Menu item names, submenu names |
Chart Components
| Component | Translatable Elements |
|---|---|
| Bar Chart | X-axis title, Y-axis title, series names, field aliases |
| Line Chart | X-axis title, Y-axis title, series names, field aliases |
| Pie Chart | Series names, field aliases |
| Table | Column headers, field aliases |
| Trend Chart | X-axis title, Y-axis title, group names, curve names, tag names |
| Indicator Card | Indicator name, field alias |
Control Components
| Component | Translatable Elements |
|---|---|
| Dropdown Filter | Chart field names |
| Filter | Label text, query fields |
Runtime Components
| Component | Translatable Elements |
|---|---|
| Trend Configuration | Group names, curve names, tag names |
Language System Architecture
Translation Storage
Storage Structure:
- Original text (source language)
- Translation for each enabled language
- Component reference (where text is used)
- Last modified timestamp
Runtime Language Switching
When a user switches language:
- System detects language change
- Retrieves translations for all visible text
- Updates all components with translated text
- Applies language pack for system UI
- Saves language preference for next session
Performance:
- Language switching is instant (< 1 second)
- No view reload required
- All text updates simultaneously
Best Practices
Planning
Language Selection:
- Enable only languages you will actively use
- Consider regional variants (e.g., English US vs. English UK)
- Plan for future language additions
Text Design:
- Keep text concise to accommodate longer translations
- Avoid text in images (use text components instead)
- Design layouts with space for text expansion
Translation Strategy:
- Decide on translation workflow (manual, auto, professional)
- Establish terminology standards
- Create translation glossary for consistency
Development
Text Entry:
- Use clear, descriptive text in source language
- Avoid abbreviations that may not translate well
- Be consistent with terminology
Layout Design:
- Allow extra space for text expansion (30-50%)
- Use flexible layouts that adapt to text length
- Test with longest expected translations
Component Selection:
- Use text components instead of text in images
- Prefer components with built-in translation support
- Avoid hard-coded text in scripts
Translation
Quality:
- Use professional translators for critical text
- Review auto-translations for accuracy
- Test translations with native speakers
Consistency:
- Maintain translation glossary
- Use consistent terminology across views
- Review translations periodically
Maintenance:
- Update translations when source text changes
- Keep translation files backed up
- Version control translation exports
Next Steps
Now that you understand the Language system, you can:
- Configuring Language: Learn how to enable languages, translate text, and apply multi-language in your project
Related Topics
- Creating Views: Design views with translatable text
- Understanding Project: Manage language settings in projects
- Creating Event-Actions: Use language switching actions