Имя: Пароль:
1C
1С v8
Результат подбора в запрос
0 1634344
 
22.08.12
09:42
Как правильно передать в параметр запроса массив результата подбора
перем РезультатВыбора;
Процедура КнопкаВыполнитьНажатие(Кнопка)
   ФормаПодбора = Справочники.Номенклатура.ПолучитьФормуВыбора(,ЭлементыФормы.ПолеВвода1);
   ФормаПодбора.МножественныйВыбор=Истина;
   ФормаПодбора.Открыть();
КонецПроцедуры

Процедура ПолеВвода1ОбработкаВыбора(Элемент, ВыбранноеЗначение, СтандартнаяОбработка)
   Для Каждого ЭлементМассива Из выбранноеЗначение Цикл
       Сообщить(ЭлементМассива);
   КонецЕсли;
   КонецЦикла;
КонецПроцедуры

Процедура ПримерЗапроса()
   "ВЫБРАТЬ
   |    РасходнаяНакладнаяСостав.Ссылка
   |ИЗ
   |    Документ.РасходнаяНакладная.Состав КАК РасходнаяНакладнаяСостав
   |ГДЕ
   |    РасходнаяНакладнаяСостав.Номенклатура = &Номенклатура";
   
   Запрос.УстановитьПараметр("Номенкдатура",???????????);

   
КонецПроцедуры
1 olegves
 
22.08.12
09:44
РасходнаяНакладнаяСостав.Номенклатура В(&Номенклатура)";
   
   Запрос.УстановитьПараметр("Номенкдатура",массивНом);
2 1634344
 
22.08.12
11:00
Может кому пригодиться:


перем РезультатВыбора;
Процедура КнопкаВыполнитьНажатие(Кнопка)
   ФормаПодбора = Справочники.Номенклатура.ПолучитьФормуВыбора(,ЭлементыФормы.ПолеВвода1);
   ФормаПодбора.МножественныйВыбор=Истина;
   ФормаПодбора.Открыть();
КонецПроцедуры

Процедура ПримерЗапроса(ВыбранноеЗначение)
   
   Запрос=Новый Запрос;
   Запрос.Текст=
"ВЫБРАТЬ
   |    РасходнаяНакладнаяСостав.Ссылка
   |ИЗ
   |    Документ.РасходнаяНакладная.Состав КАК РасходнаяНакладнаяСостав
   |ГДЕ
   |    РасходнаяНакладнаяСостав.Номенклатура В (&Номенклатура)";
   
   Запрос.УстановитьПараметр("Номенклатура",ВыбранноеЗначение);
   
   ТаблицаЗначений2 = Новый ТаблицаЗначений();
   ТаблицаЗначений2 = Запрос.Выполнить().Выгрузить();
   ЭлементыФормы.ТабличноеПолеОсновное.Значение=ТаблицаЗначений2;
   ЭлементыФормы.ТабличноеПолеОсновное.СоздатьКолонки();
КонецПроцедуры

Процедура ПолеВвода1ОбработкаВыбора(Элемент, ВыбранноеЗначение, СтандартнаяОбработка)
   Для Каждого ЭлементМассива Из выбранноеЗначение Цикл
       Сообщить(ЭлементМассива);
   КонецЦикла;
   ПримерЗапроса(ВыбранноеЗначение)
КонецПроцедуры