Проценты в кросс-табе

Обсуждение Stimulsoft Reports.NET
Ответить
Igor M. Sharafutdinov
Сообщения: 41
Зарегистрирован: 12 янв 2009, 06:22
Откуда: Perm
Контактная информация:

Проценты в кросс-табе

Сообщение Igor M. Sharafutdinov »

Есть вот такой отчёт с кросстабом.
Изображение
Но есть две проблемы:
1) надо добавить третью колонку - % всех звонков, приходящийся на конкретного абонета, не знаю как.
2) в БД время хранится в секундах, пробовал делать вычисляемую колонку типа timespan, которой присваивал значение "TimeSerial(0,0,Calls.ConnectionTime)" (где ConnectionTime - время в секундах, тип int) , но в кросстабе из неё почему-то ничего не выводится.
Что можете посоветовать?
Спасибо.
Igor M. Sharafutdinov
Сообщения: 41
Зарегистрирован: 12 янв 2009, 06:22
Откуда: Perm
Контактная информация:

Проценты в кросс-табе

Сообщение Igor M. Sharafutdinov »

UP:dumb:
Edward
Сообщения: 930
Зарегистрирован: 09 июн 2006, 12:23

Проценты в кросс-табе

Сообщение Edward »

Здравствуйте.

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

Спасибо.
Igor M. Sharafutdinov
Сообщения: 41
Зарегистрирован: 12 янв 2009, 06:22
Откуда: Perm
Контактная информация:

Проценты в кросс-табе

Сообщение Igor M. Sharafutdinov »

Хорошо, но можно хотя бы, используя группировку, посчитать процент для каждой группы? К примеру, отношение числа звонков на каждый из номеров к сумме звонков на все номера * 100%? Без кросс-табов, я имею ввиду.
ppvlad
Сообщения: 24
Зарегистрирован: 26 янв 2009, 10:35
Откуда: Moscow
Контактная информация:

Проценты в кросс-табе

Сообщение ppvlad »

извините, что встреваю, вопрос был именно про "кросс", но может быть конкретно для этого отчёта кросс не так уж и нужен?
это я к тому, что может тупо выбрать, например, хранимой процедурой, данные сразу в нужном виде и свести всё к тривиальному случаю?
Edward
Сообщения: 930
Зарегистрирован: 09 июн 2006, 12:23

Проценты в кросс-табе

Сообщение Edward »

Здравствуйте.

Да, такое возможно. Вам понадобится для этого 'источник данных на основе других данных'. Этот источник поможет сгруппировать данные и посчитать агрегатную функцию. Далее устанавливаете у объекта отчета свойство CacheAllData в true и создаете связь master-detail с основным источником данных.

Также есть вариант добавить вычисляемую колонку сразу с расчетом Вашей функции, но это будет работать гораздо медленнее.
Условие в этой колонке будет выглядеть следующим образом:

Код: Выделить всё

MyDataSource.MyDataColumn1/Totals.Sum(MyDataSource,(MyDataSource.MyDataColumn2==условиеГруппировки)?MyDataColumn1:0)
Спасибо.
Igor M. Sharafutdinov
Сообщения: 41
Зарегистрирован: 12 янв 2009, 06:22
Откуда: Perm
Контактная информация:

Проценты в кросс-табе

Сообщение Igor M. Sharafutdinov »

Спасибо!
А примера нет? :blush:
Edward
Сообщения: 930
Зарегистрирован: 09 июн 2006, 12:23

Проценты в кросс-табе

Сообщение Edward »

Здравствуйте,

Нет, к сожалению примера нет.

Спасибо.
Ответить