Bài tập Phân tích và thiết kế hệ thống thông tin quản lý (Phần 2)

Form Name frm_tracuudiem_CD_DH_SV 2 Text box Họ tên Name txthoten 3 Text box Lần thi Name txtlan 4 Check box CK, CS Name Checkcdcq Caption CK, CS 5 Check box CL Name Checkcdlt Caption CL 6 Check box ĐK, ĐS Name Checkdhcq Caption ĐK, ĐS 7 Check box ĐL Name Checkdhlt Caption ĐL 8 Check box Năm học Name checknam Caption Năm học 9 Check box Kỳ Name checkky Caption Kỳ 10 Check box Môn học Name checkmon Caption Môn học

pdf170 trang | Chia sẻ: Tiểu Khải Minh | Ngày: 28/02/2024 | Lượt xem: 30 | Lượt tải: 0download
Bạn đang xem trước 20 trang tài liệu Bài tập Phân tích và thiết kế hệ thống thông tin quản lý (Phần 2), để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
bky) & "' and namhoc='" & Trim(cbnamhoc) & "' " & " and malop='" & Trim(txttenlop) & "' " Admon.Refresh dcbmonhoc.DataField = "tenmon" Set dcbmonhoc.DataSource = Admon Set dcbmonhoc.RowSource = Admon dcbmonhoc.ListField = "tenmon" dcbmonhoc.Refresh admahssv.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Persist Security Info=False;Data Source=" & name & "" admahssv.CommandType = adCmdUnknown admahssv.RecordSource = "select * from hoclopcddh where (Malop='" & Trim(txttenlop) & "')" & " and (namhoc='" & Trim(cbnamhoc) & "')" & " and (ky='" & Trim(cbky) & "')" admahssv.Refresh dcbmahssv.DataField = "Masinhvien" Set dcbmahssv.DataSource = admahssv Set dcbmahssv.RowSource = admahssv Bài tập Phân tích và thiết kế hệ thống thông tin quản lý 258 Phạm Hùng Phú - Nguyễn Văn Thẩm dcbmahssv.ListField = "Masinhvien" dcbmahssv.Refresh End Sub „Thủ tục click của combox lần Private Sub cblan_Click() dk = " (namhoc='" & Trim(cbnamhoc) & "')" dk = dk & " and (ky='" & Trim(cbky) & "')" dk = dk & " and (malop='" & Trim(txttenlop) & "')" dk = dk & " and (mamon='" & Trim(txttenmon) & "')" dk = dk & " and (lanthi='" & Trim(cblan) & "')" If opsua.Value = True Then LVitem.Enabled = True LVitem.Visible = True cdketthucsua.Enabled = True Display_Listview End If If opxoa.Value = True Then LVitem.Enabled = True LVitem.Visible = True Display_Listview End If End Sub „Thủ tục click của nút hủy Private Sub cdhuy_Click() SET_NULLR cdluu.Enabled = False cdhuy.Enabled = False End Sub „Thủ tục click nút kết thúc sửa Private Sub cdketthucsua_Click() Un_Lock_TextC cdluu.Visible = False cdhuy.Visible = False cdketthucsua.Enabled = False LVitem.Enabled = False End Sub Bài tập Phân tích và thiết kế hệ thống thông tin quản lý Phạm Hùng Phú - Nguyễn Văn Thẩm 259 „Thủ tục lưu trữ Private Sub cdluu_Click() Luu_Du_Lieu cdluu.Enabled = False cdhuy.Enabled = False Display_Listview End Sub „Thủ tục click của check box Cao đẳng chính quy Private Sub Checkcdcq_Click() If Checkcdcq.Value = 1 Then SET_NULL Checkcdlt.Value = 0 Checkdhcq.Value = 0 Checkdhlt.Value = 0 Dim name As String name = App.Path & "\quanlydiem.mdb" adlop.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Persist Security Info=False;Data Source=" & name & "" adlop.CommandType = adCmdUnknown adlop.RecordSource = "select * from lop where left(tenlop,2)='CS' or left(tenlop,2)='CK'" adlop.Refresh Dcbmalop.DataField = "tenlop" Set Dcbmalop.DataSource = adlop Set Dcbmalop.RowSource = adlop Dcbmalop.ListField = "tenlop" Dcbmalop.Refresh dkmon = " left(mamon,4)='CDCQ' " End If End Sub „Thủ tục click của check box Cao đẳng liên thông Private Sub Checkcdlt_Click() If Checkcdlt.Value = 1 Then SET_NULL 'cdthem.Enabled = True Checkcdcq.Value = 0 Bài tập Phân tích và thiết kế hệ thống thông tin quản lý 260 Phạm Hùng Phú - Nguyễn Văn Thẩm Checkdhcq.Value = 0 Checkdhlt.Value = 0 Dim name As String name = App.Path & "\quanlydiem.mdb" adlop.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Persist Security Info=False;Data Source=" & name & "" adlop.CommandType = adCmdUnknown adlop.RecordSource = "select * from lop where left(tenlop,2)='CL' " adlop.Refresh Dcbmalop.DataField = "tenlop" Set Dcbmalop.DataSource = adlop Set Dcbmalop.RowSource = adlop Dcbmalop.ListField = "tenlop" Dcbmalop.Refresh dkmon = " left(mamon,4)='CDLT' " End If End Sub „Thủ tục click của check box Đại học chính quy Private Sub Checkdhcq_Click() If Checkdhcq.Value = 1 Then SET_NULL Checkcdlt.Value = 0 Checkcdcq.Value = 0 Checkdhlt.Value = 0 Dim name As String name = App.Path & "\quanlydiem.mdb" adlop.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Persist Security Info=False;Data Source=" & name & "" adlop.CommandType = adCmdUnknown adlop.RecordSource = "select * from lop where left(tenlop,2)='ĐK' or left(tenlop,2)='ĐS'" adlop.Refresh Dcbmalop.DataField = "tenlop" Set Dcbmalop.DataSource = adlop Set Dcbmalop.RowSource = adlop Dcbmalop.ListField = "tenlop" Bài tập Phân tích và thiết kế hệ thống thông tin quản lý Phạm Hùng Phú - Nguyễn Văn Thẩm 261 Dcbmalop.Refresh dkmon = " left(mamon,4)='DHCQ' " End If End Sub „Thủ tục click của check box Đại học liên thông Private Sub Checkdhlt_Click() If Checkdhlt.Value = 1 Then SET_NULL Checkcdlt.Value = 0 Checkdhcq.Value = 0 Checkcdcq.Value = 0 Dim name As String name = App.Path & "\quanlydiem.mdb" adlop.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Persist Security Info=False;Data Source=" & name & "" adlop.CommandType = adCmdUnknown adlop.RecordSource = "select * from lop where left(tenlop,2)='ĐL' " adlop.Refresh Dcbmalop.DataField = "tenlop" Set Dcbmalop.DataSource = adlop Set Dcbmalop.RowSource = adlop Dcbmalop.ListField = "tenlop" Dcbmalop.Refresh dkmon = " left(mamon,4)='DHLT' " End If End Sub „Thủ tục click của Combox Mã sinh viên Private Sub dcbmahssv_Click(Area As Integer) cdluu.Enabled = True cdhuy.Enabled = True txtdieml1.Text = "" txtdieml2.Text = "" txtdiemthi.Text = "" Dim rs2 As New ADODB.Recordset Dim str2 str2 = "select * from SVCDDH where (Masinhvien='" & Trim(dcbmahssv) & "')" Bài tập Phân tích và thiết kế hệ thống thông tin quản lý 262 Phạm Hùng Phú - Nguyễn Văn Thẩm rs2.Open str2, CN, adOpenKeyset, adLockOptimistic, adCmdText txthoten = rs2!Hoten 'txtdieml1.Enabled = True Dim rs As New ADODB.Recordset Dim str str = "select*from DiemLT where (Masinhvien='" & Trim(dcbmahssv) & "')" & " and (mamon='" & Trim(txttenmon) & "')" & " and (namhoc='" & Trim(cbnamhoc) & "')" & " and (ky='" & Trim(cbky) & "')" & " and (lanthi='" & Trim(cblan) & "')" rs.Open str, CN, adOpenKeyset, adLockOptimistic, adCmdText Dim rs1 As New ADODB.Recordset Dim str1 str1 = "select*from DiemLT where (Masinhvien='" & Trim(dcbmahssv) & "')" & " and (mamon='" & Trim(txttenmon) & "')" & " and (namhoc='" & Trim(cbnamhoc) & "')" & " and (ky='" & Trim(cbky) & "')" & " and (lanthi='" & Trim("1") & "')" rs1.Open str1, CN, adOpenKeyset, adLockOptimistic, adCmdText Dim rsmon As New ADODB.Recordset Dim strmon strmon = "select*from Monhoccddh where (Mamon='" & Trim(txttenmon) & "')" rsmon.Open strmon, CN, adOpenKeyset, adLockOptimistic, adCmdText If rsmon!sodvht <= 3 Then If cblan.Text = 1 Then If rs.RecordCount >= 1 Then MsgBox "Có các điểm lần 1 rồi !", vbOKOnly + vbExclamation, "Thông báo" Else txtdieml1.Enabled = True End If Else If (rs1.RecordCount >= 1) And (rs1!diemktl1 >= 5) And (rs1!diemthi >= 5) Then MsgBox "Có các điểm lần 1 lớn hơn bằng 5 rồi !", vbOKOnly + vbExclamation, "Thông báo" Else Bài tập Phân tích và thiết kế hệ thống thông tin quản lý Phạm Hùng Phú - Nguyễn Văn Thẩm 263 If (rs.RecordCount >= 1) And (rs!diemktl1 >= 5) And (rs!diemthi >= 5) Then MsgBox "Có điểm lần 2 lớn hơn 5 rồi !", vbOKOnly + vbExclamation, "Thông báo" Else txtdieml1.Enabled = True End If End If End If Else If cblan.Text = 1 Then If rs.RecordCount >= 1 Then MsgBox "Có các điểm lần 1 rồi !", vbOKOnly + vbExclamation, "Thông báo" Else txtdieml1.Enabled = True End If Else If (rs1.RecordCount >= 1) And (rs1!diemktl1 >= 5) And (rs1!diemktl2 >= 5) And (rs1!diemthi >= 5) Then MsgBox "Có các điểm lần 1 lớn hơn bằng 5 rồi !", vbOKOnly + vbExclamation, "Thông báo" Else If (rs.RecordCount >= 1) And (rs!diemktl1 >= 5) And (rs!diemktl2 >= 5) And (rs!diemthi >= 5) Then MsgBox "Có điểm lần 2 lớn hơn 5 rồi !", vbOKOnly + vbExclamation, "Thông báo" Else txtdieml1.Enabled = True End If End If End If End If End Sub „Thủ tục click của Combox Mã lớp Private Sub Dcbmalop_Click(Area As Integer) Bài tập Phân tích và thiết kế hệ thống thông tin quản lý 264 Phạm Hùng Phú - Nguyễn Văn Thẩm Dim rs As New ADODB.Recordset Dim str str = "select * from lop where (tenlop='" & Trim(Dcbmalop) & "')" rs.Open str, CN, adOpenKeyset, adLockOptimistic, adCmdText txttenlop = rs!malop End Sub „Thủ tục click của Combox Môn học Private Sub dcbmonhoc_Click(Area As Integer) Dim rs As New ADODB.Recordset Dim str str = "select * from monhoccddh where (tenmon='" & Trim(dcbmonhoc) & "')" If Checkcdcq.Value = 1 Then str = str & " and (left(mamon,4)='CDCQ')" End If If Checkcdlt.Value = 1 Then str = str & " and (left(mamon,4)='CDLT')" End If If Checkdhcq.Value = 1 Then str = str & " and (left(mamon,4)='DHCQ')" End If If Checkdhlt.Value = 1 Then str = str & " and (left(mamon,4)='DHLT')" End If rs.Open str, CN, adOpenKeyset, adLockOptimistic, adCmdText txttenmon = rs!mamon End Sub „Thủ tục nạp Form Private Sub Form_Load() Open_mdb LVitem.Visible = False SET_NULL Lock_Text End Sub „Thủ tục click vào một phần tử của ListView Private Sub lvitem_ItemClick(ByVal Item As MSComctlLib.ListItem) Bài tập Phân tích và thiết kế hệ thống thông tin quản lý Phạm Hùng Phú - Nguyễn Văn Thẩm 265 Dim rs As New ADODB.Recordset Dim str dcbmahssv = Item.Text txthoten = Item.SubItems(1) str = "select*from DiemLT where (Masinhvien='" & Trim(dcbmahssv) & "')" & " and (mamon='" & Trim(txttenmon) & "')" & " and (namhoc='" & Trim(cbnamhoc) & "')" & " and (ky='" & Trim(cbky) & "')" & " and (lanthi='" & Trim(cblan) & "')" rs.Open str, CN, adOpenKeyset, adLockOptimistic, adCmdText If opsua.Value = True Then Lock_Text cdluu.Enabled = True cdhuy.Enabled = True cdluu.Visible = True cdhuy.Visible = True cdketthucsua.Visible = True If rs.EOF = False Then txtdieml1 = rs!diemktl1 txtdieml1.Enabled = True If rs!diemktl2 = -1 Then txtdieml2 = " " Else txtdieml2 = rs!diemktl2 txtdieml2.Enabled = True End If txtdiemthi = rs!diemthi txtdiemthi.Enabled = True End If End If If opxoa.Value = True Then Lock_Text cdxoa.Enabled = True cdxoa.Visible = True If rs.EOF = False Then txtdieml1 = Format(rs!diemktl1, "0.0") If rs!diemktl2 = -1 Then Bài tập Phân tích và thiết kế hệ thống thông tin quản lý 266 Phạm Hùng Phú - Nguyễn Văn Thẩm txtdieml2 = " " Else txtdieml2 = Format(rs!diemktl2, "0.0") End If txtdiemthi = rs!diemthi End If End If rs.Close End Sub „Thủ tục click của nút xóa Private Sub cdxoa_Click() Xoa_Du_Lieu End Sub „Thủ tục sửa dữ liệu Private Sub Sua_Du_Lieu() Un_Lock_Text cbnamhoc.SetFocus End Sub „Thủ tục click thiết lập giá trị của các control thành rỗng Private Sub SET_NULL() dcbmonhoc.Text = "" cbky.Text = "" txthoten.Text = "" dcbmahssv.Text = "" cbnamhoc.Text = "" cblan.Text = "" txtdieml1.Text = "" txtdieml2.Text = "" txtdiemthi.Text = "" End Sub „Thủ tục hiện dữ liệu trên Listview Private Sub Display_Listview() Dim rs As New ADODB.Recordset Dim str Dim mitem As ListItem Bài tập Phân tích và thiết kế hệ thống thông tin quản lý Phạm Hùng Phú - Nguyễn Văn Thẩm 267 LVitem.ListItems.Clear str = "select * from 111 where " & dk & "order by Masinhvien asc" rs.Open str, CN, adOpenKeyset, adLockOptimistic, adCmdText If rs.EOF = False Then While Not rs.EOF Set mitem = LVitem.ListItems.Add(, , rs!Masinhvien) mitem.SubItems(1) = rs!Hoten mitem.SubItems(2) = Format(rs!diemktl1, "0.0") If rs!diemktl2 = -1 Then mitem.SubItems(3) = " " Else mitem.SubItems(3) = Format(rs!diemktl2, "0.0") End If mitem.SubItems(4) = Format(rs!diemthi, "0.0") rs.MoveNext Wend End If End Sub „Thủ tục làm mất hiệu lực của các đối tượng Private Sub Lock_Text() cbnamhoc.Enabled = False cbky.Enabled = False dcbmonhoc.Enabled = False Dcbmalop.Enabled = False dcbmahssv.Enabled = False cblan.Enabled = False txtdieml1.Enabled = False txtdieml2.Enabled = False txtdiemthi.Enabled = False cdluu.Visible = False cdhuy.Visible = False cdxoa.Visible = False cdketthucsua.Visible = False lblop.Visible = False txttenlop.Visible = False lbmon.Visible = False Bài tập Phân tích và thiết kế hệ thống thông tin quản lý 268 Phạm Hùng Phú - Nguyễn Văn Thẩm txttenmon.Visible = False End Sub „Thủ tục làm các đối tượng có hiệu lực Private Sub Un_Lock_Text() cbnamhoc.Enabled = True cbky.Enabled = True dcbmonhoc.Enabled = True Dcbmalop.Enabled = True dcbmahssv.Enabled = True cblan.Enabled = True cbnamhoc.SetFocus End Sub „Thủ tục làm các đối tượng có hiệu lực Private Sub Un_Lock_TextC() cbnamhoc.Enabled = True cbky.Enabled = True dcbmonhoc.Enabled = True Dcbmalop.Enabled = True cblan.Enabled = True Dcbmalop.SetFocus End Sub „Thủ tục lưu thông tin vào cơ sở dữ liệu Private Sub Luu_Du_Lieu() Dim rs As New ADODB.Recordset Dim str If Trim(dcbmonhoc) = "" Then MsgBox "Chú ý: Mã môn không được trống", vbOKOnly + vbExclamation, "Thông báo" Me.MousePointer = 0 Exit Sub End If If Trim(dcbmahssv) = "" Then MsgBox "Chú ý: Mã sinh viên không được trống", vbOKOnly + vbExclamation, "Thông báo" Me.MousePointer = 0 Exit Sub Bài tập Phân tích và thiết kế hệ thống thông tin quản lý Phạm Hùng Phú - Nguyễn Văn Thẩm 269 End If str = "select*from DiemLT where (Masinhvien='" & Trim(dcbmahssv) & "')" & " and (mamon='" & Trim(txttenmon) & "')" & " and (namhoc='" & Trim(cbnamhoc) & "')" & " and (ky='" & Trim(cbky) & "')" & " and (lanthi='" & Trim(cblan) & "')" rs.Open str, CN, adOpenKeyset, adLockOptimistic, adCmdText Dim rsmon As New ADODB.Recordset Dim strmon strmon = "select*from Monhoccddh where (Mamon='" & Trim(txttenmon) & "')" rsmon.Open strmon, CN, adOpenKeyset, adLockOptimistic, adCmdText If rs.EOF = True Then rs.AddNew rs!Masinhvien = Trim(dcbmahssv) rs!mamon = Trim(txttenmon) rs!Namhoc = Trim(cbnamhoc) rs!Ky = Trim(cbky) rs!lanthi = Val(cblan) rs!diemktl1 = Val(txtdieml1) If rsmon!sodvht <= 3 Then rs!diemktl2 = -1 Else rs!diemktl2 = Val(txtdieml2) End If rs!diemthi = Val(txtdiemthi) rs.Update rs.Close Else 'sua lai rs!Masinhvien = Trim(dcbmahssv) rs!mamon = Trim(txttenmon) rs!Namhoc = Trim(cbnamhoc) rs!Ky = Trim(cbky) rs!lanthi = Val(cblan) Bài tập Phân tích và thiết kế hệ thống thông tin quản lý 270 Phạm Hùng Phú - Nguyễn Văn Thẩm rs!diemktl1 = Val(txtdieml1) rs!diemktl2 = Val(txtdieml2) rs!diemthi = Val(txtdiemthi) rs.Update End If Me.MousePointer = 0 If opsua.Value = True Then MsgBox "Dữ liệu bạn vừa sửa đã được lưu!", vbOKOnly + vbInformation, "Thông báo" Display_Listview Else MsgBox "Dữ liệu bạn vừa thêm đã được lưu !", vbOKOnly + vbInformation, "Thông báo" End If End Sub „Thủ tục xóa dữ liệu Private Sub Xoa_Du_Lieu() Dim str Dim response If Trim(dcbmahssv) = "" Then Exit Sub End If response = MsgBox("Bạn có chắc chắn muốn xóa điểm của môn học của sinh viên này không?", vbYesNo + vbQuestion, "Thông báo") If response = vbNo Then Exit Sub Else str = "delete from DiemLT where (Masinhvien='" & Trim(dcbmahssv) & "')" & " and (mamon='" & Trim(txttenmon) & "')" & " and (namhoc='" & Trim(cbnamhoc) & "')" & " and (ky='" & Trim(cbky) & "')" & " and (lanthi='" & Trim(cblan) & "')" CN.Execute (str) End If SET_NULLR Bài tập Phân tích và thiết kế hệ thống thông tin quản lý Phạm Hùng Phú - Nguyễn Văn Thẩm 271 Display_Listview End Sub „Thủ tục giải phóng Form Private Sub Form_Unload(Cancel As Integer) Unload Me close_mdb End Sub „Thủ tục click của nút sửa Private Sub opsua_Click() Un_Lock_Text cdxoa.Visible = False cdhuy.Visible = False cdluu.Visible = False cdketthucsua.Visible = False End Sub „Thủ tục click của nút thêm Private Sub opthem_Click() cdluu.Enabled = True cdhuy.Enabled = True cdluu.Visible = True cdhuy.Visible = True cdketthucsua.Visible = True LVitem.Visible = True Un_Lock_Text End Sub „Thủ tục click của nút xóa Private Sub opxoa_Click() Un_Lock_Text cdhuy.Visible = False cdluu.Visible = False cdketthucsua.Visible = False LVitem.Enabled = True LVitem.Visible = True End Sub Bài tập Phân tích và thiết kế hệ thống thông tin quản lý 272 Phạm Hùng Phú - Nguyễn Văn Thẩm „Thủ tục click của text box điểm lần 1 Private Sub txtdieml1_Click() Dim rsmon As New ADODB.Recordset Dim strmon strmon = "select*from Monhoccddh where (Mamon='" & Trim(txttenmon) & "')" rsmon.Open strmon, CN, adOpenKeyset, adLockOptimistic, adCmdText If rsmon!sodvht <= 3 Then txtdieml2.Enabled = False txtdiemthi.Enabled = True Else txtdieml2.Enabled = True End If End Sub Thủ tục click của text box điểm lần 2 Private Sub txtdieml2_Click() txtdiemthi.Enabled = True End Sub 3) Chức năng tra cứu điểm môn học lý thuyết trình Bài tập Phân tích và thiết kế hệ thống thông tin quản lý Phạm Hùng Phú - Nguyễn Văn Thẩm 273 Thiết kế các control (đối tượng) trên form STT Tên đối tượng Thuộc tính Giá trị 1 Form Name frm_tracuudiem_CD_DH_SV 2 Text box Họ tên Name txthoten 3 Text box Lần thi Name txtlan 4 Check box CK, CS Name Checkcdcq Caption CK, CS 5 Check box CL Name Checkcdlt Caption CL 6 Check box ĐK, ĐS Name Checkdhcq Caption ĐK, ĐS 7 Check box ĐL Name Checkdhlt Caption ĐL 8 Check box Năm học Name checknam Caption Năm học 9 Check box Kỳ Name checkky Caption Kỳ 10 Check box Môn học Name checkmon Caption Môn học 11 Check box Lần thi Name Checklan Caption Lần thi 12 Combox Tên lớp Name Dcbmalop 13 Combox Năm học Name cbnamhoc 14 Combox Kỳ Name cbky 15 Combox Tên môn Name dcbmonhoc 16 Combox Mã sinh viên Name dcbmahssv 17 Option Mã sinh viên Name op_masv Caption Mã sinh viên 18 Option Họ tên sinh viên Name op_hoten Caption Họ và tên sinh viên 19 Command Tìm kiếm Name cdtimkiem Picture Icon 20 Grid Điểm Name LVitem Bài tập Phân tích và thiết kế hệ thống thông tin quản lý 274 Phạm Hùng Phú - Nguyễn Văn Thẩm Mã nguồn các thủ tục Option Explicit Private flag As String Private flag1 As String Public t As Integer „Thủ tục Click của nút Combox năm học Private Sub cbnamhoc_Click() If checknamhoc.Value = 1 Then Checklan.Enabled = True txtlan.Enabled = False Else End If End Sub „Thủ tục Click của nút tìm kiếm Private Sub cdtimkiem_Click() Dim rs As New ADODB.Recordset Dim str Dim mitem As ListItem Dim kt As Boolean kt = False If op_masv.Value = True Then If Trim(dcbmahssv) = "" Then MsgBox "Hãy chọn mã sinh viên ", vbOKOnly + vbExclamation, "Thông báo" Else str = "select * from tracuudiemmh_CD_DH where Masinhvien='" & Trim(dcbmahssv) & "'" kt = True End If End If If op_hoten.Value = True Then If Trim(txthoten) = "" Then MsgBox "Hãy nhập họ tên!", vbOKOnly + vbExclamation, "Thông báo" Else Bài tập Phân tích và thiết kế hệ thống thông tin quản lý Phạm Hùng Phú - Nguyễn Văn Thẩm 275 str = "select*from tracuudiemmh_CD_DH where trim(hoten)='" & Trim(txthoten) & "'" kt = True End If End If If checkky.Value = 1 And Checkmon.Value = 1 And checknamhoc.Value = 1 And Checklan.Value = 1 Then str = str & " and ky = '" & Trim(cbky) & "' and tenmon = '" & Trim(dcbmonhoc) & "'" & " and namhoc = '" & Trim(cbnamhoc) & "'" & " and lanthi = '" & Trim(txtlan) & "'" kt = True Else If (checknamhoc.Value = 1) Then str = str & " and namhoc = '" & Trim(cbnamhoc) & "'" kt = True End If If checkky.Value = 1 Then str = str & " and ky = '" & Trim(cbky) & "'" & " and namhoc = '" & Trim(cbnamhoc) & "'" kt = True End If If Checklan.Value = 1 Then str = str & " and ky = '" & Trim(cbky) & "'" & " and namhoc = '" & Trim(cbnamhoc) & "'" & " and lanthi = '" & Trim(txtlan) & "'" kt = True End If If Checkmon.Value = 1 Then str = str & " and tenmon = '" & Trim(dcbmonhoc) & "'" kt = True End If End If If kt = True Then rs.Open str, CN, adOpenKeyset, adLockOptimistic, adCmdText LVitem.ListItems.Clear If rs.EOF = False Then While Not rs.EOF Bài tập Phân tích và thiết kế hệ thống thông tin quản lý 276 Phạm Hùng Phú - Nguyễn Văn Thẩm Set mitem = LVitem.ListItems.Add(, , rs!Namhoc) mitem.SubItems(1) = rs!Ky mitem.SubItems(2) = rs!Tenmon mitem.SubItems(3) = rs!lanthi mitem.SubItems(4) = Format(rs!diemktl1, "0.0") If rs!diemktl2 = -1 Then mitem.SubItems(5) = " " Else mitem.SubItems(5) = Format(rs!diemktl2, "0.0") End If mitem.SubItems(6) = Format(rs!diemthi, "0.0") If rs!sodvht <= 3 Then mitem.SubItems(7) = Format(rs!diemktl1 * rs!trongso1 + rs!diemthi * (1 - rs!trongso1), "0.0") Else mitem.SubItems(7) = Format(rs!diemktl1 * rs!trongso1 + rs!diemktl2 * rs!trongso2 + rs!diemthi * (1 - rs!trongso1 - rs!trongso2), "0.0") End If rs.MoveNext Wend Else MsgBox "Không tìm thấy !", vbOKOnly + vbExclamation, "Thông báo" End If End If End Sub „Thủ tục Click của check box Cao đẳng chính quy Private Sub Checkcdcq_Click() If Checkcdcq.Value = 1 Then Checkcdlt.Value = 0 Checkdhcq.Value = 0 Checkdhlt.Value = 0 Dim name As String name = App.Path & "\quanlydiem.mdb" adlop.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Persist Security Info=False;Data Source=" & name & "" Bài tập Phân tích và thiết kế hệ thống thông tin quản lý Phạm Hùng Phú - Nguyễn Văn Thẩm 277 adlop.CommandType = adCmdUnknown adlop.RecordSource = "select * from lop where left(tenlop,2)='CS' or left(tenlop,2)='CK'" adlop.Refresh Dcbmalop.DataField = "tenlop" Set Dcbmalop.DataSource = adlop Set Dcbmalop.RowSource = adlop Dcbmalop.ListField = "tenlop" Dcbmalop.Refresh End If End Sub „Thủ tục Click của check box Cao đẳng liên thông Private Sub Checkcdlt_Click() If Checkcdlt.Value = 1 Then Checkcdcq.Value = 0 Checkdhcq.Value = 0 Checkdhlt.Value = 0 Dim name As String name = App.Path & "\quanlydiem.mdb" adlop.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Persist Security Info=False;Data Source=" & name & "" adlop.CommandType = adCmdUnknown adlop.RecordSource = "select * from lop where left(tenlop,2)='CL' " adlop.Refresh Dcbmalop.DataField = "tenlop" Set Dcbmalop.DataSource = adlop Set Dcbmalop.RowSource = adlop Dcbmalop.ListField = "tenlop" Dcbmalop.Refresh End If End Sub „Thủ tục Click của check box Đại học chính quy Private Sub Checkdhcq_Click() If Checkdhcq.Value = 1 Then Checkcdlt.Value = 0 Checkcdcq.Value = 0 Bài tập Phân tích và thiết kế hệ thống thông tin quản lý 278 Phạm Hùng Phú - Nguyễn Văn Thẩm Checkdhlt.Value = 0 Dim name As String name = App.Path & "\quanlydiem.mdb" adlop.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Persist Security Info=False;Data Source=" & name & "" adlop.CommandType = adCmdUnknown adlop.RecordSource = "select * from lop where left(tenlop,2)='ĐK' or left(tenlop,2)='ĐS'" adlop.Refresh Dcbmalop.DataField = "tenlop" Set Dcbmalop.DataSource = adlop Set Dcbmalop.RowSource = adlop Dcbmalop.ListField = "tenlop" Dcbmalop.Refresh End If End Sub „Thủ tục Click của check box Cao đẳng liên thông Private Sub Checkdhlt_Click() If Checkdhlt.Value = 1 Then Checkcdlt.Value = 0 Checkdhcq.Value = 0 Checkcdcq.Value = 0 Dim name As String name = App.Path & "\quanlydiem.mdb" adlop.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Persist Security Info=False;Data Source=" & name & "" adlop.CommandType = adCmdUnknown adlop.RecordSource = "select * from lop where left(tenlop,2)='§L' " adlop.Refresh Dcbmalop.DataField = "tenlop" Set Dcbmalop.DataSource = adlop Set Dcbmalop.RowSource = adlop Dcbmalop.ListField = "tenlop" Dcbmalop.Refresh End If End Sub Bài tập Phân tích và thiết kế hệ thống thông tin quản lý Phạm Hùng Phú - Nguyễn Văn Thẩm 279 „Thủ tục Click của check box kỳ Private Sub checkky_Click() If checkky.Value = 1 Then cbky.Enabled = True Else cbky.Enabled = False cbky.Text = "" End If End Sub „Thủ tục Click của check box lần thi Private Sub Checklan_Click() If Checklan.Value = 1 Then txtlan.Enabled = True Else txtlan.Enabled = False End If End Sub „Thủ tục Click của check box môn Private Sub Checkmon_Click() If Checkmon.Value = 1 Then dcbmonhoc.Enabled = True Dim name As String name = App.Path & "\quanlydiem.mdb" If Checkdhlt.Value = 1 Then Admon.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Persist Security Info=False;Data Source=" & name & "" Admon.CommandType = adCmdUnknown Admon.RecordSource = "select * from MonhocCDDH where (mid(tenmon,1,9)'Thực hành' and mid(tenmon,1,8)'Thực tập')" & " and " & " left(mamon,4)='DHLT' " Admon.Refresh dcbmonhoc.DataField = "tenmon" Set dcbmonhoc.DataSource = Admon Set dcbmonhoc.RowSource = Admon dcbmonhoc.ListField = "tenmon" Bài tập Phân tích và thiết kế hệ thống thông tin quản lý 280 Phạm Hùng Phú - Nguyễn Văn Thẩm dcbmonhoc.Refresh End If If Checkdhcq.Value = 1 Then Admon.ConnectionString= "Provider=Microsoft.Jet.OLEDB.4.0;Persist Security Info=False;Data Source=" & name & "" Admon.CommandType = adCmdUnknown Admon.RecordSource = "select * from MonhocCDDH where (mid(tenmon,1,9)'Thực hành' and mid(tenmon,1,8)'Thực tập')" & " and " & " left(mamon,4)='DHCQ' " Admon.Refresh dcbmonhoc.DataField = "tenmon" Set dcbmonhoc.DataSource = Admon Set dcbmonhoc.RowSource = Admon dcbmonhoc.ListField = "tenmon" dcbmonhoc.Refresh End If If Checkcdlt.Value = 1 Then Admon.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Persist Security Info=False;Data Source=" & name & "" Admon.CommandType = adCmdUnknown Admon.RecordSource = "select * from MonhocCDDH where (mid(tenmon,1,9)'Thực hành' and mid(tenmon,1,8)'Thực tập')" & " and " & " left(mamon,4)='CDLT' " Admon.Refresh dcbmonhoc.DataField = "tenmon" Set dcbmonhoc.DataSource = Admon Set dcbmonhoc.RowSource = Admon dcbmonhoc.ListField = "tenmon" dcbmonhoc.Refresh End If If Checkcdcq.Value = 1 Then Admon.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Persist Security Info=False;Data Source=" & name & "" Admon.CommandType = adCmdUnknown Bài tập Phân tích và thiết kế hệ thống thông tin quản lý Phạm Hùng Phú - Nguyễn Văn Thẩm 281 Admon.RecordSource = "select * from MonhocCDDH where (mid(tenmon,1,9)'Thực hành' and mid(tenmon,1,8)'Thực tập')" & " and " & " left(mamon,4)='CDCQ' " Admon.Refresh dcbmonhoc.DataField = "tenmon" Set dcbmonhoc.DataSource = Admon Set dcbmonhoc.RowSource = Admon dcbmonhoc.ListField = "tenmon" dcbmonhoc.Refresh End If Else dcbmonhoc.Enabled = False dcbmonhoc.Text = " " Checklan.Enabled = False txtlan.Text = "" End If End Sub „Thủ tục Click của check box năm học Private Sub checknamhoc_Click() If checknamhoc.Value = 1 Then cbnamhoc.Enabled = True checkky.Enabled = True Else cbnamhoc.Enabled = False checkky.Enabled = False cbnamhoc.Text = "" Checklan.Enabled = False checkky.Value = 0 Checklan.Value = 0 End If End Sub „Thủ tục Click của combox mã sinh viên Private Sub dcbmahssv_Click(Area As Integer) cdtimkiem.Enabled = True Bài tập Phân tích và thiết kế hệ thống thông tin quản lý 282 Phạm Hùng Phú - Nguyễn Văn Thẩm checknamhoc.Enabled = True Checkmon.Enabled = True End Sub „Thủ tục Click của com box mã lớp Private Sub Dcbmalop_Click(Area As Integer) op_masv.Enabled = True op_hoten.Enabled = True Dim rs As New ADODB.Recordset Dim str str = "select * from lop where (tenlop='" & Trim(Dcbmalop) & "')" rs.Open str, CN, adOpenKeyset, adLockOptimistic, adCmdText txtmalop = rs!malop Dim rs1 As New ADODB.Recordset Dim str1 Dim name As String name = App.Path & "\quanlydiem.mdb" admahssv.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Persist Security Info=False;Data Source=" & name & "" admahssv.CommandType = adCmdUnknown admahssv.RecordSource = "select * from hoclopcddh where (Malop='" & Trim(txtmalop) & "')" admahssv.Refresh dcbmahssv.DataField = "Masinhvien" Set dcbmahssv.DataSource = admahssv Set dcbmahssv.RowSource = admahssv dcbmahssv.ListField = "Masinhvien" dcbmahssv.Refresh End Sub „Thủ tục Click của com box môn học Private Sub dcbmonhoc_Click(Area As Integer) Checklan.Enabled = True End Sub „Thủ tục nạp form Private Sub Form_Load() Bài tập Phân tích và thiết kế hệ thống thông tin quản lý Phạm Hùng Phú - Nguyễn Văn Thẩm 283 Open_mdb Lock_Text End Sub „Thủ tục hiện dữ liệu lên ListView Private Sub Display_Listview() Dim rs As New ADODB.Recordset Dim str Dim mitem As ListItem LVitem.ListItems.Clear str = "select * from tracuudiemmh_CD_DH" rs.Open str, CN, adOpenKeyset, adLockOptimistic, adCmdText If rs.EOF = False Then While Not rs.EOF Set mitem = LVitem.ListItems.Add(, , rs!Namhoc) mitem.SubItems(1) = rs!Ky mitem.SubItems(2) = rs!Tenmon mitem.SubItems(3) = rs!lanthi mitem.SubItems(4) = Format(rs!diemktl1, "0.0") If rs!diemktl2 = -1 Then mitem.SubItems(5) = " " Else mitem.SubItems(5) = Format(rs!diemktl2, "0.0") End If mitem.SubItems(6) = Format(rs!diemthi, "0.0") If rs!sodvht <= 3 Then mitem.SubItems(7) = Format(rs!diemktl1 * rs!trongso1 + rs!diemthi * (1 - rs!trongso1), "0.0") Else mitem.SubItems(7) = Format(rs!diemktl1 * rs!trongso1 + rs!diemktl2 * rs!trongso2 + rs!diemthi * (1 - rs!trongso1 - rs!trongso2), "0.0") End If rs.MoveNext Wend Bài tập Phân tích và thiết kế hệ thống thông tin quản lý 284 Phạm Hùng Phú - Nguyễn Văn Thẩm End If End Sub „Thủ tục làm mất hiệu lực của các đối tượng Private Sub Lock_Text() cbky.Enabled = False dcbmonhoc.Enabled = False dcbmahssv.Enabled = False cbnamhoc.Enabled = False txthoten.Enabled = False op_masv.Enabled = False op_hoten.Enabled = False checknamhoc.Enabled = False checkky.Enabled = False Checkmon.Enabled = False Checklan.Enabled = False txtlan.Enabled = False End Sub End Sub „Thủ tục làm cho giá trị của các Text box thành rỗng Private Sub Null_Text() cbky.Text = " " dcbmonhoc.Text = " " dcbmahssv.Text = " " txthoten.Text = " " End Sub „Thủ tục giải phóng form Private Sub Form_Unload(Cancel As Integer) close_mdb End Sub End Sub „Thủ tục click của Option họ tên Private Sub op_hoten_Click() dcbmahssv.Enabled = False txthoten.Enabled = True Bài tập Phân tích và thiết kế hệ thống thông tin quản lý Phạm Hùng Phú - Nguyễn Văn Thẩm 285 cbnamhoc.Enabled = False Checkmon.Enabled = True End Sub „Thủ tục click của Option mã lớp Private Sub op_masv_Click() dcbmahssv.Enabled = True txthoten.Enabled = False txthoten.Text = "" End Sub „Thủ tục click của Option năm học Private Sub op_namhoc_Click() cbnamhoc.Enabled = True End Sub „Thủ tục click của text box họ tên Private Sub txthoten_Click() cdtimkiem.Enabled = True checknamhoc.Enabled = True Checkmon.Enabled = True End Sub 4) Chức năng in hồ sơ kiểm tra quá trình Bài tập Phân tích và thiết kế hệ thống thông tin quản lý 286 Phạm Hùng Phú - Nguyễn Văn Thẩm Thiết kế các control (đối tượng) trên form STT Tên đối tượng Thuộc tính Giá trị 1 Check box CK, CS Name Checkcdcq Caption CK, CS 2 Check box CL Name Checkcdlt Caption CL 3 Check box ĐK, ĐS Name Checkdhcq Caption ĐK, ĐS 4 Check box ĐL Name Checkdhlt Caption ĐL 5 Combox Tên lớp Name Dcbmalop 6 Combox Năm học Name cbnamhoc 7 Combox Kỳ Name cbky 8 Combox Tên môn Name dcbmonhoc 9 Option Mẫu 1-2 Name op_m12 Caption Danh sách sinh viên kiểm tra quá trình (Mẫu M1-2) 10 Option Mẫu 1-3 Name op_m13 Caption Biên bản chấm điểm kiểm tra quá trình (Mẫu M1-3) 11 Command In ấn Name cdin Picture Icon Mã nguồn các thủ tục Option Explicit Dim dkmon As String „Thủ tục click của Combox kỳ Private Sub cbky_Click() dcbmonhoc.Enabled = True Dim name As String name = App.Path & "\quanlydiem.mdb" Admon.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Persist Security Info=False;Data Source=" & name & "" Bài tập Phân tích và thiết kế hệ thống thông tin quản lý Phạm Hùng Phú - Nguyễn Văn Thẩm 287 Admon.CommandType = adCmdUnknown Admon.RecordSource = "select * from mon_lop_ky_namhoc where (mid(tenmon,1,9)'Thực hành' and mid(tenmon,1,8)'Thực tập" and " & dkmon & " and ky='" & Trim(cbky) & "' and namhoc='" & Trim(cbnamhoc) & "' " & " and malop='" & Trim(txttenlop) & "' " Admon.Refresh dcbmonhoc.DataField = "tenmon" Set dcbmonhoc.DataSource = Admon Set dcbmonhoc.RowSource = Admon dcbmonhoc.ListField = "tenmon" dcbmonhoc.Refresh End Sub „Thủ tục click của Combox năm học Private Sub cbnamhoc_Click() cbky.Enabled = True End Sub „Thủ tục click của nút in Private Sub cd_in_Click() Dim str As String Dim rs As New ADODB.Recordset str = " select * from thongtinsvcddh1 where trim(tenlop)= '" & Trim(Dcbmalop.BoundText) & "'" str = str & " and ky='" & Trim(cbky) & "'" str = str & " and namhoc='" & Trim(cbnamhoc) & "'" str = str & " and tenmon='" & Trim(dcbmonhoc) & "'" If op_m12.Value = True Then op_m13.Value = False rs.Open str, CN, adOpenKeyset, adLockOptimistic, adCmdText If rs.RecordCount > 1 Then rpr_m12.Data1.RecordSource = str rpr_m12.Show Else MsgBox "Không tìm thấy !", vbOKOnly + vbExclamation, "Thông báo" End If End If Bài tập Phân tích và thiết kế hệ thống thông tin quản lý 288 Phạm Hùng Phú - Nguyễn Văn Thẩm If op_m13.Value = True Then op_m12.Value = False rs.Open str, CN, adOpenKeyset, adLockOptimistic, adCmdText If rs.RecordCount > 1 Then rpr_m13.Data1.RecordSource = str rpr_m13.Show Else MsgBox "Không tìm thấy !", vbOKOnly + vbExclamation, "Thông báo" End If End If End Sub „Thủ tục click của Check box Cao đẳng chính quy Private Sub Checkcdcq_Click() If Checkcdcq.Value = 1 Then Dcbmalop.Enabled = True Checkcdlt.Value = 0 Checkdhcq.Value = 0 Checkdhlt.Value = 0 Dim name As String name = App.Path & "\quanlydiem.mdb" adlop.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Persist Security Info=False;Data Source=" & name & "" adlop.CommandType = adCmdUnknown adlop.RecordSource = "select * from lop where left(tenlop,2)='CS' or left(tenlop,2)='CK'" adlop.Refresh Dcbmalop.DataField = "tenlop" Set Dcbmalop.DataSource = adlop Set Dcbmalop.RowSource = adlop Dcbmalop.ListField = "tenlop" Dcbmalop.Refresh dkmon = " left(mamon,4)='CDCQ' " End If End Sub „Thủ tục click của Check box Cao đẳng liên thông Private Sub Checkcdlt_Click() Bài tập Phân tích và thiết kế hệ thống thông tin quản lý Phạm Hùng Phú - Nguyễn Văn Thẩm 289 If Checkcdlt.Value = 1 Then Dcbmalop.Enabled = True Checkcdcq.Value = 0 Checkdhcq.Value = 0 Checkdhlt.Value = 0 Dim name As String name = App.Path & "\quanlydiem.mdb" adlop.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Persist Security Info=False;Data Source=" & name & "" adlop.CommandType = adCmdUnknown adlop.RecordSource = "select * from lop where left(tenlop,2)='CL' " adlop.Refresh Dcbmalop.DataField = "tenlop" Set Dcbmalop.DataSource = adlop Set Dcbmalop.RowSource = adlop Dcbmalop.ListField = "tenlop" Dcbmalop.Refresh dkmon = " left(mamon,4)='CDLT' " End If End Sub „Thủ tục click của Check box Đại học chính quy Private Sub Checkdhcq_Click() If Checkdhcq.Value = 1 Then Dcbmalop.Enabled = True Checkcdlt.Value = 0 Checkcdcq.Value = 0 Checkdhlt.Value = 0 Dim name As String name = App.Path & "\quanlydiem.mdb" adlop.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Persist Security Info=False;Data Source=" & name & "" adlop.CommandType = adCmdUnknown adlop.RecordSource = "select * from lop where left(tenlop,2)='ĐK' or left(tenlop,2)='ĐS'" adlop.Refresh Dcbmalop.DataField = "tenlop" Bài tập Phân tích và thiết kế hệ thống thông tin quản lý 290 Phạm Hùng Phú - Nguyễn Văn Thẩm Set Dcbmalop.DataSource = adlop Set Dcbmalop.RowSource = adlop Dcbmalop.ListField = "tenlop" Dcbmalop.Refresh dkmon = " left(mamon,4)='DHCQ' " End If End Sub „Thủ tục click của Check box Đại học liên thông Private Sub Checkdhlt_Click() If Checkdhlt.Value = 1 Then Dcbmalop.Enabled = True Checkcdlt.Value = 0 Checkdhcq.Value = 0 Checkcdcq.Value = 0 Dim name As String name = App.Path & "\quanlydiem.mdb" adlop.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Persist Security Info=False;Data Source=" & name & "" adlop.CommandType = adCmdUnknown adlop.RecordSource = "select * from lop where left(tenlop,2)='ĐL' " adlop.Refresh Dcbmalop.DataField = "tenlop" Set Dcbmalop.DataSource = adlop Set Dcbmalop.RowSource = adlop Dcbmalop.ListField = "tenlop" Dcbmalop.Refresh dkmon = " left(mamon,4)='DHLT' " End If End Sub „Thủ tục click của Combox mã lớp Private Sub Dcbmalop_Click(Area As Integer) cbnamhoc.Enabled = True Dim rs As New ADODB.Recordset Dim str str = "select * from lop where (tenlop='" & Trim(Dcbmalop) & "')" rs.Open str, CN, adOpenKeyset, adLockOptimistic, adCmdText Bài tập Phân tích và thiết kế hệ thống thông tin quản lý Phạm Hùng Phú - Nguyễn Văn Thẩm 291 txttenlop = rs!malop End Sub „Thủ tục click của Combox môn học Private Sub dcbmonhoc_Click(Area As Integer) op_m12.Enabled = True op_m13.Enabled = True End Sub „Thủ tục khởi tạo form Private Sub Form_Initialize() cbky.Enabled = False dcbmonhoc.Enabled = False dcbmonhoc.Text = "" Dcbmalop.Enabled = False cd_in.Enabled = False cbnamhoc.Enabled = False End Sub „Thủ tục nạp form Private Sub Form_Load() Open_mdb End Sub „Thủ tục giải phóng form Private Sub Form_Unload(Cancel As Integer) close_mdb End Sub „Thủ tục click của Option in mẫu 12 Private Sub op_m12_Click() cd_in.Enabled = True End Sub „Thủ tục click của Option in mẫu 13 Private Sub op_m13_Click() cd_in.Enabled = True End Sub 5) Chức năng in phiếu báo điểm đánh giá học phần Bài tập Phân tích và thiết kế hệ thống thông tin quản lý 292 Phạm Hùng Phú - Nguyễn Văn Thẩm Thiết kế các control (đối tượng) trên form STT Tên đối tượng Thuộc tính Giá trị 1 Check box CK, CS Name Checkcdcq Caption CK, CS 2 Check box CL Name Checkcdlt Caption CL 3 Check box ĐK, ĐS Name Checkdhcq Caption ĐK, ĐS 5 Combox Tên lớp Name Dcbmalop 6 Combox Năm học Name cbnamhoc 7 Combox Kỳ Name cbky 8 Combox Tên môn Name dcbmonhoc 9 Option Mẫu 1_12 Name op_m16 Caption Phiếu báo điểm học phần lý thuyết 10 Option Mẫu 16 Name op_m17 Caption Phiếu báo điểm học phần thự hành 11 Command In ấn Name Cdin 12 Check box lân 1 Name Checklan1 Caption Lân 1 13 Check box thi lại Name Checkthilai Caption Thi lại Bài tập Phân tích và thiết kế hệ thống thông tin quản lý Phạm Hùng Phú - Nguyễn Văn Thẩm 293 Option Explicit Dim dkmon As String „Thủ tục click của combox kỳ Private Sub cbky_Click() dcbmonhoc.Enabled = True Dim name As String name = App.Path & "\quanlydiem.mdb" If op_m16.Value = True Then Admon.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Persist Security Info=False;Data Source=" & name & "" Admon.CommandType = adCmdUnknown Admon.RecordSource = "select * from mon_lop_ky_namhoc where (mid(tenmon,1,9)'Thùc hành' and mid(tenmon,1,8)'Thực tập')" & " and " & dkmon & " and ky='" & Trim(cbky) & "' and namhoc='" & Trim(cbnamhoc) & "' " & " and malop='" & Trim(txttenlop) & "' " Admon.Refresh dcbmonhoc.DataField = "tenmon" Set dcbmonhoc.DataSource = Admon Set dcbmonhoc.RowSource = Admon dcbmonhoc.ListField = "tenmon" dcbmonhoc.Refresh End If If op_m17.Value = True Then Admon.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Persist Security Info=False;Data Source=" & name & "" Admon.CommandType = adCmdUnknown Admon.RecordSource = "select * from mon_lop_ky_namhoc where (mid(tenmon,1,9)='Thực hành' or mid(tenmon,1,8)='Thực tập')" & " and " & dkmon & " and ky='" & Trim(cbky) & "' and namhoc='" & Trim(cbnamhoc) & "' " & " and malop='" & Trim(txttenlop) & "' " Bài tập Phân tích và thiết kế hệ thống thông tin quản lý 294 Phạm Hùng Phú - Nguyễn Văn Thẩm Admon.Refresh dcbmonhoc.DataField = "tenmon" Set dcbmonhoc.DataSource = Admon Set dcbmonhoc.RowSource = Admon dcbmonhoc.ListField = "tenmon" dcbmonhoc.Refresh End If End Sub „Thủ tục click của combox năm học Private Sub cbnamhoc_Click() cbky.Enabled = True End Sub „Thủ tục click của nút in Private Sub cd_in_Click() Dim str As String Dim rs As New ADODB.Recordset If Checklan1.Value = 1 Then If op_m16.Value = True Then str = " select * from m112a where trim(tenlop)= '" & Trim(Dcbmalop.BoundText) & "'" str = str & " and ky='" & Trim(cbky) & "'" str = str & " and namhoc='" & Trim(cbnamhoc) & "'" str = str & " and tenmon='" & Trim(dcbmonhoc) & "'" str = str & " order by Masinhvien asc" op_m17.Value = False rs.Open str, CN, adOpenKeyset, adLockOptimistic, adCmdText If rs.RecordCount > 1 Then rpr_m112a.Data1.RecordSource = str rpr_m112a.Show Else MsgBox "Không tìm thấy !", vbOKOnly + vbExclamation, "Thông báo" Bài tập Phân tích và thiết kế hệ thống thông tin quản lý Phạm Hùng Phú - Nguyễn Văn Thẩm 295 End If End If If op_m17.Value = True Then str = " select * from m116al1_2 where trim(tenlop)= '" & Trim(Dcbmalop.BoundText) & "'" str = str & " and ky='" & Trim(cbky) & "'" str = str & " and namhoc='" & Trim(cbnamhoc) & "'" str = str & " and tenmon='" & Trim(dcbmonhoc) & "'" str = str & " order by Masinhvien asc" op_m16.Value = False rs.Open str, CN, adOpenKeyset, adLockOptimistic, adCmdText If rs.RecordCount > 1 Then rpr_m116a2.Data1.RecordSource = str rpr_m116a2.Show Else MsgBox "Không tìm thấy !", vbOKOnly + vbExclamation, "Thông báo" End If End If End If If Checkthilai.Value = 1 Then str = " select * from m112al2 where trim(tenlop)= '" & Trim(Dcbmalop.BoundText) & "'" str = str & " and ky='" & Trim(cbky) & "'" str = str & " and namhoc='" & Trim(cbnamhoc) & "'" str = str & " and tenmon='" & Trim(dcbmonhoc) & "'" str = str & " order by Masinhvien asc" If op_m16.Value = True Then op_m17.Value = False rs.Open str, CN, adOpenKeyset, adLockOptimistic, adCmdText If rs.RecordCount > 1 Then rpr_m112al2.Data1.RecordSource = str Bài tập Phân tích và thiết kế hệ thống thông tin quản lý 296 Phạm Hùng Phú - Nguyễn Văn Thẩm rpr_m112al2.Show Else MsgBox "Không tìm thấy !", vbOKOnly + vbExclamation, "Thông báo" End If End If If op_m17.Value = True Then op_m16.Value = False rs.Open str, CN, adOpenKeyset, adLockOptimistic, adCmdText If rs.RecordCount > 1 Then rpr_m17_TL.Data1.RecordSource = str rpr_m17_TL.Show Else MsgBox "Không tìm thấy !", vbOKOnly + vbExclamation, "Thông báo" End If End If End If End Sub „Thủ tục click của check box cao đẳng chính quy Private Sub Checkcdcq_Click() If Checkcdcq.Value = 1 Then Checkcdlt.Value = 0 Checkdhcq.Value = 0 Checkdhlt.Value = 0 Dim name As String name = App.Path & "\quanlydiem.mdb" adlop.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Persist Security Info=False;Data Source=" & name & "" adlop.CommandType = adCmdUnknown adlop.RecordSource = "select * from lop where left(tenlop,2)='CS' or left(tenlop,2)='CK'" adlop.Refresh Bài tập Phân tích và thiết kế hệ thống thông tin quản lý Phạm Hùng Phú - Nguyễn Văn Thẩm 297 Dcbmalop.DataField = "tenlop" Set Dcbmalop.DataSource = adlop Set Dcbmalop.RowSource = adlop Dcbmalop.ListField = "tenlop" Dcbmalop.Refresh dkmon = " left(mamon,4)='CDCQ' " End If End Sub „Thủ tục click của check box cao đẳng liên thông Private Sub Checkcdlt_Click() If Checkcdlt.Value = 1 Then 'Dcbmalop.Enabled = True Checkcdcq.Value = 0 Checkdhcq.Value = 0 Checkdhlt.Value = 0 Dim name As String name = App.Path & "\quanlydiem.mdb" adlop.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Persist Security Info=False;Data Source=" & name & "" adlop.CommandType = adCmdUnknown adlop.RecordSource = "select * from lop where left(tenlop,2)='CL' " adlop.Refresh Dcbmalop.DataField = "tenlop" Set Dcbmalop.DataSource = adlop Set Dcbmalop.RowSource = adlop Dcbmalop.ListField = "tenlop" Dcbmalop.Refresh dkmon = " left(mamon,4)='CDLT' " End If End Sub „Thủ tục click của check box đại học chính quy Bài tập Phân tích và thiết kế hệ thống thông tin quản lý 298 Phạm Hùng Phú - Nguyễn Văn Thẩm Private Sub Checkdhcq_Click() If Checkdhcq.Value = 1 Then 'Dcbmalop.Enabled = True Checkcdlt.Value = 0 Checkcdcq.Value = 0 Checkdhlt.Value = 0 Dim name As String name = App.Path & "\quanlydiem.mdb" adlop.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Persist Security Info=False;Data Source=" & name & "" adlop.CommandType = adCmdUnknown adlop.RecordSource = "select * from lop where left(tenlop,2)='ĐK' or left(tenlop,2)='ĐS'" adlop.Refresh Dcbmalop.DataField = "tenlop" Set Dcbmalop.DataSource = adlop Set Dcbmalop.RowSource = adlop Dcbmalop.ListField = "tenlop" Dcbmalop.Refresh dkmon = " left(mamon,4)='DHCQ' " End If End Sub „Thủ tục click của check box đại học liên thông Private Sub Checkdhlt_Click() If Checkdhlt.Value = 1 Then Checkcdlt.Value = 0 Checkdhcq.Value = 0 Checkcdcq.Value = 0 Dim name As String name = App.Path & "\quanlydiem.mdb" Bài tập Phân tích và thiết kế hệ thống thông tin quản lý Phạm Hùng Phú - Nguyễn Văn Thẩm 299 adlop.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Persist Security Info=False;Data Source=" & name & "" adlop.CommandType = adCmdUnknown adlop.RecordSource = "select * from lop where left(tenlop,2)='ĐL' " adlop.Refresh Dcbmalop.DataField = "tenlop" Set Dcbmalop.DataSource = adlop Set Dcbmalop.RowSource = adlop Dcbmalop.ListField = "tenlop" Dcbmalop.Refresh dkmon = " left(mamon,4)='DHLT' " End If End Sub „Thủ tục click của check box lần 1 Private Sub Checklan1_Click() If Checklan1.Value = 1 Then Checkthilai.Value = 0 cd_in.Enabled = True End If End Sub „Thủ tục click của check box thi lại Private Sub Checkthilai_Click() If Checkthilai.Value = 1 Then Checklan1.Value = 0 cd_in.Enabled = True End If End Sub „Thủ tục click của combox mã lớp Private Sub Dcbmalop_Click(Area As Integer) cbnamhoc.Enabled = True Dim rs As New ADODB.Recordset Bài tập Phân tích và thiết kế hệ thống thông tin quản lý 300 Phạm Hùng Phú - Nguyễn Văn Thẩm Dim str str = "select * from lop where (tenlop='" & Trim(Dcbmalop) & "')" rs.Open str, CN, adOpenKeyset, adLockOptimistic, adCmdText txttenlop = rs!malop End Sub „Thủ tục click của combox môn học Private Sub dcbmonhoc_Click(Area As Integer) Checklan1.Enabled = True Checkthilai.Enabled = True End Sub „Thủ tục khởi tạo form Private Sub Form_Initialize() cbky.Enabled = False dcbmonhoc.Enabled = False dcbmonhoc.Text = "" Dcbmalop.Enabled = False cd_in.Enabled = False Checklan1.Enabled = False Checkthilai.Enabled = False cbnamhoc.Enabled = False End Sub „Thủ tục load form Private Sub Form_Load() Open_mdb End Sub „Thủ tục giải phóng form Private Sub Form_Unload(Cancel As Integer) close_mdb End Sub „Thủ tục click của option in mẫu 1_12 Private Sub op_m16_Click() Bài tập Phân tích và thiết kế hệ thống thông tin quản lý Phạm Hùng Phú - Nguyễn Văn Thẩm 301 Dim name As String name = App.Path & "\quanlydiem.mdb" If op_m16.Value = True Then Dcbmalop.Enabled = True Checkthilai.Value = 0 Checklan1.Value = 0 op_m17.Value = False Checklan1.Enabled = False Checkthilai.Enabled = False End If „Thủ tục click của check box cao đẳng chính quy End Sub „Thủ tục click của option in mẫu 16 Private Sub op_m17_Click() Dim name As String name = App.Path & "\quanlydiem.mdb" If op_m17.Value = True Then Dcbmalop.Enabled = True Checkthilai.Value = 0 Checklan1.Value = 0 op_m16.Value = False Checklan1.Enabled = False Checkthilai.Enabled = False End If End Sub Bài tập Phân tích và thiết kế hệ thống thông tin quản lý 302 Phạm Hùng Phú - Nguyễn Văn Thẩm TÀI LIỆU THAM KHẢO [1]. Phạm Hùng Phú. Phân tích thiết kế hệ thống thông tin quản lý. Giáo trình nội bộ. 2010. [2]. Đinh Xuân Lâm. Phân tích thiết kế hệ thống trong lập trình. NXB thống kê. 2005. [3]. Nguyễn Văn Ba. Phân tích thiết kế hệ thống thông tin. Nhà xuất bản Đại học quốc gia Hà Nội. 2003. [4]. Thạc Bình Cường. Phân tích thiết kế hệ thống thông tin. Nhà xuất bản Khoa học và Kỹ thuật. 2002. [5]. Jeffref D Ulman. Nguyên lý các hệ cơ sở dữ liệu. Tập 1,2. Biên dich Trần Đức Quang. NXB Thống kê. 2002. [6]. Ngô Trung Việt. Phân tích thiết kế tin học hệ thống trong quản lý - kinh doanh - nghiệp vụ. Nhà xuất bản Giao thông vận tải. 2000. DCNCC R222(AGH) F222 = Ø

Các file đính kèm theo tài liệu này:

  • pdfbai_tap_phan_tich_va_thiet_ke_he_thong_thong_tin_quan_ly_pha.pdf
Tài liệu liên quan