- 爱易网页
-
C#教程
- 急创建动态水晶报表成功,但显示的记录重复 怎么解决?什么回事
日期:2014-05-19 浏览次数:20830 次
急急急-创建动态水晶报表成功,但显示的记录重复 如何解决?什么回事?
一, 我建一个RPT 水晶报表, 里边就连了要连的数据库表,及字段都放到了水晶报表中,也打好了表格 排好了板。
二, 我建了一个ASPX 里边建了一个动态的数据库联接(数据库与RPT一样的表)
我就想通过ASPX调用该RPT水晶报表,这样一来我可以输入些条件 动态显示数据信息。 但是运行的结果是出现记录重复,如得到的结果应该是5条记录,水晶报表会显示 5X5=25条记录 (显示的记录是对的) 请问是什么一回事?
同时建了一个 GridView1 一起帮定数据库显示, 它的显示结果是正确的(记录条数)。
代码如下
--------------------------------------
protected void Page_Load(object sender, EventArgs e)
{
title = myclass.setwebtitle();
Conn1 = new SqlConnection(myclass.setconn());
if (!IsPostBack)
{
bind();
}
}
protected void bind()
{
string where = " ",path_rpt=myclass.rpt_file()+ "JH_SPQKB.RPT ";
if (TextBox1.Text != " ")
{
string y1, m1;
y1 = TextBox1.Text.Substring(0, 4);
m1 = TextBox1.Text.Substring(5, 2);
where = "WHERE (YEAR(B.SPSJ)={0})AND(MONTH(B.SPSJ)={1})AND(A.XMBH_1=B.XMBH_1)AND(B.SPR=C.YHM)AND(C.JS= '计划项目负责人 ') ";
where = string.Format(where, y1, m1);
string sqlstr = " SELECT A.XMBH,A.XMMC,A.JSGM,A.PZTZGSR,A.SBSJ,B.SPSJ,B.SPJG,B.SPR FROM LXSBB A , LXSPB B ,YHGLB C ";
if (where != " ")
sqlstr += where;
CrystalDecisions.CrystalReports.Engine.ReportDocument cr = new CrystalDecisions.CrystalReports.Engine.ReportDocument();
if (!cr.IsLoaded)