Имя: Пароль:
1C
1С v8
Параметры выбора + параметры динамического списка
0 AlenkaZu
 
05.04.14
16:05
Здравствуйте!
Не могу найти ответ в гугле, спрошу тут.
В документе есть реквизит, в свойствах которого заданы параметры выбора (значение перечисления).
В форме выбора этого реквизита динамический список с произвольным запросом с параметрами.
Почему-то, в отличие от стандартной обработки, если ОткрытьФорму(), то автоматически не устанавливается отбор, заданный в параметрах выбора реквизита. Это так и должно быть, и надо программно устанавливать отбор, так как прописанный в параметрах выбора игнорится?
1 Dmitlion
 
06.04.14
12:24
Отбор можно наложить в свойствах реквизита параметры выбора. Например для реквизита "Контрагент" указать параметр выбора Отбор.ЮрФизЛицо(ЮрЛицо). Этот отбор будет работать при стандартном выборе значения реквизита.
Еще отбор можно указать в настройках списка основного реквизита формы выбора справочника.
На закладке настройки для запроса можно указать отбор по значению перечисления.
Этот отбор будет работать если форму выбора открыть программно, например из формы того же документа:
<code>
ОткрытьФорму("Справочник.Контрагенты.Форма.ФормаВыбора");
</code>
2 Dmitlion
 
06.04.14
20:57
Если нужно программно открывать форму выбора с отбором, то придется писать код вида:

&НаКлиенте
Процедура ОткрытьКонтрагентов(Команда)
    
    Парам = Новый Структура("ЮрФизЛицо", ПолучитьЮрЛицо());
    ОткрытьФорму("Справочник.Контрагенты.Форма.ФормаВыбора", Парам);
    
КонецПроцедуры

&НаСервереБезКонтекста
Функция ПолучитьЮрЛицо()

    Возврат Перечисления.ЮрФизЛицо.ЮрЛицо;

КонецФункции // ПолучитьЮрЛицо()
3 EvgeniuXP
 
06.04.14
21:02
Если отбор в списке установишь и создаешь новый элемент/документ - то автоматом у нового элемента/документа заполняются реквизиты - см. в сторону заполнения, если там пропишешь.