Eprst писал(а) 18. Июня 2010 :: 12:05:1. нет функции Sum + Group by
Группировать не нужно, т.к. в списке МПЗ нет повторяющихся элементов.
Eprst писал(а) 18. Июня 2010 :: 12:05:2. нет условие на period
Что имеется в виду. Есть строка :
| WHERE
| (period = :ДатаПериодаОстатков~~)
Eprst писал(а) 18. Июня 2010 :: 12:05:3. нет соединения с табличкой движений регистра, если останки нужны не на ТА
Пока это не нужно. Получить хотябы рассчитанные остатки.
Eprst писал(а) 18. Июня 2010 :: 12:05:4. inner join - нужно пересечение, т.е только те итоги, для которых ты устанавливаешь отбор по МПЗ, а не все + присоеденить еще что-то..
Повторюсь - С INNER JOIN результат запроса вообще пустой
Eprst писал(а) 18. Июня 2010 :: 12:05:Если выборка пустая, для начала каждый запрос по-отдельности проверять, лучше в 1sqa каком-нить.
По отдельности запросы работают.
Ребята я все понимаю. Есть рабочие примеры и т.п., но есть конкретный текст (Даже с поменяными местами таблицами):
ТекстЗапроса = "
|SELECT
| Спр.ID AS Мат,
| Спр.Descr as Наим,
| Ррег.КолвоОст AS Колво
|FROM
| $Справочник.Материалы as Спр
|
|LEFT JOIN
//| INNER JOIN
| (SELECT
| $Рег.Мпз AS РегМПЗ,
| $Рег.МестоХранения AS Склад,
| $Рег.Количество AS КолвоОст
| FROM
| $РегистрИтоги.МестаХранения as Рег
| WHERE
| (period = :ДатаПериодаОстатков~~)) AS Ррег
| ON Спр.ID = Ррег.РегМПЗ
|WHERE
| Спр.Code IN " + УсловиеМат + "";
В данном примере в результате остатки по всем поз-ям - 0.