Перейти к содержимому

❓ 1.12 Как в 1С определяется и задаётся язык интерфейса пользователя?

ИТС: Книга — Инструменты для создания тиражируемых приложений “1С:Предприятия 8”: Многоязычные прикладные решения
https://its.1c.ru/db/pubtirage#content:148:hdoc

ИТС: Документация — Локализация конфигураций
https://its.1c.ru/db/v8327doc#bookmark:dev:TI000001027

ИТС: Стандарты — Интерфейсные тексты в коде: требования по локализации
https://its.1c.ru/db/v8std/content/761/hdoc

ИТС: Стандарты — Элементы форм: требования по локализации
https://its.1c.ru/db/v8std/content/765/hdoc


  1. Локализация платформы

    Локализация платформы

    • системные меню
    • системные диалоги
    • системные сообщения
    • встроенная справка
    • часть интерфейсных элементов платформы
  2. Локализация интерфейса прикладного решения

    • элементы форм
    • заголовки
    • команды
    • сообщения, выводимые пользователю
  3. Региональные установки

    • формат даты и времени
    • формат чисел
    • представление логических значений
    • правила сортировки
  4. Язык разработки

    • язык написания кода
    • доступно два варианта: русский и английский
    • не влияет на язык интерфейса пользователя

⚠️ Это разные механизмы, и настраиваются они независимо друг от друга.

Локализация интерфейса прикладного решения

Заголовок раздела «Локализация интерфейса прикладного решения»

Основным средством локализации интерфейса прикладного решения является объект конфигурации «Язык».

📌 При создании новой информационной базы:

  • автоматически создаётся объект Язык
  • его значение соответствует языку платформы, с которой была запущена база

Язык интерфейса

Если в конфигурацию добавляется второй язык, то у элементов, отображаемых пользователю, появляется возможность задавать тексты на каждом языке отдельно:

  • формы
  • команды
  • заголовки
  • подсказки
  • другие интерфейсные тексты

Добавление второго языка

Чтобы сообщения, формируемые в коде, отображались пользователю на языке его интерфейса, используется функция НСтр.

Именно она позволяет связать текст в коде с языками, заданными в конфигурации.

Для каждого пользователя в системе можно указать:

  • язык интерфейса
  • он выбирается из объектов метаданных «Язык»

📌 Этот язык используется:

  • при начале работы с информационной базой
  • для отображения интерфейса
  • для вывода сообщений пользователю

Язык пользователя

Если у пользователя язык не задан, используется основной язык конфигурации.

Язык по умолчанию

Язык интерфейса пользователя определяется не языком написания кода и не языком платформы,
а объектом метаданных «Язык» и настройкой языка у пользователя.

В мультиязычном решении нельзя выводить пользовательские сообщения без использования НСтр.

ОбщегоНазначения.Сообщить("Все ок");
ОбщегоНазначения.Сообщить(
НСтр("ru='Все ок'; en='Everything all right'")
);