Войти
Windows. Программы. Железо. Интернет. Безопасность. Мой компьютер
  • Лучшие приложения для Android: краткий обзор бесплатных программ Запись телефонных разговоров
  • Как полностью удалить Антивирус Касперского?
  • Е майл почта. Моя почта. Платный или бесплатный е-мэйл
  • Лучшие программы для поиска дубликатов (одинаковых) файлов
  • Ошибка загрузки метаданных
  • Недавно кто-то пытался войти в Ваш аккаунт Google Почему приходят оповещения что вк выполнен вход
  • Как открыть форму списка с отбором? Как установить отбор в форме списка справочника? 1с открыть форму с отбором по владельцу

    Как открыть форму списка с отбором? Как установить отбор в форме списка справочника? 1с открыть форму с отбором по владельцу

    Данный код позволяет открыть список документов с установленным отбором, также можно открыть список элементов справочника с нужным отбором

    Код 1C v 8.2 УП Форма = ОткрытьФорму("Документ.РасходнаяНакладная.Форма.ФормаСписка"); //Открываем форму
    ОтборВладелец =Форма.Список.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); //Добавлям отбор
    ОтборВладелец.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно; //Как будем сравнивать
    ОтборВладелец.Использование = Истина; // Устанавливаем галку использованияНовый ПолеКомпоновкиДанных("Номенклатура")
    ОтборВладелец.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Контрагент"); //По какому реквизиту будем делать отбор
    ОтборВладелец.ПравоеЗначение = Объект.Контрагент; // И само значение отбора

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

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

    Параметр Отбор представляет собой структуру. Имена элементов соответствуют именам полей, по которым производится отбор, а значения содержат значения отбора. Это параметр расширения управляемой формы динамического списка. То есть он существует у форм, основным реквизитом которых является реквизит типа ДинамическийСписок, например у форм списка и форм выбора.

    Например, в следующем примере открывается список приходных накладных с отбором по полю Номер, равному 333.

    Код 1C v 8.2 УП ЗначениеОтбора = Новый Структура("Номер", "333");
    ПараметрыВыбора = Новый Структура("Отбор", ЗначениеОтбора);
    ОткрытьФорму("Документ.ПриходнаяНакладная.ФормаСписка", ПараметрыВыбора);

    Второй способ

    Можно открыть форму списка без параметров:

    Код 1C v 8.2 УП ОткрытьФорму("Документ.ПриходнаяНакладная.ФормаСписка");

    И затем, в обработчике события формы списка приходных накладных ПриСозданииНаСервере написать код, который создает отбор в динамическом списке, являющемся основным реквизитом формы:

    Код 1C v 8.2 УП &НаСервере
    Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
    ЭлементОтбора = Список.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
    ЭлементОтбора.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Номер");
    ЭлементОтбора.ВидСравнения = ВидСравненияКомпоновкиДанных.Больше;
    ЭлементОтбора.Использование = Истина;
    ЭлементОтбора.РежимОтображения = РежимОтображенияЭлементаНастройкиКомпоновкиДанных.Недоступный;
    ЭлементОтбора.ПравоеЗначение = "000000001";
    КонецПроцедуры

    Преимущества данного метода в том, что ВидСравнения у отбора можно задавать не только Равно, как в первом случае, а и Больше, Меньше и т.п.

    Но у такого способа есть и очень существенный недостаток: с этим отбором форма будет открываться всегда. Откуда бы ее ни вызвали. Поэтому такую форму не следует назначать основной. А если все же она основная - то перед установкой отбора необходимо предусмотреть какой-то анализ того, откуда открывается эта форма. Например, анализируя параметры формы.

    Третий способ

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

    Например, нам нужно открыть список приходных накладных, в которых присутствует номенклатура, выделенная в списке номенклатуры.

    Для этого в форме списка номенклатуры создадим команду и соответствующую ей кнопку Приходные накладные.

    Обработчик выполнения этой команды заполним следующим образом:

    Код 1C v 8.2 УП &НаКлиенте
    Процедура ПриходныеНакладные(Команда)
    ПараметрыВыбора = Новый Структура("ФильтрПоТовару", Элементы.Список.ТекущаяСтрока);
    ОткрытьФорму("Документ.ПриходнаяНакладная.ФормаСписка", ПараметрыВыбора);
    КонецПроцедуры

    В этом обработчике мы открываем форму списка приходных накладных, передавая в параметр формы ФильтрПоТовару ссылку на текущий элемент в списке номенклатуры.

    Затем создадим форму списка документов ПриходнаяНакладная и создадим параметр формы ФильтрПоТовару, который мы будем использовать для открытия формы с нужным отбором.

    Теперь откроем палитру свойств основного реквизита формы Список. Установим флаг ПроизвольныйЗапрос и в строке Настройка списка нажмём Открыть.

    В поле Запрос введём следующий текст запроса:

    Код 1C v 8.2 УП ВЫБРАТЬ
    ДокументПриходнаяНакладная.Номер,
    ДокументПриходнаяНакладная.Дата
    ИЗ
    Документ.ПриходнаяНакладная КАК ДокументПриходнаяНакладная
    ГДЕ
    ДокументПриходнаяНакладная.Товары.Товар = &Товар

    В запросе мы используем параметр Товар, в который и будет передаваться ссылка на текущую строку в списке номенклатуры, содержащуюся в параметре формы списка приходных накладных ФильтрПоТовару.

    Для этого в обработчике события формы списка ПриСозданииНаСервере напишем код для установки значения параметра запроса Товар:

    Код 1C v 8.2 УП &НаКлиенте
    Процедура ПриОткрытии(Отказ)
    Список.Параметры.УстановитьЗначениеПараметра("Товар", Параметры.ФильтрПоТовару);
    КонецПроцедуры

    Здесь Список.Параметры - это список параметров запроса динамического списка для реквизита Список. Значение параметра Товар устанавливается равным значению параметра формы ФильтрПоТовару.

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

    Код 1C v 8.х СправочникСписок.Отбор.Сбросить();
    СправочникСписок.Отбор.статус.ВидСравнения=ВидСравнения.Содержит;
    СправочникСписок.Отбор.Статус.Значение="Принята";
    СправочникСписок.Отбор.Статус.Установить();

    Для 1С 8.2:
    Есть несколько способов для того, чтобы открыть форму списка с некоторым, заранее установленным отбором. Рассмотрим их по-порядку:

    1. Первый способ заключается в том, что при открытии формы можно задать параметр формы Отбор, и открыть форму списка с этим параметром. Параметр Отбор представляет собой структуру. Имена элементов соответствуют именам полей, по которым производится отбор, а значения содержат значения отбора. Это параметр расширения управляемой формы динамического списка. То есть он существует у форм, основным реквизитом которых является реквизит типа Динамический Список, например у форм списка и форм выбора.

    В процессе открытия формы будет установлен отбор по указанному полю.
    Код 1C v 8.2 УП // Например, в следующем примере открывается список приходных накладных с отбором по полю Номер, равному 333.
    ЗначениеОтбора = Новый Структура("Номер", "333");
    ПараметрыВыбора = Новый Структура("Отбор", ЗначениеОтбора);

    ОткрытьФорму("Документ.ПриходнаяНакладная.ФормаСписка",ПараметрыВыбора);

    // Например, в следующем примере открывается список расходных накладных
    // с отбором по полю Контрагент, равному «ОАО Рога и копыта».
    ЗначениеОтбора = Новый Структура(«Контрагент», «ОАО Рога и копыта»);
    ПараметрыВыбора = Новый Структура(«Отбор», ЗначениеОтбора);
    ОткрытьФорму(«Документ.ПриходнаяНакладная.ФормаСписка», ПараметрыВыбора);

    2. Можно открыть форму списка без параметров:
    Код 1C v 8.2 УП ОткрытьФорму("Документ.ПриходнаяНакладная.ФормаСписка");

    И затем, в обработчике события формы списка приходных накладных ПриСозданииНаСервере написать код, который создает отбор в динамическом списке, являющемся основным реквизитом формы:
    Код 1C v 8.2 УП &НаСервере

    ЭлементОтбора = Список.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
    ЭлементОтбора.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Номер");

    ЭлементОтбора.РежимОтображения = РежимОтображенияЭлементаНастройкиКомпоновкиДанных.Недоступный;
    ЭлементОтбора.ПравоеЗначение = "000000001";
    КонецПроцедуры

    &НаСервере
    Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
    ЭлементОтбора = Список.Отбор.Элементы.Добавить(Тип
    («ЭлементОтбораКомпоновкиДанных»));
    ЭлементОтбора.ЛевоеЗначение = Новый ПолеКомпоновкиДанных («СуммаДокумента»);
    ЭлементОтбора.ВидСравнения = ВидСравненияКомпоновкиДанных.Больше;
    ЭлементОтбора.Использование = Истина;
    ЭлементОтбора.ПравоеЗначение = 150000;
    КонецПроцедуры

    Преимущества данного метода в том, что ВидСравнения у отбора можно задавать не только Равно, как в первом случае, а и Больше, Меньше и т.п.

    Но у такого способа есть и очень существенный недостаток: с этим отбором форма будет открываться всегда. Откуда бы ее ни вызвали. Поэтому такую форму не следует назначать основной. А если все же она основная - то перед установкой отбора, необходимо предусмотреть какой-то анализ того, откуда открывается эта форма. Например, анализируя параметры формы.

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

    Для этого в форме списка номенклатуры создадим команду и соответствующую ей кнопку Приходные накладные.

    Обработчик выполнения этой команды заполним следующим образом:
    Код 1C v 8.2 УП &НаКлиенте
    Процедура ПриходныеНакладные(Команда)

    ФормаСписка = ПолучитьФорму("Документ.ПриходнаяНакладная.ФормаСписка");
    ФормаСписка.ФильтрПоТовару = Элементы.Список.ТекущаяСтрока;
    ФормаСписка.Открыть();

    КонецПроцедуры

    В этом обработчике мы получаем форму списка приходных накладных и передаем в параметр формы ФильтрПоТовару ссылку на текущий элемент в списке номенклатуры и открываем форму с этим параметром.

    Затем создадим форму списка документов ПриходнаяНакладная и создадим реквизит формы ФильтрПоТовару, который мы будем использовать в качестве параметра формы при ее открытии. Теперь откроем палитру свойств основного реквизита формы Список. Установим флаг ПроизвольныйЗапрос и в строке Настройка списка нажмем Открыть .

    В поле Запрос введем следующий текст запроса:
    Код 1C v 8.2 УП ВЫБРАТЬ
    ДокументПриходнаяНакладная.Номер,
    ДокументПриходнаяНакладная.Дата
    ИЗ
    Документ.ПриходнаяНакладная КАК ДокументПриходнаяНакладная
    ГДЕ
    ДокументПриходнаяНакладная.Товары.Товар = &Товар

    В запросе мы используем параметр Товар, в который и будет передаваться ссылка на текущую строку в списке номенклатуры, содержащуюся в параметре формы списка приходных накладных ФильтрПоТовару. Для этого в обработчике события формы списка ПриОткрытии напишем код для установки значения параметра запроса Товар:
    Код 1C v 8.2 УП
    &НаКлиенте
    Процедура ПриОткрытии(Отказ)

    Список.Параметры.УстановитьЗначениеПараметра("Товар", ФильтрПоТовару);

    КонецПроцедуры

    Здесь Список.Параметры - это список параметров запроса динамического списка для реквизита Список. Значение параметра Товар устанавливается равным значению параметра формы ФильтрПоТовару.

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

    Информация взята с сайта

    Как открыть форму списка с некоторым отбором?

    Есть несколько способов для того, чтобы открыть форму списка с некоторым, заранее установленным отбором. Рассмотрим их по-порядку:

    1. Первый способ заключается в том, что при открытии формы можно задать параметр формы Отбор , и открыть форму списка с этим параметром. Параметр Отбор представляет собой структуру. Имена элементов соответствуют именам полей, по которым производится отбор, а значения содержат значения отбора. Это параметр расширения управляемой формы динамического списка. То есть он существует у форм, основным реквизитом которых является реквизит типа Динамический Список , например у форм списка и форм выбора.

    В процессе открытия формы будет установлен отбор по указанному полю. Например, в следующем примере открывается список приходных накладных с отбором по полю Номер , равному 333.

    ЗначениеОтбора = Новый Структура("Номер", "333");

    ПараметрыВыбора = Новый Структура("Отбор", ЗначениеОтбора);

    ОткрытьФорму("Документ.ПриходнаяНакладная.ФормаСписка",ПараметрыВыбора);

    2. Можно открыть форму списка без параметров:

    ОткрытьФорму("Документ.ПриходнаяНакладная.ФормаСписка");

    И затем, в обработчике события формы списка приходных накладных ПриСозданииНаСервере написать код, который создает отбор в динамическом списке, являющемся основным реквизитом формы:

    &НаСервере

    Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)

    ЭлементОтбора = Список.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));

    ЭлементОтбора.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Номер");

    ЭлементОтбора.ВидСравнения = ВидСравненияКомпоновкиДанных.Больше;

    ЭлементОтбора.Использование = Истина;

    ЭлементОтбора.РежимОтображения = РежимОтображенияЭлементаНастройкиКомпоновкиДанных.Недоступный;

    ЭлементОтбора.ПравоеЗначение = "000000001";

    КонецПроцедуры

    Преимущества данного метода в том, что ВидСравнения у отбора можно задавать не только Равно , как в первом случае, а и Больше , Меньше и т.п.

    Но у такого способа есть и очень существенный недостаток: с этим отбором форма будет открываться всегда. Откуда бы ее ни вызвали. Поэтому такую форму не следует назначать основной. А если все же она основная - то перед установкой отбора, необходимо предусмотреть какой-то анализ того, откуда открывается эта форма. Например, анализируя параметры формы.

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

    Для этого в форме списка номенклатуры создадим команду и соответствующую ей кнопку Приходные накладные .

    Обработчик выполнения этой команды заполним следующим образом:

    &НаКлиенте

    Процедура ПриходныеНакладные(Команда)

    ФормаСписка = ПолучитьФорму("Документ.ПриходнаяНакладная.ФормаСписка");

    ФормаСписка.ФильтрПоТовару = Элементы.Список.ТекущаяСтрока;

    ФормаСписка.Открыть();

    КонецПроцедуры

    В этом обработчике мы получаем форму списка приходных накладных и передаем в параметр формы ФильтрПоТовару ссылку на текущий элемент в списке номенклатуры и открываем форму с этим параметром.

    Затем создадим форму списка документов ПриходнаяНакладная и создадим реквизит формы ФильтрПоТовару , который мы будем использовать в качестве параметра формы при ее открытии. Теперь откроем палитру свойств основного реквизита формы Список . Установим флаг ПроизвольныйЗапрос и в строке Настройка списка нажмем Открыть .

    В поле Запрос введем следующий текст запроса:

    ВЫБРАТЬ

    ДокументПриходнаяНакладная.Номер,

    ДокументПриходнаяНакладная.Дата

    ИЗ

    Документ.ПриходнаяНакладная КАК ДокументПриходнаяНакладная

    ГДЕ

    ДокументПриходнаяНакладная.Товары.Товар = &Товар

    В запросе мы используем параметр Товар , в который и будет передаваться ссылка на текущую строку в списке номенклатуры, содержащуюся в параметре формы списка приходных накладных ФильтрПоТовару . Для этого в обработчике события формы списка ПриОткрытии напишем код для установки значения параметра запроса Товар :

    &НаКлиенте

    Процедура ПриОткрытии(Отказ)

    Список.Параметры.УстановитьЗначениеПараметра("Товар", ФильтрПоТовару);

    КонецПроцедуры

    Здесь Список.Параметры - это список параметров запроса динамического списка для реквизита Список . Значение параметра Товар устанавливается равным значению параметра формы ФильтрПоТовару .

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

    Демонстрационный пример для 3-го варианта находится в каталоге 1CITS/EXE/FAQ/ОткрытьФормуСОтбором.dt. Пример выполнен на версии платформы 8.2.9.356.

    Код 1C v 8.х СправочникСписок.Отбор.Сбросить();
    СправочникСписок.Отбор.статус.ВидСравнения=ВидСравнения.Содержит;
    СправочникСписок.Отбор.Статус.Значение="Принята";
    СправочникСписок.Отбор.Статус.Установить();

    Для 1С 8.2:
    Есть несколько способов для того, чтобы открыть форму списка с некоторым, заранее установленным отбором. Рассмотрим их по-порядку:

    1. Первый способ заключается в том, что при открытии формы можно задать параметр формы Отбор, и открыть форму списка с этим параметром. Параметр Отбор представляет собой структуру. Имена элементов соответствуют именам полей, по которым производится отбор, а значения содержат значения отбора. Это параметр расширения управляемой формы динамического списка. То есть он существует у форм, основным реквизитом которых является реквизит типа Динамический Список, например у форм списка и форм выбора.

    В процессе открытия формы будет установлен отбор по указанному полю.
    Код 1C v 8.2 УП // Например, в следующем примере открывается список приходных накладных с отбором по полю Номер, равному 333.
    ЗначениеОтбора = Новый Структура("Номер", "333");
    ПараметрыВыбора = Новый Структура("Отбор", ЗначениеОтбора);

    ОткрытьФорму("Документ.ПриходнаяНакладная.ФормаСписка",ПараметрыВыбора);

    // Например, в следующем примере открывается список расходных накладных
    // с отбором по полю Контрагент, равному «ОАО Рога и копыта».
    ЗначениеОтбора = Новый Структура(«Контрагент», «ОАО Рога и копыта»);
    ПараметрыВыбора = Новый Структура(«Отбор», ЗначениеОтбора);
    ОткрытьФорму(«Документ.ПриходнаяНакладная.ФормаСписка», ПараметрыВыбора);

    2. Можно открыть форму списка без параметров:
    Код 1C v 8.2 УП ОткрытьФорму("Документ.ПриходнаяНакладная.ФормаСписка");

    И затем, в обработчике события формы списка приходных накладных ПриСозданииНаСервере написать код, который создает отбор в динамическом списке, являющемся основным реквизитом формы:
    Код 1C v 8.2 УП &НаСервере

    ЭлементОтбора = Список.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
    ЭлементОтбора.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Номер");


    ЭлементОтбора.РежимОтображения = РежимОтображенияЭлементаНастройкиКомпоновкиДанных.Недоступный;
    ЭлементОтбора.ПравоеЗначение = "000000001";
    КонецПроцедуры

    &НаСервере
    Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
    ЭлементОтбора = Список.Отбор.Элементы.Добавить(Тип
    («ЭлементОтбораКомпоновкиДанных»));
    ЭлементОтбора.ЛевоеЗначение = Новый ПолеКомпоновкиДанных («СуммаДокумента»);
    ЭлементОтбора.ВидСравнения = ВидСравненияКомпоновкиДанных.Больше;
    ЭлементОтбора.Использование = Истина;
    ЭлементОтбора.ПравоеЗначение = 150000;
    КонецПроцедуры

    Преимущества данного метода в том, что ВидСравнения у отбора можно задавать не только Равно, как в первом случае, а и Больше, Меньше и т.п.

    Но у такого способа есть и очень существенный недостаток: с этим отбором форма будет открываться всегда. Откуда бы ее ни вызвали. Поэтому такую форму не следует назначать основной. А если все же она основная - то перед установкой отбора, необходимо предусмотреть какой-то анализ того, откуда открывается эта форма. Например, анализируя параметры формы.

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

    Для этого в форме списка номенклатуры создадим команду и соответствующую ей кнопку Приходные накладные.

    Обработчик выполнения этой команды заполним следующим образом:
    Код 1C v 8.2 УП &НаКлиенте
    Процедура ПриходныеНакладные(Команда)

    ФормаСписка = ПолучитьФорму("Документ.ПриходнаяНакладная.ФормаСписка");
    ФормаСписка.ФильтрПоТовару = Элементы.Список.ТекущаяСтрока;
    ФормаСписка.Открыть();

    КонецПроцедуры

    В этом обработчике мы получаем форму списка приходных накладных и передаем в параметр формы ФильтрПоТовару ссылку на текущий элемент в списке номенклатуры и открываем форму с этим параметром.

    Затем создадим форму списка документов ПриходнаяНакладная и создадим реквизит формы ФильтрПоТовару, который мы будем использовать в качестве параметра формы при ее открытии. Теперь откроем палитру свойств основного реквизита формы Список. Установим флаг ПроизвольныйЗапрос и в строке Настройка списка нажмем Открыть .

    В поле Запрос введем следующий текст запроса:
    Код 1C v 8.2 УП ВЫБРАТЬ
    ДокументПриходнаяНакладная.Номер,
    ДокументПриходнаяНакладная.Дата
    ИЗ
    Документ.ПриходнаяНакладная КАК ДокументПриходнаяНакладная
    ГДЕ
    ДокументПриходнаяНакладная.Товары.Товар = &Товар

    В запросе мы используем параметр Товар, в который и будет передаваться ссылка на текущую строку в списке номенклатуры, содержащуюся в параметре формы списка приходных накладных ФильтрПоТовару. Для этого в обработчике события формы списка ПриОткрытии напишем код для установки значения параметра запроса Товар:
    Код 1C v 8.2 УП
    &НаКлиенте
    Процедура ПриОткрытии(Отказ)

    Список.Параметры.УстановитьЗначениеПараметра("Товар", ФильтрПоТовару);

    КонецПроцедуры

    Здесь Список.Параметры - это список параметров запроса динамического списка для реквизита Список. Значение параметра Товар устанавливается равным значению параметра формы ФильтрПоТовару.

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

    Для того чтобы открыть форму выбора с отбором в 1с 8.2 (обычные формы), нам нужно выполнить некоторые действия. Сначала мы ее получим. После этого выставим отбор и программно откроем, вот пример кода:

    Отбор на форме в поле ввода 1С 8.2 с несколькими значениями

    В примере выше мы рассмотрели как устанавливать отбор на форме выбора по конкретному значению. Теперь давайте рассмотрим ситуацию когда нужно подставить несколько значений, это может быть например как массив, так и выгрузка из результата запроса. Это отбор в поле ввода 1с с несколькими значениями.

    Для начала получаем форму выбора, в параметрах передаем "Элемент" (владельца), устанавливаем флаг режима выбора. Потом создаем список значений и массив, отмечаем что в качестве отбора когда устанавливается вид сравнения в списке, может присутствовать объект только с типом СписокЗначений . Добавляем элементы в массив, затем этот массив загружаем в СписокЗначений который в следствии мы устанавливаем в отборе. Также не забываем включить флаг использования данного отбора, и установить ВидСравнения.

    Установка отбора в поле ввода на форме в 1С 8.3, событие НачалоВыбора

    Теперь рассмотрим отбор в поле ввода на управляемой форме в 1С 8.3 . Найдем на форме интересующий нас элемент, в котором мы будем устанавливать отбор, в нашем случае это поле «Организация». Находим событие «НачалоВыбора», щелкаем на лупу и оказываемся в процедуре. Мы видим параметр ДанныеВыбора, этот параметр имеет тип СписокЗначений. Для того чтобы ограничить выбор необходимыми элементами, нам необходимо заполнить СписокЗначений. Элементы выбрать можем только на сервере, поэтому создаем процедуру с директивой компиляции &НаСервере. В данной процедуре заполняем ДанныеВыбора.