Переключение на Главную Страницу Страницы: 1 ОтправитьПечать
Обычная тема Помогите пожалуйста составить запрос (число прочтений - 1382 )
kortun
YaBB Newbies
*
Отсутствует


I Love YaBB 2!

Сообщений: 5
Зарегистрирован: 17. Августа 2008
Помогите пожалуйста составить запрос
17. Августа 2008 :: 07:44
Печать  
Нужен запрос по остаткам с фильтром

Есть
Регистр: Партии
Измерение: Фирма, ПриходныйДокумент
Ресурс: Количество, Стоимость

Нужно получить колонки: Товар, Количество, Сумма, ПриходныйДокумент

Нужно установать фильтр: по фирме, по товару, по контрагенту в приходном документе

Пока сделал так

     //ТекстЗапроса = "
     //|SELECT
     //|    Рег.Товар as [Товар $Справочник.Номенклатура]
     //|  , Рег.КоличествоОстаток as Количество
     //|  , Рег.СуммаОстаток as Сумма
     //|  , Рег.ПриходныйДокумент as [ПриходныйДокумент $Документ.ПриходнаяНакладная]
     //|FROM
     //|$РегистрОстатки.Партии(" +?(Конт.ИтогиАктуальны()=1,"",":ВыбДата~")+",,
     //|                               ((Товар IN (SELECT Val FROM #Группа)) AND (Фирма = :ВыбФирма))),
     //|                               (Товар, ПриходныйДокумент), (Количество, Сумма)) as Рег
     //|";

и на этом застрял, дальше не могу понять как сделать фильтр по контрагенту
  
Наверх
 
IP записан
 
leshik
1c++ donor
Отсутствует



Сообщений: 820
Местоположение: Пятигорск
Зарегистрирован: 22. Апреля 2007
Пол: Мужской
Re: Помогите пожалуйста составить запрос
Ответ #1 - 17. Августа 2008 :: 11:37
Печать  
Тип измерения ПриходныйДокумент какой?
Документ или Документ.ОпределенныйВид
  
Наверх
IP записан
 
leshik
1c++ donor
Отсутствует



Сообщений: 820
Местоположение: Пятигорск
Зарегистрирован: 22. Апреля 2007
Пол: Мужской
Re: Помогите пожалуйста составить запрос
Ответ #2 - 17. Августа 2008 :: 11:45
Печать  
Ну раз ты уже на другом форуме ответил про тип - тогда отвечу тут запросом:
Код
Выбрать все
     ТекстЗапроса = "
     |SELECT
     |    Рег.Товар as [Товар $Справочник.Номенклатура]
     |  , Рег.КоличествоОстаток as Количество
     |  , Рег.СуммаОстаток as Сумма
     |  , Рег.ПриходныйДокумент as [ПриходныйДокумент $Документ.ПриходнаяНакладная]
     |FROM
     |$РегистрОстатки.Партии(" +?(Конт.ИтогиАктуальны()=1,"",":ВыбДата~")+",,
     |					 ((Товар IN (SELECT Val FROM #Группа)) AND (Фирма = :ВыбФирма)
     |AND (ПриходныйДокумент In (Select ДокПрих.IDDOC From $Документ.ПриходнаяНакладная as ДокПрих (NOLOCK) Where $ДокПрих.Контрагент = :ВыбКонтрагент))
     |)),
     |					 (Товар, ПриходныйДокумент), (Количество, Сумма)) as Рег
     |";  



Выборку по приходным документам можно оптимизировать если по Контрагенту существует графа отбора - тогда идентификаторы документов можно брать из таблицы _1SCRCDOC
  
Наверх
IP записан
 
kortun
YaBB Newbies
*
Отсутствует


I Love YaBB 2!

Сообщений: 5
Зарегистрирован: 17. Августа 2008
Re: Помогите пожалуйста составить запрос
Ответ #3 - 18. Августа 2008 :: 03:33
Печать  
Спасибо большое, помогло
  
Наверх
 
IP записан
 
Переключение на Главную Страницу Страницы: 1
ОтправитьПечать