Добрый день. Есть два реквизита, Реквизит "Документ" - ссылочный тип на документ товары, реквизит "Процесс" ссылочный тип на справочник процессы. В реквизите процессы есть определенный список процессов. Нужно настроить условие, когда при выборе документа скажем по дате создания меньше чем 01.01.21 в списке реквизита "Процессы" были видны только определенные процессы. Подскажите, пожалуйста, как настроить подобный отбор...
---
Событие Формы ПроцессНачалоВыбора, проверяем заполненность реквизита Документ.

```1c
    ФормаСписка = Справочники.Процессы.ПолучитьФормуВыбора();
    ФормаСписка.Отбор.ВашОтбор = ;
```
---
В процедуре, привязанной к началу выбора в реквизите добавь получение списка значений элементов справочника.
1. Сделай функцию на сервере, которая получает список нужных элементов
2. Заполни этим списком значения для выбора.
Без пункта 1 к пункту 2 приступать не надо.
Забудь про процедуру ПолучитьФормуВыбора()
---
https://forum.infostart.ru/forum9/topic276261/
---
Событие Формы ПроцессНачалоВыбора, проверяем заполненность реквизита Документ.

```1c
    ФормаСписка = Справочники.Процессы.ПолучитьФормуВыбора();
    ФормаСписка.Отбор.ВашОтбор = ;
```
---
Условие еще поставить Если дата документа или еще что-то при необходимости
---
Да. конечно. Будет как-то так:
Событие Формы ПроцессНачалоВыбора, проверяем заполненность реквизита Документ, проверяем условие.

```1c
    ФормаСписка = Справочники.Процессы.ПолучитьФормуВыбора();
    ФормаСписка.Отбор.ВашОтбор = ;
```
---
Ошибка вылезает "Интерактивные операции недоступны"
---
Добавь права на интерактивные операции данному пользователю у данного вида объекта
---
Пробую под админом, там все права есть на данный объект
---
Тогда объясни, что делаешь поподробнее. Что пытаешься сделать и с каким объектом. Под админом не всегда есть все права
Как вариант, запусти 1С по правой клавише мышки от имени Администратора.
---
Почитай про связи параметров выбора,. Кажется, это то что тебе надо
---
В моем случае не подойдет, нет связи между реквизитами.
---
вот этот блок, выполняю на сервере

```1c
    ФормаСписка = Справочники.СписокПроцессов.ПолучитьФормуВыбора();
    ОтборСписка = ФормаСписка.Отбор;
```

Возникает ошибка
---
ОтборСписка = ФормаСписка.Отбор;
Откуда это взял? Что хотел сделать этой строкой кода?
---
Ошибка возникает на первой строчке кода, при ПолучитьФормуВыбора()
---
На встроенной обработке два реквизита (названия и типы прописала выше).
В модуле формы обработки Событие Формы СписокПроцессовНачалоВыбора, вставила код:
ФормаСписка = Справочники.СписокПроцессов.ПолучитьФормуВыбора();
Система выдает ошибку "Интерактивные операции недоступны". Ругается на ПолучитьФормуВыбора()
Что не так делаю?
---
Сообщение было скрыто модератором.
---
ПолучитьФормуВыбора (GetChoiceForm)
Синтаксис:
ПолучитьФормуВыбора(<Форма>, <Владелец>, <КлючУникальности>)
Параметры:
<Форма> (необязательный)
Тип: Строка, ОбъектМетаданных: Форма .
Имя формы, как оно задано в конфигураторе, или объект описания метаданного требуемой формы. Если параметр не указан, то используется основная форма, заданная в конфигураторе.
<Владелец> (необязательный)
Тип: Форма; Элемент управления.
Объект, который будет являться владельцем открываемой формы.
<КлючУникальности> (необязательный)
Тип: Произвольный.
В данном параметре может быть задан некоторый ключ, значение которого будет использоваться для поиска уже открытых форм.
При поиске учитываются значения свойств открытых форм соответствующим значениям параметров метода. Если найдена открытая форма (по совпадению всех параметров), то она будет возвращена вместо новой формы.
Если из некой формы (один и тот же владелец) требуется открывать новые экземпляры другой формы, то при каждом вызове метода значение данного параметра должно быть уникально (в рамках соответствующих значений свойств открытых форм).
Значение параметра присваивается свойству открываемой формы КлючУникальности.
Следует учитывать, что при получении формы из "объекта" система получает форму для конкретного экземпляра объекта с учетом совокупности переданных параметров, в то время как для "ссылки" всегда существует только один объект в базе данных и форма получается одна (для одинаковой совокупности параметров).
Возвращаемое значение:
Тип: Форма, Неопределено.
Неопределено - если в обработчике ПриСозданииНаСервере установлен признак отказа от создания формы.
Описание:
Получает форму списка для выбора элементов справочника.
Доступность:
Толстый клиент.
Пример:

```1c
    Товары = Справочники.Номенклатура;
    ФормаСписка= Товары.ПолучитьФормуВыбора();
    Если Не ФормаСписка.Открыта() Тогда
    ФормаСписка.Открыть();
    КонецЕсли;
```

Использование в версии:
Доступен, начиная с версии 8.0.
Внимательно читаем раздел "Доступность"
---
У меня тонкий клиент, для него что можно придумать?
---
Сообщение было скрыто модератором.
---
Может просто нужно работать с формой на клиенте а не на сервере?
---
а как к справочникам обратиться через клиента? (Справочники.Процессы.ПолучитьФормуВыбора)
---
Сообщение было скрыто модератором.
---
В процедуре, привязанной к началу выбора в реквизите добавь получение списка значений элементов справочника.
1. Сделай функцию на сервере, которая получает список нужных элементов
2. Заполни этим списком значения для выбора.
Без пункта 1 к пункту 2 приступать не надо.
Забудь про процедуру ПолучитьФормуВыбора()
---
Функцию для отбора нужных элементов создала,
можете пояснить, "добавь получение списка значений элементов справочника", что имеете в виду... Можете пример привести?
---
https://forum.infostart.ru/forum9/topic276261/
---
Так, отбор делается, но при выборе элемента из списка, он не вставляется в реквизит, просто закрывается форма и реквизит остается пустым.
---
Разобралась, спасибо!!!