VS2005中的水晶报表也可以用推模式动态绑定数据源
2007-09-11 16:57
465 查看
看到很多人说vs2005中的水晶报表不再支持用推模式动态绑定数据源的操作,经试验按如下方法也可以完成:
步骤如下:
1.设计报表模板Report1.rpt,与数据源查询的结果集一致,如果数据源复杂,可先做一视图,用视图来设计报表和生成DataSet或DataTable.
2.在aspx页面上托入报表查看器CrystalReportViewer1和报表源控件CrystalReportSource1.
3.编码从表或视图中查询数据生成DataSet或DataTable.
4.用DataSet创建报表文件(ReportDoument),并绑定到报表查看器.
代码如下:
//存储过程名
string strSql = "SubPlanAndLast";
//连接字符串
string strCon = ConfigurationManager.ConnectionStrings["SqlCon"].ToString();
SqlConnection con = new SqlConnection(strCon);
SqlDataAdapter da = new SqlDataAdapter();
SqlCommand cmd = new SqlCommand(strSql, con);
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.AddWithValue("@year", year);
da.SelectCommand = cmd;
DataTable dt = new DataTable();
da.Fill(dt);
CrystalReportSource1.ReportDocument.Load(Server.MapPath("Report1.rpt"));
//注意此处必需指明Dataset中的表的名称,否则会提示“您请求的报表需要更多信息.”
CrystalReportSource1.ReportDocument.SetDataSource(dt);
CrystalReportSource1.DataBind();
CrystalReportViewer1.ReportSource = CrystalReportSource1;
CrystalReportViewer1.DataBind();
CrystalReportViewer1.BestFitPage = true;
CrystalReportViewer1.Width = Unit.Pixel(400);
步骤如下:
1.设计报表模板Report1.rpt,与数据源查询的结果集一致,如果数据源复杂,可先做一视图,用视图来设计报表和生成DataSet或DataTable.
2.在aspx页面上托入报表查看器CrystalReportViewer1和报表源控件CrystalReportSource1.
3.编码从表或视图中查询数据生成DataSet或DataTable.
4.用DataSet创建报表文件(ReportDoument),并绑定到报表查看器.
代码如下:
//存储过程名
string strSql = "SubPlanAndLast";
//连接字符串
string strCon = ConfigurationManager.ConnectionStrings["SqlCon"].ToString();
SqlConnection con = new SqlConnection(strCon);
SqlDataAdapter da = new SqlDataAdapter();
SqlCommand cmd = new SqlCommand(strSql, con);
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.AddWithValue("@year", year);
da.SelectCommand = cmd;
DataTable dt = new DataTable();
da.Fill(dt);
CrystalReportSource1.ReportDocument.Load(Server.MapPath("Report1.rpt"));
//注意此处必需指明Dataset中的表的名称,否则会提示“您请求的报表需要更多信息.”
CrystalReportSource1.ReportDocument.SetDataSource(dt);
CrystalReportSource1.DataBind();
CrystalReportViewer1.ReportSource = CrystalReportSource1;
CrystalReportViewer1.DataBind();
CrystalReportViewer1.BestFitPage = true;
CrystalReportViewer1.Width = Unit.Pixel(400);
相关文章推荐
- [转]VS2005下水晶报表实现动态数据源绑定
- VS2005下水晶报表实现动态数据源绑定
- VS2005下水晶报表如何实现动态数据源绑定?
- [转]VS2005下水晶报表实现动态数据源绑定
- VS2005下水晶报表如何实现动态数据源绑定
- VS2005下水晶报表如何实现动态数据源绑定?
- VS2005下水晶报表如何实现动态数据源绑定?
- 在Silverlight中动态绑定页面报表(PageReport)的数据源
- ASP.NET 给报表动态绑定数据源【CS代码】
- PUSH模式动态水晶报表的实现-网格线如何实现呢
- 动态水晶报表扩展:任意无关联多表,任意列,任意数据源
- VS2005中使用水晶报表的PUSH模式完成带子报表的报表
- VS2005 GridView动态绑定数据源(交叉表) 动态绑定列 动态生成模板列 自定义表头
- C#中为水晶报表动态动态设置数据源
- PUSH模式动态水晶报表的实现-报表的纸张、反向、边距
- 用水晶报表动态绑定数据
- C# 一个通过.xsd文件动态绑定数据的水晶报表
- VS2005 GridView动态绑定数据源(交叉表) 动态绑定列 动态生成模板列
- 在Silverlight中动态绑定页面报表(PageReport)的数据源
- C#创建无数据源水晶报表极简教程(PUSH模式)