OneS icon indicating copy to clipboard operation
OneS copied to clipboard

Добавить метод ЛСтр - локализованная строка. Альтернатива НСтр

Open AllexAllex opened this issue 2 years ago • 1 comments

Для локализации решений на другие языки сейчас есть метод НСтр, он подразумевает хранение всех строк перевода на все языки сразу же в коде. В результате любая локализация сталкивается с трудностями:

  1. Уже готовое решение локализовать без изменения конфигурации невозможно.
  2. Изменение всех модулей и всех форм конфигурации.
  3. Переводом должны заниматься технические специалисты, которые могут модифицировать конфигурацию. Просто переводчика посадить за качественный перевод интерфейсов который он может делать "онлайн" без изменения конфигурации не выйдет.
  4. Любой технический англоязычный специалист увидев NStr() и внутри что то на кириллице, на китайских иероглифах и прочих хинди закроет 1с и уйдет в другую платформу автоматизации. Хранить строковые константы в коде для локализованных решений - ошибка.

Предлагаю добавить новый общий объект "Локализованные строки". Она должна выглядеть как колонка ключа строки + колонки с языками добавленными в конфигурации. Сама таблица должна наполняться в конфигураторе, подобно как это сделано для предопределенных элементов справочника, но с возможностью для каждой строки задать перевод на все необходимые языки. Так же объект должен редактироваться в пользовательском режиме (для переводчиков) - например когда решение написано с английской + русской локализацией, но нужно добавить китайский - можно просто дать доступ до этого объекта в пользовательском режиме для переводчика, который заполнит необходимое.

Метод получающий локализованную строку может иметь следующий вид ЛСтр(<ключ строковой константы>). Ключ - произвольная строка. Если по ключу не найдена строковая константа или не задан перевод на текущий язык пользователя - возвращается сам ключ. Например: СтрШаблон(ЛСтр("На складе %1 не хватает остатков номенклатуры %2 в количестве %3 шт."), Склад, Номенклатура, НедостатокКоличества);

image

AllexAllex avatar Sep 12 '23 09:09 AllexAllex

А чем не подходит окно "Редактирование текстов интерфейса"? image

Hobbit-Jedi avatar Mar 07 '24 22:03 Hobbit-Jedi