с синтаксисом была трабла
о. почти получилось. только все равно по количеству строк различается (до группировки) после группировки соответственно суммы не сходятся .
Вот такой запрос пытаюсь произвести:
"//{{ЗАПРОС(ПоОстаткам)
|Период с ДатаНачалаОтчета по ДатаКонцаОтчета;
|Склад = Регистр.ОстаткиТМЦ.Склад, Регистр.РезервыТМЦ.Склад;
|Артикул = Регистр.ОстаткиТМЦ.Номенклатура.Артикул.Контрагент, Регистр.РезервыТМЦ.Номенклатура.Артикул.Контрагент;
|Классификатор = Регистр.ОстаткиТМЦ.Номенклатура.КлассификаторТоваров, Регистр.РезервыТМЦ.Номенклатура.КлассификаторТоваров;
|Номенклатура = Регистр.ОстаткиТМЦ.Номенклатура, Регистр.РезервыТМЦ.Номенклатура;
|НоменклатураКод= Регистр.ОстаткиТМЦ.Номенклатура.Код, Регистр.РезервыТМЦ.Номенклатура.Код;
|КолОст = Регистр.ОстаткиТМЦ.Количество;
|КолРез = Регистр.РезервыТМЦ.Количество;
|Функция КолПрих = Приход(КолОст);
|Функция КолКонОст = КонОст(КолОст);
|Функция КолКонОстРез = КонОст(КолРез);
|Группировка Склад без групп;
|Группировка Артикул упорядочить по Артикул.Наименование без групп;
|Группировка Классификатор упорядочить по Классификатор.Наименование без групп;
|Группировка Номенклатура упорядочить по Номенклатура.Наименование без групп;
|Группировка День Все;
|Условие(Число(НоменклатураКод)<>0000);
|Условие(Склад в ВыбСклад);
Пока получилось вот так:
"
|ВЫБРАТЬ
| Подзапрос.НачалоПериода КАК [День $Дата]
|, Подзапрос.Номенклатура [Номенклатура $Справочник.Номенклатура]
|, Подзапрос.Склад [Склад $Справочник.Склады]
|, Подзапрос.Приход КАК Приход
|, Подзапрос.Остаток КАК Остаток
|, Подзапрос.Резерв КАК Резерв
|, Номенклатура.КлассификаторТоваров [КлассификаторТоваров $Справочник.КлассификаторТоваров]
|, Номенклатура.CODE КАК Код
|, Артикулы.Контрагент [Артикул $Справочник.Контрагенты]
|ИЗ
| (ВЫБРАТЬ ОстаткиТМЦОстаткиОбороты.НачалоПериода
| , ОстаткиТМЦОстаткиОбороты.Номенклатура
| , ОстаткиТМЦОстаткиОбороты.Склад
| , ОстаткиТМЦОстаткиОбороты.КоличествоПриход КАК Приход
| , ОстаткиТМЦОстаткиОбороты.КоличествоКонечныйОстаток КАК Остаток
| , 0 КАК Резерв
| ИЗ
| $РегистрОстаткиОбороты.ОстаткиТМЦ(:НачПериода,:КонПериода,День ДОПОЛНЕНИЕ,,((Номенклатура <> :Серт) и (Склад = :БазовыйСклад)),,,) КАК ОстаткиТМЦОстаткиОбороты
|
|ОБЪЕДИНИТЬ
|
| ВЫБРАТЬ РезервыТМЦОстаткиОбороты.НачалоПериода
| , РезервыТМЦОстаткиОбороты.Номенклатура
| , РезервыТМЦОстаткиОбороты.Склад
| , 0
| , 0
| , РезервыТМЦОстаткиОбороты.КоличествоКонечныйОстаток
| ИЗ
| $РегистрОстаткиОбороты.РезервыТМЦ(:НачПериода,:КонПериода,День ДОПОЛНЕНИЕ,,((Номенклатура <> :Серт) и (Склад = :БазовыйСклад)),,,) КАК РезервыТМЦОстаткиОбороты) КАК Подзапрос
|ЛЕВОЕ СОЕДИНЕНИЕ
| Справочник.Номенклатура AS Номенклатура ON Подзапрос.Номенклатура = Номенклатура.ID
|ЛЕВОЕ СОЕДИНЕНИЕ
| Справочник.Артикулы AS Артикулы ON Номенклатура.Артикул = Артикулы.ID
|УПОРЯДОЧИТЬ
| Артикулы.Контрагент УБЫВ
|, Подзапрос.Номенклатура УБЫВ
|";
Группирую результат уже в индексированной таблице, чтобы можно было обходить по группировкам.
P.s. так что же получается, виртуальные таблицы нужно объединять а не соединять?
P.p.s. както странно работает "УПОРЯДОЧИТЬ" О_о