Содержание:
- Общая информация о свойстве Быстрый выбор при работе в системе 1С
- Как произвести отбор возможных вариантов выбора в системе программ 1С:Предприятие
Общая информация о свойстве Быстрый выбор при работе в системе 1С
При разработке объектов конфигурации, содержащих реквизиты ссылочного типа, часто можно обнаружить свойство Быстрый выбор, которое имеет тип данных булево. Это свойство появилось в конфигурациях системы 1С версии 8.x и предназначено для ускорения и упрощения заполнения данных в пользовательском режиме.
Допустим, у нас есть справочник Склады, в котором используется небольшое количество элементов (например, “Склад1” и “Склад2”). Далее, у нас есть документ “Поступление товаров”, в котором есть реквизит “Склад” с типом данных “СправочникСсылка” и наименованием “Склады”. По умолчанию, когда пользователь хочет выбрать один из складов и нажимает кнопку выбора, открывается форма выбора, и ему нужно выбрать одно из двух значений.
Если количество обрабатываемых документов достигает сотен, это монотонное действие может привести к потере времени. Для ускорения процесса рекомендуется установить галку “Быстрый выбор”. В этом случае при попытке выбора склада у нас будет спадающий список, в котором можно сразу выбрать нужный элемент.
Кроме того, если быстрый выбор необходим только в конкретной форме, функция быстрого выбора реализована не только в объектах метаданных ссылочного типа, но и в элементах форм. Это позволяет установить выбор как в настройках реквизитов формы, так и программным способом.
Как произвести отбор возможных вариантов выбора в системе программ 1С:Предприятие
При использовании быстрого выбора часто возникает вопрос, как в данном случае программно сделать отбор возможных вариантов выбора. Для этого следует использовать событие элемента формы, для которого устанавливается быстрый выбор, а именно процедуру АвтоПодбор. Рассмотрим на конкретном примере, как должна работать данная процедура. Например, в реквизите «БизнесЕдиница» нам следует выводить список Бизнес единиц, не помеченных на удаление. Создаем событие «АвтоПодбор», для элемента «БизнесЕдиница» на клиенте. Затем прописываем следующий код:
СтандартнаяОбработка = Ложь;
Запрос = Новый Запрос;
Запрос.Текст =
“ВЫБРАТЬ
| БизнесЕдиницы.Ссылка
|ИЗ
| Справочник. БизнесЕдиницы КАК БизнесЕдиницы
|ГДЕ
| НЕ БизнесЕдиницы.ПометкаУдаления “;
ТЗ = Запрос.Выполнить().Выгрузить();
СписокБизнесЕдиниц = Новый СписокЗначений;
СписокБизнесЕдиниц.ЗагрузитьЗначения(ТЗ.ВыгрузитьКолонку(“Ссылка”));
ЭлементыФормы.БизнесЕдиница.СписокВыбора = СписокБизнесЕдиниц;
Либо можно пойти более коротким путем:
СписокВыбора = новый СписокЗначений;
ВыборкаБизнесЕдиница=Справочники.БизнесЕдиницы.Выбрать
(,,новый ФиксированнаяСтруктура(“ПометкаУдаления”,Ложь);
Пока ВыборкаБизнесЕдиница.следующий цикл
СписокВыбора.Добавить(Выборка.Ссылка);
КонецЦикла;
Элементы.БизнесЕдиница.СписокВыбора = СписокВыбора;
Результатом выполнения данного кода станет список выбора, содержащий только те элементы, которые мы прописали в условии запроса.
Таким образом, в данной статье мы рассмотрели, как программно реализовать изменение списка авто подбора.
Специалист компании ООО “Кодерлайн”,
Кузнецов Иван
Добавить комментарий