Сальдо в СКД с использованием регистратора

Приветствую всех!

Создаю отчет в СКД для сверки материалов по счетам и партиям (УПП 8.1 ред. 1.2). Есть запрос:

ВЫБРАТЬ
Результат.Материал КАК Материал,
СУММА(Результат.НачОстБУ) КАК НачОстБУ,
СУММА(Результат.НачОстПартииБУ) КАК НачОстПартииБУ,
СУММА(Результат.ПриходБУ) КАК ПриходБУ,
СУММА(Результат.ПриходПартииБУ) КАК ПриходПартииБУ,
СУММА(Результат.РасходБУ) КАК РасходБУ,
СУММА(Результат.РасходПартииБУ) КАК РасходПартииБУ,
СУММА(Результат.КонОстБУ) КАК КонОстБУ,
СУММА(Результат.КонОстПартииБУ) КАК КонОстПартииБУ,
Результат.Регистратор КАК ДокументДвижения,
Результат.ПериодСекунда
ИЗ
(ВЫБРАТЬ
ХозрасчетныйОстаткиИОбороты.Субконто1 КАК Материал,
ХозрасчетныйОстаткиИОбороты.КоличествоНачальныйОстаток КАК НачОстБУ,
ХозрасчетныйОстаткиИОбороты.КоличествоОборотДт КАК ПриходБУ,
ХозрасчетныйОстаткиИОбороты.КоличествоОборотКт КАК РасходБУ,
ХозрасчетныйОстаткиИОбороты.КоличествоКонечныйОстаток КАК КонОстБУ,
0 КАК НачОстПартииБУ,
0 КАК ПриходПартииБУ,
0 КАК РасходПартииБУ,
0 КАК КонОстПартииБУ,
ХозрасчетныйОстаткиИОбороты.Регистратор КАК Регистратор,
ХозрасчетныйОстаткиИОбороты.ПериодСекунда КАК ПериодСекунда
ИЗ
РегистрБухгалтерии.Хозрасчетный.ОстаткиИОбороты(, , Авто, , , , ) КАК ХозрасчетныйОстаткиИОбороты
ГДЕ
ХозрасчетныйОстаткиИОбороты.Счет = &СчетБУ
И ХозрасчетныйОстаткиИОбороты.Субконто1.НоменклатурнаяГруппа = &НоменклатурнаяГруппа

ОБЪЕДИНИТЬ ВСЕ

ВЫБРАТЬ
ПартииМатериаловВЭксплуатацииБухгалтерскийУчетОстаткиИОбороты.Номенклатура,
0,
0,
0,
0,
ПартииМатериаловВЭксплуатацииБухгалтерскийУчетОстаткиИОбороты.КоличествоНачальныйОстаток,
ПартииМатериаловВЭксплуатацииБухгалтерскийУчетОстаткиИОбороты.КоличествоПриход,
ПартииМатериаловВЭксплуатацииБухгалтерскийУчетОстаткиИОбороты.КоличествоРасход,
ПартииМатериаловВЭксплуатацииБухгалтерскийУчетОстаткиИОбороты.КоличествоКонечныйОстаток,
ПартииМатериаловВЭксплуатацииБухгалтерскийУчетОстаткиИОбороты.Регистратор,
ПартииМатериаловВЭксплуатацииБухгалтерскийУчетОстаткиИОбороты.ПериодСекунда
ИЗ
РегистрНакопления.ПартииМатериаловВЭксплуатацииБухгалтерскийУчет.ОстаткиИОбороты(, , Авто, , ) КАК ПартииМатериаловВЭксплуатацииБухгалтерскийУчетОстаткиИОбороты
ГДЕ
ПартииМатериаловВЭксплуатацииБухгалтерскийУчетОстаткиИОбороты.Номенклатура.НоменклатурнаяГруппа = &НоменклатурнаяГруппа) КАК Результат

СГРУППИРОВАТЬ ПО
Результат.Материал,
Результат.Регистратор,
Результат.ПериодСекунда

УПОРЯДОЧИТЬ ПО
Результат.Материал.Наименование

В настройке полей:

Результат

Детальные записи:

Итоги в конечном сальдо заполняются через раз. Если оставить один запрос (только по БУ), все OK.

Гуру подскажите, где недокрутил.

 

Подписаться
Уведомить о
guest
7 комментариев
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии
Песков Олег
Песков Олег
12 лет назад

Может тут все верно? Это же конечный остаток, а конечный остаток (самая последняя запись) точно такой же как и в итоге.

asg1975
asg1975
12 лет назад

дело в том что последний документ не всегда делает движения по БУ. По картинке я должен получить в первом случае 24, во втором 127. Т.е. логика та же (с последним документом), но результат не верен, вот и боремся

Песков Олег
Песков Олег
12 лет назад

А только детальные записи без всякой сортировки и отбора показать можешь?

asg1975
asg1975
12 лет назад

Поместил в шапку

Песков Олег
Песков Олег
12 лет назад

Незнаю как другим, но мне думается, что в такой схеме это правильно никогда и не будет работать. Может правда, если попробовать:
Убрать ДвиженияИГраницы, заменив на Движения
Добавить только упорядочевание по ПериодСекунда
Заменить в тех местах где нет движения не 0, а NULL
Как вариант, можно разбить на два запроса: один будет получать только остатки (нач и кон), другой движения. Их объединить. Соответственно, настройки ресурсов убрать и выводить в группировке.
Или разбить на два набора данных в одном СКД.

asg1975
asg1975
12 лет назад

Согласен, думаю надо перекроить запрос

LynxX
LynxX
12 лет назад

Нужно взять развернутые ресурсы. Тогда суммы будут в итогах.