Tải bản đầy đủ (.doc) (25 trang)

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ế

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (139.38 KB, 25 trang )

Xây dựng hệ thống thông tin quản lý các văn bản
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 lu 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 .
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.

1


Xây dựng hệ thống thông tin quản lý các văn bản
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, bu đ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.
2
Xây dựng hệ thống thông tin quản lý các văn bản
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.
3
Xây dựng hệ thống thông tin quản lý các văn bản

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àiXâ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.
4
Xây dựng hệ thống thông tin quản lý các văn bản
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.
5
Xây dựng hệ thống thông tin quản lý các văn bản
I/Sơ Đồ Chức Năng:

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
6
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 dungXử lý
Tính theo loại
văn bản
In các báo cáo
In văn bản
Xây dựng hệ thống thông tin quản lý các văn bản
Văn bản và hồ sơ
Đây là sơ đồ DFD của quá trình quản lý và theo dõi văn bản
7
Vào danh
mục
Phiếu kiểm nghiệm
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
Xây dựng hệ thống thông tin quản lý các văn bản
III. Thiết kế top down design
Thời điểm Nhận Văn Bản
8
Thời gian kiểm
định
Kết thúc quá trình gửi

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
X©y dùng hÖ thèng th«ng tin qu¶n lý c¸c v¨n b¶n
9
Xây dựng hệ thống thông tin quản lý các văn bản
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.
10
X©y dùng hÖ thèng th«ng tin qu¶n lý c¸c v¨n b¶n
2. NhËp d÷ liÖu.
11

X©y dùng hÖ thèng th«ng tin qu¶n lý c¸c v¨n b¶n
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()
12
X©y dùng hÖ thèng th«ng tin qu¶n lý c¸c v¨n b¶n
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"
13
X©y dùng hÖ thèng th«ng tin qu¶n lý c¸c v¨n b¶n
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
14
Xây dựng hệ thống thông tin quản lý các văn bản
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
15
Xây dựng hệ thống thông tin quản lý các văn bản
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 cha 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)

16
Xây dựng hệ thống thông tin quản lý các văn bản
If Index = 2 Then
If ((KeyAscii < 48) Or (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
17
Xây dựng hệ thống thông tin quản lý các văn bản
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
18
Xây dựng hệ thống thông tin quản lý các văn bản
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 < 48) Or (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 < 48) Or (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
19
Xây dựng hệ thống thông tin quản lý các văn bản
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()
20
X©y dùng hÖ thèng th«ng tin qu¶n lý c¸c v¨n b¶n
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
21
X©y dùng hÖ thèng th«ng tin qu¶n lý c¸c v¨n b¶n
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
22
X©y dùng hÖ thèng th«ng tin qu¶n lý c¸c v¨n b¶n
'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()
23
Xây dựng hệ thống thông tin quản lý các văn bản
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
24
Xây dựng hệ thống thông tin quản lý các văn bản
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.
25

×