5.1.1. Các kết quả đạt đợc
+ Hệ thống đáp ứng, hỗ trợ đựơc phần nào công việc cuả th viện, giảm bớt các chức năng hoạt động thủ công. Những công việc có thể dùng đợc máy tính tra cứu, thống kê, tính toán đã đợc hoàn thiện và áp dụng hoàn toàn vào trong quản lý tự động, vừa tăng tính hiệu quả nhanh chóng và đem lại các giá trị thông tin ít bị sai lệch.
+ Hệ thống cho phép cập nhập các thông tin mới, cho phép tự động phân loại các danh mục có của th viện. Quá trình sửa, xóa thông tin sẽ đ- ợc thực hiện theo yêu cầu của ngời dùng.
+ Hệ thống thiết kế logic nên khi có một sự thay đổi trong th viện toàn bộ các chức năng liên quan sẽ tự động điều chỉnh một cách phù hợp để duy trì tính liên tục của hệ thống.
+ Các luồng thông tin lu chuyển trong hệ thống đợc kiểm soát chặt chẽ bởi các công cụ đợc kiểm tra và tìm kiếm.
+Dữ liệu đợc thiết kế trong hệ thống đã đợc chuẩn hóa nên không gian lu giữ thông tin trong máy tính đợc tối u và có thể truy xuất dữ liệu đợc đầy đủ và thuận tiện.
+ Đối với mọi đối tợng ngời sử dụng, các thao tác thuận tiện, dễ dàng và trình bày màn hình hợp với các giao diện chuẩn nh WINDOWS.
+ Có chức năng mật khẩu nhằm phân quyền sử dụng cho các đối t- ợng ngời dùng khác nhau nh độc giả và thủ th.
5.1.2. Đánh giá
Chơng trình đợc xây dựng và thiết kế trên hệ quản trị cơ sở ACCESS và ngôn ngữ lập trình VISUAL BASIC hiện đại và đa năng. Có đợc những đặc tính, u điểm nổi bật sau:
- Trực quan dễ sử dụng.
- Đáp ứng đợc nhu cầu quản lý của ngời sử dụng, xác định rõ quyền hạn của ngời sử dụng.
- Hỗ trợ đắc lực cho ngời quản lý, hay các nhân viên trong quá trình làm việc, nhập dữ liệu đợc thực hiện một cách nhanh chóng, dễ dàng nhờ sự tự động kiểm tra dữ liệu vào.
- Việc tra cứu tài liệu đợc nhanh chóng và thuận tiện đáp ứng nhu cầu độc giả.
- Các thống kê báo cáo đợc kết xuất nhanh chóng kịp thời giúp cho việc quản lý nắm giữ các thông tin của th viện. luận văn đã phân tích, thiết kế hầu nh đầy đủ cơ sở dữ liệu của hệ thống quản lý th viện, tuy nhiên một số vấn đề vẫn cha đợc đa vào phân tích. Với sự hàn chế về thời gian cùng với kiến thức và khả năng lập trình, ch- ơng trình không tránh khỏi những thiếu sót. Cụ thể hạn chế nhận thấy của chơng trình là:
- Cha đa hệ thống quản lý mã vạch quốc tế vào để quản lý tài liệu.
- Cha giải quyết đợc hết những vấn đề nảy sinh trong quá trình quản lý.
- Chơng trình cha chạy đợc trên mạng.
5.1.3. Phơng hớng phát triển chơng trình
- Phát triển chơng trình chạy trên mạng máy tính, đây là hớng phát triển đầu tiên của chơng trình, vì trong thực tế cơ sở dữ liệu trên mạng có ý nghĩa lớn hơn nhiều trên các máy đơn lẻ.
- Từ đó cung cấp thêm chức năng tra cứu tài liệu thông tin qua web. Chức năng này cho phép độc giả tra cứu dữ liệu từ xa, sử dụng các phần mềm để truy cập vào các trang web của th viện.
- Quản lý các đơn đặt hàng và hóa đơn mua tài liệu của th viện.
- Chuẩn hóa chơng trình theo chuẩn quốc tế nhằm liên kết các trung tâm th viện để chia sẻ các nguồn lực tài nguyên của nhau.
Qua thời gian thực tập tại Th Viện Hà Nội, em đã đợc trang bị thêm nhiều kiến thức thực tế phong phú và bổ ích, đó là cơ sở cho em hoàn thành bài báo cáo của mình. Em rất mong nhận đợc sự đóng góp ý kiến của các thầy, cô giáo và bạn bè để chơng trình đợc tiếp tục hoàn thiện, đáp ứng một cách tốt nhất cho công tác Quản Lý Th Viện.
Em xin chân thành cảm ơn!
Phụ lục 1. modul quản lý độc giả
Dim Rs As DAO.Recordset Private Sub cmdInThe_Click() With frmTheBanDoc
.Label4.Caption = frmQuanLyDocGia.txtHoTen.Text .Label5.Caption = frmQuanLyDocGia.txtNgaySinh.Text .Label8.Caption = frmQuanLyDocGia.txtNgayLamThe.Text .Label9.Caption = frmQuanLyDocGia.txtGiaTriDen.Text If frmQuanLyDocGia.optDuocMuon.Value = True Then .Label10.Caption = "Thẻ Đọc+Mợn" Else .Label10.Caption = "Thẻ Đọc" End If End With frmTheBanDoc.Show frmTheBanDoc.PrintForm Unload frmTheBanDoc
MsgBox "Dã in thẻ bạn đọc", vbOKOnly + vbInformation, "Thông báo"
End Sub
Private Sub cmdMoveFirst_Click() Rs.MoveFirst
Call HienThi End Sub
Private Sub cmdMoveLast_Click() Rs.MoveLast
Call HienThi End Sub
Private Sub cmdMoveNext_Click() Rs.MoveNext
If Not Rs.EOF Then Call HienThi Else Rs.MoveLast Call HienThi End If End Sub
Private Sub cmdMovePrevious_Click() Rs.MovePrevious
If Not Rs.BOF Then Call HienThi
Else
Rs.MoveFirst Call HienThi End If
End Sub
Private Sub cmdSua_Click() On Error GoTo Loi
Rs.Edit If chbSinhVien.Value = 1 Then Rs(12).Value = True Else Rs(12).Value = False End If ' rs(0) = Me.txtSoThe.Text Rs(1) = Trim(Me.txtHoTen.Text) Rs(2) = Me.txtNgaySinh.Text Rs(3) = Me.cboGioiTinh.Text Rs(4) = Me.txtDiaChi.Text Rs(5) = Me.txtTrinhDo.Text Rs(6) = Me.txtChuyenNganh.Text Rs(7) = Me.txtHocHam.Text Rs(8) = Me.txtHocVi.Text Rs(9) = Me.txtNoiCongTac.Text Rs(10) = Me.txtNgayLamThe.Text Rs(11) = Me.txtGiaTriDen.Text If optDuocMuon.Value = True Then Rs(13).Value = True
Else
Rs(13).Value = False End If
Rs.Update
MsgBox "Dã sửa thành công", vbOKOnly + vbInformation, "Thông báo"
Call HienThi: Exit Sub Loi:
MsgBox "Không Thể sửa thông tin đợc vì thông tin nhập vào không hợp lệ!", vbOKOnly + vbInformation, "Sửa thông tin"
End Sub
Private Sub cmdTimKiem_Click()
Dim L 'Khai bao bien xem co quyet dinh tim tiep hay khong? Dim YN ' Khai bao bien hoi xem chon cach tim nao?
cmdThem.Caption = "Thêm &Mới"
Call cmdThem_Click
cmdThem.Caption = "Thêm &Mới"
YN = MsgBox("Bạn tìm theo số thẻ phải không?" & Chr(10) & "Nhấn 'No' dể tìm theo 'Họ và tên'", vbYesNo + vbQuestion +
vbDefaultButton1, "Thông báo") If YN = vbYes Then Me.txtSoThe.SetFocus cmdTimKiem.Caption = "Tìm" cmdTimKiem.Default = True Exit Sub Else Me.txtHoTen.SetFocus cmdTimKiem.Caption = "Tìm" cmdTimKiem.Default = True End If Else
cmdThem.Caption = "Thêm &Mới"
If Me.txtSoThe.Text = "" And Me.txtHoTen.Text = "" Then cmdTimKiem.Caption = "Tìm &Kiếm"
'Call cmdTimKiem_Click
cmdThem.Caption = "Thêm &Mới" Else If Me.txtSoThe.Text <> "" Then cmdTimKiem.Caption = "Tìm &Kiếm" If Rs.RecordCount = 0 Then Call HienThi Else Rs.MoveFirst
Do While Not Rs.EOF
If LCase(Rs(0)) = LCase(Trim(Me.txtSoThe.Text)) Then
Call HienThi
MsgBox "Dã tìm thấy", vbOKOnly + vbInformation, "Thông báo"
cmdTimKiem.Default = False cmdTimKiem.Caption = "Tìm &Kiếm" Exit Do End If Rs.MoveNext Loop If Rs.EOF Then
MsgBox "Không tìm thấy độc giả nào có số thẻ là : " & txtSoThe.Text, vbOKOnly + vbInformation, "Thông báo"
cmdTimKiem.Caption = "Tìm &Kiếm" Rs.MoveFirst
End If End If Else
Rs.MoveFirst
Do While Not Rs.EOF
If LCase(Rs(1)) = LCase(Trim(Me.txtHoTen.Text)) Then
Call HienThi
L = MsgBox("Dã tìm thấy. Bạn có tìm tiếp không??", vbYesNo + vbQuestion, "Thông báo")
cmdTimKiem.Caption = "Tìm &Kiếm" cmdTimKiem.Default = False If L = 7 Then Exit Do End If End If Rs.MoveNext Loop If Rs.EOF Then cmdTimKiem.Caption = "Tìm &Kiếm"
MsgBox "Không tìm thấy", vbOKOnly + vbInformation, "Thông báo" Rs.MoveFirst End If End If End If End If End Sub
Private Sub cmdTTMuonTra_Click() frmChiTietMuonTraCuaDocGia.Show End Sub
Private Sub cmdXoa_Click() Dim YN Dim KT Dim txtST If Rs.RecordCount <> 0 Then 'Dim strSQL As String Dim RsMT As Recordset
Set RsMT = db.OpenRecordset("tblMuonTra", dbOpenDynaset) txtST = Me.txtSoThe.Text
' strSQL = "select * from tblMuonTra where SoThe=txtst"
YN = MsgBox("Bạn có chắc chắn xoá bạn đọc này không? ", vbQuestion + vbYesNo, "Thông báo")
If YN = vbYes Then
If RsMT.RecordCount = 0 Then KT = True
Else
RsMT.MoveFirst
Do While Not RsMT.EOF
If RsMT(0) = txtST And RsMT(11).Value = True Then KT = True Else: KT = False End If RsMT.MoveNext Loop End If If KT = False Then
MsgBox "Bạn đọc đang mợn sách, không thể xoá", vbOKOnly + vbInformation, "Thông báo"
Else
Rs.Delete
MsgBox "Dã xoá rồi", vbOKOnly + vbInformation, "Thông báo"
Rs.MoveNext Call HienThi End If
End If
Else: MsgBox "Danh Sách Bạn Dọc Rỗng", vbOKOnly + vbInformation, "Thông báo"
End If End Sub
Private Sub Form_Load()
Me.Left = (Screen.Width - Me.Width) / 2 Me.Top = Screen.Height * 0.1
Set Rs = db.OpenRecordset("tbldocgia", dbOpenDynaset) cboGioiTinh.AddItem "Nam" cboGioiTinh.AddItem "Nữ" optDuocMuon.Value = True Call HienThi End Sub Sub HienThi() If Rs.RecordCount = 0 Then
MsgBox "Danh sách bạn đọc rỗng", vbOKOnly + vbInformation, "Thông báo"
cmdMoveFirst.Visible = False cmdMoveLast.Visible = False cmdMovePrevious.Visible = False cmdMoveNext.Visible = False cboGioiTinh.Text = "" Me.txtSoThe.Text = "" Me.txtHoTen.Text = "" Me.txtNgaySinh.Text = "" Me.txtDiaChi.Text = "" Me.txtTrinhDo.Text = "" Me.txtChuyenNganh.Text = "" Me.txtNoiCongTac.Text = "" Me.txtNgayLamThe.Text = "" Me.txtHocHam.Text = "" Me.txtHocVi.Text = "" Me.txtGiaTriDen.Text = "" chbSinhVien.Value = 0 Else
If Rs.EOF Then Rs.MoveLast
If Rs(3) = "Nam" Or Rs(3) = "nam" Then cboGioiTinh.Text = "Nam"
ElseIf Rs(3) = "Nu" Or Rs(3) = "nu" Or Rs(3) = "Nữ" Or Rs(3) = "nữ" Then
cboGioiTinh.Text = "Nữ"
Else: cboGioiTinh.Text = "Không xác định" End If
If Rs(12).Value = True Then chbSinhVien.Value = 1 Else chbSinhVien.Value = 0 End If Me.txtSoThe.Text = Rs(0) Me.txtHoTen.Text = Rs(1) Me.txtNgaySinh.Text = Rs(2) Me.txtDiaChi.Text = Rs(4) Me.txtTrinhDo.Text = Rs(5) Me.txtChuyenNganh.Text = Rs(6) Me.txtNoiCongTac.Text = Rs(9) Me.txtNgayLamThe.Text = Rs(10) Me.txtHocHam.Text = Rs(7) Me.txtHocVi.Text = Rs(8) Me.txtGiaTriDen.Text = Rs(11) If Rs(13).Value = True Then optDuocMuon.Value = True Else
optChiDoc.Value = True End If cmdMoveFirst.Visible = True cmdMoveLast.Visible = True cmdMovePrevious.Visible = True cmdMoveNext.Visible = True End If End Sub
Private Sub txtHoTen_GotFocus()
If KiemTraTextRong(txtSoThe.Text) And Me.cmdThem.Caption = "Ghi Lại" Then
MsgBox "Bạn cha nhập số thẻ", vbOKOnly + vbInformation txtSoThe.Text = ""
txtSoThe.SetFocus Exit Sub
End If
If cmdThem.Caption = "Ghi Lại" Then If KiemTraTonTaiThe Then
MsgBox "Số thẻ đã tồn tại", vbOKOnly + vbInformation txtSoThe.Text = ""
txtSoThe.SetFocus End If
End If End Sub
Private Function KiemTraTonTaiThe() As Boolean KiemTraTonTaiThe = False
Dim RsDG8 As DAO.Recordset
Set RsDG8 = db.OpenRecordset("Select * from tbldocgia where sothe='" & txtSoThe.Text & "'")
If RsDG8.RecordCount > 0 Then KiemTraTonTaiThe = True RsDG8.Close
Set RsDG8 = Nothing End Function
2. modul quản lý sách
Dim RsSN As DAO.Recordset ' Khai bao bien de tro toi bang tblSachNhap
Dim RsCL As DAO.Recordset Dim RsNXB As DAO.Recordset
Dim RsMT As DAO.Recordset Dim YNTK
Private Sub cmdCapNhap_Click() Unload Me
frmCapNhapChiTietSach.Show End Sub
Private Sub cmdChiTietSach_Click() Unload Me
frmChiTietSach.Show End Sub
Private Sub cmdGhiSua_Click() Dim RsCL1 As DAO.Recordset Dim RsNXB1 As DAO.Recordset Dim YN
Dim strSQL As String
strSQL = "Select * from tblchungloai where machungloai='" & cboMaLoai.Text & "'"
Set RsCL1 = db.OpenRecordset(strSQL)
Set RsNXB1 = db.OpenRecordset("Select * from tblnhaxuatban where manhaxuatban='" & cboMaNXB.Text & "'")
If RsCL1.RecordCount > 0 And RsNXB1.RecordCount > 0 Then YN = MsgBox("Bạn có chắc chắn sửa không?", vbQuestion + vbYesNo + vbDefaultButton1) If YN = 6 Then RsSN.Edit RsSN(1) = Trim(txtTenSach.Text) RsSN(2) = cboMaLoai.Text RsSN(3) = cboMaTacGia.Text RsSN(4) = cboMaNXB.Text RsSN(8) = txtNgonNgu.Text RsSN(7) = txtSoTrang.Text RsSN(9) = txtGhiChu.Text RsSN.Update
MsgBox "Đã sửa rồi", vbOKOnly + vbInformation, "Thông báo" End If
Else: MsgBox "Không thể ghi lại thay đổi do: 'Mã NXB' Hay 'Mã Chủng Loại' Không Tồn Tại", vbOKOnly + vbInformation, "Thông báo" End If
RsCL1.Close
Set RsCL1 = Nothing RsNXB1.Close
Set RsNXB1 = Nothing End Sub
Private Sub cmdHuySach_Click() If txtMaSach.Text = "" Then
MsgBox "Bạn hủy mã sách nào?", vbOKOnly + vbQuestion txtMaSach.SetFocus Exit Sub End If Dim RsSN121 As DAO.Recordset Set RsSN121 = db.OpenRecordset("tblSachNhap") If RsSN121.RecordCount > 0 Then
Do While Not RsSN121.EOF
If LCase(RsSN121(0)) = LCase(Trim(txtMaSach.Text)) Then RsSN121.Close Set RsSN121 = Nothing frmHuySach.Show Exit Sub End If RsSN121.MoveNext Loop If RsSN121.EOF Then RsSN121.Close Set RsSN121 = Nothing
MsgBox "Không có mã sách " & "'" & txtMaSach.Text & "'", vbOKOnly + vbInformation txtMaSach.Text = "" txtMaSach.SetFocus Exit Sub End If End If End Sub
Private Sub cmdMovePrevious_Click() RsSN.MovePrevious
If RsSN.BOF Then RsSN.MoveFirst Call HienThi Else: Call HienThi End If
End Sub
Private Sub cmdThoat_Click() Dim YN
YN = MsgBox("Bạn có chắc chắn thoát?", vbYesNo + vbQuestion + vbDefaultButton1, "Thông báo")
If YN = 6 Then Unload Me 'frmMain.Show End If
End Sub
Private Sub cmdTimKiem_Click()
If cmdTimKiem.Caption = "Tìm &Kiếm" Then txtMaSach.Text = "" txtTenSach.Text = "" cboMaLoai.Text = "" cboMaTacGia.Text = "" cboMaNXB.Text = "" txtSoTrang.Text = "" txtTongSL.Text = "" txtChoMuon.Text = "" txtConLai.Text = "" txtGhiChu.Text = "" txtNgonNgu.Text = "" txtNoiDe.Text = ""
YNTK = MsgBox("Bạn tìm theo mã sách phải không?" & Chr(10) & "Còn không thì tìm theo tên sách", vbYesNo + vbQuestion +
vbDefaultButton1, "Thông báo") If YNTK = 6 Then txtMaSach.SetFocus cmdTimKiem.Caption = "Tìm" cmdTimKiem.Default = True Else txtTenSach.SetFocus cmdTimKiem.Caption = "Tìm" cmdTimKiem.Default = True End If Else If YNTK = 6 Then
If Not (RsSN.EOF And RsSN.BOF) Then RsSN.MoveFirst Do While Not RsSN.EOF
If LCase(RsSN(0)) = LCase(Trim(txtMaSach.Text)) Then Call HienThi
MsgBox "Đã tìm thấy", vbOKOnly + vbInformation, "Thông báo"
cmdTimKiem.Caption = "Tìm &Kiếm" Exit Do
RsSN.MoveNext Loop
If RsSN.EOF Then
MsgBox "Không tìm thấy", vbOKOnly + vbInformation, "Thông báo"
cmdTimKiem.Caption = "Tìm &Kiếm" RsSN.MoveFirst
End If Else
If Not (RsSN.EOF And RsSN.BOF) Then RsSN.MoveFirst Do While Not RsSN.EOF
If LCase(RsSN(1)) = LCase(Trim(txtTenSach.Text)) Then Call HienThi
MsgBox "Đã tìm thấy", vbOKOnly + vbInformation, "Thông báo" cmdTimKiem.Caption = "Tìm &Kiếm" Exit Do End If RsSN.MoveNext Loop If RsSN.EOF Then
MsgBox "Không tìm thấy", vbOKOnly + vbInformation, "Thông báo" cmdTimKiem.Caption = "Tìm &Kiếm" RsSN.MoveFirst End If End If End If End Sub
Private Sub Form_Load()
' frmQuanLySach.Left = (Screen.Width - frmQuanLySach.Width) / 2 Me.Left = (Screen.Width - Me.Width) / 2
Me.Top = Screen.Height * 0.1
Set RsSN = db.OpenRecordset("tblSachNhap", dbOpenDynaset) Set RsCL = db.OpenRecordset("tblchungloai", dbOpenDynaset) Set RsNXB = db.OpenRecordset("tblNhaXuatBan", dbOpenDynaset) Call HienThi
txtNoiDe.Enabled = False
cmdThem.ToolTipText = "Them moi dau sach nhap" Dim RsTG1234 As DAO.Recordset
Set RsTG1234 = db.OpenRecordset("tblTacGia") If RsCL.RecordCount > 0 Then
RsCL.MoveFirst
Do While Not RsCL.EOF cboMaLoai.AddItem RsCL(0) RsCL.MoveNext Loop RsCL.MoveFirst End If If RsTG1234.RecordCount > 0 Then RsTG1234.MoveFirst
Do While Not RsTG1234.EOF
cboMaTacGia.AddItem RsTG1234(0) RsTG1234.MoveNext Loop RsTG1234.MoveFirst End If RsTG1234.Close Set RsTG1234 = Nothing If RsNXB.RecordCount > 0 Then RsNXB.MoveFirst
Do While Not RsNXB.EOF
cboMaNXB.AddItem RsNXB(0) RsNXB.MoveNext Loop RsNXB.MoveFirst End If End Sub Sub HienThi() Dim RsCL2 As DAO.Recordset txtTongSL.Enabled = False txtChoMuon.Enabled = False txtConLai.Enabled = False If RsSN.RecordCount = 0 Then
MsgBox "Danh Sách sách nhập rỗng", vbOKOnly + vbInformation, "Thông báo" cmdMoveFirst.Visible = False cmdMoveLast.Visible = False cmdMovePrevious.Visible = False cmdMoveNext.Visible = False txtMaSach.Text = "" txtTenSach.Text = "" cboMaLoai.Text = "" cboMaTacGia.Text = "" cboMaNXB.Text = "" txtSoTrang.Text = "" txtTongSL.Text = "" txtChoMuon.Text = ""
txtConLai.Text = "" txtGhiChu.Text = "" txtNgonNgu.Text = "" txtNoiDe.Text = "" Else
Private Sub cboMaNXB_GotFocus()
If KiemTraTextRong(Trim(Me.cboMaTacGia.Text)) And cmdThem.Caption = "&Ghi Lại" Then
MsgBox "Mã tác giả không đợc để trống", vbOKOnly + vbInformation Me.cboMaTacGia.SetFocus
Exit Sub End If
If cmdThem.Caption = "&Ghi Lại" Then Dim RsTacGia12 As DAO.Recordset
Set RsTacGia12 = db.OpenRecordset("tblTacGia") If RsTacGia12.RecordCount > 0 Then
Do While Not RsTacGia12.EOF
If LCase(RsTacGia12(0)) = LCase(Trim(cboMaTacGia.Text)) Then
RsTacGia12.Close
Set RsTacGia12 = Nothing Exit Sub End If RsTacGia12.MoveNext Loop If RsTacGia12.EOF Then RsTacGia12.Close
Set RsTacGia12 = Nothing
MsgBox "Tác giả này không có trong danh mục tác giả của th viện!", vbOKOnly + vbInformation
cboMaTacGia.Text = "" cboMaTacGia.SetFocus Exit Sub End If End If RsTacGia12.Close
Set RsTacGia12 = Nothing
MsgBox "Tác giả này không có trong danh mục tác giả của th viện!", vbOKOnly + vbInformation cboMaTacGia.Text = "" cboMaTacGia.SetFocus Exit Sub End If End Sub
Private Sub txtSoTrang_GotFocus()
If KiemTraTextRong(Trim(Me.cboMaNXB.Text)) And cmdThem.Caption = "&Ghi Lại" Then
MsgBox "Mã NXB không đợc để trống", vbOKOnly + vbInformation Me.cboMaNXB.SetFocus
Exit Sub End If
If cmdThem.Caption = "&Ghi Lại" Then Dim RsNXB123 As DAO.Recordset
Set RsNXB123 = db.OpenRecordset("tblNhaXuatBan") If RsNXB123.RecordCount > 0 Then
Do While Not RsNXB123.EOF
If LCase(RsNXB123(0)) = LCase(Trim(cboMaNXB.Text)) Then RsNXB123.Close Set RsNXB123 = Nothing Exit Sub End If RsNXB123.MoveNext Loop If RsNXB123.EOF Then RsNXB123.Close Set RsNXB123 = Nothing
MsgBox "Mã NXB này sai hoặc cha đợc nhập vào danh mục NXB trong th viện!", vbOKOnly + vbInformation
cboMaNXB.Text = "" cboMaNXB.SetFocus Exit Sub End If End If RsNXB123.Close Set RsNXB123 = Nothing
MsgBox "Mã NXB này sai hoặc cha đợc nhập vào danh mục NXB trong th viện!", vbOKOnly + vbInformation
cboMaNXB.Text = "" cboMaNXB.SetFocus Exit Sub
End If End Sub
Private Sub cboMaTacGia_GotFocus()
If KiemTraTextRong(Trim(Me.cboMaLoai.Text)) And cmdThem.Caption = "&Ghi Lại" Then
Me.cboMaLoai.SetFocus Exit Sub
End If
If cmdThem.Caption = "&Ghi Lại" Then
Dim RsChungLoai123 As DAO.Recordset
Set RsChungLoai123 = db.OpenRecordset("tblChungLoai") If RsChungLoai123.RecordCount > 0 Then
Do While Not RsChungLoai123.EOF If LCase(RsChungLoai123(0)) = LCase(Trim(cboMaLoai.Text)) Then
RsChungLoai123.Close
Set RsChungLoai123 = Nothing Exit Sub End If RsChungLoai123.MoveNext Loop If RsChungLoai123.EOF Then RsChungLoai123.Close
Set RsChungLoai123 = Nothing
MsgBox "Chủng loại có mã vừa nhập không có!", vbOKOnly + vbInformation cboMaLoai.Text = "" cboMaLoai.SetFocus Exit Sub End If End If RsChungLoai123.Close
Set RsChungLoai123 = Nothing
MsgBox "Chủng loại có mã vừa nhập không có!", vbOKOnly + vbInformation cboMaLoai.Text = "" cboMaLoai.SetFocus Exit Sub End If End Sub
Danh mục tài liệu tham khảo
[1] – Phân tích thiết kế hệ thống thông tin [2] – Nhập môn CSDL quan hệ
Lê Tiên Vơng, NXB Thống kê
[3] – VISUAL BASIC 6.0 & Lập Trình CSDL NXB Giáo Dục, Nguyễn Ngọc Mai(chủ biên)
[4] – MicroSoft Access
Giáo trình ĐH Kinh Doanh và Công Nghệ Hà Nội [5] – Một số luận văn tham khảo th viện