Передаём параметры в произвольный запрос динамического списка.

Имеем задачу: в форму списка справочника "Номенклатура" добавить остатки по складу "Основной".

Если форма списка справочника уже создан, то дорабатываем её. Если формы нет – создаём новую.

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

ВЫБРАТЬ
СправочникНоменклатура.Ссылка,
СправочникНоменклатура.ПометкаУдаления,
СправочникНоменклатура.Код,
СправочникНоменклатура.Наименование,
СправочникНоменклатура.Услуга,
СправочникНоменклатура.Предопределенный,
СправочникНоменклатура.ИмяПредопределенныхДанных,
ОстаткиНоменклатурыОстатки.КоличествоОстаток КАК Остаток
ИЗ
Справочник.Номенклатура КАК СправочникНоменклатура
ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ОстаткиНоменклатуры.Остатки(&Склад, ) КАК ОстаткиНоменклатурыОстатки
ПО (ОстаткиНоменклатурыОстатки.Номенклатура = СправочникНоменклатура.Ссылка)

В виртуальной таблице регистра накопления "ОстаткиНоменклатуры" мы задали параметр &Склад. На вкладке конструктора формы "Параметры" создаём параметр "Склад" с типом "СправочникСсылка.Склады".

Теперь нам нужно как-то установить этот параметр. Делается это в модуле формы, в процедуре "ПриСозданииНаСервере".

&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
	
	ПараметрСклад = Справочники.Склады.НайтиПоНаименованию("Основной");
	Список.Параметры.УстановитьЗначениеПараметра("Склад", ПараметрСклад);
	
КонецПроцедуры

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