1 Quản trị hệ thống Đây là nhóm có quyền cao nhất trong hệ thống Nhóm này được phép thao tác toàn bộ trên dữ
4.1.1 Lớp Connecttion (kết nối tới cơ sở dữ liệu SQL Server).
Lớp này đảm nhiệm công việc kết nối tới CSDL SQL Server 2000. Trong lớp này có các phương thức thao tác với cơ sở dữ liệu: truy vấn, cập nhật, xoá.
Chuỗi kết nối tới CSDL:
public const string AppConStr = "Data Source=localhost;Integrated
Security=True;Initial Catalog=QuanlyCTGV";
Khởi tạo đối tượng kết nối:
public void Init()
{ try {
// Mo co so du lieu
m_sqlConnection = new SqlConnection();
m_sqlConnection.ConnectionString = frmMain.AppConStr; m_sqlConnection.Open();
}
catch (SqlException se) {
MessageBox.Show(se.ToString(), "Message", MessageBoxButtons.OKCancel, MessageBoxIcon.Error, MessageBoxDefaultButton.Button1); throw se; } finally { m_sqlConnection.Close(); }
dadData = new SqlDataAdapter(); //Khoi tao SqlSelect
m_sqlSelect = new SqlCommand();
m_sqlSelect.CommandType = CommandType.Text; m_sqlSelect.Connection = m_sqlConnection;
}
Thực hiện câu lệnh truy vấn SQL: - Điền dữ liệu vào bảng
public void DoSelect(ref DataTable table) {
dadData.SelectCommand = m_sqlSelect; dadData.Fill(table);
}
- Điền dữ liệu vào một DataSet. public DataSet Execute(string Sql) {
SqlCommand Command = new SqlCommand(Sql, m_sqlConnection); DataSet ds = new DataSet();
SqlDataAdapter adapter = new SqlDataAdapter(Command); adapter.Fill(ds);
return ds; }
Ngồi ra cịn có nhiều phương thức khác thao tác với CSDL, chi tiết tham khảo trong chương trình.
4.1.2 Lớp clsCell (lớp ô lưới)
Sử dụng một thư viện mã nguồn mở là SourceGrid3.dll. Thư viện này chứa lớp Cell mà ta kế thừa để tạo nên ô lưới của điều khiển Thời khoá biểu cập nhật dữ liệu.
public class clsCell : SourceGrid3.Cells.Real.Cell
{
public clsCellKHTG():base() {
cusEven = new SourceGrid3.Cells.Controllers.CustomEvents(); cusEven.MouseEnter += new EventHandler(cusEven_MouseEnter); cusEven.MouseLeave += new EventHandler(cusEven_MouseLeave); cusEven.DoubleClick += new EventHandler(cusEven_DoubleClick); this.View = new SourceGrid3.Cells.Views.Cell();
this.Controller.AddController(cusEven); }
}
4.1.3 Lớp clsKehoachtuan (lớp lưới kế hoạch tuần)
Kế thừa từ lớp Grid của thư viện SourceGrid3.dll, lớp này tạo ra bằng cách kết hợp với lớp ô lưới ở trên để thành một điều khiển lưới dùng cho việc hiển thị thông tin lịch giảng theo tuần. Thông tin về học kỳ, năm học và Bộ môn được nhập vào trên giao diện, sau đó chương trình sẽ tính số tuần và hiển thị ra ComboBox. Khi kích chuột chọn một trong các tuần đó thì thơng tin lịch giảng sẽ được hiển thị ra lưới Thời khoá biểu.