Lời nói đầu
Một nhiệm vụ quan trọng của công tác quản lý là quản lý dữ liệu , tức là những số liệu và tài liệu thu thập được . Dữ liệu được coi là nguyên liệu để chế biến thành thông tin dưới dạng tiện dùng và có ích cho viẹec ban hành các quyết định . Ngày nay ngân hàng dữ liệu hệ cơ sở dữ liệu dựa trên máy tính điên tử là phương tiện chủ yếu để quản lý dữ liệu một cách thành công .Mối quan tâm hàng đầu của những cán bộ thiết kế hệ thống thông tin quản lý là thiết kế các ngân hàng dữ liệu nhằm
36 trang |
Chia sẻ: huyen82 | Lượt xem: 1354 | Lượt tải: 0
Tóm tắt tài liệu Xây dựng hệ thống thông tin quản lý các văn bản đến và đi, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
lưu trữ và quản lý tập trung dữ liệu trên các phương tiện nhớ của máy tính điện tử để phục vụ cho nhiều người dùng và nhiều mục đích quản lý.Hệ thống thông tin quản lý thể hiên cách tiếp cận của nhà quản lý tới những hệ thống thông tin quản lý và những ứng dụng của nó trong các tổ chức kinh tế xã hội , đặc biệt cho các tổ chức doanh nghiệp. Các nhà quản lý hiện đại càng ngày càng phải chịu trách nhiệm nhiều hơn trong việc xác định những yêu cầu hệ thông thông tin và trách nhiệm trong việc phân tích, thiết kế và cài đặt những hệ thống thông tin sao cho chúng trợ giúp tốt nhất những yêu cầu thông tin của nhà quản lý .
Hiện nay ở nước ta thực hiện Nghị Định 49/CP của chính phủ tất cả các cơ quan xí nghiệp đều đã và đang thực hiện đưa máy tính vào công tác văn phòng và quản lý .Thế nên sinh viên chuẩn bị đi thực tật làm đề tài chuyên nghành là hết sức thiết thực và cần thiết để qua đây biết được tình hình học tập và ứng dụng trong thực tế ra sao? Cho nên em chọn đề tài “Xây dựng hệ thống thông tin quản lý các văn bản đến và đi của khoa tin học kinh tế” Đề tài này sẽ giúp cho em hiểu biết hơn vì đây là đề tài thiết thực trong thực tế .Qua đề tài này em sẽ phát triển lên xây dựng đề tài khác khá hơn .
Em xin chân thành cảm ơn thầy giáo Trương văn Tú đã hướng dẫn em thực hiên đề tài này.
Vì đây là đề tài đầu tay về môn chuyên nghành nên chắc hẳn còn nhiều thiếu sót . Em rất mong nhận được lời nhận xét phê bình và gợi ý sửa đổi của Thầy để em rút kinh nghiệm trong những đề tài sau nhất là trong quá trình thực tập.
ChươngI. Khái quát nội dung và sử dụng ngôn ngữ xây dựng trương trình này:
A.Khái niệm cơ bản.
1.Khái quát chung.
Trải qua 45 năm xây dựng và trưởng thành Đại Học Kinh Tế Quốc Dân Hà Nội đã đào tạo ra hàng nghìn cử nhân kinh tế .Vì vậy việc quản lý hồ sơ và các văn bản đến và đi của trường là một vấn đề rất cấp bách và thiết thực đối với nhà trường nói chung và khoa tin học kinh tế nói riêng.
Các hồ sơ quản lý sinh viên sau khi tốt nghiệp ra trường làm việc và công tác được nhà trường theo dõi họat động , thu thập các thông tin nhằm xây dựng đào tạo và phát triển chuyên ngành ngày càng tốt hơn, phù hợp, đáp ứng yêu cầu của đất nước cải thiện nâng cao chất lượng đào tạo cử nhân kinh tế với chất lượng cao nhằm xây dựng đất nước văn minh và hiện đại.
Nhà trường liên hệ tới các khoa, chuyên ngành của từng sinh viên để nắm bắt được tình hình của sinh viên về việc học tập và liên hệ với gia đình để đào tạo quản lý có hiệu quả,với sự quản lý chặt chẽ như vậy chất lượng sinh viên ra trường ngày càng cao.
Các hồ sơ văn bản của Bộ Giáo dục và đào tạo gửi tới nhà trường .Sau đó gửi tới các khoa để phổ biến cho sinh viên biết những quy chế về quá trình đào tạo .Các văn bản hồ sơ của khoa gửi tới Bộ Giáo dục thông qua nhà trường ngoài ra ý kiến đóng góp của sinh viên tới khoa và nhà trường.
2.Tính cấp thiết của đề tài.
Trường ta hàng năm đào tạo rất nhiều cử nhân cho nên việc quản lý hồ sơ cuả các sinh viên là rất cần thiết. Những văn bản gửi đến và đi rất nhiều cho nên vấn đề bảo mật và quản lý phải chặt chẽ. Cử nhân Tin Học Kinh Tế được đào tạo những kiến thức cơ bản nhất về tin học sau khi ra trường sinh viên có thể độc lập làm việc cho các trung tâm phần mềm ,các công ty sản xuất, bưu điện, ngân hàng…
Việc quản lý văn bản là công việc cần thiết và cấp bách thiết thực nhằm thúc đẩy chất lượng đào tạo cử nhân phù hợp với thời đại thông tin, nhất là đối với sinh viên khoa tin học quản lý. Đào tạo cho đất nước các cử nhân tin học kinh tế đáp ứng yêu cầu của đất nước xây dựng Xã Hội Chủ Nghĩa phồn vinh.
B.Ngôn ngữ lập trình.
1.Khái niệm chung.
Với phần mềm quản lý văn bản vào ra của khoa tin học kinh tế là một khối lượng tương đối lớn vì vậy khi xây dựng HTTT cho đề tài nay ngôn ngữ thích hợp cho hướng đối tượng , truy cập một cách nhanh nhất và dễ hiểu nhất, thuận lợi cho việc tìm kiếm, hay theo dõi quá trình học tập của sinh viên đó . Em chọn ngôn ngữ lập Trình Visual Basic 6.0.
Đây là ngôn ngữ thông dụng nhất cho việc xây dựng đề tài lập trình hướng đối tượng , giúp cho đề tài sinh động hơn, dễ hiểu hơn, sử dụng dễ hơn.
2.Xây dựng đề tài.
Với ngôn ngữ Visual Basic 6.0 , đề tài được xây dựng trên cơ sở HTTT được thiết kế các FORM , với một FORM chính ta có thể truy nhập, tìm kiếm, dữ liệu , thông tin về hồ sơ, văn bản đi và văn bản đến của khoa tất cả những vấn đề về hồ sơ kể cả những văn bản đã sử dụng .
Qua đó ta có thể liên hệ dễ dàng hơn giữa các khoa với nhau và liên hệ giữa nhà trường và gia đình, việc liên hệ của Bộ Giáo dục gửi tới nhà trường và thông qua các khoa tới sinh viên để cập nhật những thông tin cần thiết.Như vậy sử dụng ngôn ngữ Visual Basic có thể xây dựng chương trình hoàn thiện hơn so với ngôn ngữ lập trình khác.
Với ngôn ngữ này em xây dựng các form nhỏ thông qua một form chính. Từ form chính có thể truy nhập được các thông tin ở các form khác nhờ menu hiện ở trên form chính, ngoài ra có thể nhập thêm hay xoá bỏ một văn bản nào đó do một lý do là chuyển đến hoặc chuyển đi.
ChươngII: Quá trình thực hiện
A. Quá trình thực hiện.
Nhiệm vụ chính của thiết kế là : Lập kế hoạch, thiết kế chi tiết các giao diện vào ra, thiết kế cách thức tương tác với phần tin học hoá, thiết kế các thủ tục thủ công, chuẩn bị trình bày báo cáo. Thiết kế các giao diện là xác định HTTT trình bày thông tin như thế nào cho người sử dụng khi nhập dữ liệu vào hệ thống hoặc đưa ra kết qua ra. Công việc quản lý sinh viên là một công việc rất thiết thực trong việc đào tạo quản lý sinh viên . Với đội ngũ sinh viên sau khi ra trường họ có thể phát huy những tài năng vốn có của mình đã học và nghiên cứu trong nhà trường nhờ có sự quản lý chặt chẽ và khoa học của khoa và nhà trường, đề tài "Xây dựng HTTT quản lý văn bản vào ra cuả khoa tin học kinh tế" là một đề tài rất cần thiết cho quá trình đào tạo của khoa và trường .
Với thời đại thông tin, tin học được phổ cập trên tất cả các ban nghành việc áp dụng tin học vào quá trình quản lý là rất cấp thiết. Trải qua 45 năm xây dựng và trưởng thành Đại học kinh tế quốc dân nói chung và khoa tin học kinh tế nói riêng đã đào tạo ra hàng nghìn cử nhân kinh tế họ đã làm và nghiên cứu góp phần rất lớn cho đất nước , với những kiến thức họ đã được học và nghiên cứu họ là một phần lớn cho việc phát triển kinh tế nước ta từ một nền kinh tế thấp trở thành được như ngày hôm nay.
Khoa tin học kinh tế với đào tạo chuyên môn tin học kinh tế ,sinh viên theo học được học những vấn đề về tin học cơ bản nhất sau khi ra trường sinh viên có thể độc lập phát huy, phục vụ cho công việc quản lý ,ngân hàng ,hay viết chương trình phần mềm kinh tế , họ có thể làm việc cho các công ty phần mềm.
Nhờ có sự quản lý chặt chẽ và thiết thực cùng với lòng nhiệt tình, tâm huyết giảng dạy của các thầy cô trong khoa và trường sinh viên ra trường với chất lượng ngày càng cao, với trình độ chuyên môn cao cùng với đạo đức phẩm chất tốt.
Sinh viên sau khi ra trường với chuyên môn cao nhờ sự chỉ dẫn nghiên cứu của thầy cô và bản thân cố gắng của mình , họ được nghiên cứu những vấn đề mới nhất về tin học cùng với sự rèn luyện đạo đức con người. Sinh viên sau khi ra trường không những có trình độ cao mà họ còn có phẩm chất tốt. Nhờ việc quản lý khoa học của nhà trường và khoa tin học kinh tế, Đề tài “Xây dựng HTTT quản lý văn bản của khoa tin học kinh tế ” là một công việc rất cần thiết.
B. Phân tích và thiết kế HTTT.
Trước hết ta phải thiết kế hệ thống để quá trình thực hiện phương án của mình được thoả dụng. Đánh giá yêu cầu và tham khảo về giai đoạn yêu cầu do phân tích trình bày một quyết định sẽ được ban hành tiếp tục hay huỷ bỏ. Giai đoạn này cũng rất quan trọng, theo James Mckên đã làm rõ tính sống còn của giai đoạn này bằng nhận xét:Những người có thành công nhất , nghĩa là những người tôn trọng nhất các rằng buộc về tài chính, về thời gian và được người sử dụng hài lòng nhất , cũng là những người đã dành nhiều thời gian nhất cho những hoạt động phân tích chi tiết và thiết kế lo gíc.
I/Sơ Đồ Chức Năng:
Quản lý văn bản
Quản lý hồ sơ
Lập lịch
Quản lý nơi nhận
Vào các thủ tục
Nhập nội dung
Xử lý
Tính theo loại văn bản
In các báo cáo
In văn bản
Sơ đồ chức năng quản lý văn bản vào ra cuả khoa tin học kinh tế
II/Sơ Đồ DFD:
Ta thể hiện rất khái quát nội dung chính của hệ thống quản lý văn bản qua sơ đồ này.Sơ đồ này không đi vào chi tiết , mà mô tả sao cho chỉ cần một lần nhìn là nhận ra nội dung chính của hệ thống
Văn bản
Nội dung
đã qua nhân xét
Kiểm tra
Thông tư số
In ra các văn bản
Phòng đào tạo
Gia đình
Vào danh mục
Văn bản và hồ sơ
Phiếu kiểm nghiệm
Đây là sơ đồ DFD của quá trình quản lý và theo dõi văn bản
III. Thiết kế top down design
Thời điểm Nhận Văn Bản
Xử lý văn bản
Xắp xếp văn bản theo trình tự
Thực hiện chương trình
Thực hiện kiểm tra định kỳ
Nhận và thực hiện
Sau khi nhận văn bản
Lập kế hoạch
Quá trình gửi văn bản
Xác định điều kiện văn bản
Đã thực hiệnvà xử lý
Các thông báo được gửi đi
Tổng hợp và thông báo
Thời gian kiểm định
Kết thúc quá trình gửi
IV. Chương trình.
Đây là chương trình xây dựng nhằm quản lý văn bản khoa tin học kinh tế. Khi ta muốn nhập dữ liệu tìm kiếm văn bản trợ giúp chương trình.
2. Nhập dữ liệu.
3. Kiểu văn bản.
4. Ngày gửi.
C. Chương trình gốc.
1.Hướng dẫn sử dụng
Private Sub Command1_Click()
Unload Me
End Sub
*Private Sub Form_Load()
With Me
.Width = 7000
.Height = 5500
.Move (Screen.Width - Me.Width) / 2, (Screen.Height - Me.Height) / 2 - 600, 7000, 5800
Label2.Caption = "Nội dung trợ giúp"
End With
End Sub
*Private Sub Form_Resize()
If Me.ScaleWidth = 0 Then
rtbTroGiup.Width = 0
Else
With rtbTroGiup
.Height = Me.ScaleHeight - .Top
.Width = Me.ScaleWidth - lstTroGiup.Width
End With
Command1.Top = Me.ScaleHeight - 37
Label2.Left = Me.ScaleWidth - Label2.Width - 5
End If
End Sub
*Private Sub lstTroGiup_Click()
On Error GoTo Loi1
Select Case lstTroGiup.ListIndex
Case 0
Label2.Caption = lstTroGiup.List(0)
rtbTroGiup.LoadFile "c:\Program Files\Qlvb\Help\Nhapdulieu.rtf", rtfRTF
Case 1
Label2.Caption = lstTroGiup.List(1)
rtbTroGiup.LoadFile "c:\Program Files\qlvb\Help\Danhmuc.rtf", rtfRTF
Case 2
Label2.Caption = lstTroGiup.List(2)
rtbTroGiup.LoadFile "c:\Program Files\Qlvb\Help\Timkiem.rtf", rtfRTF
Case 3
Label2.Caption = lstTroGiup.List(3)
rtbTroGiup.LoadFile "c:\Program Files\Qlvb\Help\Baocao.rtf", rtfRTF
Case 4
Label2.Caption = lstTroGiup.List(4)
rtbTroGiup.LoadFile "c:\Program Files\Qlvb\Help\Hethong.rtf", rtfRTF
End Select
Exit Sub
Loi1:
Select Case lstTroGiup.ListIndex
Case 0
MsgBox "Không mở dựoc file C:\Program Files\Qlvb\Help\Nhapdulieu.rtf"
Case 1
MsgBox "Không mở dựoc file c:\Program Files\Qlvb\Help\Danhmuc.rtf"
Case 2
MsgBox "Không mở dựoc file c:\Program Files\Qlvb\Help\Timkiem.rtf"
Case 3
MsgBox "Không mở dựoc file c:\Program Files\Qlvb\Help\Baocao.rtf"
Case 4
MsgBox "Không mở dựoc file c:\Program Files\Qlvb\Help\Hethong.rtf"
End Select
On Error GoTo Loi2
With CommonDialog1
.Filter = "Rtf file(*.rtf)|*.rtf;"
.ShowOpen
If .FileName vbNullString Then
rtbTroGiup.LoadFile .FileName, rtfRTF
End If
End With
Loi2:
End Sub
2.Nhập dư liệu văn bản
Option Explicit
Private Sub Form_Load()
Dim i As Byte
Me.Height = 4100
Me.Width = 5000
For i = 0 To 4
With txtFields(i)
.FontName = GetSetting("QLvb", "Font", "txtboxName")
.FontItalic = GetSetting("QLvb", "Font", "txtboxItalic")
.FontBold = GetSetting("QLvb", "Font", "txtboxBold")
.FontSize = GetSetting("QLvb", "Font", "txtboxSize")
.ForeColor = GetSetting("QLvb", "Color", "txtboxColor")
End With
Next
cmdUpdate.Enabled = False
End Sub
Private Sub Form_Unload(Cancel As Integer)
Screen.MousePointer = vbDefault
End Sub
Private Sub datPrimaryRS_Error(ByVal ErrorNumber As Long, Description As String, ByVal Scode As Long, ByVal Source As String, ByVal HelpFile As String, ByVal HelpContext As Long, fCancelDisplay As Boolean)
'This is where you would put error handling code
'If you want to ignore errors, comment out the next line
'If you want to trap them, add code here to handle them
MsgBox "Data error event hit err:" & Description
End Sub
Private Sub datPrimaryRS_MoveComplete(ByVal adReason As ADODB.EventReasonEnum, ByVal pError As ADODB.Error, adStatus As ADODB.EventStatusEnum, ByVal pRecordset As ADODB.Recordset)
'This will display the current record position for this recordset
datPrimaryRS.Caption = "Record: " & CStr(datPrimaryRS.Recordset.AbsolutePosition)
End Sub
Private Sub cmdAdd_Click()
On Error GoTo AddErr
datPrimaryRS.Recordset.AddNew
txtFields(0).SetFocus
cmdAdd.Enabled = False
cmdUpdate.Enabled = True
Exit Sub
AddErr:
txtFields(0).SetFocus
End Sub
Private Sub cmdDelete_Click()
On Error GoTo DeleteErr
If MsgBox("Bạn có thực sự muốn xoá không?", vbYesNo) = vbYes Then
With datPrimaryRS.Recordset
.Delete
.MoveNext
If .EOF Then .MoveLast
End With
End If
Exit Sub
DeleteErr:
MsgBox "Không thể xoá một bản ghi rỗng !"
End Sub
Private Sub cmdUpdate_Click()
On Error GoTo UpdateErr
datPrimaryRS.Recordset.UpdateBatch adAffectAll
cmdUpdate.Enabled = False
cmdAdd.Enabled = True
Exit Sub
UpdateErr:
Select Case Err.Number
Case -2147217887
MsgBox "Giá trị Lượng tồn phải là số nguyên dương", vbOKOnly, "Lỗi nhập"
txtFields(2).SetFocus
Exit Sub
Case -2147467259
MsgBox "Giá trị bạn nhập vào trường Mã văn bản là bị trùng hoặc trường Mã kiểu hoặc Mã thể loại chưa dược nhập ở mục nhập Kiểu văn bản ,Thể loại văn bản ", vbOKOnly, "Lỗi nhập"
Exit Sub
End Select
MsgBox Err.Description
End Sub
Private Sub cmdClose_Click()
Unload Me
End Sub
Private Sub txtFields_KeyDown(Index As Integer, KeyCode As Integer, Shift As Integer)
Select Case KeyCode
Case vbKeyDown, 13
Select Case Index
Case 0
txtFields(1).SetFocus
Case 1
txtFields(2).SetFocus
Case 2
txtFields(3).SetFocus
Case 3
txtFields(4).SetFocus
Case 4
txtFields(0).SetFocus
End Select
Case vbKeyUp, 13
Select Case Index
Case 0
txtFields(4).SetFocus
Case 1
txtFields(0).SetFocus
Case 2
txtFields(1).SetFocus
Case 3
txtFields(2).SetFocus
Case 4
txtFields(3).SetFocus
End Select
Case vbKeyPageUp
txtFields(0).SetFocus
Case vbKeyPageDown
txtFields(4).SetFocus
End Select
End Sub
Private Sub txtFields_KeyPress(Index As Integer, KeyAscii As Integer)
If Index = 2 Then
If ((KeyAscii 58)) And (KeyAscii 13) And KeyAscii vbKeyBack Then
MsgBox "Giá trị Lượng tồn phải là số nguyên dương", vbOKOnly, "Lỗi nhập"
txtFields(2).SetFocus
End If
End If
End Sub
3.kiểu văn bản
Option Explicit
Private Sub Form_Load()
Dim i As Byte
Me.Width = 5000
Me.Height = 4000
cmdUpdate.Enabled = False
For i = 0 To 3
With txtFields(i)
.FontName = GetSetting("Qlvb", "Font", "txtboxName")
.FontItalic = GetSetting("QLvb", "Font", "txtboxItalic")
.FontBold = GetSetting("QLvb", "Font", "txtboxBold")
.FontSize = GetSetting("QLvb", "Font", "txtboxSize")
.ForeColor = GetSetting("QLvb", "Color", "txtboxColor")
End With
Next
End Sub
Private Sub Form_Unload(Cancel As Integer)
Screen.MousePointer = vbDefault
End Sub
Private Sub datPrimaryRS_Error(ByVal ErrorNumber As Long, Description As String, ByVal Scode As Long, ByVal Source As String, ByVal HelpFile As String, ByVal HelpContext As Long, fCancelDisplay As Boolean)
'This is where you would put error handling code
'If you want to ignore errors, comment out the next line
'If you want to trap them, add code here to handle them
MsgBox "Data error event hit err:" & Description
End Sub
Private Sub datPrimaryRS_MoveComplete(ByVal adReason As ADODB.EventReasonEnum, ByVal pError As ADODB.Error, adStatus As ADODB.EventStatusEnum, ByVal pRecordset As ADODB.Recordset)
'This will display the current record position for this recordset
datPrimaryRS.Caption = "Record: " & CStr(datPrimaryRS.Recordset.AbsolutePosition)
End Sub
Private Sub cmdAdd_Click()
On Error GoTo AddErr
txtFields(0).SetFocus
cmdAdd.Enabled = False
cmdUpdate.Enabled = True
datPrimaryRS.Recordset.AddNew
Exit Sub
AddErr:
MsgBox Err.Description
End Sub
Private Sub cmdDelete_Click()
On Error GoTo DeleteErr
If MsgBox("Bạn có thực sự muốn xoá không?", vbYesNo) = vbYes Then
With datPrimaryRS.Recordset
.Delete
.MoveNext
If .EOF Then .MoveLast
End With
End If
Exit Sub
DeleteErr:
MsgBox "Không thể xoá một dòng rỗng !", vbOKOnly, "Lỗi nhập"
End Sub
Private Sub cmdUpdate_Click()
On Error GoTo UpdateErr
cmdUpdate.Enabled = False
cmdAdd.Enabled = True
datPrimaryRS.Recordset.UpdateBatch adAffectAll
Exit Sub
UpdateErr:
If txtFields(0).Text vbNullString Then
MsgBox "Giá trị này đã được nhập rồi !", vbOKOnly, "Lỗi nhập"
Else
MsgBox "Trường Mã thể loại không thể rỗng !", vbOKOnly, "Lỗi nhập"
txtFields(0).SetFocus
End If
End Sub
Private Sub cmdClose_Click()
Unload Me
End Sub
Private Sub txtFields_KeyDown(Index As Integer, KeyCode As Integer, Shift As Integer)
Select Case KeyCode
Case vbKeyDown, 13
Select Case Index
Case 0
txtFields(1).SetFocus
Case 1
txtFields(2).SetFocus
Case 2
txtFields(3).SetFocus
Case 3
txtFields(0).SetFocus
End Select
Case vbKeyUp
Select Case Index
Case 0
txtFields(3).SetFocus
Case 1
txtFields(0).SetFocus
Case 2
txtFields(1).SetFocus
Case 3
txtFields(2).SetFocus
End Select
Case vbKeyPageUp
txtFields(0).SetFocus
Case vbKeyPageDown
txtFields(3).SetFocus
End Select
End Sub
Private Sub txtFields_KeyPress(Index As Integer, KeyAscii As Integer)
Select Case Index
Case 2
If ((KeyAscii 58)) And (KeyAscii 13) And KeyAscii vbKeyBack Then
MsgBox “ phải là số nguyên dương", vbOKOnly, "Lỗi nhập"
txtFields(2).SetFocus
End If
Case 3
If ((KeyAscii 58)) And (KeyAscii 13) And KeyAscii vbKeyBack Then
MsgBox " phải là số nguyên dương", vbOKOnly, "Lỗi nhập"
End If
End Select
End Sub
4.ngàygửi
Option Explicit
Dim WithEvents adoPrimaryRs As Recordset
Dim mbDataChanged As Boolean
Private Sub TimCuThe()
On Error GoTo errNhap
Dim db As Connection
Set db = New Connection
db.CursorLocation = adUseClient
db.Open "PROVIDER=Microsoft.Jet.OLEDB.3.51;Data Source=C:\Program Files\Qlvb\QLVB1.mdb;"
Set adoPrimaryRs = New Recordset
adoPrimaryRs.Open "select Mavb,Tenvb,TenKieu,TenTheLoai,SoLuong as[SL Di],Ngaygui,adLockOptimistic"
Set grdDataGrid.DataSource = adoPrimaryRs
mbDataChanged = False
Exit Sub
errNhap:
If txtInput.Text = vbNullString Then
MsgBox "Bạn phải nhập một giá trị vào ô trên"
Else
MsgBox "Giá trị bạn nhập vào là không đúng"
End If
txtInput.SetFocus
End Sub
Private Sub cmdTk_Click()
If txtInput.Visible = True Then
Call TimCuThe
Else
If txtNd.Visible = True Or txtNc.Visible = True Then
Call TimTheoKTG
Else
MsgBox "Bạn phải chọn một cách tìm kiếm" & Chr(13) & "Theo Ngày cụ thể hoặc theo Khoảng thời gian"
End If
End If
End Sub
Private Sub cmdTm_Click()
Dim i As Integer
For i = 1 To 2
txtInput.Visible = True
txtNc.Visible = True
txtNd.Visible = True
lblInput.Visible = True
lblNd.Visible = True
lblNc.Visible = True
txtInput.Text = vbNullString
txtNd.Text = vbNullString
txtNc.Text = vbNullString
Next
Call Form_Load
End Sub
Private Sub Form_Load()
Call Form_Resize
End Sub
Private Sub Form_Resize()
On Error Resume Next
'This will resize the grid when the form is resized
grdDataGrid.Width = Me.ScaleWidth
grdDataGrid.Height = Me.ScaleHeight - picButtons.Height - picStatBox.Height - 3300
lblStatus.Width = Me.Width - 1500
cmdNext.Left = lblStatus.Width + 700
cmdLast.Left = cmdNext.Left + 340
End Sub
Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
Select Case KeyCode
Case vbKeyEscape
cmdClose_Click
Case vbKeyEnd
cmdLast_Click
Case vbKeyHome
cmdFirst_Click
Case vbKeyUp, vbKeyPageUp
If Shift = vbCtrlMask Then
cmdFirst_Click
Else
cmdPrevious_Click
End If
Case vbKeyDown, vbKeyPageDown
If Shift = vbCtrlMask Then
cmdLast_Click
Else
cmdNext_Click
End If
End Select
End Sub
Private Sub Form_Unload(Cancel As Integer)
Screen.MousePointer = vbDefault
End Sub
Private Sub adoPrimaryRS_MoveComplete(ByVal adReason As ADODB.EventReasonEnum, ByVal pError As ADODB.Error, adStatus As ADODB.EventStatusEnum, ByVal pRecordset As ADODB.Recordset)
'This will display the current record position for this recordset
lblStatus.Caption = "Record: " & CStr(adoPrimaryRs.AbsolutePosition)
End Sub
Private Sub cmdClose_Click()
Unload Me
End Sub
Private Sub cmdFirst_Click()
On Error GoTo GoFirstError
adoPrimaryRs.MoveFirst
mbDataChanged = False
Exit Sub
GoFirstError:
MsgBox Err.Description
End Sub
Private Sub cmdLast_Click()
On Error GoTo GoLastError
adoPrimaryRs.MoveLast
mbDataChanged = False
Exit Sub
GoLastError:
MsgBox Err.Description
End Sub
Private Sub cmdNext_Click()
On Error GoTo GoNextError
If Not adoPrimaryRs.EOF Then adoPrimaryRs.MoveNext
If adoPrimaryRs.EOF And adoPrimaryRs.RecordCount > 0 Then
Beep
'moved off the end so go back
adoPrimaryRs.MoveLast
End If
'show the current record
mbDataChanged = False
Exit Sub
GoNextError:
MsgBox Err.Description
End Sub
Private Sub cmdPrevious_Click()
On Error GoTo GoPrevError
If Not adoPrimaryRs.BOF Then adoPrimaryRs.MovePrevious
If adoPrimaryRs.BOF And adoPrimaryRs.RecordCount > 0 Then
Beep
'moved off the end so go back
adoPrimaryRs.MoveFirst
End If
'show the current record
mbDataChanged = False
Exit Sub
GoPrevError:
MsgBox Err.Description
End Sub
Private Sub SetButtons(bVal As Boolean)
cmdClose.Visible = bVal
cmdNext.Enabled = bVal
cmdFirst.Enabled = bVal
cmdLast.Enabled = bVal
cmdPrevious.Enabled = bVal
End Sub
Private Sub grdDataGrid_Click()
End Sub
Private Sub txtInput_Change()
lblNd.Visible = False
lblNc.Visible = False
txtNc.Visible = False
txtNd.Visible = False
End Sub
Private Sub txtInput_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then
Call TimCuThe
End If
End Sub
Private Sub txtNc_Change()
lblInput.Visible = False
txtInput.Visible = False
End Sub
Private Sub txtNc_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then
Call TimTheoKTG
End If
End Sub
Private Sub txtNd_Change()
lblInput.Visible = False
txtInput.Visible = False
End Sub
Sub TimTheoKTG()
On Error GoTo errNhap
Dim db As Connection
Set db = New Connection
db.CursorLocation = adUseClient
db.Open "PROVIDER=Microsoft.Jet.OLEDB.3.51;Data Source=C:\Program Files\Qlvb\QLVB1.mdb;"
Set adoPrimaryRs = New Recordset
adoPrimaryRs.Open "select Mavb,Tenvb,TenKieu,TenTheLoai,SoLuong,Ngaygui,oder by NgayBan,MaBd", db, adOpenStatic, adLockOptimistic
Set grdDataGrid.DataSource = adoPrimaryRs
mbDataChanged = False
Exit Sub
errNhap:
If txtNd.Text = vbNullString Then
MsgBox "Bạn phải nhập một giá trị vào ô 'Ngày đầu'"
Else
If txtNc.Text = vbNullString Then
MsgBox "Bạn phải nhập một giá trị vào ô 'Ngày cuối'"
Else
MsgBox "Giá trị bạn nhập vào là không đúng"
End If
End If
txtNd.SetFocus
End Sub
Private Sub txtNd_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then
txtNc.SetFocus
End If
End Sub
Kết luận.
Trong những năm vừa qua, công nghệ thông tin đang phát triển hết sức sôi động ở Việt Nam. Hoà mình vào không khí chung đó, nghành tin học quản lý đã và đang được nhà nước đầu tư rất tích cực, thu được những kết quả đáng kể. Thông qua tác dụng quản lý một cách nhanh chóng kịp thời và chặt chẽ, tạo tin tưởng cho các chủ doanh nghiệp.Tạo tiền đề trong công cuộc xây dựng, đổi mới đất nước.
._.
Các file đính kèm theo tài liệu này:
- 33714.doc