Master-detail-subdetail вопрос.

Обсуждение Stimulsoft Reports.NET
res562
Сообщения: 28
Зарегистрирован: 26 июл 2010, 13:59

Master-detail-subdetail вопрос.

Сообщение res562 »

Ясно. Но способ приведенный вами выше не совсем подходит для меня.

Опишу что конкретно нужно:
Имеется иерархия таблиц от родителя в потомку:

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

Report0
   |
   ->Report0_batch1
           |
           ->Report0_batch1_batch2
                 |
                 ->Report0_batch1_batch2_batch3
                 ->Report0_batch1_batch2_batch4
                 ->Report0_batch1_batch2_batch5
Необходимо вывести Report0 и для каждой его строчки
вывести Report0_batch1_batch2_batch3, сгруппированные по определенному полю,
Report0_batch1_batch2_batch4, сгруппированные по определенному параметру,
Report0_batch1_batch2_batch5, сгруппированные по определенному параметру.


Сейчас делаю так:
Создаю бэнд Report0 и бэнды с группировкой Report0_batch1_batch2_batch3,Report0_batch1_batch2_batch4,Report0_batch1_batch2_batch5
Для бэндов Report0_batch1_batch2_batch3,Report0_batch1_batch2_batch4,Report0_batch1_batch2_batch5 ставлю мастер бэнд Report0.
Делаю фильтр для бэндов Report0_batch1_batch2_batch3(4,5)
Report0_batch1_batch2_batch3(4,5).Report0_batch1_batch2.Report0_batch1.Report0.batchid==Report0.batchid
Вот здесь где-то у меня ошибка, т.к. ничего не выводится. Как правильно отфильтровать?

Или может по другому как-то сделать?
Идельно было бы связать Report0 и Report0_batch1_batch2_batch3(4,5), но связывать можно только родителя и потомка.
Aleksey
Сообщения: 2907
Зарегистрирован: 22 апр 2010, 06:57

Master-detail-subdetail вопрос.

Сообщение Aleksey »

Здравствуйте,
res562 писал(а): Опишу что конкретно нужно:

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

Report0
   |
   ->Report0_batch1
           |
           ->Report0_batch1_batch2
                 |
                 ->Report0_batch1_batch2_batch3
                 ->Report0_batch1_batch2_batch4
                 ->Report0_batch1_batch2_batch5
Необходимо вывести Report0 и для каждой его строчки
вывести Report0_batch1_batch2_batch3, сгруппированные по определенному полю,
Report0_batch1_batch2_batch4, сгруппированные по определенному параметру,
Report0_batch1_batch2_batch5, сгруппированные по определенному параметру.

Идеально было бы связать Report0 и Report0_batch1_batch2_batch3(4,5), но связывать можно только родителя и потомка.
Вам необходимо связать родителя и потомков связями, и положить их на страницу отчета, но оставить пустыми (Report0_batch1, Report0_batch1_batch2)
Посмотрите приложенный пример. Для таких задач, необходимо конкретно знать базу, есть ли возможность добавить связь и т.д. возможно в вашем конкретном случае придется поступать иначе.

Спасибо.
Вложения
Sample.zip
(28.28 КБ) 157 скачиваний
res562
Сообщения: 28
Зарегистрирован: 26 июл 2010, 13:59

Master-detail-subdetail вопрос.

Сообщение res562 »

спасибо, буду разбираться в примере
res562
Сообщения: 28
Зарегистрирован: 26 июл 2010, 13:59

Master-detail-subdetail вопрос.

Сообщение res562 »

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

Задача такая. Идет розлив продукта, на розлив подается несколько емкостей, каждая емкость получилась путем смешивания других емкостей, продукт в этих емкостях получился из определенных компонент. Нужно вывести сколько каждой компоненты потрачено на розлив.

В базе хранится все очень сложно, и я думаю не получится сформировать отчет непосредственно из структуры базы. Поэтому я создаю промежуточный объект в .net, который потом регистрирую в отчете. Связи формируются автоматически.

Aleksey
Сообщения: 2907
Зарегистрирован: 22 апр 2010, 06:57

Master-detail-subdetail вопрос.

Сообщение Aleksey »

Здравствуйте,
res562 писал(а):Все вроде понятно, но как группировать последние 3 бэнда? ...
В базе хранится все очень сложно, и я думаю не получится сформировать отчет непосредственно из структуры базы. Поэтому я создаю промежуточный объект в .net, который потом регистрирую в отчете. Связи формируются автоматически.
Данного результата можно добиться с помощью запросов, так как вы все равно создаете промежуточный объект, то можете использовать результаты запроса.
Посмотрите в приложенном файле, на второй странице отчета именно так, как вы и хотите, сгруппированы 3 последние бэнда, данные берутся из созданного запроса(можете посмотреть в базе).

Спасибо.
Вложения
Sample.ZIP
(44.98 КБ) 163 скачивания
Ответить