报表之使用rdlc创建图表

来源:互联网 发布:python最突出的优点 编辑:程序博客网 时间:2024/05/25 19:56

今天研究了一下使用rdlc报表创建图表,折腾好了很长时间,最终总算是搞定了,整理如下:

我的表数据如下:

在页面中添加ReportViewer控件,并创建一a.rdlc 报表文件,将ReportViewer控件的ReportPath属性设置为"a.rdlc”,然后到a.rdlc报表中进行报表设计:

1.创建a.xsd“数据集"文件,向其中添加内容(从"服务器资源管理器"中托入一个表到a.xsd中即可)

2.在a.rldc中点击菜单"报表-数据源"选择刚创建数据源,点击"添加到报表"

3.从工具箱"报表项"中托一个"图表"到a.rldc主体区,右键"属性",弹出"图表属性"窗口,详细设置如下

(1)"常规"卡中:设置"标题"为"项目月进度"并点击"标题"后面的按钮设置为加粗16pt;在"调色板"中选择一种图表颜色;"图表类型"中选择"柱状图"

(2)"数据"卡中:"数据集名称"中选择刚才的数据集,"值"项(y轴上的数据字段)点击后面的添加按钮,弹出"编辑图表值"窗口,新窗口的"值"中"的序列标签"输入"计划","值"选择字段planinvest,并添加一个CInt函数,最终值为:=CInt(Fields!planinvest.Value)[注意这里添加一个CInt函数至关重要,之前就是因为没添加这个函数图柱出不来,查来查去也查不到相关资料,最后一个随意的设置才得以成功]

(3))"数据"卡中:"值"项以同样方法添加字段factinvest序列标签为"实际",同时别忘了CInt,最终值为=CInt(Fields!factinvest.Value)

(4)"数据"卡中:"类别组"项(x轴上的数据字段)点击后面的添加按钮,弹出"分组和排序属性"窗口,新窗口中的"表达式"项选择字段pmonth

(5)"X轴"卡中:"标题"设置为"月度"

(6)"Y轴"卡中:"标题"设置为"投资额(万元)"

(7)"三维效果"卡中:勾选"以三维效果显示图表",并适当调整其他参数

(8)主要参数已经设置OK了,至于其他样式及参数可以根据自己需要进行设置

4.最后带.aspx页面后台代码中输入:

protected void Page_Load(object sender, EventArgs e)
{
     if (!IsPostBack)
     {
         DataTable dt = SqlHelper.ExecuteDataset(GetCon.ConString, CommandType.Text, "select * from projectprocess where planfinish is not null and finishplan is not null").Tables[0];
         this.ReportViewer1.LocalReport.DataSources.Clear();
         this.ReportViewer1.LocalReport.DataSources.Add(new Microsoft.Reporting.WebForms.ReportDataSource("ds1_ProjectProcess",dt));
         this.ReportViewer1.LocalReport.Refresh();
      }
}

OK,最终效果如下:

如果只需要显示图表部分,可以将ReportViewer的ShowToolBar属性设置为false即可。


转自:http://hi.baidu.com/endyli/item/35f52f927d06fdd91a49dff0