以下のコードを使用しようとしましたが、機能しません。
ReportDataSet
SQLクエリを使用してレポートデータをに保存しました。後でこれをオブジェクトのとして設定しましたReportDataSet
。DataSource
CrystalReport
private void btnGenReport_Click(object sender, EventArgs e)
{
CrystalReport1 objRpt = new CrystalReport1();
string sql; //creating sql query
sql = "SELECT invoice.InvoiceNo, invoice.Date, invoiceitems.Name, invoice.InvoiceTo, invoice.CusName, invoiceitems.Qty, invoiceitems.Rate, invoiceitems.Amount ";
sql += "FROM (invoice INNER JOIN invoiceitems ON invoice.Date = invoiceitems.Date) ";
sql += "WHERE (invoice.Date BETWEEN '" + DateTimePickerFrom.Value + "' AND '" + DateTimePickerTo.Value + "');";
ReportDataSet ds = new ReportDataSet();
string path = Application.StartupPath + "\\";
string conStr = @"Data Source=.\SQLEXPRESS;AttachDbFilename=" + path + "SMS_DB.mdf;Integrated Security=True;User Instance=True";
SqlConnection con = new SqlConnection(conStr); // create connection
try
{
con.Open();
SqlDataAdapter da = new SqlDataAdapter(sql, con);
da.Fill(ds, "InvoiceItemData");
objRpt.SetDataSource(ds.Tables["InvoiceItemData"]);
crystalReportViewer1.ReportSource = objRpt;
con.close();
}
catch (Exception ex)
{
MessageBox.Show("Error ! \n" + ex.ToString());
}
}