Нюансы создания конфигураций на нескольких языках

11.09.20

Разработка - Локализация решений

Рассмотрим на примере ERP WE различные нюансы при реализации решений на нескольких языках.

Являясь разработчиком на международном проекте, основанном на ERP WE (World Edition), я столкнулся с рядом нюансов, которые нужно знать и учитывать при разработке конфигураций на нескольких языках.

Содержание

 

Как выполнять отладку на английском (втором) языке?

Предположим имеется тестовая база на основе ERP WE в которой есть как минимум 2 языка - Русский и Английский. Как выполнять отладку решения на английском языке? Если делать не так как описано далее, вы можете столкнуться с тем, что интерфейс конфигурации будет частично на русском, частично на английском языке, а не полностью.

Для начала заведем в базе двух пользователей администраторов которые между собой будут отличаться установленным языком системы:

 

 

Способ 1 (добавить в список баз)

Добавляем в список баз копию вашей тестовой базы и в дополнительных параметрах запуска прописываем:
/N "Admin" /P "" /L en /VL en

Способ 2 (запуск из конфигуратора)

В конфигураторе заходим в меню Сервис - Параметры... и настраиваем как на скриншотах:

После чего жмём F5 или Отладка - Начать отладку.

Результат

Английский интерфейс:

Русский интерфейс:

 

Представления реквизитов на разных языках

Это нужно чтобы в английском интерфейсе элементы справочников (или других объектов) выводились на английском языке.

  1. В меню НСИ и Администрирование - Общие настройки - Региональные настройки - Ставим галку "Английский язык".
  2. На форме списка и выбора важно чтобы у динамического списка формы выбора был произвольный запрос и у каждого поля в запросе был указан синоним (Например ИмяПоля КАК ИмяПоля, а не просто ИмяПоля).
  3. Реализовываем по статье из БСП Мультиязычные данные (https://its.1c.ru/db/bsp312doc#content:19:hdoc) для версии БСП вашей конфигурации. Для этого:
    1. Узнайте номер версии БСП вашей конфигурации. Он указан в общем модуле ОбновлениеИнформационнойБазыБСП в процедуре ПриДобавленииПодсистемы
    2. Откройте документацию по версии БСП вашей конфигурации (https://its.1c.ru/#dev/doc_dev)

 

О чем нужно помнить при разработке

  1. При добавлении реквизитов\элементов не забывать прописывать для них синоним на английском языке
  2. При добавлении реквизита\команды\элемента на управляемую форму у него автоматически формируется подсказка на Русском языке, нужно либо её удалять либо добавлять подсказку и на английском языке
  3. Формат чисел\дат у реквизитов и элементов форм простых типов задается по умолчанию только для одного языка (Русского), на английском языке формат будет подтягиваться из настроек Windows пока вы не установите такой же формат и для другого языка. Делается это также как и с синонимом - рядом с полем "Формат" есть лупа
  4. Добавляя на управляемые формы элементы не забывайте прописывать у них заголовок на втором языке, даже если заголовок у элемента отключен. Т.к. если английский пользователь решит отредактировать форму он зайдет в меню "Еще - изменить форму" и увидит добавленные элементы с русскими именами.
  5. Добавляя элементы\реквизиты на управляемые формы программно также не забывайте прописывать заголовок на нескольких языках используя функцию НСтр(), например НСтр("en = 'English name'; ru = 'Русское наименование'"). Причина та же что и в пункте выше.

 

Макеты HTML, общие макеты

Макеты задаются также на нескольких языках и причем макет не дублируется в макеты других языков также как и синоним и формат текста. Если вдруг вы обнаружили что функция Макет.ПолучитьТекст() возвращает на английском языке вам пустую строку вместо нормального содержимого HTML макета (или иного макета) - в конфигураторе нажмите "Конфигурация" - "Язык редактирования конфигурации...", затем выберите "Английский". Затем зайдите в макет и вы увидите совсем другой текст. Вставьте в него то же самое что и для русского языка (или переделайте макет), сохраните конфигурацию и снова поменяйте язык редактирования конфигурации на "Русский".

 

Язык редактирования конфигурации

Для того чтобы в режиме конфигуратора реализовывать формы на английском языке и сразу же видеть не написанные английские синонимы, измените язык редактирования конфигурации на "Английский". Для этого в конфигураторе нажмите "Конфигурация" - "Язык редактирования конфигурации...", затем выберите "Английский".

ПолучитьТекст() английский английском язык языке не работает языках разных мультиязычные данные локализация представления нюансы

См. также

Регламентированный учет и отчетность Локализация решений Платформа 1С v8.3 1С:ERP Управление предприятием 2 Бухгалтерский учет Бесплатно (free)

Дано: транснациональная корпорация – производитель продуктов питания; пилотный проект на две страны: Киргизия и Казахстан, с возможностью тиражирования не несколько других стран Центральной Азии; в каждой стране необходим регламентированный учёт на локальном плане счетов и учёт по стандартам GAAP; а бета-версия ERP World Edition выйдет только через год;) "Вызов принят!" – сказали мы и взялись за работу. Расскажем об особенностях доработки подсистемы регламентированного учёта 1С:ERP для возможности вести учет в одной конфигурации для разных стран.

20.08.2024    922    Laya    0    

6

Локализация решений Программист Платформа 1С v8.3 Управляемые формы Конфигурации 1cv8 Казахстан Абонемент ($m)

Данная обработка содержит функцию получения всех 7 падежей слова.

1 стартмани

11.05.2023    2226    1    VladimirB    0    

6

Инструментарий разработчика Локализация решений Программист Платформа 1С v8.3 Конфигурации 1cv8 Россия Абонемент ($m)

Перевод исходного текста форм конфигураций 1С.

1 стартмани

11.04.2023    2500    6    v3132    0    

5

WEB-интеграция Локализация решений Программист Платформа 1С v8.3 Россия Бесплатно (free)

На днях взялся за реализацию печатной формы, где данные должны быть представлены на иностранном языке. На удивление нашёл крайне мало информации по данному вопросу. Поэтому решил написать эту статью.

19.11.2021    1299    user1559835    2    

6

EDT Локализация решений Программист Платформа 1С v8.3 Конфигурации 1cv8 Абонемент ($m)

Практический пример подготовки словаря для перевода кода и модели конфигурации УНФ 1.6 на английский язык с использованием существующих словарей и плагина EDT Language Tool. В статье приводятся готовые скрипты и алгоритмы сборки и нормализации словаря.

1 стартмани

05.04.2020    5688    vanjushkin    0    

14

EDT Локализация решений Программист Платформа 1С v8.3 Конфигурации 1cv8 Абонемент ($m)

Использование регулярных выражений для парсинга .mdo-файлов и составления русско-английского словаря метаданных. Перевод кода и метаданных конфигурации по словарю с помощью нового инструмента 1С - плагина EDT: Language Tool на примере УНФ 1.6

1 стартмани

03.04.2020    6816    vanjushkin    12    

14

Локализация решений Программист Платформа 1С v8.3 Конфигурации 1cv8 1С:ERP Управление предприятием 2 1С:CRM ПРОФ, КОРП Абонемент ($m)

Обработка для транслитерации украинских текстов на латиницу. ВАЖНО - для транслитерации русского алфавита не подходит!

1 стартмани

23.03.2020    4441    3    kaliuzhnyi    0    

3
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. DitriX 2102 26.07.20 21:00 Сейчас в теме
Что то вы тут не задели даже 1% реальных проблем локализации :(
Эх, а такой заголовок интересный был.
RayCon; dehro; Redokov; Jeka44; dabu-dabu; bryalex; +6 Ответить
2. Flashill 1010 27.07.20 10:47 Сейчас в теме
(1)
Что то вы тут не задели даже 1% реальных проблем локализации :(

Статья будет пополняться по мере появления новых интересных нюансов локализации.
А какие у вас проблемы при локализации?
3. DitriX 2102 27.07.20 16:02 Сейчас в теме
(2) про это можно говорить долго и нудно.
Особенно если задеть типовые конфигурации.
Примеры, когда НСтр там гед не надо, или язык прописан не там где надо.
Или пользовательские отборы не встанут в локализацию, если там только один язык в системе и т.д.
4. Flashill 1010 28.07.20 09:29 Сейчас в теме
(3)

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


Из того что вы перечислили пока ни с чем не сталкивался. Как появятся новые нюансы, буду дополнять статью. Пока всё что интересного выяснил описал.

Коллеги, если кто ещё знает нюансы, пишите, возможно разберу и дополню статью, всё равно скорее всего с ними придется столкнуться. Основная цель не написать крутую статью, а максимально оперативно поделиться всеми имеющимися знаниями. Как говориться лучше вовремя чем хорошо.
Оставьте свое сообщение