Локализованное наименование языка с заданным идентификатором.
Синтаксис
ПредставлениеКодаЛокализации(<КодЛокализации>)Полное описание, параметры и ограничения
Глобальный контекст.ПредставлениеКодаЛокализации (Global context.LocaleCodePresentation)
Глобальный контекст (Global context)
ПредставлениеКодаЛокализации (LocaleCodePresentation)
Доступен, начиная с версии 8.2.
Синтаксис:
ПредставлениеКодаЛокализации(<КодЛокализации>)
Параметры:
<КодЛокализации> (обязательный)
Тип: Строка.
Код локализации, для которого должно быть получено представление.
Возвращаемое значение:
Тип: Строка.
Описание:
Локализованное наименование языка с заданным идентификатором.
Доступность:
Сервер, толстый клиент, внешнее соединение, мобильное приложение (сервер), мобильный автономный сервер.
См. также:
Глобальный контекст, метод ПолучитьДопустимыеКодыЛокализации
Использование в версии:
Доступен, начиная с версии 8.2.
Методическая информация
Практические примеры
Собрать список поддерживаемых локализаций с понятными названиями
Вместо собственного перечня стран строим список из возможностей установленной платформы. Значение выбора — код, подпись — локализованное имя.
Где и как запускать
Полный серверный общий модуль учебной копии. Только чтение настроек и вычисления в памяти.
Подготовка
Работайте в отдельной учебной копии базы. Создайте серверный общий модуль УчебныеЗадачи, вставьте полный модуль урока и вызовите ВыполнитьПример() из серверного обработчика учебной команды.
Код выполняется на сервере: часть функций локализации и часовых поясов недоступна непосредственно в тонком клиенте. Реквизиты пользователя, региональные настройки и часовые пояса код не меняет.
Для двух уроков о метаданных используйте копию КА2 Progress: в исходном Languages/Русский.xml действительно есть язык Русский с КодЯзыка = ru. Остальные уроки не требуют объектов конкретной конфигурации.
Процедура ВыполнитьПример() Экспорт
Коды = ПолучитьДопустимыеКодыЛокализации();
Варианты = Новый СписокЗначений;
Для Каждого Код Из Коды Цикл
Если ТипЗнч(Код) <> Тип("Строка") Тогда
ВызватьИсключение "Ожидался строковый код локализации";
КонецЕсли;
Варианты.Добавить(Код, ПредставлениеКодаЛокализации(Код));
КонецЦикла;
Сообщить(Варианты.Количество() = Коды.Количество());
РусскийРегион = Варианты.НайтиПоЗначению("ru_RU");
Если РусскийРегион = Неопределено Тогда
Сообщить("ru_RU отсутствует в полученном перечне");
Иначе
Сообщить(РусскийРегион.Значение = "ru_RU");
Сообщить("Подпись ru_RU: " + РусскийРегион.Представление);
КонецЕсли;
Сообщить("Получено вариантов: " + Строка(Варианты.Количество()));
КонецПроцедурыРазбор по шагам
Функция возвращает массив кодов, а не коллекцию объектов метаданных Язык. Цикл работает и с пустым массивом, без незащищённого индекса 0.
Добавить записывает код в Значение элемента списка, а результат ПредставлениеКодаЛокализации — в Представление. Отображаемую подпись нельзя передавать вместо кода.
НайтиПоЗначению может вернуть Неопределено. Проверяем его до доступа к двум свойствам элемента.
Наличие кода в общем списке не означает, что абсолютно все функции форматирования поддерживают его. У ПредставлениеПериода есть отдельный документированный перечень.
Как проверить результат
Количество элементов списка равно длине массива — Истина. Для ru_RU выводится реальная подпись либо ясное сообщение отсутствия.
Список создан в памяти; никаких настроек базы или пользователя не сохранено.
Ожидаемый результат
Готов список выбора, который хранит правильный идентификатор и показывает человеку понятное название.
На что обратить внимание
Не подменяйте перечень локализаций перечнем языков конкретной конфигурации.
Локализованная подпись может меняться с языком платформы; сохраняйте код, не подпись.
Пример не запускался в вашей базе. Перед применением проверьте его в указанном учебном контексте.