ПеречислениеМенеджер.<Имя перечисления>.ОбработкаПолученияДанныхВыбора

События · ChoiceDataGetProcessing

Возникает на сервере перед стандартным формированием списка при вводе по строке, автоподборе текста и быстром выборе, а также при выполнении метода ПолучитьДанныеВыбора.

Синтаксис

ОбработкаПолученияДанныхВыбора(<ДанныеВыбора>, <Параметры>, <СтандартнаяОбработка>)
Полное описание, параметры и ограничения

ПеречислениеМенеджер.<Имя перечисления>.ОбработкаПолученияДанныхВыбора (EnumManager.<Enumeration name>.ChoiceDataGetProcessing)

ПеречислениеМенеджер.<Имя перечисления> (EnumManager.<Enumeration name>)

ОбработкаПолученияДанныхВыбора (ChoiceDataGetProcessing)

Доступен, начиная с версии 8.2.

Синтаксис:
ОбработкаПолученияДанныхВыбора(<ДанныеВыбора>, <Параметры>, <СтандартнаяОбработка>)
Параметры:

<ДанныеВыбора>
Тип: СписокЗначений.
В обработчике можно сформировать и передать в этом параметре данные для выбора. При этом параметр <СтандартнаяОбработка> должен быть установлен в Ложь.
В элемент списка значений можно помещать не только конкретное значение, но и структуру.
Анализ значения на предмет того, является ли она структурой или просто значением, используется полем ввода формы клиентского приложения в случаях:
Выбора из списков, возвращаемых событиями поля ввода;

Выбора из списка в поле ввода, содержащегося в свойстве СписокВыбора.
В случае, если в значение элемента списка значений используется Структура, она должна иметь следующий состав свойств:
Значение (Value) – собственно значение (обязательный элемент структуры);

ПометкаУдаления (DeletionMark) – (Булево) содержит признак пометки значения на удаление. Если Истина, то при выборе такого элемента из списка значений выдаст стандартное предупреждение;

Предупреждение (Warning) – (Строка) содержит текст предупреждения, которое будет показано при выборе элемента из списка значений.

<Параметры>
Тип: Структура.
Содержит параметры выбора.
Их можно дополнительно настроить в обработчике события.
Структура, в которой обязательно должны содержаться следующие ключи:
СтрокаПоиска (SearchString) - строка, используемая при поиске данных, Неопределено - осуществляется быстрый выбор;

Отбор (Filter) - отбор, используемый при поиске данных.

<СтандартнаяОбработка>
Тип: Булево.
В данный параметр передается признак выполнения стандартной (системной) обработки события. Если в теле процедуры-обработчика установить данному параметру значение Ложь, стандартная обработка события производиться не будет.
Значение по умолчанию: Истина.
Описание:

Возникает на сервере перед стандартным формированием списка при вводе по строке, автоподборе текста и быстром выборе, а также при выполнении метода ПолучитьДанныеВыбора.

Доступность:

Сервер, мобильное приложение (сервер), мобильный автономный сервер.

Замечание:

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

Доступен, начиная с версии 8.2.

Методическая информация

Практические примеры

Сформировать список выбора УчебныеВариантыКниг

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

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

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

Подготовка

  1. В собственной учебной конфигурации создайте перечисление УчебныеВариантыКниг с двумя значениями Бумажная и Электронная. Это собственные значения, отсутствующие в типовых базах до подготовки урока. Обновите только учебную базу.

  2. Основной обработчик разместите в модуле менеджера УчебныеВариантыКниг, без клиентских директив. Он вызывается платформой; его не надо вызывать вручную.

  3. Обновите учебную базу и выполните проверочный блок в теле серверной процедуры своей учебной обработки. Обязательные ключи Отбор и СтрокаПоиска передаются явно; Неопределено означает быстрый выбор, не текстовый поиск.

  4. Обработчик переопределяет только показанный частный режим. Строковый поиск, иной состав отбора и явно запрошенный выбор групп остаются стандартными. Это не универсальный поисковый алгоритм и не настройка прав доступа.

Процедура ОбработкаПолученияДанныхВыбора(ДанныеВыбора, Параметры, СтандартнаяОбработка)
    Если Параметры.СтрокаПоиска <> Неопределено Или Параметры.Отбор.Количество() <> 0 Тогда
        Возврат;
    КонецЕсли;
    ДанныеВыбора = Новый СписокЗначений;
    ДанныеВыбора.Добавить(Перечисления.УчебныеВариантыКниг.Бумажная, "Печатная книга");
    ДанныеВыбора.Добавить(Перечисления.УчебныеВариантыКниг.Электронная, "Электронная книга");
    СтандартнаяОбработка = Ложь;
КонецПроцедуры
Серверная процедура: собственный источник и настоящий вызов менеджера
Параметры = Новый Структура("Отбор,СтрокаПоиска", Новый Структура, Неопределено);
Варианты = Перечисления.УчебныеВариантыКниг.ПолучитьДанныеВыбора(Параметры);
Для Каждого Вариант Из Варианты Цикл
    Сообщить(Вариант.Представление + ": " + Строка(Вариант.Значение));
КонецЦикла;

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

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

  2. СписокЗначений содержит реальные выбираемые значения и их представления; у ссылочных объектов значения читаются запросом из подготовленных своих данных.

  3. Только после формирования списка СтандартнаяОбработка = Ложь запрещает повторное стандартное заполнение.

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

  1. Возвращены два настоящих значения собственного перечисления с подписями Печатная книга / Электронная книга.

  2. Передайте непустую СтрокаПоиска или иной отбор: собственная ветка не выполняется. Результат стандартного поиска зависит от обычных настроек ввода по строке.

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

Реальный вызов ПолучитьДанныеВыбора запускает платформенный обработчик собственного менеджера.

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

  1. Не заменяйте ссылки строками наименований: представление не является идентификатором объекта.

  2. Дополнительные условия отбора не отбрасываются молча: при отличающемся составе работает стандартная обработка.

  3. Создание и запись учебных объектов показаны в подготовке / дополнительном коде и не выполняются браузером справочника.

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

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

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

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

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