Переключение на Главную Страницу Страницы: 1 ОтправитьПечать
Обычная тема Приджойнить последний док движения по товару (число прочтений - 1015 )
Neo
Senior Member
****
Отсутствует


I Love YaBB 2!

Сообщений: 327
Зарегистрирован: 12. Ноября 2007
Приджойнить последний док движения по товару
04. Июня 2009 :: 08:29
Печать  
Как бы мне к основному запросу приджойнить последний документ движения по товарам? Вот в таком варианте выдает пустые доки, видимо потому, что во втором вложенном запросе вначале получается последний документ движения по всем товара, а потом он джойнится по конкретному товару, поэтому в итоге выходит пустой документ...

-----------------------------------------------------------------------

|SELECT
|ВложЗапрос.Товар as [Товар $Справочник.Товары],
|ВложЗапросДоки.Документ [Документ $Документ],
|ВложЗапросДоки.Документ_вид [Документ_вид]
|FROM
|(      
|) as ВложЗапрос
|
|LEFT JOIN
|(SELECT TOP 1
|РегОТ.iddoc as [Документ],
|РегОТ.iddocdef as [Документ_вид],
|$РегОТ.Товар as Тов
|FROM
|$Регистр.ОстаткиТоваров as РегОТ
|INNER JOIN _1SJourn as Жур (nolock) ON Жур.IDDoc=РегОТ.IDDoc
|WHERE Жур.Date_Time_IDDoc <= :КонДата~
|ORDER BY
|Жур.Date_Time_IDDoc DESC
|) as ВложЗапросДоки ON ВложЗапрос.Товар=ВложЗапросДоки.Тов
|

-------------------------------------------------------------------------------
  
Наверх
 
IP записан
 
alexdd
Senior Member
****
Отсутствует


I Love YaBB 2!

Сообщений: 347
Зарегистрирован: 25. Июня 2007
Re: Приджойнить последний док движения по товару
Ответ #1 - 04. Июня 2009 :: 09:05
Печать  
можно так
Код
Выбрать все
|select
| Товар  [Товар $Справочник.Товары],
| j.iddoc  [Документ  $Документ],
| j.iddocdef  [Документ_вид]
|from
| (
|  SELECT
|    ВложЗапрос.Товар as [Товар],
|    (SELECT TOP 1
|    РегОТ.iddoc
|    FROM
|      $Регистр.ОстаткиТоваров (nolock) as РегОТ
|    INNER JOIN _1SJourn as Жур (nolock) ON Жур.IDDoc=РегОТ.IDDoc
|    WHERE Жур.Date_Time_IDDoc <= :КонДата~ and $РегОТ.Товар = ВложЗапрос.Товар
|    ORDER BY
|      Жур.Date_Time_IDDoc DESC
|    )       ПоследнийДок
| FROM
|  (      
|  ) as ВложЗапрос
| ) vt
|left join
| _1sjourn j (nolock)  on j.iddoc = vt.ПоследнийДок 

  
Наверх
 
IP записан
 
Neo
Senior Member
****
Отсутствует


I Love YaBB 2!

Сообщений: 327
Зарегистрирован: 12. Ноября 2007
Re: Приджойнить последний док движения по товару
Ответ #2 - 04. Июня 2009 :: 10:55
Печать  
спасибо большое, все заработало  Улыбка
  
Наверх
 
IP записан
 
Переключение на Главную Страницу Страницы: 1
ОтправитьПечать