开发者论坛

 找回密码
 注册 (请使用非IE浏览器)
查看: 7000|回复: 3

DEVEXPRESS XtraReport 制作报表只显示一行数据问题

[复制链接]

0

精华

0

贡献

0

赞扬

帖子
34
软币
421
在线时间
47 小时
注册时间
2014-4-14
发表于 2014-4-15 09:00:23 | 显示全部楼层 |阅读模式
[size=14.44444465637207px]C# 运用DEVEXPRESS  XtraReport 制作报表,
[size=14.44444465637207px]FORM 窗体中放置3个TEXTBOX.TEXT 一个BUTTON(打印)
[size=14.44444465637207px]button 下代码为:
[size=14.44444465637207px]private void button1_Click(object sender, EventArgs e)
[size=14.44444465637207px]        {
[size=14.44444465637207px]            string cnStr = System.Configuration.ConfigurationSettings.AppSettings["Connstr"];
[size=14.44444465637207px]            SqlConnection cn = new SqlConnection(cnStr);

[size=14.44444465637207px]            string Sql = "SELECT scandata.gch,gcda.gcm,tdh,bh,cast(sl as int)as sl, COUNT(stationName) AS zysl,barcode1,  cc ,ys, bzl,zc,  stationName   FROM  dbo.ScanData left join gcda on  scandata.gch=gcda.gch where 1=1";

[size=14.44444465637207px]            if (textBox1.Text != "")
[size=14.44444465637207px]            {
[size=14.44444465637207px]                Sql = Sql + " and scandata.gch='" + textBox1.Text + "'";

[size=14.44444465637207px]            }
[size=14.44444465637207px]            if (textBox2.Text != "")
[size=14.44444465637207px]            {
[size=14.44444465637207px]                Sql = Sql + " and tdh='" + textBox2.Text + "'";

[size=14.44444465637207px]            }
[size=14.44444465637207px]            if (textBox3.Text != "")
[size=14.44444465637207px]            {
[size=14.44444465637207px]                Sql = Sql + " and bh='" + textBox3.Text + "'";

[size=14.44444465637207px]            }

[size=14.44444465637207px]            Sql = Sql + " GROUP BY  barcode1,stationName, sl, zc, bzl, cl, ys, cc, scandata.gch,scandata.dh,gcda.gcm,tdh, bh order by bh ";
[size=14.44444465637207px]            DataSet ds = new DataSet();
[size=14.44444465637207px]            SqlCommand sqlcmd = new SqlCommand(Sql, cn);

[size=14.44444465637207px]            SqlDataAdapter da = new SqlDataAdapter(sqlcmd);

[size=14.44444465637207px]            da.Fill(ds, "scandata");
[size=14.44444465637207px]            XtraReport1 report = new XtraReport1(ds);            
[size=14.44444465637207px]            if (ds.Tables[0].Rows.Count != 0)
[size=14.44444465637207px]            {
[size=14.44444465637207px]               
[size=14.44444465637207px]                report.DataSource = ds.Tables[0];           

[size=14.44444465637207px]                report.ShowPreview();   
[size=14.44444465637207px]               
[size=14.44444465637207px]            }
[size=14.44444465637207px]        }



[size=14.44444465637207px]xtraReport1 代码为:

[size=14.44444465637207px]public partial class XtraReport1 : DevExpress.XtraReports.UI.XtraReport
[size=14.44444465637207px]    {
[size=14.44444465637207px]         public XtraReport1(DataSet ds)
[size=14.44444465637207px]        {
[size=14.44444465637207px]            InitializeComponent();

[size=14.44444465637207px]            SetDataBind(ds);
[size=14.44444465637207px]         }

[size=14.44444465637207px]        private void SetDataBind(DataSet ds)//绑定数据源
[size=14.44444465637207px]        {            
[size=14.44444465637207px]            DataSource = ds;
[size=14.44444465637207px]            this.xrTableCell1.DataBindings.Add("Text", DataSource, "gch");
[size=14.44444465637207px]            this.xrTableCell2.DataBindings.Add("Text", DataSource, "tdh");
[size=14.44444465637207px]            this.xrTableCell3.DataBindings.Add("Text", DataSource, "sl");
[size=14.44444465637207px]        }
[size=14.44444465637207px]     
[size=14.44444465637207px]        private DataSet GetTempDataSet()
[size=14.44444465637207px]        {
[size=14.44444465637207px]            DataSet ds = new DataSet();
[size=14.44444465637207px]            string cnStr = System.Configuration.ConfigurationSettings.AppSettings["Connstr"];
[size=14.44444465637207px]            SqlConnection cn = new SqlConnection(cnStr);

[size=14.44444465637207px]            string Sql = "SELECT scandata.gch,gcda.gcm,tdh,bh,cast(sl as int)as sl, COUNT(stationName) AS zysl,barcode1,  cc ,ys, bzl,zc,  stationName   FROM  dbo.ScanData left join gcda on  scandata.gch=gcda.gch  GROUP BY  barcode1,stationName, sl, zc, bzl, cl, ys, cc, scandata.gch,scandata.dh,gcda.gcm,tdh, bh order by bh";
[size=14.44444465637207px]                 
[size=14.44444465637207px]            SqlCommand sqlcmd = new SqlCommand(Sql, cn);

[size=14.44444465637207px]            SqlDataAdapter da = new SqlDataAdapter(sqlcmd);

[size=14.44444465637207px]            da.Fill(ds, "scandata");
[size=14.44444465637207px]            return ds;        

[size=14.44444465637207px]        }

[size=14.44444465637207px]        }


[size=14.44444465637207px]可是查询的结果只有 一行数据,
[size=14.44444465637207px]为什么?
[size=14.44444465637207px]什么构造函数,我不是懂
[size=14.44444465637207px]麻烦高手指点,我只想做个依据条件打印的单据 ,做了两天,实在没法,特来询问,谢谢 !
回复

使用道具 举报

0

精华

5295

贡献

6059

赞扬

管理员

帖子
1176
软币
22629
在线时间
4467 小时
注册时间
2013-6-7

黄马甲

发表于 2014-4-15 09:21:34 | 显示全部楼层
这都什么玩意?
发帖求助也请你用心点好么?
回复

使用道具 举报

0

精华

0

贡献

0

赞扬

帖子
34
软币
421
在线时间
47 小时
注册时间
2014-4-14
 楼主| 发表于 2014-4-15 10:01:19 | 显示全部楼层
不好意思,第一次发帖
BUTTON代码
[C#] 纯文本查看 复制代码
private void button1_Click(object sender, EventArgs e)
        {
            string cnStr = System.Configuration.ConfigurationSettings.AppSettings["Connstr"];
            SqlConnection cn = new SqlConnection(cnStr);

            string Sql = "SELECT scandata.gch,gcda.gcm,tdh,bh,cast(sl as int)as sl, COUNT(stationName) AS zysl,barcode1,  cc ,ys, bzl,zc,  stationName   FROM  dbo.ScanData left join gcda on  scandata.gch=gcda.gch where 1=1";

            if (textBox1.Text != "")
            {
                Sql = Sql + " and scandata.gch='" + textBox1.Text + "'";

            }
            if (textBox2.Text != "")
            {
                Sql = Sql + " and tdh='" + textBox2.Text + "'";

            }
            if (textBox3.Text != "")
            {
                Sql = Sql + " and bh='" + textBox3.Text + "'";

            }

            Sql = Sql + " GROUP BY  barcode1,stationName, sl, zc, bzl, cl, ys, cc, scandata.gch,scandata.dh,gcda.gcm,tdh, bh order by bh ";
            DataSet ds = new DataSet();
            SqlCommand sqlcmd = new SqlCommand(Sql, cn);

            SqlDataAdapter da = new SqlDataAdapter(sqlcmd);

            da.Fill(ds, "scandata");
            XtraReport1 report = new XtraReport1(ds);            
            if (ds.Tables[0].Rows.Count != 0)
            {
               
                report.DataSource = ds.Tables[0];           

                report.ShowPreview();   
                
            }
        }


xtraReport1 代码为:
[C#] 纯文本查看 复制代码
public partial class XtraReport1 : DevExpress.XtraReports.UI.XtraReport
    {
         public XtraReport1(DataSet ds)
        {
            InitializeComponent();

            SetDataBind(ds);
         }

        private void SetDataBind(DataSet ds)//绑定数据源
        {            
            DataSource = ds;
            this.xrTableCell1.DataBindings.Add("Text", DataSource, "gch");
            this.xrTableCell2.DataBindings.Add("Text", DataSource, "tdh");
            this.xrTableCell3.DataBindings.Add("Text", DataSource, "sl");
        }
     
        private DataSet GetTempDataSet()
        {
            DataSet ds = new DataSet();
            string cnStr = System.Configuration.ConfigurationSettings.AppSettings["Connstr"];
            SqlConnection cn = new SqlConnection(cnStr);

            string Sql = "SELECT scandata.gch,gcda.gcm,tdh,bh,cast(sl as int)as sl, COUNT(stationName) AS zysl,barcode1,  cc ,ys, bzl,zc,  stationName   FROM  dbo.ScanData left join gcda on  scandata.gch=gcda.gch  GROUP BY  barcode1,stationName, sl, zc, bzl, cl, ys, cc, scandata.gch,scandata.dh,gcda.gcm,tdh, bh order by bh";
                 
            SqlCommand sqlcmd = new SqlCommand(Sql, cn);

            SqlDataAdapter da = new SqlDataAdapter(sqlcmd);

            da.Fill(ds, "scandata");
            return ds;        

        }

        }
回复

使用道具 举报

0

精华

0

贡献

0

赞扬

帖子
2
软币
88
在线时间
2 小时
注册时间
2015-8-11
发表于 2015-8-11 22:42:41 | 显示全部楼层
我的  report.ShowPreview(); 方法,死活都点不出来,什么情况?   
回复

使用道具 举报

Archiver|手机版|小黑屋|开发者网 ( 苏ICP备08004430号-2 )
版权所有:南京韵文教育信息咨询有限公司

GMT+8, 2024-12-23 11:20

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表