Показать сообщение отдельно
Старый 26.04.2013, 07:05   #2  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
Цитата:
Сообщение от Perc Посмотреть сообщение
Нужно выбрать все операции по складу, но при этом еще и вытянуть данные по партии если партия была указанна для какой то номенклатуры.
1.
у вас логическая ошибка.
нужно выбирать данные по партии, если партия ВКЛЮЧЕНА в группах аналитики.
партионный учет по номенклатуре могут выключить и после того, как ввели данные с партиями.

2.
outer join должен быть последним. или вырубайте forcenested.
в общем, читайте по форуму - обсуждалась проблема с outer join.

3.
вообще говоря, номер партии находится в inventDim.
делать выборку из invetnBatch нужно только тогда, когда вам нужны дополнительные параметры именно партии - срок годности или что вы туда добавили.
в связи с этим соображением, желание "сделать один запрос на три таблицы" выглядит странным. А нужно ли вам одним запросом то?

Разбейте на два:
* InventTrans+InventDim нужны всегда (номер партии можно найти в inventDim)
* InventBatch (и другие аналитики) нужны только когда понадобятся расширенные параметры из аналитик. тогда и выбирайте отдельным запросом.