Подготовить адресата учебного текста в дательном падеже

Учебные задачи

Склоняем собственное название профессии для строки Кому. Возвращаемый массив проверяется до выбора первого варианта.

Где и как запускать

Полный серверный общий модуль учебной базы. Собственные значения в памяти, без чтения или записи рабочих данных.

Подготовка

  1. Используйте отдельную учебную базу без рабочих данных. Создайте серверный общий модуль УчебныйЯзык с флагом Сервер, без Привилегированный.

  2. Вставьте весь модуль выбранного примера, а не одну процедуру внутрь другой. Из своей серверной команды учебной обработки вызовите УчебныйЯзык.ВыполнитьПример().

  3. Все числа, строки и коллекции созданы в самом примере. Документы, регистры, файловая система и сеть не используются; никаких зависимостей от КА2/УНФ/УТ/БП нет.

  4. Браузер показывает код, но не исполняет BSL. Проверки результата нужно выполнить вручную на платформе 8.5.1.1343 в учебной базе.

Процедура ВыполнитьПример() Экспорт
    Профессия = "токарь третьего разряда";
    Варианты = ПолучитьСклоненияСтроки(Профессия, "Л=ru_RU", "ПД=Дательный");
    Если Варианты.Количество() = 0 Тогда
        ВызватьИсключение "Для собственной профессии не получен вариант склонения";
    КонецЕсли;
    Адресат = Варианты[0];
    Текст = "Кому: " + Адресат;
    Сообщить(ТипЗнч(Варианты) = Тип("Массив"));
    Сообщить(НРег(СокрЛП(Адресат)) = "токарю третьего разряда");
    Сообщить(СтрНачинаетсяС(Текст, "Кому: "));
    Сообщить(Текст);
    БезПадежа = ПолучитьСклоненияСтроки(Профессия, "Л=ru_RU");
    Если БезПадежа.Количество() = 0 Тогда
        ВызватьИсключение "Не получено исходное представление без падежа";
    КонецЕсли;
    Сообщить(БезПадежа[0] = Профессия);
КонецПроцедуры

Разбор по шагам

  1. Работать на сервере учебной базы: функция недоступна в тонком клиенте напрямую.

  2. Передать собственную строку профессии, русскую локализацию и ПД=Дательный, соответствующий вопросу кому.

  3. Результат — Массив возможных строк, не одна строка. Сначала проверить Количество(), затем взять вариант с индексом 0.

  4. Использовать выбранный вариант для конкретного текста адресата. Если вариантов несколько, в реальном интерфейсе нужен осмысленный выбор.

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

Как проверить результат

  1. Четыре проверки Истина; текст Кому: токарю третьего разряда.

  2. Замените исходную строку на собственную профессию и вручную проверьте варианты. Не утверждайте правильность всех фамилий по одному успешному примеру профессии.

Ожидаемый результат

Получена законченная строка учебного адресата с проверкой коллекции результата и демонстрацией отсутствующего падежа.

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

  1. Поддерживаемая локализация склонения в установленной справке — русский язык. Передача en_US не делает пример универсальным переводчиком.

  2. Для имён собственных при необходимости задают ПЛ=Мужской или ПЛ=Женский. Пол не выводится надёжно только из произвольной строки.

  3. Метод может вернуть несколько вариантов. Автоматический выбор первого здесь относится только к собственной простой профессии.

Пример не запускался в вашей базе. Перед применением проверьте его в указанном учебном контексте.

Не хотите разбираться сами?

Адаптируем это решение под вашу базу. Оценка бесплатно.

Оставить задачу

1С, 1С:Предприятие — товарные знаки ООО «1С». Сайт не является официальным представительством фирмы «1С» и не аффилирован с ней.