Могут ли отчеты Crystal получать данные из источника данных объекта?
Могут ли отчеты Crystal получать данные из источника данных объекта вместо базы данных? Я использую отчеты о кристаллах, которые идут с vs2008. Я кодирую в C# 3.5.
Я хотел бы использовать источник данных объекта, который возвращает список
Когда мы в будущем перейдем на ssrs, сможет ли ssrs 2008 получить данные из этого источника данных объекта?
2 ответа
SetDataSource имеет перегрузку, исключая параметры ICollection. Используя его, вы можете привязать простые коллекции объектов к CR. Но это не так гибко, чем использование наборов данных. С помощью наборов данных вы можете связать несколько связанных таблиц и создавать отчеты более высокой сложности.
Миграция вашего сервера не влияет на CR, поскольку SetDataSource работает только с отключенными объектами, такими как наборы данных или источники данных объекта.
Да, вы можете сделать это, но вы должны обернуть объекты в массив:
// my crystal report
Rpt rpt = new Rpt();
AirLine lAirLine = (AirLine)cmbAirLine.SelectedItem;
// I added two objects as datasources in report designer
// here aWB.AWBPieceList is List<AWBPiece> where 'AWBPiece' is some class.
rpt.Database.Tables[0].SetDataSource( AWBPieceList.ToArray() );
// the second : objects are mapped to tables by crystal report.
rpt.Database.Tables[1].SetDataSource( new AirLine[] { lAirLine } );