1Ci Support Help Center home page
Submit a request
Sign in
  1. 1Ci Support
  2. 1C:Enterprise Development Standards
  3. Localization requirements

International configuration version supply

  • Localization requirements
    • International configuration version supply
    • Interface texts in code: localization requirements
    • Queries, dynamic lists and reports on DCS: localization requirements
    • Date, value and boolean formatting: localization requirements
    • String constant expressions in the code: localization requirements
    • Form items: localization requirements
    • Scheduled jobs: localization requirements
    • Templates: localization requirements
    • Cash fields: localization requirements

Scope: managed applications, mobile applications, and ordinary applications.

To make the task of localization specialists easier upon the initial configuration localization and further updates, it is necessary to release an international configuration version prepared for creating national versions. It is recommended that you develop localized configuration versions based on the international version.

To reduce time required to find out national particularities, first, you need to analyze foreign configuration versions published on 1С Portal.

To prepare an international configuration version:

1. Identify national (Russian) particularities in the application code and configuration forms as separate metadata objects. They are not to be included in the international version. Example:

Incorrect example:

Correct example:

2. It is recommended that you leave object attributes with national particularities in objects but ensure configuration operability in case they are deleted.

3. In object forms, where only some items have national particularities, it is recommended that you place such items in a separate form, for example:

4. Algorithms can be country-specific as well, for example, import of exchange rates. Identify them as separate metadata objects as well.

5. If the greatest part of the subsystem is country-specific, it is recommended that you consider the entire subsystem to be country-specific. For example: the "Object presentation declension" subsystem is entirely country-specific.

6. List metadata objects with national (Russian) specifics in the ObjectsToLocalize<...>.txt file. Include this file in the standard configuration distribution package.

The ObjectsToLocalize<...>.txt file contains metadata object names as the MetadataObject.FullName() function returns them. Each object name starts in a new line. You can add comments in the same way as in the configuration code.

$$$

// Banks
DataProcessor.ImportBankClassifier
ScheduledJob.ImportBankClassifier
Catalog.BankClassifier.Attribute.TIN

// Currencies
DataProcessor.ImportCurrenciesRates
ScheduledJob.ImportCurrenciesRates

7. Make sure that compliance with the first requirement does not negatively affect user-friendliness of the interface. If the form usability is significantly degraded after a part of the form is moved to separate forms, it is recommended that you consider the entire form to be country-specific.

8. In procedures of overridable modules, you can place only calls of configuration procedures that contain the application code. This makes further development of overridable modules upon localization easier. Example:

Incorrect example:

// In the ReportsOptionsOverridable module

Procedure DefineSectionsWithReportsOptions(Sections) Export
	Sections.Add(ReportOptionsClientServer.HomePageID(),
		NStr("en = 'Main'"));
	
	Sections.Add(Metadata.Subsystems.CRMAndMarketing,
		NStr("en = 'CRM and marketing reports'"));
	
	Sections.Add(Metadata.Subsystems.Purchases,
		NStr("en= 'Purchasing reports'"));
	
	Sections.Add(Metadata.Subsystems.CashFlow,
		NStr("en= 'Cash flow reports'"));
	
	Sections.Add(Metadata.Subsystems.Sales,
		NStr("en= 'Sales reports'"));
	
	Sections.Add(Metadata.Subsystems.Warehouse,
		NStr("en= 'Warehouse reports'"));
	
	Sections.Add(Metadata.Subsystems.FinancialResultAndControlling,
		NStr("en= 'Financial result reports'"));
EndProcedure

Correct example:

// In the ReportsOptionsOverridable module

Procedure DefineSectionsWithReportsOptions(Sections) Export
	ReportsOptionsTM.DefineSectionsWithReportsOptions(Sections);
EndProcedure

// In the ReportsOptionsTM module

Procedure DefineSectionsWithReportsOptions(Sections) Export
	Sections.Add(ReportOptionsClientServer.HomePageID(),
		NStr("en = 'Main'"));
	
	Sections.Add(Metadata.Subsystems.CRMAndMarketing,
		NStr("en = 'CRM and marketing reports'"));
	
	Sections.Add(Metadata.Subsystems.Purchases,
		NStr("en= 'Purchasing reports'"));
	
	Sections.Add(Metadata.Subsystems.CashFlow,
		NStr("en= 'Cash flow reports'"));
	
	Sections.Add(Metadata.Subsystems.Sales,
		NStr("en= 'Sales reports'"));
	
	Sections.Add(Metadata.Subsystems.Warehouse,
		NStr("en= 'Warehouse reports'"));
	
	Sections.Add(Metadata.Subsystems.FinancialResultAndControlling,
		NStr("en= 'Financial result reports'"));
EndProcedure

9. Make sure that the international configuration is functional.

10. Release the international and Russian configuration versions synchronously. It is recommended that you use one of the following development sсhemes:

a. Develop the Russian version in a single development storage. Automatically create an international version based on the Russian version upon compiling the distribution package by deleting metadata objects that contain Russian specifics.

b. Develop the Russian and the international versions in two development storages. Configure the international version to be supported by the Russian one and add metadata objects that contain Russian specifics.

It is recommended that localization specialists develop their localized configuration versions based on the international version. To do this:

  • Configure the national version to support the international one.
  • As necessary, add objects listed in the ObjectsToLocalize<...>.txt file from the standard configuration delivery to the configuration. Use similar objects in the Russian configuration version as a sample.

If the localized version is developed based on the Russian configuration version, it is recommended to localize it as follows:

  • Configure the national configuration to support the Russian configuration.
  • Remove objects listed in the ObjectsToLocalize<...>.txt file from the standard configuration delivery from support and localize them.

You can make preparation of the international configuration delivery file easier using the merge settings file.

To automate the process, use the data processor for preparing the merge settings file.

See also:

  • Interface texts in code: localization requirements
  • Queries, dynamic lists, and reports on DCS: localization requirements
  • Dates: localization requirements
  • String constant expressions in code: localization requirements
  • Form items: localization requirements
  • Scheduled jobs: localization requirements
  • Templates: localization requirements
© 2020 1C INTERNATIONAL LLC www.1Ci.com Support policy