·您现在的位置: 云翼网络 >> 文章中心 >> 网站建设 >> 网站建设开发 >> ASP.NET网站开发 >> 水晶报表

水晶报表

作者:佚名      ASP.NET网站开发编辑:admin      更新时间:2022-07-23

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;
        }