Показать сообщение отдельно
Старый 26.04.2013, 08:12   #10  
Perc is offline
Perc
Участник
 
193 / 47 (2) +++
Регистрация: 05.03.2005
Цитата:
Сообщение от S.Kuskov Посмотреть сообщение
Не понял вас.

Вам какой запрос нужен? В вашем примере вы джойните InventDim по условию "inventDim.InventBatchId == invendBatch.inventBatchId", т.е. только к тем проводкам у которых есть номер партии. Это не ошибка, это специально так?

Вот так вас не устроит?
X++:
select inventTrans
join InventDim
where inventDim.InventDimId == inventTrans.InventDimId 
   && inventDim.InventLocationId == "склад1"
outer join InventBatch
where InventBatch.InventBatchId == inventDim.InventBatchId 
   && InventBatch.itemId == inventTrans.itemId;
Прекрасно бы устроило если бы работало. На самом деле первоначально так и начинали писать следуя логике. Но так не работает совсем. При выполнении ошибка вылетала и вылетает.

Не удалось привязать составной идентификатор "A.ITEMID".
Вот конец самого SQL:
FROM {oj INVENTDIM B LEFT OUTER JOIN INVENTBATCH C ON ((C.DATAAREAID=?) AND ((B.INVENTBATCHID=C.INVENTBATCHID) AND (A.ITEMID=C.ITEMID)))},INVENTTRANS A WHERE ((A.DATAAREAID=?) AND (A.ITEMID=?)) AND ((B.DATAAREAID=?) AND ((B.INVENTDIMID=A.INVENTDIMID) AND (B.INVENTLOCATIONID=?)))