Страница 1 из 1

Подсчет итога кросс-данных.

Добавлено: 25 фев 2014, 13:39
ki11en
Здравствуйте.

У меня есть отчет, в котором я использую CrossDataBand внутри DataBand. Все данные отображаются верно, но при добавлении строки с итогом (под каждой колонкой мне необходимо вывести сумму значений в ней) столкнулся с проблемой: сумма считается по всем колонкам сразу и для всех колонок она одинаковая. В документации решение не нашел. Как правильно вычислять сумму таких данных? (Прикрепил отчет с данными в xml виде).

Re: Подсчет итога кросс-данных.

Добавлено: 25 фев 2014, 16:33
HighAley
Здравствуйте.

К сожалению, так подсчитать сумму невозможно. Как вариант, можно собирать сумму в Хэш-таблицу, для каждой группы и потом выводить её в Подвале группы.

Спасибо.

Re: Подсчет итога кросс-данных.

Добавлено: 25 фев 2014, 17:50
ki11en
Большое спасибо, получилось!

Есть еще небольшой вопрос: как объединить в кросс-данных одинаковые ячейки в одну общую? Например, если в прикрепленном мною отчете поля detail.type_plat были бы одинаковыми для всех столбцов, то получилась бы одна ячейка на все 7 колонок, а не 7 колонок с одинаковым значением. Пробовал через свойство "обработка дубликатов", не получилось. (Прикрепил отчет другими данными).

Re: Подсчет итога кросс-данных.

Добавлено: 26 фев 2014, 13:11
HighAley
Здравствуйте.

А как объединять тогда данные? Они везде одинаковые или их надо суммировать?
Вы можете попробовать использовать Data Source from other Data Source. Там можно сгруппировать данные, а еже на основе этого источника данных строить отчёт.

Спасибо.

Re: Подсчет итога кросс-данных.

Добавлено: 26 фев 2014, 17:06
ki11en
Мне надо не сгруппировать данные, а объединить ячейку.
Т.е. вместо этого
1.PNG
1.PNG (17.24 КБ) 2461 просмотр
получить это
2.PNG
2.PNG (15.46 КБ) 2461 просмотр
.

Re: Подсчет итога кросс-данных.

Добавлено: 27 фев 2014, 14:27
Aleksey
Здравствуйте,

Стандартными средствами не получится так сделать.
Как вариант, можно использовать дополнительный код в событиях:
- в первом проходе получаем ширину все ячеек и сохраняем ее в хэш таблицу
- во втором проходе задаем для ячейки итоговую ширину, и отображаем ее только один раз.