2014-02-14 73 views
0

如何動態的水晶報表添加查詢和where條件從多個表中選擇記錄或列,以及如何在水晶報表中添加字段如何動態的水晶報表添加查詢和where條件

protected void Button1_Click(object sender, EventArgs e) 
{ 
    string sql = "select * from tblStudentFees"; 
    ds = cc.ExecuteDataset(sql); 

    ReportDocument doc = new ReportDocument(); 
    doc.Load(Server.MapPath("~/Andorid_Class_App/ReportFees.rpt")); 

    doc.SetDataSource(ds); 
    CrystalReportViewer1.ReportSource = doc; 
} 

回答

0

您可以像使用任何查詢結果集一樣將您的數據集傳遞給水晶報表,因此以您的示例爲例,您可以根據您的要求更改查詢:

protected void Button1_Click(object sender, EventArgs e) 
{ 
    string sql = "select * from tblStudentFees 
        join sometable on tblStudents.sometable_id = sometable.id 
        where sometable.value = somecriteria"; 
    DataSet ds = new DataSet(); 
    ds = cc.ExecuteDataset(sql); 

    ReportDocument doc = new ReportDocument(); 
    doc.Load(Server.MapPath("~/Andorid_Class_App/ReportFees.rpt")); 

    CrystalReportViewer1.ReportSource = doc; 
    CrystalReportViewer1.LocalReport.DataSources.Clear(); 
    CrystalReportViewer1.DataSources.Add(
    new Microsoft.Reporting.WebForms.ReportDataSource("DataSetIdentifier", ds) 
    ); 
}