Как установить все таблицы и связи из набора данных включенными в отчет?

Question: Как установить все таблицы и связи из набора данных включенными в отчет?

Answer:

Используйте данный фрагмент кода для того, чтобы сделать доступными в отчёте все таблицы из вашего источника данных (DataSet):

1
2
3
4
foreach (FastReport.Data.DataSourceBase tbl in report.Dictionary.DataSources)
 {
 tbl.Enabled = true;
 } 

 Затем добавьте все связи из DataSet:

1
2
3
4
for (int i = 0; i < ds.Relations.Count; i++)
 {
 report.RegisterData(ds.Relations[i], "relation" + i);
 }

И включите все связи:

1
2
3
4
 foreach (FastReport.Data.Relation rl in report.Dictionary.Relations)
 {
 rl.Enabled = true;
 }

 Полный код:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
 Report report = new Report();
 DataSet ds = new DataSet();
 ds.ReadXml("EstimateFile.xml");
 report.RegisterData(ds, "ds");
 
 foreach (FastReport.Data.DataSourceBase tbl in report.Dictionary.DataSources)
 {
 tbl.Enabled = true;
 }
 
 for (int i = 0; i < ds.Relations.Count; i++)
 {
 report.RegisterData(ds.Relations[i], "relation" + i);
 }

 foreach (FastReport.Data.Relation rl in report.Dictionary.Relations)
 {
 rl.Enabled = true;
 }