Здравствуйте!
Можно ли как то в отчете на СКД получить Общий итог не построчно, а как сумма итогов группировок.
Т.е. есть запрос который обрабатывает СКД.
В таблице выводятся такие данные:
Покупатель | Заказ | Сумма | Долг
Иванов | 1 | 100 |500
Иванов | 2 | 200 |500
Иванов | 3 | 300 |500
В результате СКД группировка Покупатель.
Если добавить ресурс Сумма(Долг), то в отчет выйдет что долг 1500, делаю ресурс Максимум(Долг), и в группировку Долг попадает правильно.
Но общий итог все не считается.
Добавляю 2 ресурса Максимум(Долг) по группировке Покупатель, и Сумма(Долг) по Общий итог, в этом случае в группировках все правильно, но Общий итог 1500.
Подскажите пожалуйста как прописать ресурсы, что Общий итог считался как сумма группировок, а не сумма строк.
Спасибо!
Может кому поможет.
Нужно в выражении ресурса использовать формулу: Сумма(ВычислитьВыражениеСГруппировкойМассив("МАКСИМУМ(Долг)","Покупатель")).
В этом случае он формирует массив из МАКСИМУМ(Долг) по группировке Покупатель, а потом суммирует значения в массиве.
(0) в запросе сделай доп.поле, в котором, обеспечь только 500 в одной записи (любой из многих), в остальных 0.
Потом добавляем пользовательское поле: для записей выводим Поле, а для группировки Сумма(доп.поле)
(1) в таком раскладе ты привязан к группировке "Покупатель",
но у пользователя есть возможность перестроить структуру отчета на СКД (+/- незадача, которую надо учитывать)
(2) То что я привязан к группировке это да, но в данном случае я делаю для конкретной задачи, и доступ к настройкам у пользователей заблокирован, так что для меня это не проблема.
А вообще если пользователь может менять структуру отчета будет косяк.
(2) По поводу писать долг только в 1 строку из группировки я думал в первую очередь, но что то быстро не придумал как это сделать.
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство. Фредерик Брукс-младший