水晶报表
vs2012 中水晶报表引用
1.下载安装包安装,你可以从下面链接下载:
http://downloads.businessobjects.com/akdlm/cr4vs2010/CRforVS_13_0_5.exe
2.添加4个引用

3.添加一个.rpt文件

1)绑定数据源

2)手动画出报表表格,拖动显示字段

字段显示的时候碰到了几个小问题:
a.一个格子里面显示两个字段;
b.格子里面的字段根据条件判断显示;
c.文本上下左右对齐;
解决方法:
a.制一文本框,在文本框中把要显示的两个字段拖进来

b.建一个公式字段,在公式字段里面添加条件

c.这个居中问题不好弄,水晶报表里面只有左右居中,没有垂直居中,在网上找了好久也没有找到方法,最后在一篇博客里面看到了一个行的同方法(不是垂直居中)

4.还要添加一个.aspx文件

界面代码
<body>
<form id="form1" runat="server">
<div>
<CR:CrystalReportViewer ID="ReTransport" runat="server" AutoDataBind="true" />
</div>
</form>
</body>
后台绑定代码
public void GetList()
{
ReportDocument doc = new ReportDocument();
doc.Load(Server.MapPath("/Cry/StudentInfo.rpt"));
string studentType = Request.QueryString["studentType"].ToString();
string schoolCode = Request.QueryString["schoolCode"].ToString();
string district = Request.QueryString["district"].ToString();
string strWhere = " TiJiaoStatus=1";
if (!string.IsNullOrEmpty(studentType))
{
strWhere += " and TypeName='" + studentType + "'";
}
if (!string.IsNullOrEmpty(district))
{
strWhere += " and DistrictCode='" + district + "'";
}
if (!string.IsNullOrEmpty(schoolCode))
{
strWhere += " and PrimarySchoolCode ='" + schoolCode + "'";
}
strWhere += " ORDER BY TiJiaoNumber ";
DataTable dt = new BLL.ObjMethod().GetList("View_Student", strWhere);
ReTransport.ToolPanelView = ToolPanelViewType.None;
doc.SetDataSource(dt.DefaultView);
this.ReTransport.ReportSource = doc;
}

浙公网安备 33010602011771号