先把代码贴出来吧
private void crystalReportViewer1_Load(object sender, EventArgs e)
        {
            InPrintCrystalReport cr = new InPrintCrystalReport();
            string connString = @"Server=Localhost;database=store;uid=sa;pwd=123";
            SqlConnection conn = new SqlConnection(connString);
            conn.Open();
            string sql = null;            
            if (jy.value1 == "货物编号")
            {
                sql = "select inID,inSto.MID,name,type,unit,price,inNum,inDate,endDate,saver,manufacturer,provider from material,inSto  where inSto.MID = material.MID and material.MID in ( '" + jy.value + " ')";
            }
            else if (jy.value1 == "货物名称")
            {
                sql = "select * from material,inSto  where material.MID = inSto.MID and material.name='" + jy.value + "'";
            }
            else
                sql = "select * from material,inSto  where material.MID = inSto.MID and material.class='" + jy.value + "'";            
            
            SqlDataAdapter adp = new SqlDataAdapter(sql, conn);
            DataSet2 ds = new DataSet2();
            ds.Clear();
            adp.Fill(ds, "material");
            adp.Fill(ds, "inSto");
            string reportPath = "";
            reportPath = "InPrintCrystalReport.rpt";
            cr.Load(reportPath);
            cr.SetDataSource(ds);
            crystalReportViewer1.ReportSource = cr; 
        }
打印的时候,假如查询出来是1条记录,报表就只显示一条,假如查询出的是3条记录,报表则显示3*3=9条记录,这个怎么办啊,我折腾一下午了.....

解决方案 »

  1.   

    你这边应该是MID和MID关联,没有其他解释了
      

  2.   

    我不知道怎么把图片贴上来,我描述一下两张表,一是inSto,其主键是inID,还有个字段是MID,另一张表是material,其主键是MID,我没有设置外键,会不会跟这个有关系呢?
      

  3.   

    是不是insto表有一条记录,对应material表有N条记录的这种形式?
      

  4.   

    是的,因为我同样一种东西,肯定会多次入库的,我这是一个仓库管理系统,insto是入库表,material是物资信息表。
      

  5.   

    哦,你说反了哈,是material表中只有唯一一个MID,对应insto表有N个MID都相同的记录这种形式
      

  6.   

    汗,我咋感觉你的想法有点问题
    入库表单应该是一次就一个,一个入库表单可以有多种材料这样吧。我做的仓库系统就这样做的。
    在做ERP?
      

  7.   

    在报表设计里面先选中出现重复的字段->右键->设置对象格式->公用选项卡->在"若重复则抑制显示"复选框处打勾即可!
      

  8.   

    http://hi.csdn.net/attachment/201008/26/6085786_1282809507m6Q3.jpg
      

  9.   

    哦,对不起,我弄错了。我建了数据源,应该是没错的吧,先新建了一个xsd文件,然后直接从数据库里将两张表拖进来,接着就保存了。