Переключение на Главную Страницу Страницы: 1 ОтправитьПечать
Обычная тема Список значений в параметризированном запросе (число прочтений - 948 )
Попытка1С
1c++ donor
Отсутствует


Делал все, иногда быстро.

Сообщений: 103
Местоположение: Санкт-Петербург
Зарегистрирован: 28. Февраля 2008
Пол: Мужской
Список значений в параметризированном запросе
21. Июня 2010 :: 20:35
Печать  
Всем привет!

Подскажи как правильно использовать фильтр по списку значений в параметризированном запросе.
На форме выведет список с товарами, при нажатии кнопке сформировать делается инициализация запроса, список к этому моменту уже известен.

Функция Инициализация_ПолучитьСуммуЗаказа();

     ПолучитьСуммуПоЗаказу = СоздатьОбъект("ODBCRecordset");
     
     ТекстЗапроса = "
     |Set NOCOUNT ON
     |Declare @ВыбДок VarChar(9)
     |
     |Set @ВыбДок = ?
     |
     |SELECT
     | sum(Запрос.ЦенаДокумента * Запрос.КоличествоНезакрытого) СуммаНезакрытого
     |FROM
     |(
     | SELECT
     |  $ЗаказСтроки.Номенклатура
     |, ($ЗаказСтроки.Сумма) / ($Единицы.КоэфПересчетаКБазе * $ЗаказСтроки.Количество) ЦенаДокумента
     |, ЗаказыОстатки.КоличествоОстаток КоличествоНезакрытого
     |FROM
     |$РегистрОстатки.Заказы(,
     |,(Заказ = @ВыбДок) AND (Номенклатура IN (Select val From #СзНоменклатуры))
     |,(Номенклатура, Заказ)
     |,(Количество)
     |) AS ЗаказыОстатки
     |LEFT JOIN $ДокументСтроки.Заказ AS ЗаказСтроки (NOLOCK)
     |ON (ЗаказСтроки.IDDOC = ЗаказыОстатки.Заказ) AND ($ЗаказСтроки.Номенклатура = ЗаказыОстатки.Номенклатура)
     |LEFT JOIN $Справочник.Единицы AS Единицы (NOLOCK)
     |ON $ЗаказСтроки.Единица = Единицы.ID
     |) as Запрос
     |";
     ПолучитьСуммуПоЗаказу.Подготовить(ТекстЗапроса);
     ПолучитьСуммуПоЗаказу.ДобПараметр(1,14,9,0); //Документ
     
КонецФункции


Есть функция для получения необходимой суммы


Функция ПолучитьСуммуЗаказа(ВыбДок);
     
     ПолучитьСуммуПоЗаказу.УстПараметр(1,ВыбДок); //Документ
     Рез = ПолучитьСуммуПоЗаказу.ВыполнитьСкалярный();
     Возврат Рез;      
     
КонецФункции


В обычном запросе используется УложитьСписокОбъектов а как тут наложить фильтр?

Заранее спасибо
  
Наверх
 
IP записан
 
Попытка1С
1c++ donor
Отсутствует


Делал все, иногда быстро.

Сообщений: 103
Местоположение: Санкт-Петербург
Зарегистрирован: 28. Февраля 2008
Пол: Мужской
Re: Список значений в параметризированном запросе
Ответ #1 - 21. Июня 2010 :: 20:51
Печать  
Забавно... работает без уложитьсписокобъектов вообще, или я торможу...

  
Наверх
 
IP записан
 
Попытка1С
1c++ donor
Отсутствует


Делал все, иногда быстро.

Сообщений: 103
Местоположение: Санкт-Петербург
Зарегистрирован: 28. Февраля 2008
Пол: Мужской
Re: Список значений в параметризированном запросе
Ответ #2 - 21. Июня 2010 :: 21:10
Печать  
Вопрос снят, разобрался вроде  Класс

  
Наверх
 
IP записан
 
Переключение на Главную Страницу Страницы: 1
ОтправитьПечать