v8: Перевод типовых конфигураций на другой язык Ключевые слова: язык,иностранный,перевод,форма,типовая конфигурация
Для перевода текстовых строк в тексте модулей существует функция НСтр для облегчения работы с которой используется "конструктор строк на разных языках". После помещения строк в параметры функции, перевод всей конфигурации может проводится штатным средством Редактирование текстов интерфейса, с параметром искать в функциях НСтр.
Если мы хотим перевести в типовых конфигурациях различные заголовки на формах, тексты сообщений и предупреждений в модулях на другой язык, то для этого не предусмотрено механизмов по умолчанию.
Данным методом можно обеспечить работу в одной базе пользователей на разных языках.
Однако это не проблема.
* Определяем все такие надписи, составляем словарь типа:
РусскаяСтрока -> ИностраннаяСтрока
* Выгружаем все модули текстов и форм в текстовые файлы
* Для каждого элемента словаря ищем в модулях вхождения русских строк и меняем их на вызов функции Литерал:
//Исходная строка
Сообщить("Привет, мир!");
//Новая строка
Сообщить(Литерал("Привет, мир!"));
* Перед открытием формы проверяем все надписи, и меняем их по словарю. Для ускорения можно хэшировать данные, т.е. сохранять список реквизитов, названия которых можно поменять.
* Добавляем функцию Литерал, где будем определять правила замены русских строк на иностранные, например в зависимости от текущего пользователя.
Особое внимание обратите на многострочные строки. В тексте конфигурации, в модулях, они могут быть записаны на нескольких строках.
По вопросам парсинга полезны статьи:
Книга знаний: v8: Полный парсинг для глобальной обработки событий (ГОС) |