您的位置:首页 > 移动开发 > Objective-C

reportview制作报表

2011-12-22 01:58 323 查看
          在这里要好好感谢一位同学,谢谢他将写好的程序借我参考

       网上关于建报表的最初步骤,有一篇文章写的很详细,见

                     http://blog.csdn.net/mountplorer/article/details/4157216

        言归正传:

         粗粗的做了一张报表,效果如下:

        

 

            我所建的数据集为SalePrint,数据集中的数据表名为Orderdetail,因为我的Orderdetail中列是要显示在表体中,在这里一定要注意,名字一定要与数据库中列名一致

            上图中的表单编号,客户号,是在如下图中的参数中添加后,在将其拉入对应的文本框中

 



 

         表基本上设计好后,就是代码的问题:

         对于表头的代码如下:

private void Form1_Load(object sender, EventArgs e)

        {

            ReportParameter[] para=new ReportParameter[2];

            para[0] = new ReportParameter("orderno",order.orderno);

            para[1] = new ReportParameter("customerno",order.customerno);

            this.reportViewer1.LocalReport.SetParameters(para);

            getsaleDetail(order.orderno);//表体显示

            this.reportViewer1.RefreshReport();

        }

//表体显示
private void getsaleDetail(string OrderNo) {

            ReportDataSource rds = new ReportDataSource("ErpSalePrint",GetorderDetail(OrderNo));

            this.reportViewer1.LocalReport.DataSources.Clear();

            this.reportViewer1.LocalReport.DataSources.Add(rds);

        }
        public DataTable GetorderDetail(string orderno) {

            DataTable dsnewdetail = new DataTable();

            SqlParameter[] prams ={

            //此时只有一个参数

            new SqlParameter("@orderno",SqlDbType.VarChar,15)

            };

            prams[0].Value =orderno;

            dsnewdetail = ExecuteProc("saleprint", prams);

            return dsnewdetail;

       

       

        }
说明ExecuteProc("saleprint",prams);是一个执行存储过程返回数据集
 

 

 

 

 

 

 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息