Доброго времени суток.

Дамы и Господа, требуется Ваша помощь в создании отчета.
Вкратце что необходимо:
Смотрите, у меня 2 РН (Товары переданные и товары полученные).
В результате алгоритм должен быть следующим:
1) Получаем начальный остаток обоих РН на дату начала отчета
2) Получаем все записи обоих РН (у них реквизиты Организация и контрагент одинаковые, а договоры разные)
3) Сортируем список (2) по периоду
4) Последовательно проходим по всем отсортированным записям и, если запись из РН товары полученные, остаток увеличиваем на сумму записи, если товары переданные, уменьшаем.

В результате получается типовой отчет (нач остаток, приход, расход, кон остаток).

Все было бы просто если бы не несколько условий:
1) Иерархия отчета может строиться произвольно. То есть пользователь может убрать, например, договор, контрагента, а возможно и номенклатуру;
2) Ресурсы “Приход” и “Расход” по вышестоящим группировкам суммируются (здесь проблем нет, штатный механизм), а вот ресурсы “Начальный остаток” и “Конечный остаток” должны вести себя по-иному:
“Начальный остаток” – сумма группировки по первому значению (первая строка в группировке)
“Конечный остаток” – сумма группировки по последнему значению (последняя строка в группировке)

В общем вот такой нестандартный отчет :(

Чтобы было более понятно, приложил скрин:
Скрин

По вышестоящим группировкам начальный остаток должен быть 1457 (1367 первой строки номенклатуры Матал + 90 первой строки номенклатуры (евро))
конечный остаток – 1268 (1188 последней строки номенклатуры Матал + 80 последней строки номенклатуры (евро))

В общем что только я не пробовал, никак не получается каменный цветок.

Пробовал вычислять строки, добавлять их в ТЗ, а потом передавать в СКД, пробовал объединять 2 запроса и выводить строки с помощью

IsNull(ВЫЧИСЛИТЬВЫРАЖЕНИЕ("КонечныйОстаток", , , "Предыдущая", "Предыдущая"),НачальныйОстаток)

Ни один из вариантов не подошел :(

Может кто-нибудь сталкивался с подобным заданием и уже победил?
Был бы очень благодарен за советы :)

google.com bobrdobr.ru del.icio.us technorati.com linkstore.ru news2.ru rumarkz.ru memori.ru moemesto.ru