Страница 1 из 1
Отчет с иерархией
Добавлено: 15 дек 2008, 05:24
Сергей
Здравствуйте.
Не получается создать мастер-детейл отчет по одной таблице, ссылающуюся на саму себя. Точней: не получается выбрать иерархическую связь на детейловом бэнде данных (при выборе связь сбрасывается).
Отчет с иерархией
Добавлено: 15 дек 2008, 10:20
Edward
Здравствуйте.
Для иерархических отчетов Вам необходимо использовать Hierarchical band. Пожалуйста, смотрите группу "Hierarchical Reports" ва программе Demo из стандартной поставки.
Спасибо.
Отчет с иерархией
Добавлено: 16 дек 2008, 10:19
Сергей
Спасибо!
Еще вопрос по дизайнеру. Как создать мастер-детейл отчет, выдающий количество детейлов для конкретного мастера без вывода самих детейлов? Например, количество домов на каждой улице.
Отчет с иерархией
Добавлено: 16 дек 2008, 10:27
Vital
Здравствуйте,
unic писал(а):Спасибо!
Еще вопрос по дизайнеру. Как создать мастер-детейл отчет, выдающий количество детейлов для конкретного мастера без вывода самих детейлов? Например, количество домов на каждой улице.
Сделайте у Detail бэнда нулевую высоту.
Спасибо.
Отчет с иерархией
Добавлено: 17 дек 2008, 03:21
Сергей
Здравствуйте.
Vital писал(а):
Сделайте у Detail бэнда нулевую высоту.
В этом случае итог отображается на строку ниже. Есть ли способ вывести его в строке детейла?
+--------------+-------------+
| Улица_____| Домов____|
+--------------+-------------+
| Сибирская_| 120______|
+--------------+-------------+
| Кирова____| 250______|
+--------------+-------------+
Отчет с иерархией
Добавлено: 17 дек 2008, 04:36
Edward
Здравствуйте.
Да, это возможно.
DetailDataBand остается с нулевой высотой, а на MasterDataBand расположите текстовый компонент с функцией:
Спасибо.
Отчет с иерархией
Добавлено: 17 дек 2008, 06:34
Сергей
Спасибо!
Как теперь добавить сортировку по количеству? Если в качестве выражения сортировки использовать
, то отчет не компилируется.
Отчет с иерархией
Добавлено: 17 дек 2008, 07:30
Сергей
И как заставить отображать мастеровые строки вне зависимости от того, есть ли детейлы или нет?
В данном примере, отображаются лишь те улицы, на которых есть дома (не суть, что улиц без домов не бывает).
Также выражение
иногда возвращает нули вместо верных значений. То есть детейлы видно, даже можно посчитать при желании, а Count(DetailDataBand) вернул 0.
Отчет с иерархией
Добавлено: 17 дек 2008, 14:51
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.
Дайте знать, если необходима дополнительная помощь.
Спасибо.