Отчет с иерархией

Обсуждение Stimulsoft Reports.NET
Ответить
Сергей
Сообщения: 70
Зарегистрирован: 13 окт 2008, 03:56
Откуда: Пермь
Контактная информация:

Отчет с иерархией

Сообщение Сергей »

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

Не получается создать мастер-детейл отчет по одной таблице, ссылающуюся на саму себя. Точней: не получается выбрать иерархическую связь на детейловом бэнде данных (при выборе связь сбрасывается).
Edward
Сообщения: 930
Зарегистрирован: 09 июн 2006, 12:23

Отчет с иерархией

Сообщение Edward »

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

Для иерархических отчетов Вам необходимо использовать Hierarchical band. Пожалуйста, смотрите группу "Hierarchical Reports" ва программе Demo из стандартной поставки.

Спасибо.
Сергей
Сообщения: 70
Зарегистрирован: 13 окт 2008, 03:56
Откуда: Пермь
Контактная информация:

Отчет с иерархией

Сообщение Сергей »

Спасибо!

Еще вопрос по дизайнеру. Как создать мастер-детейл отчет, выдающий количество детейлов для конкретного мастера без вывода самих детейлов? Например, количество домов на каждой улице.
Vital
Сообщения: 647
Зарегистрирован: 09 июн 2006, 12:23

Отчет с иерархией

Сообщение Vital »

Здравствуйте,
unic писал(а):Спасибо!

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

Спасибо.
Сергей
Сообщения: 70
Зарегистрирован: 13 окт 2008, 03:56
Откуда: Пермь
Контактная информация:

Отчет с иерархией

Сообщение Сергей »

Здравствуйте.
Vital писал(а): Сделайте у Detail бэнда нулевую высоту.
В этом случае итог отображается на строку ниже. Есть ли способ вывести его в строке детейла?

+--------------+-------------+
| Улица_____| Домов____|
+--------------+-------------+
| Сибирская_| 120______|
+--------------+-------------+
| Кирова____| 250______|
+--------------+-------------+
Edward
Сообщения: 930
Зарегистрирован: 09 июн 2006, 12:23

Отчет с иерархией

Сообщение Edward »

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

Да, это возможно.

DetailDataBand остается с нулевой высотой, а на MasterDataBand расположите текстовый компонент с функцией:

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

{Count(DetailDataBand)}
Спасибо.
Сергей
Сообщения: 70
Зарегистрирован: 13 окт 2008, 03:56
Откуда: Пермь
Контактная информация:

Отчет с иерархией

Сообщение Сергей »

Спасибо!

Как теперь добавить сортировку по количеству? Если в качестве выражения сортировки использовать

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

{Count(DetailDataBand)}
, то отчет не компилируется.
Сергей
Сообщения: 70
Зарегистрирован: 13 окт 2008, 03:56
Откуда: Пермь
Контактная информация:

Отчет с иерархией

Сообщение Сергей »

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

Также выражение

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

{Count(DetailDataBand)}
иногда возвращает нули вместо верных значений. То есть детейлы видно, даже можно посчитать при желании, а Count(DetailDataBand) вернул 0.
Edward
Сообщения: 930
Зарегистрирован: 09 июн 2006, 12:23

Отчет с иерархией

Сообщение Edward »

unic писал(а): Как теперь добавить сортировку по количеству? Если в качестве выражения сортировки использовать
{Count(DetailDataBand)}
, то отчет не компилируется.
В этом случае лучше использовать источник данных 'Data from Other DataSource'. Этот источник позволит Вам посчитать суммарные количества по всем деталям без необходимости использовать дополнительный DetailDataBand с нулевой высотой.
unic писал(а): И как заставить отображать мастеровые строки вне зависимости от того, есть ли детейлы или нет?
В данном примере, отображаются лишь те улицы, на которых есть дома (не суть, что улиц без домов не бывает).
Для этого Вам необходимо установить у мастера PrintIfDetailEmpty свойство в true.
unic писал(а):Также выражение
{Count(DetailDataBand)}
иногда возвращает нули вместо верных значений. То есть детейлы видно, даже можно посчитать при желании, а Count(DetailDataBand) вернул 0.
Использование 'Data from Other DataSource' решит и эту проблему.

Если Вам необходимо отсортировать databand по выражению, то в последних пререлиз билдах эта возможность уже реализована. В предыдущих версиях возможен был трюк с заданием условия сортировки в группировке и установкой высоты GroupHeader в 0.

Дайте знать, если необходима дополнительная помощь.

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