zoukankan      html  css  js  c++  java
  • C#实现水晶报表绑定数据并实现打印

    步骤:

    1.新建一个数据集,然后将数据库里面的表托放到DataSet2.xsd里面

          

      2.新建一个水晶报表,根据向导完成水晶报表的制作,效果图如下:

       

      3.新建一个WINDOWS窗体,并在窗体里面放置一个CrystalReportViewer控件,单击右上角的小三角行,然后选择需要显示的报表,并设置报表的路径,

      效果图如下:

      

      4.接下来是后台代码的绑定了:

    01 //绑定开始
    02 String sql=""
    03 sql = "select * from 表名"
    04 SqlConnection con=new Sqlconnection("数据连接字符串");
    05 SqlDataApter da=new SqlDataApter(sql,con);
    06 DataSet ds=new DataSet();
    07 CrystalReport1  cry=new CrystalReport1 ();
    08 con.Open()
    09 da.Fill(ds, "dgv")
    10 cry.SetDataSource(ds.Tables("dgv"))
    11 CrystalReportViewer1.ReportSource = cry
    12 //绑定结束
    13 如果要实现打印功能,还需修改一下,以下是打印的功能:(这个打印功能不是CrystalReportViewer1里面自带的):
     
     
    01 <PRE class=csharp>String sql="";
    02 sql = "select * from Employee";
    03 SqlClient.SqlConnection con=null;
    04 SqlClient.SqlDataAdapter da=null;
    05 DataSet ds=new DataSet();
    06 con = New SqlClient.SqlConnection("Data Source=PC-201005072138;Initial Catalog=Company;Persist Security Info=True;User ID=sa;Password=ddddd");
    07 con.Open();
    08 da = New SqlClient.SqlDataAdapter(sql, con)
    09 da.Fill(ds, "main")
    10 //打印功能
    11 PrintDocument  printDt = New PrintDocument();//打印文档对象
    12 ReportDocument rd= New ReportDocument();//报表对象
    13 rd.Load(Application.StartupPath + "\CrystalReport1.rpt");
    14 //MessageBox.Show(Application.StartupPath + "\CrystalReport1.rpt");
    15 rd.SetDatabaseLogon("sa", "ddddd");
    16 rd.SetDataSource(ds);
    17 String strDefaultPrinter= printDt.PrinterSettings.PrinterName;
    18 rd.PrintOptions.PrinterName = strDefaultPrinter;
    19 rd.PrintToPrinter(1, True, 0, 0);
    20 //打印结束 </PRE>
    21 <PRE class=csharp>以上代码是个人在做的时候用的,如有什么地方错误的话,欢迎留言...
  • 相关阅读:
    utf8.php
    common.php
    ubuntu 12.04 下 Vim 插件 YouCompleteMe 的安装
    Linux 获取文件夹下的所有文件
    poj 1659 Frogs' Neighborhood Havel-Hakimi定理 可简单图定理
    Huffman Coding 哈夫曼编码
    hdu 4778 Gems Fight! 博弈+状态dp+搜索
    print neatly 整齐打印 算法导论
    poj 2533 Longest Ordered Subsequence 最长递增子序列
    poj 3783 Balls 动态规划 100层楼投鸡蛋问题
  • 原文地址:https://www.cnblogs.com/yongheng178/p/1778268.html
Copyright © 2011-2022 走看看