Hỗ trợ chuẩn đoán loại hỏng hóc máy điện thoại
          
        
            
            
              
            
 
            
                
                    Mục đích
Nghiên cứu các phương pháp suy diễn mờ dựa trên độ đo các giá trị tham số kỹ thuật thực tế nhằm giaỉ quyết những vấn đề của bài toán chẩn đoán loại hỏng máy điện thoại . Từ đó thiết kế và xây dựng hệ hổ trợ quyết định chẩn đoán loại hỏng của máy điện thoại thuê bao trên cơ sở lý thuyết đã nghiên cứu.
Yêu cầu
-Hệ thống mới phải có tính năng giao tiếp với tổng đài, gởi lệnh đo, nhận các thông số kỹ thuật của đường dây thuê bao, chẩn đoán ra loại hỏng điện thoại và tự động cập nhật vào cơ sở dữ liệu.
-Hệ thông phải có đầy đủ các tính năng : thêm , xóa , sửa, tra cứu các dữ liệu thuê bao, in ấn các biểu mẫu, báo cáo thống kê.
-Có khả năng thêm mới , xoá , sửa các luật suy diễn để hoàn chỉnh tập luật, đảm bảo tính chính xác của việc chẩn đoán loại hỏng điện thoại.
MỤC LỤC
 
LỜI MỞ ĐẦU 3
GIỚI THIỆU BÀI TOÁN 4
CHƯƠNG1: GIỚI THIỆU HỆ THỐNG BÁO VÀ XỬ LÝ MÁY HỎNG TẠI ĐÀI 119 BƯU ĐIỆN TP NHA TRANG HIỆN TẠI, ĐỀ XUẤT HỆ THỐNG MỚI.
1.1 Sơ lược mạng viễn thông thành phố Nha Trang 6
1.2. Tổ chức hoạt động dịch vụ nhận và xử lý máy điện thoại hỏng hiện tại:
1.2.1 Hoạt động dịch vụ 119 hiện tại 8
 1.2.2 Ưu nhược điểm của hệ thống này .8
1.3. Xây dựng hoạt động của dịch vụ 119 tự động
1.3.1 Nhu cầu có một hệ thống mới 9
 1.3.2 Giới thiệu hệ thống dịch vụ 119 mới 9
 13.3 Hoạt động của dịch vụ 119 tự động 10
 1.3.4Vai trò của chuyên gia trong hệ thống 12
Chương 2:THU NHẬN VÀ BIỄU DIỄN TRI THỨC
2.1 Thu nạp tri thức .13
2.2 Biễu diễn tri thức .13
 2.2.1 Các dạng tri thức 13 
 2.2.2 Các phương pháp biễu diễn tri thức 14
Chương 3:LÝ THUYẾT TẬP MỜ VÀ HỆ HỔ TRỢ QUYẾT ĐỊNH
3.1 Tập mờ.
3.1.1 Khái niệm về tập mờ 16 
 3.1.2 Các phép toán trên tập mờ .17
 3.1.3 Các tính chất của tập mờ .19
3.2 Quan hệ mờ:
3.2.1 Khái niệm về quan hệ mờ .19
 3.2.2 Các phép toán trên quan hệ mờ .20
 3.2.3 Phép hợp thành của các quan hệ mờ .20
 3.2.4 Khoảng cách giữa hai tập mờ 21
3.3 Tổng quát hóa các phép toán trên tập mờ 22
3.4 Phương pháp khử mờ .23
3.5 Các hệ trợ giúp quyết định:
3.5.1 Giới thiệu 24
 3.5.2 DSS là gì .24
 3.5.3 Các đặc tính và khả năng của DSS .25
 3.5.4 Những lợi ích của DSS .26
 3.5.5 Các thành phần của DSS 27
3.5.6Hệ chuyên gia trợ giúp chẩn đoán loại hỏng máy điện thoại .28 
Chương 4: SUY DIỄN MỜ
4.1 Suy diễn mờ:
4.1.1 Mở đầu .30
4.1.2 Suy diễn mờ 30
4.1.3 Suy diễn mờ mở rộng:(Đa biến) 33
4.1.3 Suy diễn mờ tổng quát:(Đa điều kiện) .33
Chương 5: XÂY DỰNG HỆ HỔ TRỢ QUYẾT ĐỊNH TRẠNG THÁI HỎNG MÁY ĐIỆN THOẠI
 5.1 Thực hiện kết nối đo các thông số kỹ thuật của đường dây thuê bao
 5.1.1 Mô hình kết nối giữa máy tính và tổng đài trung tâm .35
5.1.2 Kỹ thuật kết nối .36
5.1.3 Thực hiện phép đo tự động .36
5.1.4 Phân tích kết quả, cập nhật kho dữ liệu 37
 5.2 Xây dựng hệ hổ trợ quyết định
5.2.1 Các tham số suy diễn .37 
5.2.2 Định nghĩa và mờ hoá các biến logic vào ra .38
5.2.3 Định nghĩa các luật mờ 40
5.2.4 Lựa chọn hệ cơ sở dữ liệu và ngôn ngữ lập trình 40
Chương 6:PHÂN TÍCH THIẾT KẾ CHƯƠNG TRÌNH
6.1 Đặc tả bài toán
6.1.1 Giới thiệu chung .42
 6.1.2 Đặc tả công việc .43
 6.2 Phân tích các sơ đồ
6.2.1 Sơ đồ tổ chức 46
 6.2.2 Sơ đồ môi trường 47
 6.2.3 Sơ đồ chức năng nghiệp vụ .47
 6.2.4 Sơ đồ dòng dữ liệu 50 
6.3 Thiết kế chương trình
6.3.1 Xây dựng mô hình dữ liệu thực thể 55
6.3.2 Xây dựng mô hình dữ liệu quan hệ 55 
6.3.3 Sơ đồ liên kết các tập tin cơ sở dữ liệu .61
6.3.4 Giao diện hệ thống chương trình 62
6.3.5 Các chương trình trong hệ thống 62
6.3.6 Giới thiệu một số chương trình 62
 NHẬN XÉT VÀ ĐỊNH HƯỚNG .76
 PHỤ LỤC .77
 TÀI LIỆU THAM KHẢO .119
Hỗ trợ chuẩn đoán loại hỏng hóc máy điện thoại
                
              
                                            
                                
            
 
            
                 123 trang
123 trang | 
Chia sẻ: banmai | Lượt xem: 2040 | Lượt tải: 1 
              
            Bạn đang xem trước 20 trang tài liệu Hỗ trợ chuẩn đoán loại hỏng hóc máy điện thoại, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
frmSo_lieu_chinh.txtSo_may.text
 frmDo_thu.Show 1
 Else
 MsgBox "Máy đang sửa"
 End If
 End If
End Sub
Private Sub cmdDong_y_Click()
 Dim Tam As String
 Dim Ma_KH As String
 Dim Ten_TB As String
 Dim BaoLut_Sua As ADODB.Recordset
 Set BaoLut_Sua = New ADODB.Recordset
 BaoLut_Sua.LockType = adLockOptimistic
 BaoLut_Sua.CursorType = adOpenKeyset
 Dim QuanTrong_Sua As ADODB.Recordset
 Set QuanTrong_Sua = New ADODB.Recordset
 QuanTrong_Sua.LockType = adLockOptimistic
 QuanTrong_Sua.CursorType = adOpenKeyset
 Dim SlieuSua As ADODB.Recordset
 Set SlieuSua = New ADODB.Recordset
 SlieuSua.LockType = adLockOptimistic
 SlieuSua.CursorType = adOpenKeyset
 Dim Khachhang_sua As ADODB.Recordset
 Set Khachhang_sua = New ADODB.Recordset
 Khachhang_sua.LockType = adLockOptimistic
 Khachhang_sua.CursorType = adOpenKeyset
 Dim ThietBi_Sua As ADODB.Recordset
 Set ThietBi_Sua = New ADODB.Recordset
 ThietBi_Sua.LockType = adLockOptimistic
 ThietBi_Sua.CursorType = adOpenKeyset
 Tam = Me.txtSo_may.text
 Ma_KH = Me.txtMa_KH.text
 Ten_TB = Me.cbmLoai_TB.text
 '-----------------Tim ma thiet bi da sua----------
 ThietBi_Sua.Source = "select Ma_Tbi from tblThietbi where Ten_Tbi ='" & Ten_TB & "' "
 ThietBi_Sua.ActiveConnection = SLC
 ThietBi_Sua.Open
 '----------------Sua ten khach hang--------
 Khachhang_sua.Source = "select Ten_kh from tblKhachhang where Ma_kh ='" & Ma_KH & "' "
 Khachhang_sua.ActiveConnection = SLC
 Khachhang_sua.Open
 Khachhang_sua.Fields(0).Value = Me.txtTen_KH.text
 Khachhang_sua.Update
 '----------------Sua thong tin thue bao--------------
 'SlieuSua.Source = " SELECT So_may, tblDienthoai.Ma_KH,Noi_D_may, So_nha ,D_pho,Toa_do_MDF,Cap_goc,Doi_so,Class,Ten_KH,tblDienthoai.Ma_TBi From tblDienThoai,tblThietbi,tblKhachhang WHERE tblDienthoai.So_may = '" & Tam & "' and tblDienthoai.Ma_KH=tblKhachhang.Ma_KH and tblDienthoai.Ma_Tbi=tblThietbi.Ma_TBi "
 SlieuSua.Source = " SELECT So_may, Noi_D_may, So_nha ,D_pho,Toa_do_MDF,Cap_goc,Doi_so,Class,Ma_TBi From tblDienThoai,tblKhachhang WHERE tblDienthoai.So_may = '" & Tam & "' "
 SlieuSua.ActiveConnection = SLC
 SlieuSua.Open
 With SlieuSua
 .Fields(0).Value = frmSo_lieu_chinh.txtSo_may.text
 .Fields(7).Value = frmSo_lieu_chinh.txtclass.text
 .Fields(1).Value = frmSo_lieu_chinh.txtNoiDM.text
 .Fields(2).Value = frmSo_lieu_chinh.txtSo_nha.text
 .Fields(3).Value = frmSo_lieu_chinh.txtDuong_pho.text
 .Fields(4).Value = frmSo_lieu_chinh.txtToa_do_MDF.text
 .Fields(5).Value = frmSo_lieu_chinh.txtCap_goc.text
 .Fields(6).Value = frmSo_lieu_chinh.txtDoi_so.text
 .Fields(8).Value = ThietBi_Sua.Fields(0).Value
 .Update
 End With
 'SlieuSua.Close
 '---------------Xet xem co bao lut va quan trong khong-----
 BaoLut_Sua.Source = " SELECT So_may From tblBaoLut WHERE So_may = " & Tam & " "
 BaoLut_Sua.ActiveConnection = SLC
 BaoLut_Sua.Open
 QuanTrong_Sua.Source = " SELECT so_may From tblQuantrong WHERE So_may = " & Tam & " "
 QuanTrong_Sua.ActiveConnection = SLC
 QuanTrong_Sua.Open
 '-----------Tim may bao lut-------
 '----------Neu truoc co sau khong thi xoa va nguoc lai------
 If Not (BaoLut_Sua.EOF And BaoLut_Sua.BOF) Then
 If Me.chkBaolut.Value = 0 Then
 BaoLut_Sua.Delete
 BaoLut_Sua.Update
 End If
 Else
 If Me.chkBaolut.Value = 1 Then
 BaoLut_Sua.AddNew
 BaoLut_Sua.Fields(0).Value = Me.txtSo_may.text
 BaoLut_Sua.Update
 End If
 End If
 '-----------Tim may quan trong-------
 '----------Neu truoc co sau khong thi xoa va nguoc lai------
 If Not (QuanTrong_Sua.EOF And QuanTrong_Sua.BOF) Then
 If Me.chkQuantrong.Value = 0 Then
 QuanTrong_Sua.Delete
 QuanTrong_Sua.Update
 End If
 Else
 If Me.chkQuantrong.Value = 1 Then
 QuanTrong_Sua.AddNew
 QuanTrong_Sua.Fields(0).Value = Me.txtSo_may.text
 QuanTrong_Sua.Update
 End If
 End If
 '------------Khoa du lieu-------------
 Me.txtCap_goc.Enabled = False
 Me.txtclass.Enabled = False
 Me.txtDoi_so.Enabled = False
 Me.txtDuong_pho.Enabled = False
 Me.cbmLoai_TB.Enabled = False
 Me.txtNoiDM.Enabled = False
 Me.txtSo_nha.Enabled = False
 Me.txtTen_KH.Enabled = False
 Me.txtToa_do_MDF.Enabled = False
 Me.chkBaolut.Enabled = False
 Me.chkQuantrong.Enabled = False
 Me.cmdBo_qua.Enabled = False
 Me.cmdDong_y.Enabled = False
 Me.cmdDo_thu.Enabled = True
 Me.cmdSua.Enabled = True
 Me.cmdThem.Enabled = True
 Me.cmdTim.Enabled = True
 Me.cmdXoa.Enabled = True
 Me.GridSo_lieu_chinh.Refresh
 Me.GridSo_lieu_chinh.Enabled = True
 Me.AdoSo_lieu_chinh.Requery
 Me.GridSo_lieu_chinh.Refresh
End Sub
Private Sub cmdSua_Click() 
 If Me.txtSo_may.text "" And Me.txtMa_KH.text "" Then
 '-----------Gan du lieu cho comboBox---------
 Dim ThietBi_Sua1 As ADODB.Recordset
 Set ThietBi_Sua1 = New ADODB.Recordset
 ThietBi_Sua1.Source = "select ten_Tbi from tblThietbi "
 ThietBi_Sua1.ActiveConnection = SLC
 ThietBi_Sua1.Open
 ThietBi_Sua1.MoveFirst
 Do Until ThietBi_Sua1.EOF
 Me.cbmLoai_TB.AddItem ThietBi_Sua1.Fields(0).Value
 ThietBi_Sua1.MoveNext
 Loop
 Me.cbmLoai_TB.ListIndex = -1
 '--------------Mo khoa cho cac text box-------------
 frmSo_lieu_chinh.GridSo_lieu_chinh.Enabled = False
 Me.txtCap_goc.Enabled = True
 Me.txtclass.Enabled = True
 Me.txtDoi_so.Enabled = True
 Me.txtDuong_pho.Enabled = True
 Me.cbmLoai_TB.Enabled = True
 Me.txtNoiDM.Enabled = True
 Me.txtSo_nha.Enabled = True
 Me.txtTen_KH.Enabled = True
 Me.txtToa_do_MDF.Enabled = True
 Me.chkBaolut.Enabled = True
 Me.chkQuantrong.Enabled = True
 Me.cmdBo_qua.Enabled = True
 Me.cmdDong_y.Enabled = True
 Me.cmdDo_thu.Enabled = False
 Me.cmdSua.Enabled = False
 Me.cmdThem.Enabled = False
 Me.cmdTim.Enabled = False
 Me.cmdXoa.Enabled = False
 End If
End Sub
Private Sub cmdThem_Click() 
 frmNhap_thue_bao_moi.Visible = True
End Sub
Private Sub cmdThoat_Click()
 Unload Me
End Sub
Private Sub cmdTim_Click()
 FrmNhap_So_may_can_tim.Show 1
End Sub
Private Sub cmdXoa_Click()
 Dim SoMayXoa As String
 Dim Tam As Variant
 Dim dk As String
 Dim Trungma As Boolean
 Dim SlieuXoa As ADODB.Recordset
 Set SlieuXoa = New ADODB.Recordset
 SlieuXoa.LockType = adLockOptimistic
 SlieuXoa.CursorType = adOpenKeyset
 Dim SlieuXoa1 As ADODB.Recordset
 Set SlieuXoa1 = New ADODB.Recordset
 SlieuXoa1.LockType = adLockOptimistic
 SlieuXoa1.CursorType = adOpenKeyset
 Dim SlieuXoa2 As ADODB.Recordset
 Set SlieuXoa2 = New ADODB.Recordset
 SlieuXoa2.LockType = adLockOptimistic
 SlieuXoa2.CursorType = adOpenKeyset
 Dim BaoLutXoa As ADODB.Recordset
 Set BaoLutXoa = New ADODB.Recordset
 BaoLutXoa.LockType = adLockOptimistic
 BaoLutXoa.CursorType = adOpenKeyset
 Dim QuanTrongXoa As ADODB.Recordset
 Set QuanTrongXoa = New ADODB.Recordset
 QuanTrongXoa.LockType = adLockOptimistic
 QuanTrongXoa.CursorType = adOpenKeyset
 Dim KHangXoa As ADODB.Recordset
 Set KHangXoa = New ADODB.Recordset
 KHangXoa.LockType = adLockOptimistic
 KHangXoa.CursorType = adOpenKeyset
 Dim MayhongXoa As ADODB.Recordset
 Set MayhongXoa = New ADODB.Recordset
 MayhongXoa.LockType = adLockOptimistic
 MayhongXoa.CursorType = adOpenKeyset
 Dim MayChemXoa As ADODB.Recordset
 Set MayChemXoa = New ADODB.Recordset
 MayChemXoa.LockType = adLockOptimistic
 MayChemXoa.CursorType = adOpenKeyset
 SoMayXoa = Me.txtSo_may.text
 Tam = Me.txtMa_KH
 SlieuXoa.Source = " SELECT * From tblDienThoai where So_may = '" & SoMayXoa & "' "
 SlieuXoa.ActiveConnection = SLC
 SlieuXoa.Open
 '-----------Tim them xem con co so may nao trung ma_Kh hay khong-----
 Trungma = False
 SlieuXoa1.Source = " SELECT * From tblDienThoai where Ma_Kh = '" & Me.txtMa_KH & "' "
 SlieuXoa1.ActiveConnection = SLC
 SlieuXoa1.Open
 If SlieuXoa1.RecordCount > 1 Then
 Trungma = True
 End If
 BaoLutXoa.Source = " SELECT So_may From tblBaolut where So_may = '" & SoMayXoa & "' "
 BaoLutXoa.ActiveConnection = SLC
 BaoLutXoa.Open
 QuanTrongXoa.Source = " SELECT so_may From tblQuantrong where So_may = '" & SoMayXoa & "' "
 QuanTrongXoa.ActiveConnection = SLC
 QuanTrongXoa.Open
 MayhongXoa.Source = " SELECT So_may From tblDienthoaihong where So_may = '" & SoMayXoa & "' "
 MayhongXoa.ActiveConnection = SLC
 MayhongXoa.Open
 MayChemXoa.Source = " SELECT So_may From tblDangchemCM where So_may = '" & SoMayXoa & "' "
 MayChemXoa.ActiveConnection = SLC
 MayChemXoa.Open
 If MsgBox("Bạn chắc chắn muốn xóa thuê bao này ?", vbCritical + vbYesNo, " Chú ý ") = vbYes Then
 '-----------------Xoa bao lut ---------------
 If Not (BaoLutXoa.EOF And BaoLutXoa.BOF) Then
 BaoLutXoa.Delete
 BaoLutXoa.Update
 End If
 '---------------Xoa quan trong---------
 If Not (QuanTrongXoa.EOF And QuanTrongXoa.BOF) Then
 QuanTrongXoa.Delete
 QuanTrongXoa.Update
 End If
 '----------------Xoa may hong--------------
 If Not (MayhongXoa.EOF And MayhongXoa.BOF) Then
 MayhongXoa.Delete
 MayhongXoa.Update
 End If
 '--------------Xoa may chem CM-----------
 If Not (MayChemXoa.EOF And MayChemXoa.BOF) Then
 MayChemXoa.Delete
 MayChemXoa.Update
 End If
 '----------------Xoa thue bao------------
 SlieuXoa.Delete
 SlieuXoa.Update
 '-------------Neu Khach hang khong con so may nao thi xoa luon khach hang------
 If Not Trungma Then
 SlieuXoa2.Source = " SELECT * From tblKhachhang where Ma_Kh = '" & Me.txtMa_KH & "' "
 SlieuXoa2.ActiveConnection = SLC
 SlieuXoa2.Open
 SlieuXoa2.Delete
 SlieuXoa2.Update
 End If
 Me.txtCap_goc = ""
 Me.txtMa_KH = ""
 Me.txtSo_may = ""
 Me.txtclass = ""
 Me.txtChem_CM = ""
 Me.txtDoi_so = ""
 Me.txtDuong_pho = ""
 Me.cbmLoai_TB = ""
 'Me.txtMa_Tbi=""
 Me.txtNoiDM = ""
 Me.txtSo_nha = ""
 Me.txtTen_KH = ""
 Me.txtToa_do_MDF = ""
 Me.chkBaolut.Value = 0
 Me.chkQuantrong.Value = 0
 Me.GridSo_lieu_chinh.Refresh
 Me.AdoSo_lieu_chinh.Requery
End If
End Sub
Private Sub Form_Load()
 Set SLC = New ADODB.Connection
 SLC.Provider = "SQLOLEDB.1"
 SLC.ConnectionString = "Persist Security Info=False;User ID=sa;Initial Catalog=DULIEU;Data Source=sam"
 SLC.Open
 Dim HourFirst, HourLast As String
 Screen.MousePointer = vbHourglass
 StatusBar.Panels(1).text = "Xin ch ..."
 Screen.MousePointer = vbDefault
 StatusBar.Panels(1).text = ""
 Set AdoSo_lieu_chinh = New ADODB.Recordset
 AdoSo_lieu_chinh.LockType = adLockOptimistic
 AdoSo_lieu_chinh.CursorType = adOpenKeyset
 AdoSo_lieu_chinh.Source = "Select So_may,tblDienthoai.Ma_kh,Ten_Kh,Noi_d_may,So_nha,D_pho,Toa_do_MDF,Cap_goc,Doi_so,CLASS,Ten_Tbi,tblDienthoai.Ma_Tbi from tblDienthoai,tblKhachHang,tblThietbi Where tblDienThoai.Ma_Kh = tblKhachHang.Ma_Kh and tblDienthoai.Ma_Tbi=tblThietBi.Ma_Tbi order by tblDienthoai.Ma_KH DESC "
 AdoSo_lieu_chinh.ActiveConnection = SLC
 AdoSo_lieu_chinh.Open
 Set GridSo_lieu_chinh.DataSource = AdoSo_lieu_chinh
 frmNhap_thue_bao_moi.Visible = False
 '----------------KHOA DU LIEU---------------
 Me.txtCap_goc.Enabled = False
 Me.txtMa_KH.Enabled = False
 Me.txtSo_may.Enabled = False
 Me.txtclass.Enabled = False
 Me.txtChem_CM.Enabled = False
 Me.txtDoi_so.Enabled = False
 Me.txtDuong_pho.Enabled = False
 Me.cbmLoai_TB.Enabled = False
 'Me.txtMa_Tbi.Enabled = False
 Me.txtNoiDM.Enabled = False
 Me.txtSo_nha.Enabled = False
 Me.txtTen_KH.Enabled = False
 Me.txtToa_do_MDF.Enabled = False
 Me.chkBaolut.Enabled = False
 Me.chkQuantrong.Enabled = False
 Me.cmdBo_qua.Enabled = False
 Me.cmdDong_y.Enabled = False
 Me.cmdDo_thu.Enabled = True
 Me.cmdSua.Enabled = True
 Me.cmdThem.Enabled = True
 Me.cmdTim.Enabled = True
 Me.cmdXoa.Enabled = True
End Sub
Private Sub GridSo_lieu_chinh_Click()
 Dim BaoLut As ADODB.Recordset
 Set BaoLut = New ADODB.Recordset
 Dim QuanTrong As ADODB.Recordset
 Set QuanTrong = New ADODB.Recordset
 Dim Chem_CM As ADODB.Recordset
 Set Chem_CM = New ADODB.Recordset
 Dim text As String
 'Dim TimthayBaoLut As Boolean, TimthayQuantrong As Boolean
 On Error GoTo thoat
 txtSo_may.text = AdoSo_lieu_chinh.Fields(0).Value
 txtMa_KH.text = AdoSo_lieu_chinh.Fields(1).Value
 txtclass.text = AdoSo_lieu_chinh.Fields(9).Value
 txtTen_KH.text = AdoSo_lieu_chinh.Fields(2).Value
 txtNoiDM.text = AdoSo_lieu_chinh.Fields(3).Value
 ' txtSo_nha.Text = AdoSo_lieu_chinh.Recordset.Fields(4)
 txtSo_nha.text = IIf(IsNull(AdoSo_lieu_chinh.Fields(4).Value), "...", AdoSo_lieu_chinh.Fields(4).Value)
 txtDuong_pho.text = AdoSo_lieu_chinh.Fields(5).Value
 txtToa_do_MDF.text = AdoSo_lieu_chinh.Fields(6).Value
 txtCap_goc.text = AdoSo_lieu_chinh.Fields(7).Value
 txtDoi_so.text = AdoSo_lieu_chinh.Fields(8).Value
 Me.cbmLoai_TB.text = AdoSo_lieu_chinh.Fields(10).Value
 'txtMa_Tbi.text = AdoSo_lieu_chinh.Recordset.Fields(11).Value
 '---------------Xet xem co bao lut va quan trong khong-----
 text = AdoSo_lieu_chinh.Fields(0)
 BaoLut.Source = " SELECT So_may From tblBaolut WHERE So_may = " & text & " "
 BaoLut.ActiveConnection = SLC
 BaoLut.Open
 QuanTrong.Source = " SELECT so_may From tblQuantrong WHERE So_may = " & text & " "
 QuanTrong.ActiveConnection = SLC
 QuanTrong.Open
 '-----------Tim may bao lut-------
 frmSo_lieu_chinh.chkBaolut.Value = 0
 If Not (BaoLut.EOF And BaoLut.BOF) Then
 frmSo_lieu_chinh.chkBaolut.Value = 1
 End If
 '-----------Tim may QUAN TRONG-------
 frmSo_lieu_chinh.chkQuantrong.Value = 0
 If Not (QuanTrong.EOF And QuanTrong.BOF) Then
 frmSo_lieu_chinh.chkQuantrong.Value = 1
 End If
 '-------------Xem co bi chem may khong------------------------------
 Chem_CM.Source = " SELECT Ma_chem_CM From tblDangchemCM WHERE So_may = " & text & " and IsNull(Ngay_Thao_chem) "
 Chem_CM.ActiveConnection = SLC
 Chem_CM.Open
 If Not (Chem_CM.EOF And Chem_CM.BOF) Then
 frmSo_lieu_chinh.txtChem_CM.text = Chem_CM.Fields(0).Value
 End If
thoat:
End Sub
Private Sub Timer1_Timer()
 Timer1.Interval = 30000
 Dem = True
End Sub
 2- Form nhập thuê bao mới
Option Explicit
Public CNthem As Connection
Dim SLieuthem As ADODB.Recordset
 Dim BaoLutthem As ADODB.Recordset
 Dim QuanTrongthem As ADODB.Recordset
 Dim ThietBi_Them As ADODB.Recordset
 Dim Class_them As ADODB.Recordset
Private Sub cmdBo_qua_Click()
 Me.txtSo_may_moi.text = ""
 Me.txtMa_KH_moi.text = ""
 Me.txtNoi_Dat_may_moi.text = ""
 Me.txtSo_nha_moi.text = ""
 Me.txtDuong_pho_moi.text = ""
 Me.txtToa_do_MDF_moi.text = ""
 Me.txtCap_goc_moi.text = ""
 Me.txtDoi_so_moi.text = ""
 Me.cmbClass_moi.text = ""
 Me.cmbMa_TBi_moi.text = ""
 Me.txtMa_KH_moi.text = ""
 Me.txtTen_KH_moi.text = ""
 Me.chkBao_lut_moi.Value = 0
 Me.chkQuantrong.Value = 0
 End Sub
Private Sub cmdBo_qua_cu_Click()
 Me.txtSo_may_cu.text = ""
 Me.txtMa_KH_cu.text = ""
 Me.txtNoi_dat_may_cu.text = ""
 Me.txtSo_nha_cu.text = ""
 Me.txtDuong_pho_cu.text = ""
 Me.txtToa_do_MDF_cu.text = ""
 Me.txtCap_goc_cu.text = ""
 Me.txtDoi_so_cu.text = ""
 Me.CmbClass_cu.text = ""
 Me.cmbMa_Tbi_Cu.text = ""
 Me.txtMa_KH_cu.text = ""
 'Me.txtTen_KH_cu.text = ""
 Me.chkBao_lut_cu.Value = 0
 Me.chkQuan_trong_cu.Value = 0
End Sub
Private Sub cmdDong_y_Click()
 Dim MaKh As String
 Dim Khachhangthem As ADODB.Recordset
 Set Khachhangthem = New ADODB.Recordset
 Khachhangthem.LockType = adLockOptimistic
 Khachhangthem.CursorType = adOpenKeyset
 Khachhangthem.Source = " select * from tblKhachhang order by Ma_Kh"
 Khachhangthem.ActiveConnection = CNthem
 Khachhangthem.Open
 '---------------------------Tao ma Khach hang-------
 Khachhangthem.MoveLast
 MaKh = "0" & Trim(Str(Val(Khachhangthem.Fields(0).Value) + 1))
 If Me.cmdDong_y.Caption = "Đồng ý" And txtSo_may_moi.text "" And txtNoi_Dat_may_moi.text "" And txtSo_nha_moi.text "" And txtDuong_pho_moi.text "" And txtToa_do_MDF_moi.text "" And txtCap_goc_moi.text "" Then
 Me.cmdDong_y.Caption = "Tiếp tục"
 '-----------Cap nhat Ma_KH,Ten_Kh-----
 Khachhangthem.AddNew
 Khachhangthem.Fields(0).Value = MaKh
 Khachhangthem.Fields(1).Value = Me.txtTen_KH_moi.text
 Khachhangthem.Update
 '_------------------Cap nhat thue bao-----
 With SLieuthem
 .AddNew
 .Fields(0).Value = Me.txtSo_may_moi.text
 .Fields(1).Value = MaKh
 .Fields(2).Value = Me.txtNoi_Dat_may_moi.text
 .Fields(3).Value = Me.txtSo_nha_moi.text
 .Fields(4).Value = Me.txtDuong_pho_moi.text
 .Fields(7).Value = Me.txtToa_do_MDF_moi.text
 .Fields(8).Value = Me.txtCap_goc_moi.text
 .Fields(9).Value = Me.txtDoi_so_moi.text
 .Fields(10).Value = Me.cmbClass_moi.text
 .Fields(6).Value = Me.cmbMa_TBi_moi.text
 .Update
 End With
 '--------------Cap nhat may bao lut-------
 If Me.chkBao_lut_moi.Value = 1 Then
 BaoLutthem.AddNew
 BaoLutthem.Fields(0).Value = Me.txtSo_may_moi.text
 BaoLutthem.Update
 End If
 '-------------Cap nhat may quan trong----------
 If Me.chkQuantrong.Value = 1 Then
 QuanTrongthem.AddNew
 QuanTrongthem.Fields(0).Value = Me.txtSo_may_moi.text
 QuanTrongthem.Update
 End If
 Me.txtMa_KH_moi.text = MaKh
 Me.cmdBo_qua.Enabled = False
 frmSo_lieu_chinh.AdoSo_lieu_chinh.Requery
 frmSo_lieu_chinh.GridSo_lieu_chinh.Refresh
 Else
 Me.cmdDong_y.Caption = "Đồng ý"
 Me.cmdBo_qua.Enabled = True
 Me.txtSo_may_moi.text = ""
 Me.txtMa_KH_moi.text = ""
 Me.txtNoi_Dat_may_moi.text = ""
 Me.txtSo_nha_moi.text = ""
 Me.txtDuong_pho_moi.text = ""
 Me.txtToa_do_MDF_moi.text = ""
 Me.txtCap_goc_moi.text = ""
 Me.txtDoi_so_moi.text = ""
 Me.cmbClass_moi.text = ""
 Me.cmbMa_TBi_moi.text = ""
 Me.chkBao_lut_moi.Value = 0
 Me.chkQuantrong.Value = 0
 Me.txtMa_KH_moi.text = ""
 Me.txtTen_KH_moi.text = ""
 Me.Refresh
 End If
End Sub
Private Sub cmdDong_y_cu_Click()
If Me.cmdDong_y_cu.Caption = "Đồng ý" And txtSo_may_cu.text "" And txtNoi_dat_may_cu.text "" And txtSo_nha_cu.text "" And txtDuong_pho_cu.text "" And txtToa_do_MDF_cu.text "" And txtCap_goc_cu.text "" Then
 Me.cmdDong_y_cu.Caption = "Tiếp tục"
 '_------------------Cap nhat thue bao-----
 With SLieuthem
 .AddNew
 .Fields(0).Value = Me.txtSo_may_cu.text
 .Fields(1).Value = Me.txtMa_KH_cu.text
 .Fields(2).Value = Me.txtNoi_dat_may_cu.text
 .Fields(3).Value = Me.txtSo_nha_cu.text
 .Fields(4).Value = Me.txtDuong_pho_cu.text
 .Fields(7).Value = Me.txtToa_do_MDF_cu.text
 .Fields(8).Value = Me.txtCap_goc_cu.text
 .Fields(9).Value = Me.txtDoi_so_cu.text
 .Fields(10).Value = Me.CmbClass_cu.text
 .Fields(6).Value = Me.cmbMa_Tbi_Cu.text
 .Update
 End With
 '--------------Cap nhat may bao lut-------
 If Me.chkBao_lut_cu.Value = 1 Then
 BaoLutthem.AddNew
 BaoLutthem.Fields(0).Value = Me.txtSo_may_cu.text
 BaoLutthem.Update
 End If
 '-------------Cap nhat may quan trong----------
 If Me.chkQuan_trong_cu.Value = 1 Then
 QuanTrongthem.AddNew
 QuanTrongthem.Fields(0).Value = Me.txtSo_may_cu.text
 QuanTrongthem.Update
 End If
 'frmSo_lieu_chinh.AdoSo_lieu_chinh.Refresh
 'frmSo_lieu_chinh.GridSo_lieu_chinh.Refresh
 Me.cmdBo_qua_cu.Enabled = False
 Else
 Me.cmdDong_y_cu.Caption = "Đồng ý"
 Me.cmdBo_qua_cu.Enabled = True
 Me.txtSo_may_cu.text = ""
 Me.txtMa_KH_cu.text = ""
 Me.txtNoi_dat_may_cu.text = ""
 Me.txtSo_nha_cu.text = ""
 Me.txtDuong_pho_cu.text = ""
 Me.txtToa_do_MDF_cu.text = ""
 Me.txtCap_goc_cu.text = ""
 Me.txtDoi_so_cu.text = ""
 Me.CmbClass_cu.text = ""
 Me.cmbMa_Tbi_Cu.text = ""
 Me.chkBao_lut_cu.Value = 0
 Me.chkQuantrong.Value = 0
 Me.Refresh
 End If
End Sub
Private Sub cmdThoat_Click()
 Unload Me
End Sub
Private Sub cmdThoat_cu_Click()
 Unload Me
End Sub
Private Sub Form_Load()
 Set CNthem = New ADODB.Connection
 CNthem.Provider = "SQLOLEDB.1"
 CNthem.ConnectionString = "Persist Security Info=False;User ID=sa;Initial Catalog=DULIEU;Data Source=sam"
 CNthem.Open
 Set SLieuthem = New ADODB.Recordset
 SLieuthem.LockType = adLockOptimistic
 SLieuthem.CursorType = adOpenKeyset
 Set BaoLutthem = New ADODB.Recordset
 BaoLutthem.LockType = adLockOptimistic
 BaoLutthem.CursorType = adOpenKeyset
 Set QuanTrongthem = New ADODB.Recordset
 Set ThietBi_Them = New ADODB.Recordset
 Set Class_them = New ADODB.Recordset
 QuanTrongthem.LockType = adLockOptimistic
 QuanTrongthem.CursorType = adOpenKeyset
 SLieuthem.Source = " SELECT * From tblDienThoai "
 SLieuthem.ActiveConnection = CNthem
 SLieuthem.Open
 BaoLutthem.Source = " SELECT So_may From tblBaolut "
 BaoLutthem.ActiveConnection = CNthem
 BaoLutthem.Open
 QuanTrongthem.Source = " SELECT so_may From tblQuantrong "
 QuanTrongthem.ActiveConnection = CNthem
 QuanTrongthem.Open
 ThietBi_Them.Source = "select ma_Tbi from tblThietbi "
 ThietBi_Them.ActiveConnection = CNthem
 ThietBi_Them.Open
 Class_them.Source = "select Ma_class from tblClass "
 Class_them.ActiveConnection = CNthem
 Class_them.Open
 '-----------Gan du lieu cho comboBox Ma_Tbi_cu, Ma_Tbi_moi---------
 ThietBi_Them.MoveFirst
 Do Until ThietBi_Them.EOF
 Me.cmbMa_Tbi_Cu.AddItem ThietBi_Them.Fields(0).Value
 Me.cmbMa_TBi_moi.AddItem ThietBi_Them.Fields(0).Value
 ThietBi_Them.MoveNext
 Loop
 Me.cmbMa_Tbi_Cu.ListIndex = -1
 Me.cmbMa_TBi_moi.ListIndex = -1
 '-----------Gan du lieu cho comboBox Class_Cu,Cla---------
 Class_them.MoveFirst
 Do Until Class_them.EOF
 Me.CmbClass_cu.AddItem Class_them.Fields(0).Value
 Me.cmbClass_moi.AddItem Class_them.Fields(0).Value
 Class_them.MoveNext
 Loop
 Me.CmbClass_cu.ListIndex = -1
 Me.cmbClass_moi.ListIndex = -1
End Sub
 '---------------Bam Enter thay vi bam tab trong cac textbox-----------
 Private Sub Form_KeyPress(KeyAscii As Integer)
If KeyAscii = vbCr Then
KeyAscii = 0 ' Nu?t tr?n Enter key d? khụng b? side effect
SendKeys "{TAB}"
End If
End Sub
3-Form danh sách máy đang hỏng:
Option Explicit
 Const ConnectSever = "Provider=SQLOLEDB.1;Persist Security Info=False;User ID=sa;Initial Catalog=DULIEU;Data Source=sam"
 Public MDH As Connection
 Public May_dang_hong As ADODB.Recordset
Private Sub DataGrid1_Click()
Dim BaoLutHong As ADODB.Recordset
 Set BaoLutHong = New ADODB.Recordset
 Dim QuanTrongHong As ADODB.Recordset
 Set QuanTrongHong = New ADODB.Recordset
 Dim ChemCM_hong As ADODB.Recordset
 Set ChemCM_hong = New ADODB.Recordset
 Dim text As String
 'May_dang_hong.Source = "Select tblDienthoaihong.So_may,ngay_gio_hong,tblDienthoaihong.ma_loai_hong,tblLoaihong.Ten_loai_hong,tblDienthoaihong.ngay_gio_xuat_phieu,Ten_Kh,Noi_d_may,So_nha,D_pho,Toa_do_MDF,Cap_goc,Doi_so,CLASS,Ten_Tbi from tblDienthoai,tblKhachHang,tblThietbi Where tblDienThoai.Ma_Kh = tblKhachHang.Ma_Kh and tblDienthoai.Ma_Tbi=tblThietBi.Ma_Tbi order by tblDienthoai.Ma_KH"
 'Dim TimthayBaoLutHong As Boolean, TimthayQuantrong As Boolean
 On Error GoTo thoat
 Me.txtSo_may.text = May_dang_hong.Fields(0).Value
 Me.txtTen_khach_hang.text = May_dang_hong.Fields(5).Value
 Me.txtCLASS.text = May_dang_hong.Fields(12).Value
 Me.txtDuong_pho.text = May_dang_hong.Fields(8).Value
 Me.txtSo_nha.text = IIf(IsNull(May_dang_hong.Fields(7).Value), "...", May_dang_hong.Fields(7).Value)
 Me.txtNoi_dat_may.text = May_dang_hong.Fields(6).Value
 Me.txtLoai_thiet_bi.text = May_dang_hong.Fields(13).Value
 Me.txtMDF.text = May_dang_hong.Fields(9).Value
 Me.txtCap_goc.text = May_dang_hong.Fields(10).Value
 Me.txtDoi_so.text = May_dang_hong.Fields(11).Value
 Me.txtLoai_hong.text = May_dang_hong.Fields(3).Value
 'txtMa_Tbi.text = AdoSo_lieu_chinh.Recordset.Fields(11).Value
 '---------------Xet xem co bao lut va quan trong khong-----
 text = May_dang_hong.Fields(0)
 BaoLutHong.Source = " SELECT So_may From tblBaolut WHERE So_may = " & text & " "
 BaoLutHong.ActiveConnection = MDH
 BaoLutHong.Open
 QuanTrongHong.Source = " SELECT so_may From tblQuantrong WHERE So_may = " & text & " "
 QuanTrongHong.ActiveConnection = MDH
 QuanTrongHong.Open
 '-----------Tim may bao lut-------
 If Not (BaoLutHong.EOF And BaoLutHong.BOF) Then
 Me.chkBaolut.Value = 1
 End If
 '-----------Tim may QUAN TRONG-------
 If Not (QuanTrongHong.EOF And QuanTrongHong.BOF) Then
 Me.chkQuantrong.Value = 1
 End If
thoat:
End Sub
Private Sub Form_Activate()
 Set MDH = New ADODB.Connection
 MDH.Provider = "SQLOLEDB.1"
 MDH.ConnectionString = "Persist Security Info=False;User ID=sa;Initial Catalog=DULIEU;Data Source=sam"
 MDH.Open
 Set May_dang_hong = New ADODB.Recordset
 May_dang_hong.LockType = adLockOptimistic
 May_dang_hong.CursorType = adOpenKeyset
 Dim Tam As Date
 Tam = Format(Now - 7, "hh:nn:ss d/m/yy")
 May_dang_hong.Source = "Select tblDienthoaihong.So_may,ngay_gio_hong,tblDienthoaihong.ma_loai_hong,tblLoaihong.Trang_thai_hong,tblDienthoaihong.ngay_gio_xuat_phieu,Ten_Kh,Noi_d_may,So_nha,D_pho,Toa_do_MDF,Cap_goc,Doi_so,CLASS,Ten_Tbi from tblDienthoaihong, tblDienthoai,tblKhachHang,tblThietbi,tblLoaihong Where tblDienthoaihong.So_may=tblDienthoai.So_may and tblDienThoai.Ma_Kh = tblKhachHang.Ma_Kh and tblDienthoai.Ma_Tbi=tblThietBi.Ma_Tbi and tblDienthoaihong.Ma_loai_hong=tblLoaiHong.Ma_loai_hong and ngay_gio_sua_xong is null order by ngay_gio_hong desc"
 'May_dang_hong.Source = " SELECT * from tblDienthoaihong where ngay_gio_hong > '" & tam & "' order by ngay_gio_hong"
 'May_dang_hong.Source = " SELECT * from tblDienthoaihong where ngay_gio_sua_xong is null order by ngay_gio_hong desc "
 May_dang_hong.ActiveConnection = MDH
 May_dang_hong.Open
 Set Me.DataGrid1.DataSource = May_dang_hong
End Sub
Private Sub txtDang_chem_Change()
End Sub
Private Sub txtTim_Click()
 FrmTim_may_dang_hong.Show 1
End Sub
4- Form luật suy diễn:
Option Explicit
 Public TL As Connection
Public Luat_suy_dien As ADODB.Recordset
Public Loai_hong As ADODB.Recordset
Public Them, Sua As Boolean
Private Sub cmdBo_qua_them_Click()
 '----------------Xoa cac checkbox-----------
 Me.chkAC_A_dat.Value = 0
 Me.ChkAC_B_dat.Value = 0
 Me.ChkDc_A_dat.Value = 0
 Me.chkDc_B_dat.Value = 0
 Me.chkR_a_dat.Value = 0
 Me.chkR_B_dat.Value = 0
 Me.chkR_A_B.Value = 0
 Me.ChkF_AB.Value = 0
 Me.chkLoai_TB.Value = 0
 '-------------Dien gia tri vao cac Checkbox-----------
 Dim Ma_Loai_hong As String
 Dim Do_chinh_xac As String
 Do_chinh_xac = ""
 If Luat_suy_dien.Fields(1).Value = 1 Then
 Me.chkAC_A_dat.Value = 1
 Do_chinh_xac = "M1*"
 End If
 If Luat_suy_dien.Fields(2).Value = 1 Then
 Me.ChkAC_B_dat.Value = 1
 Do_chinh_xac = Do_chinh_xac & "M2*"
 End If
 If Luat_suy_dien.Fields(3).Value = 1 Then
 Me.ChkDc_A_dat.Value = 1
 Do_chinh_xac = Do_chinh_xac & "M3*"
 End If
 If Luat_suy_dien.Fields(4).Value = 1 Then
 Me.chkDc_B_dat.Value = 1
 Do_chinh_xac = Do_chinh_xac & "M4*"
 End If
 If Luat_suy_dien.Fields(5).Value = 1 Then
 Me.chkR_a_dat.Value = 1
 Do_chinh_xac = Do_chinh_xac & "M5*"
 End If
 If Luat_suy_dien.Fields(6).Value = 1 Then
 Me.chkR_B_dat.Value = 1
 Do_chinh_xac = Do_chinh_xac & "M6*"
 End If
 If Luat_suy_dien.Fields(7).Value = 1 Then
 Me.chkR_A_B.Value = 1
 Do_chinh_xac = Do_chinh_xac & "M7*"
 End If
 If Luat_suy_dien.Fields(8).Value = 1 Then
 Me.ChkF_AB.Value = 1
 Do_chinh_xac = Do_chinh_xac & "M8*"
 End If
 If Luat_suy_dien.Fields(9).Value = 1 Then
 Me.chkLoai_TB.Value = 1
 Do_chinh_xac = Do_chinh_xac & "M9*"
 End If
 Do_chinh_xac = Do_chinh_xac & Luat_suy_dien.Fields(11).Value
 Me.txtDo_chinh_xac.text = Do_chinh_xac
 Ma_Loai_hong = Luat_suy_dien.Fields(10).Value
 '------------------Tim ket luan------------
 Set Loai_hong = New ADODB.Recordset
 Loai_hong.Source = "Select Trang_thai_hong from tblLoaihong where Ma_loai_hong='" & Ma_Loai_hong & "'"
 Loai_hong.ActiveConnection = TL
 Loai_hong.Open
 Me.cbmKet_luan.text = Loai_hong.Fields(0).Value
 '-----------------Tim thu tu luat-----------
 Me.lblLuat_thu.Caption = Luat_suy_dien.Fields(0).Value
 '-----------Khoa du lieu------------
 Me.chkAC_A_dat.Enabled = False
 Me.ChkAC_B_dat.Enabled = False
 Me.ChkDc_A_dat.Enabled = False
 Me.chkDc_B_dat.Enabled = False
 Me.chkR_a_dat.Enabled = False
 Me.chkR_B_dat.Enabled = False
 Me.chkR_A_B.Enabled = False
 Me.ChkF_AB.Enabled = False
 Me.chkLoai_TB.Enabled = False
 Me.cbmKet_luan.Enabled = False
 Me.txtDo_chinh_xac.Enabled = False
 '---------Bo che do khoa cac nut lenh-----
 Me.cmdFirst.Enabled = True
 Me.cmdLast.Enabled = True
 Me.cmdToi.Enabled = True
 Me.cmdLui.Enabled = True
 Me.cmdThem.Enabled = True
 Me.cmdXoa.Enabled = True
 Me.cmdSua.Enabled = True
 Me.cmdDong_y_them.Enabled = False
 Me.cmdBo_qua_them.Enabled = False
 '------------Xoa che do them hoac sua du lieu-----------
 Them = False
 Sua = False
End Sub
Private Sub cmdDong_y_them_Click()
 '-----------------Tim ma loai hong----------
 Dim Loai_hong2 As ADODB.Recordset
 Set Loai_hong2 = New ADODB.Recordset
 Loai_hong2.Source = "select Ma_loai_hong from tblLoaihong where Trang_thai_hong ='" & Me.cbmKet_luan.text & "' "
 Loai_hong2.ActiveConnection = TL
 Loai_hong2.Open
 '------------Neu dang them luat------------
 If Them Then
 Dim Do_chinh_xac As String
 Do_chinh_xac = ""
 '-----------Cap nhat cac gia tri cua luat moi----------
 With Luat_suy_dien
 .AddNew
 .Fields(0).Value = Tao_ma
 .Fields(10).Value = Loai_hong2.Fields(0).Value
 .Fields(11).Value = Me.txtDo_chinh_xac.text
 If Me.chkAC_A_dat.Value = 1 Then
 .Fields(1).Value = 1
 Do_chinh_xac = "M1*"
 Else
 .Fields(1).Value = 0
 End If
 If Me.ChkAC_B_dat.Value = 1 Then
 .Fields(2).Value = 1
 Do_chinh_xac = Do_chinh_xac & "M2*"
 Else
 .Fields(2).Value = 0
 End If
 If Me.ChkDc_A_dat.Value = 1 Then
 .Fields(3).Value = 1
 Do_chinh_xac = Do_chinh_xac & "M3*"
 Else
 .Fields(3).Value = 0
 End If
 If Me.chkDc_B_dat.Value = 1 Then
 .Fields(4).Value = 1
 Do_chinh_xac = Do_chinh_xac & "M3*"
 Else
 .Fields(4).Value = 0
 End If
 If Me.chkR_a_dat.Value = 1 Then
 .Fields(5).Value = 1
 Do_chinh_xac = Do_chinh_xac & "M3*"
 Else
 .Fields(5).Value = 0
 End If
 If Me.chkR_B_dat.Value = 1 Then
 .Fields(6).Value = 1
 Do_chinh_xac = Do_chinh_xac & "M3*"
 Else
 .Fields(6).Value = 0
 End If
 If Me.chkR_A_B.Value = 1 Then
 .Fields(7).Value = 1
 Do_chinh_xac = Do_chinh_xac & "M3*"
 Else
 .Fields(7).Value = 0
 End If
 If Me.ChkF_AB.Value = 1 Then
 .Fields(8).Value = 1
 Do_chinh_xac = Do_chinh_xac & "M3*"
 Else
 .Fields(8).Value = 0
 End If
 If Me.chkLoai_TB.Value = 1 Then
 .Fields(9).Value = 1
 Do_chinh_xac = Do_chinh_xac & "M3*"
 Else
 .Fields(9).Value = 0
 End If
 .Update
 .Requery
 '-----------------Dien cac gia tri vao form--------
 Me.lblSo_luat.Caption = .RecordCount
 .MoveLast
 Me.lblLuat_thu.Caption = .Fields(0).Value
 Do_chinh_xac = Do_chinh_xac & .Fields(11).Value
 Me.txtDo_chinh_xac.text = Do_chinh_xac
 End With
 End If
 '---------------Neu dang sua luat-----------
 If Sua Then
 '-----------Cap nhat cac gia tri----------
 With Luat_suy_dien
 .Fields(10).Value = Loai_hong2.Fields(0).Value
 .Fields(11).Value = Me.txtDo_chinh_xac.text
 If Me.chkAC_A_dat.Value = 1 Then
 .Fields(1).Value = 1
 Else
 .Fields(1).Value = 0
 End If
 If Me.ChkAC_B_dat.Value = 1 Then
 .Fields(2).Value = 1
 Else
 .Fields(2).Value = 0
 End If
 If Me.ChkDc_A_dat.Value = 1 Then
 .Fields(3).Value = 1
 Else
 .Fields(3).Value = 0
 End If
 If Me.chkDc_B_dat.Value = 1 Then
 .Fields(4).Value = 1
 Else
 .Fields(4).Value = 0
 End If
 If Me.chkR_a_dat.Value = 1 Then
 .Fields(5).Value = 1
 Else
 .Fields(5).Value = 0
 End If
 If Me.chkR_B_dat.Value = 1 Then
 .Fields(6).Value = 1
 Else
 .Fields(6).Value = 0
 End If
 If Me.chkR_A_B.Value = 1 Then
 .Fields(7).Value = 1
 Else
 .Fields(7).Value = 0
 End If
 If Me.ChkF_AB.Value = 1 Then
 .Fields(8).Value = 1
 Else
 .Fields(8).Value = 0
 End If
 If Me.chkLoai_TB.Value = 1 Then
 .Fields(9).Value = 1
 Else
 .Fields(9).Value = 0
 End If
 .Update
 .Requery
 End With
 End If
 '--------------Khoa cac nut lenh---------
 Me.chkAC_A_dat.Enabled = False
 Me.ChkAC_B_dat.Enabled = False
 Me.ChkDc_A_dat.Enabled = False
 Me.chkDc_B_dat.Enabled = False
 Me.chkR_a_dat.Enabled = False
 Me.chkR_B_dat.Enabled = False
 Me.chkR_A_B.Enabled = False
 Me.ChkF_AB.Enabled = False
 Me.chkLoai_TB.Enabled = False
 Me.cbmKet_luan.Enabled = False
 Me.txtDo_chinh_xac.Enabled = False
 Me.cmdThem.Enabled = True
 Me.cmdXoa.Enabled = True
 Me.cmdSua.Enabled = True
 Me.cmdFirst.Enabled = True
 Me.cmdLast.Enabled = True
 Me.cmdToi.Enabled = True
 Me.cmdLui.Enabled = True
 Me.cmdDong_y_them.Enabled = False
 Me.cmdBo_qua_them.Enabled = False
 '------------Xoa che do them hoac sua du lieu-----------
 Them = False
 Sua = False
End Sub
Private Sub cmdFirst_Click()
 '----------------Xoa cac checkbox-----------
 Me.chkAC_A_dat.Value = 0
 Me.ChkAC_B_dat.Value = 0
 Me.ChkDc_A_dat.Value = 0
 Me.chkDc_B_dat.Value = 0
 Me.chkR_a_dat.Value = 0
 Me.chkR_B_dat.Value = 0
 Me.chkR_A_B.Value = 0
 Me.ChkF_AB.Value = 0
 Me.chkLoai_TB.Value = 0
 Luat_suy_dien.MoveFirst
 '-------------Dien gia tri vao cac Checkbox-----------
 Dim Ma_Loai_hong As String
 Dim Do_chinh_xac As String
 Do_chinh_xac = ""
 If Luat_suy_dien.Fields(1).Value = 1 Then
 Me.chkAC_A_dat.Value = 1
 Do_chinh_xac = "M1*"
 End If
 If Luat_suy_dien.Fields(2).Value = 1 Then
 Me.ChkAC_B_dat.Value = 1
 Do_chinh_xac = Do_chinh_xac & "M2*"
 End If
 If Luat_suy_dien.Fields(3).Value = 1 Then
 Me.ChkDc_A_dat.Value = 1
 Do_chinh_xac = Do_chinh_xac & "M3*"
 End If
 If Luat_suy_dien.Fields(4).Value = 1 Then
 Me.chkDc_B_dat.Value = 1
 Do_chinh_xac = Do_chinh_xac & "M4*"
 End If
 If Luat_suy_dien.Fields(5).Value = 1 Then
 Me.chkR_a_dat.Value = 1
 Do_chinh_xac = Do_chinh_xac & "M5*"
 End If
 If Luat_suy_dien.Fields(6).Value = 1 Then
 Me.chkR_B_dat.Value = 1
 Do_chinh_xac = Do_chinh_xac & "M6*"
 End If
 If Luat_suy_dien.Fields(7).Value = 1 Then
 Me.chkR_A_B.Value = 1
 Do_chinh_xac = Do_chinh_xac & "M7*"
 End If
 If Luat_suy_dien.Fields(8).Value = 1 Then
 Me.ChkF_AB.Value = 1
 Do_chinh_xac = Do_chinh_xac & "M8*"
 End If
 If Luat_suy_dien.Fields(9).Value = 1 Then
 Me.chkLoai_TB.Value = 1
 Do_chinh_xac = Do_chinh_xac & "M9*"
 End If
 Do_chinh_xac = Do_chinh_xac & Luat_suy_dien.Fields(11).Value
 '---------Neu sua thi chi hien so----------
 If Sua Then
 Do_chinh_xac = Luat_suy_dien.Fields(11).Value
 End If
 Me.txtDo_chinh_xac.text = Do_chinh_xac
 Ma_Loai_hong = Luat_suy_dien.Fields(10).Value
 '------------------Tim ket luan------------
 Set Loai_hong = New ADODB.Recordset
 Loai_hong.Source = "Select Trang_thai_hong from tblLoaihong where Ma_loai_hong='" & Ma_Loai_hong & "'"
 Loai_hong.ActiveConnection = TL
 Loai_hong.Open
 Me.cbmKet_luan.text = Loai_hong.Fields(0).Value
 Me.lblLuat_thu.Caption = Luat_suy_dien.Fields(0).Value
End Sub
Private Sub cmdLast_Click()
Luat_suy_dien.MoveLast
'----------------Xoa cac checkbox-----------
 Me.chkAC_A_dat.Value = 0
 Me.ChkAC_B_dat.Value = 0
 Me.ChkDc_A_dat.Value = 0
 Me.chkDc_B_dat.Value = 0
 Me.chkR_a_dat.Value = 0
 Me.chkR_B_dat.Value = 0
 Me.chkR_A_B.Value = 0
 Me.ChkF_AB.Value = 0
 Me.chkLoai_TB.Value = 0
 '-------------Dien gia tri vao cac Checkbox-----------
 Dim Ma_Loai_hong As String
 Dim Do_chinh_xac As String
 Do_chinh_xac = ""
 If Luat_suy_dien.Fields(1).Value = 1 Then
 Me.chkAC_A_dat.Value = 1
 Do_chinh_xac = "M1*"
 End If
 If Luat_suy_dien.Fields(2).Value = 1 Then
 Me.ChkAC_B_dat.Value = 1
 Do_chinh_xac = Do_chinh_xac & "M2*"
 End If
 If Luat_suy_dien.Fields(3).Value = 1 Then
 Me.ChkDc_A_dat.Value = 1
 Do_chinh_xac = Do_chinh_xac & "M3*"
 End If
 If Luat_suy_dien.Fields(4).Value = 1 Then
 Me.chkDc_B_dat.Value = 1
 Do_chinh_xac = Do_chinh_xac & "M4*"
 End If
 If Luat_suy_dien.Fields(5).Value = 1 Then
 Me.chkR_a_dat.Value = 1
 Do_chinh_xac = Do_chinh_xac & "M5*"
 End If
 If Luat_suy_dien.Fields(6).Value = 1 Then
 Me.chkR_B_dat.Value = 1
 Do_chinh_xac = Do_chinh_xac & "M6*"
 End If
 If Luat_suy_dien.Fields(7).Value = 1 Then
 Me.chkR_A_B.Value = 1
 Do_chinh_xac = Do_chinh_xac & "M7*"
 End If
 If Luat_suy_dien.Fields(8).Value = 1 Then
 Me.ChkF_AB.Value = 1
 Do_chinh_xac = Do_chinh_xac & "M8*"
 End If
 If Luat_suy_dien.Fields(9).Value = 1 Then
 Me.chkLoai_TB.Value = 1
 Do_chinh_xac = Do_chinh_xac & "M9*"
 End If
 Do_chinh_xac = Do_chinh_xac & Luat_suy_dien.Fields(11).Value
 '---------Neu sua thi chi hien so----------
 If Sua Then
 Do_chinh_xac = Luat_suy_dien.Fields(11).Value
 End If
 Me.txtDo_chinh_xac.text = Do_chinh_xac
 Ma_Loai_hong = Luat_suy_dien.Fields(10).Value
 '------------------Tim ket luan------------
 Set Loai_hong = New ADODB.Recordset
 Loai_hong.Source = "Select Trang_thai_hong from tblLoaihong where Ma_loai_hong='" & Ma_Loai_hong & "'"
 Loai_hong.ActiveConnection = TL
 Loai_hong.Open
 Me.cbmKet_luan.text = Loai_hong.Fields(0).Value
 Me.lblLuat_thu.Caption = Luat_suy_dien.Fields(0).Value
End Sub
Private Sub cmdLui_Click()
 On Error GoTo thoat
 If Not (Luat_suy_dien.EOF) Then
 Luat_suy_dien.MoveNext
 If Luat_suy_dien.EOF Then
 Luat_suy_dien.MovePrevious
 End If
 '----------------Xoa cac checkbox-----------
 Me.chkAC_A_dat.Value = 0
 Me.ChkAC_B_dat.Value = 0
 Me.ChkDc_A_dat.Value = 0
 Me.chkDc_B_dat.Value = 0
 Me.chkR_a_dat.Value = 0
 Me.chkR_B_dat.Value = 0
 Me.chkR_A_B.Value = 0
 Me.ChkF_AB.Value = 0
 Me.chkLoai_TB.Value = 0
 'If Luat_suy_dien.BOF = False Then
 'End If
 '-------------Dien gia tri vao cac Checkbox-----------
 Dim Ma_Loai_hong As String
 Dim Do_chinh_xac As String
 Do_chinh_xac = ""
 If Luat_suy_dien.Fields(1).Value = 1 Then
 Me.chkAC_A_dat.Value = 1
 Do_chinh_xac = "M1*"
 End If
 If Luat_suy_dien.Fields(2).Value = 1 Then
 Me.ChkAC_B_dat.Value = 1
 Do_chinh_xac = Do_chinh_xac & "M2*"
 End If
 If Luat_suy_dien.Fields(3).Value = 1 Then
 Me.ChkDc_A_dat.Value = 1
 Do_chinh_xac = Do_chinh_xac & "M3*"
 End If
 If Luat_suy_dien.Fields(4).Value = 1 Then
 Me.chkDc_B_dat.Value = 1
 Do_chinh_xac = Do_chinh_xac & "M4*"
 End If
 If Luat_suy_dien.Fields(5).Value = 1 Then
 Me.chkR_a_dat.Value = 1
 Do_chinh_xac = Do_chinh_xac & "M5*"
 End If
 If Luat_suy_dien.Fields(6).Value = 1 Then
 Me.chkR_B_dat.Value = 1
 Do_chinh_xac = Do_chinh_xac & "M6*"
 End If
 If Luat_suy_dien.Fields(7).Value = 1 Then
 Me.chkR_A_B.Value = 1
 Do_chinh_xac = Do_chinh_xac & "M7*"
 End If
 If Luat_suy_dien.Fields(8).Value = 1 Then
 Me.ChkF_AB.Value = 1
 Do_chinh_xac = Do_chinh_xac & "M8*"
 End If
 If Luat_suy_dien.Fields(9).Value = 1 Then
 Me.chkLoai_TB.Value = 1
 Do_chinh_xac = Do_chinh_xac & "M9*"
 End If
 Do_chinh_xac = Do_chinh_xac & Luat_suy_dien.Fields(11).Value
 '---------Neu sua thi chi hien so----------
 If Sua Then
 Do_chinh_xac = Luat_suy_dien.Fields(11).Value
 End If
 Me.txtDo_chinh_xac.text = Do_chinh_xac
 Ma_Loai_hong = Luat_suy_dien.Fields(10).Value
 '------------------Tim ket luan------------
 Set Loai_hong = New ADODB.Recordset
 Loai_hong.Source = "Select Trang_thai_hong from tblLoaihong where Ma_loai_hong='" & Ma_Loai_hong & "'"
 Loai_hong.ActiveConnection = TL
 Loai_hong.Open
 Me.cbmKet_luan.text = Loai_hong.Fields(0).Value
 Me.lblLuat_thu.Caption = Luat_suy_dien.Fields(0).Value
 End If
thoat:
End Sub
Private Sub cmdSua_Click()
On Error GoTo thoat
'-------------Bao cho chuong trinh biet dang sua Du lieu--------
 Sua = True
 Me.txtDo_chinh_xac.text = Luat_suy_dien.Fields(11).Value
 Me.chkAC_A_dat.Enabled = True
 Me.ChkAC_B_dat.Enabled = True
 Me.ChkDc_A_dat.Enabled = True
 Me.chkDc_B_dat.Enabled = True
 Me.chkR_a_dat.Enabled = True
 Me.chkR_B_dat.Enabled = True
 Me.chkR_A_B.Enabled = True
 Me.ChkF_AB.Enabled = True
 Me.chkLoai_TB.Enabled = True
 Me.cbmKet_luan.Enabled = True
 Me.txtDo_chinh_xac.Enabled = True
 Me.cmdDong_y_them.Enabled = True
 Me.cmdBo_qua_them.Enabled = True
 '-------------Khoa cac nut lenh-----------
 Me.cmdThem.Enabled = False
 Me.cmdXoa.Enabled = False
 Me.cmdSua.Enabled = False
 '--------------Bao cho chuong trinh biet dang them luat--------
 Sua = True
 '--------------Tao du lieu cho Combobox Ket luan----------
 Dim Loai_hong1 As ADODB.Recordset
 Set Loai_hong1 = New ADODB.Recordset
 Loai_hong1.Source = "Select Trang_thai_hong from tblLoaihong "
 Loai_hong1.ActiveConnection = TL
 Loai_hong1.Open
 Loai_hong1.MoveFirst
 Do Until Loai_hong1.EOF
 Me.cbmKet_luan.AddItem Loai_hong1.Fields(0).Value
 Loai_hong1.MoveNext
 Loop
 Me.cbmKet_luan.ListIndex = -1
thoat:
End Sub
Private Sub cmdThem_Click()
 '-----------Mo cac checkbox----------
 Me.chkAC_A_dat.Value = 0
 Me.ChkAC_B_dat.Value = 0
 Me.ChkDc_A_dat.Value = 0
 Me.chkDc_B_dat.Value = 0
 Me.chkR_a_dat.Value = 0
 Me.chkR_B_dat.Value = 0
 Me.chkR_A_B.Value = 0
 Me.ChkF_AB.Value = 0
 Me.chkLoai_TB.Value = 0
 Me.cbmKet_luan.text = ""
 Me.txtDo_chinh_xac.text = ""
 Me.lblLuat_thu.Caption = ""
 Me.chkAC_A_dat.Enabled = True
 Me.ChkAC_B_dat.Enabled = True
 Me.ChkDc_A_dat.Enabled = True
 Me.chkDc_B_dat.Enabled = True
 Me.chkR_a_dat.Enabled = True
 Me.chkR_B_dat.Enabled = True
 Me.chkR_A_B.Enabled = True
 Me.ChkF_AB.Enabled = True
 Me.chkLoai_TB.Enabled = True
 Me.cbmKet_luan.Enabled = True
 Me.txtDo_chinh_xac.Enabled = True
 Me.cmdDong_y_them.Enabled = True
 Me.cmdBo_qua_them.Enabled = True
 '-------------Khoa cac nut lenh-----------
 Me.cmdThem.Enabled = False
 Me.cmdXoa.Enabled = False
 Me.cmdSua.Enabled = False
 Me.cmdFirst.Enabled = False
 Me.cmdLast.Enabled = False
 Me.cmdToi.Enabled = False
 Me.cmdLui.Enabled = False
 '--------------Bao cho chuong trinh biet dang them luat--------
 Them = True
 '--------------Tao du lieu cho Combobox Ket luan----------
 Dim Loai_hong1 As ADODB.Recordset
 Set Loai_hong1 = New ADODB.Recordset
 Loai_hong1.Source = "Select Trang_thai_hong from tblLoaihong "
 Loai_hong1.ActiveConnection = TL
 Loai_hong1.Open
 Loai_hong1.MoveFirst
 Do Until Loai_hong1.EOF
 Me.cbmKet_luan.AddItem Loai_hong1.Fields(0).Value
 Loai_hong1.MoveNext
 Loop
 Me.cbmKet_luan.ListIndex = -1
End Sub
Private Sub cmdToi_Click()
 On Error GoTo thoat
 If Not (Luat_suy_dien.BOF) Then
 Luat_suy_dien.MovePrevious
 If Luat_suy_dien.BOF Then
 Luat_suy_dien.MoveNext
 End If
 '----------------Xoa cac checkbox-----------
 Me.chkAC_A_dat.Value = 0
 Me.ChkAC_B_dat.Value = 0
 Me.ChkDc_A_dat.Value = 0
 Me.chkDc_B_dat.Value = 0
 Me.chkR_a_dat.Value = 0
 Me.chkR_B_dat.Value = 0
 Me.chkR_A_B.Value = 0
 Me.ChkF_AB.Value = 0
 Me.chkLoai_TB.Value = 0
 '-------------Dien gia tri vao cac Checkbox-----------
 Dim Ma_Loai_hong As String
 Dim Do_chinh_xac As String
 Do_chinh_xac = ""
 If Luat_suy_dien.Fields(1).Value = 1 Then
 Me.chkAC_A_dat.Value = 1
 Do_chinh_xac = "M1*"
 End If
 If Luat_suy_dien.Fields(2).Value = 1 Then
 Me.ChkAC_B_dat.Value = 1
 Do_chinh_xac = Do_chinh_xac & "M2*"
 End If
 If Luat_suy_dien.Fields(3).Value = 1 Then
 Me.ChkDc_A_dat.Value = 1
 Do_chinh_xac = Do_chinh_xac & "M3*"
 End If
 If Luat_suy_dien.Fields(4).Value = 1 Then
 Me.chkDc_B_dat.Value = 1
 Do_chinh_xac = Do_chinh_xac & "M4*"
 End If
 If Luat_suy_dien.Fields(5).Value = 1 Then
 Me.chkR_a_dat.Value = 1
 Do_chinh_xac = Do_chinh_xac & "M5*"
 End If
 If Luat_suy_dien.Fields(6).Value = 1 Then
 Me.chkR_B_dat.Value = 1
 Do_chinh_xac = Do_chinh_xac & "M6*"
 End If
 If Luat_suy_dien.Fields(7).Value = 1 Then
 Me.chkR_A_B.Value = 1
 Do_chinh_xac = Do_chinh_xac & "M7*"
 End If
 If Luat_suy_dien.Fields(8).Value = 1 Then
 Me.ChkF_AB.Value = 1
 Do_chinh_xac = Do_chinh_xac & "M8*"
 End If
 If Luat_suy_dien.Fields(9).Value = 1 Then
 Me.chkLoai_TB.Value = 1
 Do_chinh_xac = Do_chinh_xac & "M9*"
 End If
 Do_chinh_xac = Do_chinh_xac & Luat_suy_dien.Fields(11).Value
 '---------Neu sua thi chi hien so----------
 If Sua Then
 Do_chinh_xac = Luat_suy_dien.Fields(11).Value
 End If
 Me.txtDo_chinh_xac.text = Do_chinh_xac
 Ma_Loai_hong = Luat_suy_dien.Fields(10).Value
 '------------------Tim ket luan------------
 Set Loai_hong = New ADODB.Recordset
 Loai_hong.Source = "Select Trang_thai_hong from tblLoaihong where Ma_loai_hong='" & Ma_Loai_hong & "'"
 Loai_hong.ActiveConnection = TL
 Loai_hong.Open
 Me.cbmKet_luan.text = Loai_hong.Fields(0).Value
 '-----------------Tim thu tu luat-----------
 Me.lblLuat_thu.Caption = Luat_suy_dien.Fields(0).Value
 End If
thoat:
End Sub
Private Sub cmdXoa_Click()
If MsgBox("Bạn chắc chắn muốn xóa luật này ?", vbCritical + vbYesNo, " Chú ý ") = vbYes Then
 '-----------xoa luat------
 Luat_suy_dien.Delete
 Luat_suy_dien.Update
 '----------Sua lai cac Ma Luat---------
 Luat_suy_dien.MoveFirst
 Dim Ma_luat_xoa As Byte
 Ma_luat_xoa = 0
 Do
 Ma_luat_xoa = Ma_luat_xoa + 1
 If Len(Trim(Str(Ma_luat_xoa))) = 1 Then
 Luat_suy_dien.Fields(0).Value = Trim(0 & Trim(Str(Ma_luat_xoa)))
 Else
 Luat_suy_dien.Fields(0).Value = Trim(Str(Ma_luat_xoa))
 End If
 Luat_suy_dien.Update
 Luat_suy_dien.MoveNext
 Loop Until Luat_suy_dien.EOF
Luat_suy_dien.Requery
 '----------Dien cac gia tri vao form--------
 If Not (Luat_suy_dien.BOF) Then
 Luat_suy_dien.MovePrevious
 If Luat_suy_dien.BOF Then
 Luat_suy_dien.MoveNext
 End If
 Me.lblSo_luat.Caption = Luat_suy_dien.RecordCount
 '----------------Xoa cac checkbox-----------
 Me.chkAC_A_dat.Value = 0
 Me.ChkAC_B_dat.Value = 0
 Me.ChkDc_A_dat.Value = 0
 Me.chkDc_B_dat.Value = 0
 Me.chkR_a_dat.Value = 0
 Me.chkR_B_dat.Value = 0
 Me.chkR_A_B.Value = 0
 Me.ChkF_AB.Value = 0
 Me.chkLoai_TB.Value = 0
 '-------------Dien gia tri vao cac Checkbox-----------
 Dim Ma_Loai_hong As String
 Dim Do_chinh_xac As String
 Do_chinh_xac = ""
 If Luat_suy_dien.Fields(1).Value = 1 Then
 Me.chkAC_A_dat.Value = 1
 Do_chinh_xac = "M1*"
 End If
 If Luat_suy_dien.Fields(2).Value = 1 Then
 Me.ChkAC_B_dat.Value = 1
 Do_chinh_xac = Do_chinh_xac & "M2*"
 End If
 If Luat_suy_dien.Fields(3).Value = 1 Then
 Me.ChkDc_A_dat.Value = 1
 Do_chinh_xac = Do_chinh_xac & "M3*"
 End If
 If Luat_suy_dien.Fields(4).Value = 1 Then
 Me.chkDc_B_dat.Value = 1
 Do_chinh_xac = Do_chinh_xac & "M4*"
 End If
 If Luat_suy_dien.Fields(5).Value = 1 Then
 Me.chkR_a_dat.Value = 1
 Do_chinh_xac = Do_chinh_xac & "M5*"
 End If
 If Luat_suy_dien.Fields(6).Value = 1 Then
 Me.chkR_B_dat.Value = 1
 Do_chinh_xac = Do_chinh_xac & "M6*"
 End If
 If Luat_suy_dien.Fields(7).Value = 1 Then
 Me.chkR_A_B.Value = 1
 Do_chinh_xac = Do_chinh_xac & "M7*"
 End If
 If Luat_suy_dien.Fields(8).Value = 1 Then
 Me.ChkF_AB.Value = 1
 Do_chinh_xac = Do_chinh_xac & "M8*"
 End If
 If Luat_suy_dien.Fields(9).Value = 1 Then
 Me.chkLoai_TB.Value = 1
 Do_chinh_xac = Do_chinh_xac & "M9*"
 End If
 Do_chinh_xac = Do_chinh_xac & Luat_suy_dien.Fields(11).Value
 Ma_Loai_hong = Luat_suy_dien.Fields(10).Value
 '------------------Tim ket luan------------
 Set Loai_hong = New ADODB.Recordset
 Loai_hong.Source = "Select Trang_thai_hong from tblLoaihong where Ma_loai_hong='" & Ma_Loai_hong & "'"
 Loai_hong.ActiveConnection = TL
 Loai_hong.Open
 Me.cbmKet_luan.text = Loai_hong.Fields(0).Value
 '-----------------Tim thu tu luat-----------
 Me.lblLuat_thu.Caption = Luat_suy_dien.Fields(0).Value
 End If
 End If
thoat:
End Sub
Private Sub Form_Load()
 Them = False
 Sua = False
Set TL = New ADODB.Connection
 TL.Provider = "SQLOLEDB.1"
 TL.ConnectionString = "Persist Security Info=False;User ID=sa;Initial Catalog=DULIEU;Data Source=sam"
 TL.Open
 Set Luat_suy_dien = New ADODB.Recordset
 Luat_suy_dien.LockType = adLockOptimistic
 Luat_suy_dien.CursorType = adOpenKeyset
 Luat_suy_dien.Source = "Select * from tblTapluat order by Ma_luat"
 Luat_suy_dien.ActiveConnection = TL
 Luat_suy_dien.Open
 Luat_suy_dien.MoveFirst
 '-------------Dien gia tri vao cac Checkbox-----------
 Dim Ma_Loai_hong As String
 Dim Do_chinh_xac As String
 Do_chinh_xac = ""
 If Luat_suy_dien.Fields(1).Value = 1 Then
 Me.chkAC_A_dat.Value = 1
 Do_chinh_xac = "M1*"
 End If
 If Luat_suy_dien.Fields(2).Value = 1 Then
 Me.ChkAC_B_dat.Value = 1
 Do_chinh_xac = Do_chinh_xac & "M2*"
 End If
 If Luat_suy_dien.Fields(3).Value = 1 Then
 Me.ChkDc_A_dat.Value = 1
 Do_chinh_xac = Do_chinh_xac & "M3*"
 End If
 If Luat_suy_dien.Fields(4).Value = 1 Then
 Me.chkDc_B_dat.Value = 1
 Do_chinh_xac = Do_chinh_xac & "M4*"
 End If
 If Luat_suy_dien.Fields(5).Value = 1 Then
 Me.chkR_a_dat.Value = 1
 Do_chinh_xac = Do_chinh_xac & "M5*"
 End If
 If Luat_suy_dien.Fields(6).Value = 1 Then
 Me.chkR_B_dat.Value = 1
 Do_chinh_xac = Do_chinh_xac & "M6*"
 End If
 If Luat_suy_dien.Fields(7).Value = 1 Then
 Me.chkR_A_B.Value = 1
 Do_chinh_xac = Do_chinh_xac & "M7*"
 End If
 If Luat_suy_dien.Fields(8).Value = 1 Then
 Me.ChkF_AB.Value = 1
 Do_chinh_xac = Do_chinh_xac & "M8*"
 End If
 If Luat_suy_dien.Fields(9).Value = 1 Then
 Me.chkLoai_TB.Value = 1
 Do_chinh_xac = Do_chinh_xac & "M9*"
 End If
 Do_chinh_xac = Do_chinh_xac & Luat_suy_dien.Fields(11).Value
 Me.txtDo_chinh_xac.text = Do_chinh_xac
 Ma_Loai_hong = Luat_suy_dien.Fields(10).Value
 '------------------Tim ket luan------------
 Set Loai_hong = New ADODB.Recordset
 Loai_hong.Source = "Select Trang_thai_hong from tblLoaihong where Ma_loai_hong='" & Ma_Loai_hong & "'"
 Loai_hong.ActiveConnection = TL
 Loai_hong.Open
 Me.cbmKet_luan.text = Loai_hong.Fields(0).Value
 Me.lblLuat_thu.Caption = Luat_suy_dien.Fields(0).Value
 Me.lblSo_luat.Caption = Luat_suy_dien.RecordCount
 '---------Khoa du lieu-----------
 Me.chkAC_A_dat.Enabled = False
 Me.ChkAC_B_dat.Enabled = False
 Me.ChkDc_A_dat.Enabled = False
 Me.chkDc_B_dat.Enabled = False
 Me.chkR_a_dat.Enabled = False
 Me.chkR_B_dat.Enabled = False
 Me.chkR_A_B.Enabled = False
 Me.ChkF_AB.Enabled = False
 Me.chkLoai_TB.Enabled = False
 Me.cbmKet_luan.Enabled = False
 Me.txtDo_chinh_xac.Enabled = False
 Me.cmdDong_y_them.Enabled = False
 Me.cmdBo_qua_them.Enabled = False
 Them = False
 Sua = False
End Sub
Tài liệu tham khảo
Trần Đình Khang , Nguyễn Thanh Thủy - Xây dựng cơ chế suy diễn trên cơ sở tri thức mờ - 1998.
Nguyễn Thanh Thủy- Trí tuệ nhân tạo - Nhà xuất bản giáo dục - 1995.
Nguyễn Hoàng Phưong, Bùi Công Cường, Nguyễn Doãn Phước,Phan Xuân Minh, Chu Văn Ký - Hệ mờ và ứng dụng - Nhà xuất bản Khoa học và kỹ thuật.
Trần Đình Khang- Bài giảng Hệ chuên gia - Lớp Tin 99- Đại học Thủy sản Nha Trang.
Tiêu chuẩn ngành Bưu Điện - Tổng cục Bưu Điện -1998.
Kỹ thuật Tổng đài Fujisu - 1998. 
            Các file đính kèm theo tài liệu này:
 dms-htcdhdt.doc dms-htcdhdt.doc