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