Тип: Строка, Неопределено. Содержит код языка, строки на котором будут использоваться для вывода данного табличного документа в другой табличный документ. Свойство влияет на выбор языка, на котором будут получены и установлены строки табличного документа при получении строк из свойств Текст, Формат, ФорматРедактирования, Маска. В случае, когда свойство содержит значение Неопределено, код языка макета определяется из настроек текущего пользователя. Если для текущего пользователя не определен код языка, или пользователи не заданы, то код языка выбирается из свойства "Основной язык" конфигурации.
Полное описание, параметры и ограничения
ТабличныйДокумент.КодЯзыкаМакета (SpreadsheetDocument.TemplateLanguageCode)
ТабличныйДокумент (SpreadsheetDocument)
КодЯзыкаМакета (TemplateLanguageCode)
Не рекомендуется использовать, начиная с версии 8.3.7.
Рекомендуется использовать:
КодЯзыкаМакета
Доступен, начиная с версии 8.0.
Использование:
Чтение и запись.
Описание:
Тип: Строка, Неопределено.
Содержит код языка, строки на котором будут использоваться для вывода данного табличного документа в другой табличный документ.
Свойство влияет на выбор языка, на котором будут получены и установлены строки табличного документа при получении строк из свойств Текст, Формат, ФорматРедактирования, Маска.
В случае, когда свойство содержит значение Неопределено, код языка макета определяется из настроек текущего пользователя. Если для текущего пользователя не определен код языка, или пользователи не заданы, то код языка выбирается из свойства "Основной язык" конфигурации.
Доступность:
Сервер, толстый клиент, внешнее соединение, мобильное приложение (сервер), мобильный автономный сервер.
Использование в версии:
Доступен, начиная с версии 8.0.
Не рекомендуется использовать, начиная с версии 8.3.7.
Методическая информация
Практические примеры
Записать два языковых варианта одной ячейки
Книга и Book задаются явно в одной ячейке. Код языка управляет выбором строк, а не машинным переводом.
Где и как запускать
Полный модуль собственной управляемой формы; толстый клиент Windows. Не запускать в рабочей конфигурации.
Подготовка
Создайте собственную отдельную учебную базу с именем конфигурации УчебнаяКонфигурацияСинтаксиса, внешнюю обработку и пустую управляемую форму. Откройте её в толстом клиенте Windows 8.5.1.1343.
Для командного урока создайте команду Выполнить, кнопку и действие Выполнить. Вставьте весь приведённый модуль, включая функции ниже процедуры.
Книга / 3 и Ручка / 1 создаются в новом табличном документе. Рабочие печатные формы, документы базы и файлы организации не используются.
Основной язык собственной конфигурации — ru. Урок языков дополнительно требует язык en. Языки создаются вручную в Конфигураторе; код не устанавливает их и не переводит текст автоматически.
Урок проверки печати требует установленного собственного тестового/виртуального принтера. На форме создайте строковый реквизит УчебныйПринтер и введите точное имя устройства.
Для реальной печати дополнительно нужен строковый реквизит Подтверждение. Для окна нужна отдельная команда СкрытьУчебноеОкно. Для сохранения первый запуск использует новый временный MXL, не существующий рабочий файл.
При создании руководства 1С, принтер и запись файла не запускались. Окна, драйвер и обратный вызов проверяются вручную в собственной учебной базе.
&НаКлиенте
Процедура Выполнить(Команда)
Документ = СоздатьУчебныйДокумент();
Документ.КодЯзыка = "ru";
Документ.КодЯзыкаМакета = "ru";
Документ.Область(2, 1).Текст = "Книга";
Документ.КодЯзыка = "en";
Документ.Область(2, 1).Текст = "Book";
Сообщить(Документ.Область(2, 1).Текст = "Book");
Документ.КодЯзыка = "ru";
Сообщить(Документ.Область(2, 1).Текст = "Книга");
Документ.НаправлениеТекста = НаправлениеТекста.СлеваНаправо;
Сообщить(Документ.НаправлениеТекста = НаправлениеТекста.СлеваНаправо);
Документ.КодЯзыка = Неопределено;
Сообщить(Документ.КодЯзыка = Неопределено);
Сообщить("Неопределено выбирает язык пользователя или основной язык конфигурации, а не переводит строки.");
КонецПроцедуры
&НаКлиенте
Функция СоздатьУчебныйДокумент()
Документ = Новый ТабличныйДокумент;
Документ.КодЯзыка = "ru";
Документ.Область(1, 1).Текст = "Товар";
Документ.Область(1, 2).Текст = "Количество";
Документ.Область(2, 1).Текст = "Книга";
Документ.Область(3, 1).Текст = "Ручка";
Документ.Область(2, 2).Текст = "3";
Документ.Область(3, 2).Текст = "1";
Документ.Область(, 1, , 1).ШиринаКолонки = 25;
Документ.Область(, 2, , 2).ШиринаКолонки = 12;
Возврат Документ;
КонецФункцииРазбор по шагам
Создать собственный документ и выбрать ru. КодЯзыкаМакета показан как API старого макета: он также задаёт язык строк.
Переключить КодЯзыка на en и записать Book. Вернуться к ru и проверить, что русская строка сохранилась.
Назначить направление СлеваНаправо через реальное перечисление. Это не ГоризонтальноеПоложение и не числовой код.
Установить КодЯзыка = Неопределено: выбор возвращается к языку пользователя/конфигурации, строки не переводятся.
Как проверить результат
Четыре булевы проверки дают Истина.
В отладчике переключите язык ru/en и посмотрите текст ячейки (2,1). Оба языка должны быть заведены в учебной конфигурации.
Ожидаемый результат
Понятный образец многоязычной ячейки и явного направления текста.
На что обратить внимание
Не добавляйте en только присваиванием свойства: язык создаётся в конфигурации.
КодЯзыка не сохраняется в файл/двоичные данные; после чтения задайте нужный язык вновь.
НаправлениеТекста имеет особенности отображения/экспорта в разных клиентах; эта проверка свойства не является визуальным тестом экспорта.
Пример не запускался в вашей базе. Перед применением проверьте его в указанном учебном контексте.