Подотчет Crystal Reports с использованием DataSets - PullRequest
2 голосов
/ 09 февраля 2009

Я использую Crystal Reports XI с C # Visual Studio 2005. Я пытаюсь создать вложенный отчет из набора сводных данных. Простым примером будет листинг компании с сотрудниками. Я загружаю набор данных компании (с CompanyId). Я хочу создать подотчет, который связан с CompanyId, посредством которого набор данных загружается (очевидно) по требованию. Я могу создать этот подотчет, если загружу все детали в один набор данных монстров, но в моей реальной реализации это потребует загрузки миллионов строк подробностей (не вариант).

Есть ли способ, которым я могу захватить событие SubReport и загрузить набор данных из моего соединения с базой данных? Я в основном хочу перехватить вызов ссылки на подотчет, чтобы создать набор данных самостоятельно.

1 Ответ

1 голос
/ 04 мая 2011

Это просто возможно. Создайте 2 таблицы данных в наборе данных xsd. Получите значения для этих 2 таблиц данных на основе общего значения идентификатора / ключа. Скопируйте одну таблицу набора данных в другую, например

ds2.Tables.Add(ds1.Tables[0].Copy());  

тогда

rpt.Load(path + @"Report\Report1.rpt");
rpt.SetDataSource(ds2); //datasource is single
crystalReportViewer.ReportSource = FFrpt;

при добавлении подотчета получите в качестве источника данных вторую таблицу и ее значения. добавьте эти поля в свой подотчет, готово!

С уважением Shyam

...