Как перевести 1С 8.3 на английский язык

· 9 мин

Содержание

Чтобы переключить интерфейс самой платформы 1С на английский, переводить ничего не нужно: при запуске откройте настройку списка баз, задайте язык интерфейса English — и системные команды, стандартные кнопки, служебные сообщения платформа покажет по-английски сама. Этот уровень работает в любой конфигурации 8.3 без правки кода.

А вот названия документов, справочников, реквизитов и надписи на формах — это уже часть конфигурации. Они останутся русскими, пока вы не добавите английский язык в саму конфигурацию и не переведёте синонимы объектов в Конфигураторе. Поэтому «перевести 1С на английский» — это не одно действие, а работа сразу на нескольких уровнях.

Разберём по порядку: что переключается само, что придётся переводить руками, какими инструментами платформа 8.3 помогает разработчику и как потом не потерять перевод при обновлении.

Что именно вам нужно перевести?

Три уровня перевода, которые нельзя смешивать

Главная ошибка новичка — считать, что английский язык включается одной галочкой. На деле в 1С три независимых слоя текста, и каждый переводится по-своему.

УровеньЧто сюда входитКак перевести
Интерфейс платформыСистемные кнопки (Записать, Провести), меню, стандартные сообщения, диалогиПереключить язык интерфейса при запуске — перевод уже встроен
КонфигурацияНазвания документов и справочников, подписи реквизитов, надписи на формах, значения перечислений, тексты из кодаДобавить язык в конфигурацию и перевести синонимы и строки в Конфигураторе
ДанныеНаименования номенклатуры, контрагентов, статьи затрат — всё, что ввели пользователиАвтоматически не переводятся; нужны отдельные реквизиты или ручной ввод

Запомните границу: платформа переведёт свои служебные тексты сама, а всё, что относится к прикладному решению и к введённым данным, — ответственность разработчика и пользователя.

Из-за этого «наполовину английский» интерфейс — нормальная промежуточная картина: платформенные кнопки уже на английском, а названия документов ещё на русском. Это не сбой, просто вы перевели только первый уровень.

Как включить английский интерфейс платформы

Это самый быстрый результат, и он не требует Конфигуратора.

  1. В окне запуска 1С выделите нужную базу и нажмите кнопку Настройка.
  2. В поле языка интерфейса по умолчанию выберите English.
  3. Сохраните настройку и запустите базу — платформенные элементы станут английскими.

Тот же результат даёт параметр командной строки при запуске: ключ /L с кодом языка, например /L en. Его удобно прописать в ярлыке, когда база всегда должна открываться по-английски.

Английский интерфейс платформы появится, только если установлен соответствующий языковой набор. Он входит в стандартную поставку платформы 8.3, но при минимальной установке мог быть пропущен — тогда переустановите платформу, отметив английский язык.

Отдельная лицензия для английского интерфейса не нужна: это не другой продукт, а языковой набор платформы. Язык задаётся на уровне сеанса, поэтому в одной базе один пользователь может работать по-русски, а другой — по-английски, не мешая друг другу.

Что подготовить перед переводом конфигурации

Прежде чем лезть в синонимы, оцените объём и снимите блокираторы.

  • 🔎 Проверьте официальную локализацию. У ряда продуктов 1С есть готовые англоязычные версии и локализации. Если такая существует, ручной перевод типовой почти всегда проигрывает по трудозатратам.
  • 📦 Снимите копию. Любые правки конфигурации делайте только на копии базы, с полной выгрузкой в .dt. Перевод затрагивает метаданные, откатить их без копии тяжело.
  • 🔒 Разберитесь с поддержкой. Типовая обычно «на поддержке», и редактирование заблокировано. Чтобы менять синонимы, конфигурацию придётся включить в режим возможности изменений — это усложнит будущие обновления.
  • 📐 Определите охват. Нужен перевод всей конфигурации или только нескольких подсистем? Переводить 20 документов и переводить всю БП — задачи разного масштаба.

Для собственной (не типовой) конфигурации ограничений с поддержкой нет — сразу переходите к добавлению языка.

Отдельно договоритесь о терминологии до старта. Как переводить «проведение», «реквизит», «обработка», названия специфичных документов — решать лучше один раз и записать в глоссарий. Если три разработчика переведут «Контрагент» как Counterparty, Partner и Vendor, пользователь получит кашу, и вычитка займёт больше времени, чем сам перевод.

Добавляем английский язык в конфигурацию

Перевод живёт в многоязычном механизме платформы. Сначала язык нужно объявить.

  1. В дереве конфигурации откройте ветку Общие → Языки.
  2. Добавьте новый язык: задайте код (например, en) и выберите идентификатор языка — английский.
  3. При необходимости укажите основной язык конфигурации в её свойствах.

После этого у каждого объекта метаданных в свойстве Синоним появляется отдельное поле под новый язык. Именно синонимы видит пользователь: это подписи документов, справочников, реквизитов, команд, значений перечислений.

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

Заполнять сотни синонимов вручную по одному — долго. Для этого есть специальный инструмент.

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

Ключевой приём, без которого перевод превращается в ручной перебор дерева, — редактирование текстов интерфейса в Конфигураторе (меню Правка).

Инструмент собирает все текстовые строки интерфейса из выбранных объектов в единый список и показывает их в колонках по языкам. Вы переводите строки в таблице, а платформа раскладывает переводы обратно по объектам.

Как это выглядит на практике:

  • задаёте область сбора (вся конфигурация или отдельные подсистемы);
  • получаете список исходных русских строк и пустых английских;
  • заполняете английскую колонку — удобно, что повторяющиеся строки видны рядом и переводятся единообразно;
  • сохраняете — синонимы и надписи обновляются в конфигурации.

Такой режим экономит часы по сравнению с ручным обходом объектов и, что важнее, не даёт пропустить строки — вы видите сразу всё, что ещё не переведено.

По трудоёмкости подходы к переводу выстраиваются так:

  • ✍️ Ручное заполнение синонимов объект за объектом — годится, когда переводить надо десяток объектов, не больше. На полной конфигурации так утонуть легко.
  • 📋 Редактор текстов интерфейса — рабочий вариант по умолчанию: всё в одной таблице, видно непереведённое, повторы правятся единообразно.
  • 🤖 Машинный перевод с вычиткой — строки выгружают, прогоняют через переводчик и обязательно вычитывают. Без вычитки получите «Post» там, где нужно «Posting», и термины вразнобой. Автоперевод ускоряет черновик, но не заменяет специалиста.

Какой бы путь вы ни выбрали, финальный свод строк всё равно удобнее держать и проверять в редакторе текстов интерфейса.

Макеты печатных форм и некоторые строки, зашитые в код, редактор текстов интерфейса не охватывает полностью. Их переводят отдельно (см. ниже).

Перевод строк в коде через НСтр()

Часть текстов программисты выводят прямо из модулей — заголовки сообщений, подсказки, динамические надписи. Если написать строку обычным литералом, она не переведётся никогда.

Для многоязычного текста в коде используют функцию НСтр (NStr). В ней перевод хранится прямо в строке по кодам языков:

Сообщить(НСтр("ru = 'Документ проведён'; en = 'Document posted'"));

Заголовок = НСтр("ru = 'Выберите период'; en = 'Select period'");

Платформа сама подставит строку на языке текущего сеанса. Правила простые:

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

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

Договоритесь в команде: ни одной пользовательской строки в коде без НСтр. Тогда новый функционал не будет каждый раз откатывать перевод назад.

Печатные формы и отчёты на английском

Это самый трудоёмкий уровень, потому что текст печатной формы живёт в макете (табличном документе), а не в синонимах.

Что придётся сделать:

  • перевести статичные надписи в областях макета — шапки, подписи полей, итоговые строки;
  • проверить, как формируются заголовки колонок отчётов: часть берётся из синонимов реквизитов (переведутся сами), часть задана в макете или в коде формирования;
  • учесть формат чисел, дат и разделителей — в английской локали они отличаются, и платформа форматирует их по языку сеанса.

Если нужна и русская, и английская печатная форма одного документа, обычно делают отдельный макет под язык либо параметризуют области. Не переписывайте единственный макет «поверх» русского — потеряете русскую версию.

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

Такая же логика с отчётами на СКД: заголовки полей обычно берутся из представлений полей набора данных, и их переводят в настройках компоновки, а подписи в оформлении и шапке — отдельно. Проверяйте оба места, иначе часть отчёта останется русской.

Тестирование: как найти непереведённые строки

Перевод считается готовым не тогда, когда вы заполнили таблицу, а когда база прошла проверку в английском интерфейсе. Запустите 1С:Предприятие с английским языком сеанса и пройдите по сценариям.

Проверка английского интерфейса перед сдачей
Выполнено: 0 / 7

На что смотреть особенно внимательно:

  • 🧩 оставшиеся русские слова среди английских — это строки без перевода или литералы без НСтр;
  • 🔢 формат чисел и дат в отчётах — должен соответствовать английской локали;
  • 📝 обрезанные подписи — английский текст часто длиннее, кнопки и колонки могут не вмещать его.

Любое непереведённое слово — это не косметика, а след пропущенной строки. Вернитесь в редактор текстов интерфейса или найдите литерал в коде.

Поддержка перевода при обновлениях

Перевод — не разовая работа. Каждое обновление конфигурации приносит новые объекты и строки, и они приходят без английских синонимов.

Чтобы не переводить всё заново:

  • после обновления снова запускайте редактор текстов интерфейса — он покажет только новые непереведённые строки;
  • ведите глоссарий терминов, чтобы один и тот же документ не назывался в разных местах по-разному;
  • для собственных доработок по возможности держите перевод в расширении конфигурации — тогда обновление типовой не затирает вашу работу.

Полезно зафиксировать, какую версию конфигурации вы перевели: при переходе на следующий релиз сравнение «было — стало» подскажет, какие объекты добавились и где искать новые непереведённые строки. Без такой отметки каждый раз придётся пересматривать всю конфигурацию заново.

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

Можно ли переключать язык на лету, без перезапуска базы?
Платформа 8.3 поддерживает несколько языков интерфейса одновременно, и пользователь может выбрать свой. Но полноценное переключение «на лету» работает, только если конфигурация многоязычная (переведены синонимы). Если переведён лишь интерфейс платформы, язык задаётся при запуске сеанса.
Переведутся ли названия номенклатуры, контрагентов и других данных?
Нет. Данные, которые ввели пользователи, — это не часть конфигурации, и автоматический перевод их не касается. Для многоязычных данных нужны отдельные реквизиты или ручное заполнение на втором языке.
Нужна ли отдельная лицензия, чтобы работать на английском?
Нет, английский — это языковой набор платформы, а не другой продукт. Главное, чтобы при установке платформы 8.3 английский язык был отмечен; иначе переустановите с нужным набором.
Сохранится ли перевод после обновления типовой конфигурации?
Уже переведённые строки останутся, но новые и изменённые объекты придут без английских синонимов — их нужно будет перевести заново через редактор текстов интерфейса. Свои доработки безопаснее держать в расширении.
Чем перевод в 8.2 отличается от 8.3?
Механизм многоязычности и редактор текстов интерфейса есть в обеих версиях, принцип тот же. В 8.3 интерфейс «Такси» и улучшенная поддержка нескольких языков в одном сеансе, поэтому примеры здесь приведены для 8.3.