CrystalReport.cs
上传用户:hjieqiu
上传日期:2013-05-11
资源大小:16494k
文件大小:3k
源码类别:

企业管理

开发平台:

C#

  1. using System;
  2. using System.Drawing;
  3. using System.Collections;
  4. using System.ComponentModel;
  5. using System.Windows.Forms;
  6. using System.Data;
  7. using System.Data.SqlClient;
  8. namespace 教务管理系统
  9. {
  10. /// <summary>
  11. /// CrystalReport 的摘要说明。
  12. /// </summary>
  13. public class CrystalReport : System.Windows.Forms.Form
  14. {
  15. public static string studentID;//用于保存报表打印窗体传递来的学号
  16. private CrystalDecisions.Windows.Forms.CrystalReportViewer crystalReportViewer1;
  17. /// <summary>
  18. /// 必需的设计器变量。
  19. /// </summary>
  20. private System.ComponentModel.Container components = null;
  21. public CrystalReport()
  22. {
  23. //
  24. // Windows 窗体设计器支持所必需的
  25. //
  26. InitializeComponent();
  27. //
  28. // TODO: 在 InitializeComponent 调用后添加任何构造函数代码
  29. //
  30. }
  31. /// <summary>
  32. /// 清理所有正在使用的资源。
  33. /// </summary>
  34. protected override void Dispose( bool disposing )
  35. {
  36. if( disposing )
  37. {
  38. if(components != null)
  39. {
  40. components.Dispose();
  41. }
  42. }
  43. base.Dispose( disposing );
  44. }
  45. #region Windows 窗体设计器生成的代码
  46. /// <summary>
  47. /// 设计器支持所需的方法 - 不要使用代码编辑器修改
  48. /// 此方法的内容。
  49. /// </summary>
  50. private void InitializeComponent()
  51. {
  52. this.crystalReportViewer1 = new CrystalDecisions.Windows.Forms.CrystalReportViewer();
  53. this.SuspendLayout();
  54. // 
  55. // crystalReportViewer1
  56. // 
  57. this.crystalReportViewer1.ActiveViewIndex = -1;
  58. this.crystalReportViewer1.DisplayGroupTree = false;
  59. this.crystalReportViewer1.Location = new System.Drawing.Point(0, 0);
  60. this.crystalReportViewer1.Name = "crystalReportViewer1";
  61. this.crystalReportViewer1.ReportSource = null;
  62. this.crystalReportViewer1.Size = new System.Drawing.Size(664, 440);
  63. this.crystalReportViewer1.TabIndex = 0;
  64. // 
  65. // CrystalReport
  66. // 
  67. this.AutoScaleBaseSize = new System.Drawing.Size(6, 14);
  68. this.ClientSize = new System.Drawing.Size(664, 437);
  69. this.Controls.Add(this.crystalReportViewer1);
  70. this.Name = "CrystalReport";
  71. this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
  72. this.Text = "CrystalReport";
  73. this.Load += new System.EventHandler(this.CrystalReport_Load);
  74. this.ResumeLayout(false);
  75. }
  76. #endregion
  77. //----------初始化窗体时,读入报表数据,并显示之-----------
  78. private void CrystalReport_Load(object sender, System.EventArgs e)
  79. {
  80. //读入数据
  81. CrystalReport1 rpt=new CrystalReport1();
  82. string strConn="workstation id=localhost;Integrated Security=SSPI;Database=eisbook;";
  83. SqlConnection cn=new SqlConnection(strConn);
  84. cn.Open();
  85. string sql="SELECT a.学号, c.姓名, b.课程名称, b.开课系别, b.教师, a.成绩"
  86. +" FROM 成绩表 a INNER JOIN 课程信息 b ON a.课程编号 = b.课程编号"
  87. +" INNER JOIN 学生信息 c ON a.学号 = c.学号 WHERE (a.学号 = '"+studentID+"')";
  88. SqlDataAdapter da=new SqlDataAdapter(sql,cn);
  89. DataSet ds=new DataSet();
  90. da.Fill(ds);
  91. //连接报表数据源
  92. rpt.SetDataSource(ds.Tables[0]);
  93. crystalReportViewer1.ReportSource=rpt;
  94. }
  95. }
  96. }