Показать сообщение отдельно
Старый 26.04.2013, 07:34   #3  
Perc is offline
Perc
Участник
 
193 / 47 (2) +++
Регистрация: 05.03.2005
Цитата:
1.
у вас логическая ошибка.
нужно выбирать данные по партии, если партия ВКЛЮЧЕНА в группах аналитики.
партионный учет по номенклатуре могут выключить и после того, как ввели данные с партиями.
Я понимаю вашу теоретическую подкованность). И что нужно иногда обращать внимание настройки в группах аналитики. Но даже если партии и выключили после. Мы же можем когда то захотеть посмотреть данные с партиями за прошлые периоды?
Такая же история может быть и серийными номерами и еще с чем то... Данные таблицы я привел в качестве удобного примера ситуации для запроса.

Цитата:
2.
outer join должен быть последним. или вырубайте forcenested.
в общем, читайте по форуму - обсуждалась проблема с outer join.
Уверен был что тема должна была обсуждаться, но что то за час поиска ни на что подходящее не наткнулся. Поищу по ключевому слову forcenested. Спсб).
Ну и кстате насчет того что outer join должен быть последним - совершенно не верно по моему. Даже если и ткнем в конце outer, при переводе в SQL outer все равно однообразно переводиться в left outer join с условием вперед. Но я еще почитаю форум)
Цитата:
3.
вообще говоря, номер партии находится в inventDim.
делать выборку из invetnBatch нужно только тогда, когда вам нужны дополнительные параметры именно партии - срок годности или что вы туда добавили.
в связи с этим соображением, желание "сделать один запрос на три таблицы" выглядит странным. А нужно ли вам одним запросом то?
Разбейте на два:
* InventTrans+InventDim нужны всегда (в inventDim можно найти номер партии)
* InventBatch (и другие аналитики) нужны только когда понадобятся расширенные параметры из аналитик. тогда и выбирайте отдельным запросом.
Конечно тыкая запрос в форум я отчистил его от дополнительных хламов. Чтобы так сказать проблема программистская была не замутнена). Нужно именно одним запросом. Конечно эту проблему всегда в прошлом так и решали. Делали вложенные запросы, потом собирали группировали и еще как либо обрабатывали, но тем неменее один запрос упростил бы мне работу, да и подозреваю и серверу в смысле быстродействия.