Я использую Winforms Reporting Services (RDLC) для создания отчета с вложенным отчетом. Моя проблема в том, что подотчет не фильтруется по родительскому идентификатору.
Простым примером модели данных может быть отдел, содержащий сотрудников.
В отчете я хочу показать все отделы и иметь подотчет, чтобы показать сотрудников, которые принадлежат к этому отделу.
Я создал набор данных с двумя таблицами данных (отдел и сотрудник). Я создал связь между двумя таблицами, используя столбец DepartmentId.
В Форме I Заполните каждую таблицу, используя соответствующие команды Заполнения. Сначала я заполняю таблицу «Отдел», а затем таблицу «Сотрудник», т.е. выберите * из отдела и выберите * из сотрудника.
Теперь о самих RDLC: Департамент rdlc использует источник данных Deparment и показывает информацию об отделе. Я сбросил элемент управления подотчетом на этот rdlc и настроил свойства. Я передаю ReportProperty во вложенный отчет, который является Field! DepartmentId.
В rdlc Employee я добавил источник данных Employee и создал фильтр для Property! DepartmentId.
Когда я запускаю отчет, я могу циклически перебирать каждый отдел, но подотчет не отображается. Если я удалю фильтр из источника данных «Сотрудник», подотчет покажет, но отобразит всех сотрудников.
В самой форме я обрабатываю событие SubProcessing evert и добавляю источник данных Employee в отчет.
Есть идеи, как связать данные вложенного отчета с родительским?





Передайте идентификатор из родительского элемента во вложенный отчет в качестве параметра, а затем отфильтруйте таблицу во вложенном отчете на основе этого значения параметра.
MSDN - Настройка вложенных отчетов и детализированных отчетов