Crystalレポートを作成しようとしていますが、データベースに直接接続できません。Webサービス呼び出しからすべてのデータを取得する必要があります。Webサービス呼び出しごとにDataTablesを返します。そのデータテーブルをCrystalReportの.xsdファイルにバインドする方法はありますか、またはこの情報をCrystalReportに取り込むためのより良い方法はありますか。
protected void GenReport_Clicked(object sender, EventArgs e)
{
ReportDocument TestReport = new ReportDocument();
DataSet ds = new DataSet();
DataTable dt = webservice.Get_Admin_Dealers();
ds.Tables.Add(dt);
dt.TableName = "TestReport";
TestReport.Load(Server.MapPath("/TestReport.rpt"));
TestReport.SetDataSource(ds);
ReportViewer.ReportSource = TestReport;
}
前面は次のようになります
asp:Panel ID="reportPanel" runat="server">
<asp:Button ID="GenReport" runat="server" Text="Generate Report" OnClick="GenReport_Clicked" />
<CR:CrystalReportViewer ID="ReportViewer" runat="server" AutoDataBind="true"></CR:CrystalReportViewer>
</asp:Panel>