1
The system of programs
The business applications
The framework
Localization issues
Localization of the platform
Localization of business applications
On-line demo version
Geography of Solutions
Licensing policy
Partnership
Getting support
Partner area entry
About 1C

1C:Enterprise the localization issues
Localization of the platform

Localization support by functionality of platform

Infobase regional settingsThe localization support of 1C:Enterprise platform allows using various interface languages when developing an applied solution, also at user's work. Besides, there are means for international data/time/numbers representation and written form for numbers and periods (spelling).

All applied solution configuration texts are stored in a database in UNICODE format. This format allows using characters from different languages at a time. So a user can enter data in various languages, for example if a product item description should include some text in the language of the manufacturer. At that the system allows performing filtration and sorting across such texts.

International dates and numbers support for most European languages

There is a capability to adjust a particular applied solution to use locales specific for a particular country. At that, regional settings used in a database may be set by an administrator, other than the default system settings (see the picture).

If none of the properties is set, the locales are defined by the operating system settings.

Language (country)' field defines a set of predefined locales for a certain country. Selection of a country provides proper formatting of dates, time, numbers and strings collator functionality for the country. At present, the following locales are supported:

Afrikaans (South Africa)
Belorussian (Belorussia)
Bulgarian (Bulgaria)
Catalan (Spain)
Czech (Czech Republic)
Danish (Denmark)
German (Austria)
German (Switzerland)
German (Germany)
German (Liechtenstein)
German (Luxemburg)
Greek (Greece)
English (Australia)
English (Belize)
English (Canada)
English (Great Britain)
English (Ireland)
English (Jamaica)
English (New Zeland)
English (Philippines)
English (Trinidad and Tobago)
English (USA)
English (South Africa)
English (Zimbabwe)
Spanish (Argentina)
Spanish (Bolivia)
Spanish (Chile)
Spanish (Colombia)
Spanish (Costa Rica)
Spanish (Dominican Rep.)
Spanish (Ecuador)
Spanish (Spain)
Spanish (Spain, traditional sort)
Spanish (Guatemala)
Spanish (Honduras)
Spanish (Mexico)
Spanish (Nicaragua)
Spanish (Panama)
Spanish (Peru)
Spanish (Puerto Rico)
Spanish (Paraguay)
Spanish (El Salvador)
Spanish (Uruguay)
Spanish (Venezuela)
Estonian (Estonia)
Basque (Spain)
Finnish (Finland)
Faroese (Faroe Islands)
French (Belgium)
French (Canada)
French (Switzerland)
French (France)
French (Luxemburg)
French (Monaco)
Croatian (Croatia)
Hungarian (Hungary)
Indonesian (Indonesia)
Icelandic (Island)
Italian (Switzerland)
Italian (Italy)
Kazakh (Kazakhstan)
Lithuanian (Lithuania)
Lettish (Latvia)
Dutch (Belgium)
Dutch (Netherlands)
Norwegian (Bokmal)(Norway)
Norwegian (Nynorsk)(Norway)
Polish (Poland)
Portuguese (Brazil)
Portuguese (Portugal)
Roumanian (Rumania)
Russian (Russia)
Slovak (Slovakia)
Slovenian (Slovenia)
Albanian (Albania)
Serbian (Cyrillic alphabet) (Serbia)
Serbian (Roman alphabet) (Serbia)
Swedish (Finland)
Swedish (Sweden)
Turkish (Turkey)
Ukrainian (Ukraine)

Bottom pane of the window shows representation of formats according to a locale selected.

If no specific formats for date/time/numbers are specified, default settings for a defined country are used. Two variants of the embedded language

Two variants of embedded language

All embedded language operators have Russian and English variants, both are accepted by the system equally without any special settings.

No additional modifications during localization process is required.

Documentation and Syntax Assistant contain English syntax and synonyms for all constructions of the embedded language.

Internationalization support by the embedded language

The embedded language itself provides a number of means for applied solutions to be multi-lingual.

There are functions in the language that return text strings according with the language settings specified. So an applied solution can generate texts in languages according to user's preferences.

NStr function

The function returns a string in the user's language or the main language of the applied solution, taking it from a predefined set of strings in different languages. For example, the string

Message ( NStr ( ru = !; en = Good Evening! , en ));

results in the following:

PeriodPresentation function

This function allows building a period description, defined as start date and end date in one of the supported languages. Execution of the code:

CurrentDate = CurrentDate ();

BegOfPeriod = BegOfMonth ( CurrentDate );

EndOfPeriod = EndOfMonth ( CurrentDate );

Message ( PeriodPresentation ( BegOfPeriod , EndOfPeriod , L = en_US ));

Message ( PeriodPresentation ( BegOfPeriod , EndOfPeriod , L = uk_UA ));

results in the following:

At present, this functionality is provided for the following languages:

  • English
  • Estonian
  • Byelorussian
  • Bulgarian
  • Finnish
  • German
  • Georgian
  • Kazakh
  • Latvian
  • Lithuanian
  • Romanian
  • Russian
  • Ukrainian
  • Vietnamese

NumberInWords function

This function generates a written representation of a number in one of the supported languages, according to a formatting string. Here is an example:

Message ( NumberInWords( 1457.25 , L=en_US , dollar, dollars, cent, cents, 2 ));

Result of this function looks like the following:

At present, the number spelling functionality is provided for the following languages:

  • English
  • Estonian
  • Byelorussian
  • Bulgarian
  • Finnish
  • German
  • Georgian
  • Kazakh
  • Latvian
  • Lithuanian
  • Romanian
  • Russian
  • Ukrainian
  • Vietnamese

Format function

This function formats values representation for convenient reading. The representation may reflect standard format of a selected language or country. For example, boolean, numeric and date type values:

Message ( Format (True, "L=en_US ));
Message ( Format (True, "L=uk_UA ) + Chars.CR );

Message ( Format ( 1475.25 , "L=en_US ));
Message ( Format ( 1475.25 , "L=uk_UA ) + Chars.CR );

Message ( Format ( '20010520105635' , "L=en_US ));
Message ( Format ( '20010520105635' , "L=uk_UA ) + Chars.CR );

will result the following representation in English and Ukrainian:

With this function one can use a values representation format from one of 80+ locales.

Getting a template in a language specified

When a developer creates output report forms from templates of text and spreadsheet documents, he can specify a language for the template; the language may differ from the one used by current business application user.

The platform interface

When developing an applied solution one can choose GUI language. At present, the platform interface includes the following versions:

  • English
  • Bulgarian
  • German
  • Georgian
  • Kazakh
  • Latvian
  • Lithuanian
  • Romanian
  • Russian
  • Ukrainian
  • Vietnamese

and more to come.

Trade_management_designer_window

Trade_management_designer_window

Localization of the platform into other languages

Process of localization of the platform into other languages includes the following parts:

  • Localization of date/time/number formats according to formats of the target locales. They must be formatted according with the standards accepted in the particular country (region). Localization of string collator functionality. Strings in reports and forms must be sorted properly. Localization of spelling totals and periods functionality.

These three localization parts are always done by 1C developers on the basis of formalized information on wording algorithms for spelling numbers, provided by the company partner. The partner can only check if they work properly setting a required Infobase Regional Settings, after a test release of localized platform.

However, before going on with the localization process, localizer must make sure there is a proper locale code in Database Regional Settings window. Presence of a proper code means, that existing platform functionality supports formats and sorting order according to those accepted in the target country.

ATTENTION! If there is no proper country in the Country list of the window, one has to try to find another country with proper format settings, then to check sorting order for that country. Results of these checks, together with detailed explanations of the check procedures done, should be immediately sent to 1C before going on further with localization process!

Localization of the platform interface

The platform interface must be readable in standard user conditions without special (3rd party's) software support.

This work is usually done by 1C Company's partners and implies mostly translation work.

For this work to be done there is a resource database (in 1C:Enterprise 8 format) that is used by our partners.

They unload resources from the database into external files and then use special localization tools (also provided) to localize them.

For localization purpose, the database and the localization tools can be sent to our partners by e-mail. It's required the partner to have 1C:Enterprise 8 platform, to open the resource database.

Localizable resources include:

  • Pictures. Can be edited with any graphic editor. Templates are localized with 'hlpedit' utility.
  • Help - is localized with 'hlpedit' utility, too. When translating, it's suggested to go through the tree in 'Files' tab, translating each file included into a particular .hbk file. Going through "Contents" cannot guarantee all help files will be translated. Strings translated directly in the database itself, without unloading into external files. Can be accessed through 'Operations - Catalog Strings' menu items. Forms are localized with 'FormDes' utility.

Help resources can also be exported into .xml format, edited with 3rd party software and then imported back into resource files.

After translation of resources, they are uploaded back into the database and in its turn it's sent back to 1C.

If these points are completed and checked for proper functioning, the platform is considered localized.

Localization of the installation wizard

The installer generates several messages during installation process. To be represented in a proper language, these messages should be localized as well. Since there may be several localization processes going at a time, for different locales, these strings are sent separately by 1C, as the localization process goes.

The platform localization process management

1C Company provides all relevant materials and the platform localization technology to its partners (contractor). The partner performs the localization and sends a resulted database back to 1C. 1C builds in the localized resources with the main release and produces a localized version of the platform.

One should also take into account, that localization, like development, is an on-going process. Help and forms are updated as the development moves on, and localizer is responsible for keeping localized version up-to-date, even after a format software release. All contract terms with localizer are detailed in a separate Localization Agreement, signed between a localizing entity (a company) and 1C. To the top

   © 1C LLC

Your proposals on site send to:webmaster@1c.ru