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

Luận văn thiết kế và xây dựng phần mềm sắp xếp tiếng việt theo trường họ tên hỗ trợ cho việc tuyển sinh đại học cao đẳng

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 (425.76 KB, 46 trang )

Mục lục
***
Lời nói đầu--------------------------------------------------------------------01
Chơng I : Những vấn đề cơ bản về font chữ Việt hiện nay.------------05
I - Bộ mã chuẩn 8 bit cho font chữ tiếng việt----------------------------05
1.1 Sự phát triển của công nghệ thông tin ở Việt Nam.----------------05
1.2 Bốn yêu cầu mới đối với bộ mã chữ Việt 8 bit----------------------07
II. Bộ mã chuẩn 8 bit chữ việt dùng trong trao đổi thông tin.---------09
2.1 Phạm vi sử dụng và tính tuân thủ của bộ mã chuẩn 8 bit chữ Việt
dùng trong trao đổi thông tin.------------------------------------------------------09
2.2 Một số đặc trng cơ bản của chữ Việt---------------------------------09
Chơng II : Thiết kế chơng trình tuyển sinh đại học và cao đẳng------11
I. Một số vấn đề về chơng trình.-------------------------------------------11
II. Thiết kế chơng trình.-----------------------------------------------------13
2.1 Sơ đồ ngữ cảnh trong chơng trình.------------------------------------13
2.2 Sơ đồ cấu trúc dữ liệu.--------------------------------------------------13
2.3 Sơ đồ luồng dữ liệu (DFD : Data Flow Diagram )------------------15
2.4 Tiến hành thiết kế.-------------------------------------------------------17
2.4.1 Thiết kế vào.-----------------------------------------------------------17
2.4.1.1 Thiết kế giao diện chính.------------------------------------------17
2.4.1.2. Thiết kế form cập nhật hồ sơ.------------------------------------22
2.4.1.3. Thiết kế form cập nhật điểm thi.---------------------------------24
2.4.1.4. Thiết kế form cập nhật phòng thi.-------------------------------29
2.4.1.5. Thiết kế form cập nhật tỉnh, thành phố, quận, huyện.--------31
2.4.1.6. Thiết kế form cập nhật trờng và ngành đăng ký NV2, NV3. 32
2.4.2 Thiết kế đầu ra.--------------------------------------------------------33
2.4.2.1 Thiết kế giấy báo dự thi.-------------------------------------------33
2.4.2.2 Thiết kế thẻ dự thi.--------------------------------------------------34
2.4.2.3 Thiết kế giấy chứng nhận (Phiếu báo điểm).-------------------35
2.4.2.4 Thiết kế giấy báo tựu trờng.---------------------------------------36
2.4.2.4 Thiết kế các đầu ra khác.------------------------------------------38


III. Chơng trình sắp xếp tiếng việt trên Access.-------------------------41
3.1 Một số vấn đề về sắp xếp tiếng Việt----------------------------------41
3.2 Chơng trình sắp xếp dữ liệu chữ Việt trong Access.---------------42
Chơng III Một số kết quả đã đạt đợc----------------------------------48
Kết luận-----------------------------------------------------------------------50
Trang 1


Tài liệu tham khảo-----------------------------------------------------------52
----------**********----------

Chơng I :
Những vấn đề cơ bản về font chữ Việt hiện nay.
I - Bộ Mã CHUẩN 8 bit cho font chữ tiếng việt

1.1 Sự phát triển của công nghệ thông tin ở Việt Nam.
Sau một thời gian dài tranh luận, trao đổi, nghiên cứu, ngày 12/05/1993
Bộ mã chuẩn 8 bit chữ Việt đã đợc ban hành, nhằm mục tiêu tạo điều kiện
cho sự phát triển thống nhất của tin học trong cả nớc. Sự thống nhất về bộ mã
này dựa trên các nguyên tắc : đảm bảo phản ánh đầy đủ các đặc thù chữ Việt,
tuân thủ các tiêu chuẩn cơ bản của chuẩn quốc tế và giữ cho chữ Việt cùng
tồn tại với chữ Anh trong một bảng mã.
*) Giai đoạn trớc năm 1983 :
Hơn một thập kỷ trở lại đây thông tin luôn là vấn đề hàng đầu trong sự
phát triển kinh tế. Trên thế giới thông tin ngày càng phát triển và gia tăng
Trang 2


không ngừng. Sự xuất hiện của vô tuyến truyền hình đã đợc coi là một phát
minh lớn của con ngời, tiếp đến là sự xuất hiện của điện thoạinh vậy, ngời ta

có thể chỉ ngồi ở nhà mà vẫn nắm bắt đợc hết các thông tin về tình hình chính
sự trên thế giới và cũng có thể ngồi ở nhà mà vẫn nói chuyện với ngời thân
hay bạn bè ở xa hàng nghìn cây số. Nhng sự xuất hiện về máy vi tính có lẽ là
sự đột phá lớn về khoa học của con ngời nhất là trong lĩnh vực internet đó là
sự kết hợp giữa điện thoại và vô tuyến điện một cách tuyệt hảo bởi máy vi
tính giờ đây có thể giúp ngời ta trao đổi thông tin nhanh, nói chuyện và còn
nhiều tính năng khác. Tuy nhiên, trớc năm 1983 đất nớc ta mới giành đợc độc
lập và đang trong thời gian xây dựng đất nớc. Đất nớc còn nghèo, tình độ dân
trí còn thấp, có vẻ nh hầu hết ngời dân trong nớc không hiểu biết nhiều về
máy tính, máy tính đối với họ nh một cái gì đó quá xa vời. Mặt khác, trong
giai đoạn này nền kinh tế nớc ta vẫn đang trong tình trạng kém phát triển, ỳ
ạch, tình hình chính trị vẫn còn khủng hoảng, chính vì thế mà công nghệ
thông tin không thể có điều kiện phát triển. Mặc dù vậy, máy tính vẫn giữ dần
dần đặt chân vào Việt Nam và chiếm một vị trí vững chắc.
*) Giai đoạn 1983-1993 :
Đặc thù chính trong giai đoạn 1983-1993 này là tin học của Việt Nam
phát triển trong tình trạng cô lập với sự phát triển chung trên thế giới. Đã xuất
hiện một số công ty tin học lớn trong nớc nhng không có công ty nào trong nớc có đủ khả năng quyết định chiều hớng phát triển thị trờng tin học cả phần
cứng lẫn phần mềm chúng ta đều phải nhập ngoại.
Để dùng đợc các sản phẩm phần cứng cũng nh phần mềm quốc tế, lực
lợng tin học trong nớc phải tự tìm hiểu các sản phẩm quốc tế để tiến hành
Việt hoá, dùng đợc chúng cho môi trờng tiếng Việt. Việc Việt hoá này đợc
thực hiện với mục tiêu đầu tiên là dùng đợc các phần mềm phổ biến, vấn đề
mã hoá chữ Việt bị xếp ở dới yêu cầu này. Kết quả đã phát sinh nhiều bộ mã
chữ Việt, mỗi bộ mã đáp ứng cho một số phần mềm, không có tính đại diện
chung. Bảng mã chuẩn quốc gia, mặc dầu có nhiều nghiên cứu, đáp ứng các
mục tiêu và nguyên tắc đã nêu nhng nhợc điểm chính là thiếu sự hỗ trợ của
các công ty phần mềm lớn.
Đặc điểm nổi bật của sự phát triển tin học quốc tế trong thời kỳ này là
cách mã hoá con chữ dựng sẵn đang chiếm u thế. Nhng với cách mã hoá theo

con chữ dựng sẵn, chữ Việt cần bổ sung 134 dạng chữ mới, và một khó khăn
không thể vợt qua nổi là không thể bố trí vào 128 mã vùng cao, ngoài phần
mã cho chữ Anh theo ISO 646. Mặt khác, mã hoá theo con chữ dựng sẵn
Trang 3


không phản ánh đợc đặc thù cấu tạo chữ Việt. Kĩ thuật mã tổ hợp, mới đợc
phát triển trong quá trình xây dựng bộ mã quốc tế ISO 10646 và Unicode, cha
đợc phổ biến ở Việt Nam.
Sau hai năm ban hành và đợc triển khai, bộ mã chuẩn TCVN 5712 đã
đợc chấp nhận chung trong nớc, một số công ty tin học trong nớc đã phát
triển những phần mềm theo bộ mã này, tạo ra xu hớng thống nhất chung trong
các ứng dụng. Tuy nhiên, tình hình quốc tế và trong nớc trong thới gian này
cũng đã có những thay đổi buộc chúng ta phải xem xét lại kể từ nguyên tắc
thiết kế, xây dựng bộ mã chuẩn để có đợc sự hoà đồng tốt hơn với sự phát
triển tin học quốc tế. Hai đặc điểm chủ yếu trong giai đoạn này đợc thể hiện
nh sau:
Đặc điểm thứ nhất là sự xuất hiện các chi nhánh của các công ty tin
học quốc tế lớn ở Việt Nam nh Digital, Unisys, HP, IBM, Compaq, Oracle,...
Các công ty này cũng bắt đầu tiến hành các hoạt động bản địa hoá sản phẩm
của họ cho tiếng Việt và vấn đề về bộ mã cho chữ Việt lại đợc đặt ra với yêu
cầu mới từ phía các công ty quốc tế. Các công ty này đang trở thành các đối
tác tham gia ngày một nhiều vào sự phát triển tin học ở Việt Nam và là một
nhân tố phải tính tới trong các quyết định chiến lợc.
Đặc điểm thứ hai là sự quan tâm của nhà nớc trong vấn đề phát triển tin
học, đợc cụ thể hoá thành nghị quyết của chính phủ, chơng trình hành động
và hình thành Ban chỉ đạo chơng trình quốc gia về Công nghệ thông tin. Với
sự chỉ đạo tập trung, các vấn đề có tính chất chung toàn quốc về CNTT sẽ đợc
giải quyết theo hớng có lợi nhất cho sự phát triển tin học ở Việt Nam. Trong
giai đoạn trớc mắt, Ban chỉ đạo sẽ là đại diện có thẩm quyền của Việt Nam

tham gia trong các tổ chức quốc tế và thảo luận với các công ty tin học quốc
tế về các vấn đề cơ sở cho bản địa hoá. Về lâu dài, một khi đã hình thành
công ty tin học mạnh của Việt Nam, chi nhánh của các công ty quốc tế, thì
các công ty này có thể đứng ra đảm nhận các vấn đề về bản địa hoá cho Việt
Nam.
*) Giai đoạn 1993 đến nay:
Trong giai đoạn này, kinh tế nớc ta đang có sự hồi phục và phát triển thì
tin học trong nớc cũng đã đợc quan tâm hơn ở tất cả các doanh nghiệp lẫn ngời sử dụng ở trong nớc. Ngày nay tin học đã ngày càng phát triển không
ngừng và sự khám phá về máy tính của ngời dân ngày càng cao.
Mặt khác, do đặc thù font chữ của chúng ta là khác với các chữ khác
trong hệ chữ latinh nên có một sự đòi hỏi nớc ta phải có một bộ mã chuẩn
Trang 4


trong việc sử dụng font chữ tiếng Việt và trong trao đổi thông tin.
Trớc tình hình và những nhu cầu đó ngày 12/05/1993 Bộ Khoa học,
Công nghệ, và Môi trờng đã ra quy định dùng bộ mã chuẩn TCVN 5712-93
trong tất cả các cơ quan Đảng và Nhà nớc và bộ mã này đã và đang đợc sử
dụng cho tận đến ngày nay.
1.2 Bốn yêu cầu mới đối với bộ mã chữ Việt 8 bit
Yêu cầu thứ nhất: tình hình mới đã dẫn đến những thay đổi mới trong
yêu cầu đối với bộ mã chuẩn chữ Việt. Yêu cầu biểu diễn đầy đủ cho chữ Việt
vẫn giữ nguyên, tuy nhiên đối với bộ mã 8 bit, cách mã hoá theo kiểu dựng
sẵn thực tế không thể đáp ứng đợc các yêu cầu của các công ty CNTT quốc tế.
Do đó việc biểu diễn đầy đủ cho chữ Việt chỉ có thể đợc giải thông qua việc
sử dụng kỹ thuật mã tổ hợp. Mặt khác sự phát triển của kĩ thuật trên thế giới
đã đảm bảo cho việc dùng kỹ thuật mã tổ hợp trong mọi hệ thống phần mềm
nh Windows, CSDL...Với việc mã hoá theo kỹ thuật này, chữ Việt chỉ cần có
thêm 14 mã cho các nguyên âm và phụ âm thuần Việt và 5 mã cho dấu thanh.
Yêu cầu thứ hai xuất phát từ đặc điểm chữ Việt thuộc họ chữ la tinh,

do đó cần đợc hội nhập trong họ các ngôn ngữ có dùng cách viết la tinh. Tất
cả các ngôn ngữ dùng cách viết chữ la tinh đều sử dụng bảng mã ISO 8859,
với nhiều bảng khác nhau, cho tới nay đã có 14 bản 8895 cho nhiều nớc. Vậy
bảng mã chuẩn 8 bit cho chữ Việt cũng cần phải dựa trên khuôn khổ của
chuẩn quốc tế này.
Yêu cầu thứ ba xuất phát từ một thực tế Việt Nam là một nớc có truyền
thống hội nhập với nhiều nền văn hoá khác nhau. Do đó bố trí bộ mã chuẩn
cho chữ Việt cần cố gắng đảm bảo cho chữ Việt có thể cùng tồn tại với chữ
của một số nớc khác. Mặt khác bởi vì việc xây dựng bộ mã chữ Việt đi sau bộ
mã các nớc khác nên không thể đáp ứng cho sự cùng tồn tại trên một bảng mã
cả chữ Việt lẫn các thứ chữ la tinh khác. Vậy một số ngôn ngữ chính đợc
chọn để có thể cùng tồn tại trong bảng mã chữ Việt là Anh, Pháp, Đức, Tây
ban nha, Thuỵ Điển, Nauy...
Yêu cầu thứ t là yêu cầu cho nhợc điểm chính của bộ mã TCVN 5712:
mọi bộ mã chuẩn quốc gia cần có đợc sự ủng hộ và thực hiện của ít nhất một
công ty tin học quốc tế lớn. Yêu cầu này đảm bảo cho bộ mã quốc gia đợc
tuân thủ trên thực tế, từ chính gốc các công ty sản xuất công cụ công nghệ
thông tin.
Tóm lại, 4 yêu cầu mới cho bộ mã chuẩn chữ Việt 8 bit là:
Trang 5


- Đảm bảo thể hiện đầy đủ mọi đặc trng ch Việt.
- Tuân thủ quy định của bộ mã chuẩn 8 bit ISO 8859.
- Bảo đảm chữ Việt cùng tồn tại với chữ Anh, Pháp, Đức, Thuỵ Điển
trong một bộ mã.
- Có sự ủng hộ và cài đặt của ít nhất một công ty CNTT quốc tế lớn.

II. Bộ mã chuẩn 8 bit chữ việt dùng trong trao đổi thông
tin.


2.1 Phạm vi sử dụng và tính tuân thủ của bộ mã chuẩn 8 bit chữ
Việt dùng trong trao đổi thông tin.
2.1.1 Tiêu chuẩn : Tiêu chuẩn này quy định bộ mã 8-bit chuẩn chữ
Việt dùng trong xữ lý và trao đổi thông tin tự động. Nó đợc dùng cho việc
biểu diễn, truyền thông, trao đổi, xử lý, ghi nhớ, đa vào và thể hiện các thông
tin chữ Việt.
Tiêu chuẩn này xác định cấu trúc tổng thể bộ mã chữ Việt và
- Định nghĩa các thuật ngữ đợc dùng.
- Mô tả cấu trúc tổng quát của tập ký tự đợc mã hoá
2.1.2 Tính tuân thủ: Mọi bộ mã chữ Việt đợc coi là tuân thủ tiêu
chuẩn này nếu nó chứa mọi ký tự có hình dạng đợc xác định nh trong tiêu
chuẩn này và có trùng với mã đợc quy định trong tiêu chuẩn này.
2.2 Một số đặc trng cơ bản của chữ Việt
2.2.1 Bảng chữ cái
Bảng chữ tiếng Việt bao gồm các chữ cái nguyên âm thờng:
a ă â e ê i o ô ơ u
y
và các chữ cái phụ âm thờng:
b c d đ f g h j k l m n p q r s t v w x z
cùng các chữ cái hoa tơng ứng:
A Ă Â E Ê I O Ô Ơ U Ư YB C D Đ F G H J K
L M N P Q R S T V W X Z
2.2.2 Bảng các thanh tiếng Việt
Bảng các thanh tiếng Việt bao gồm:
Trang 6


Hình dấu thanh:
Tên thanh:

huyền
hỏi
ngã
sắc
nặng
Mỗi nguyên âm có thể đợc gắn thêm với các một trong các dấu thanh
trên.
2.2.3 Đơn vị chính tả, ký tự chính tả
Một đơn vị chính tả là một phụ âm hoặc một nguyên âm hay một dấu
thanh.
Một ký tự chính tả là một phụ âm hoặc một nguyên âm hay một
nguyên âm có mang dấu thanh.
Mỗi từ có nhiều nhất là một nguyên âm mang dấu thanh.
2.2.4 Trật tự chữ Việt
Trật tự các đơn vị chữ Việt sau (theo thứ tự từ nhỏ đến lớn):
Trật tự các chữ cái trong bảng chữ:
a ă â b c d đ e ê f g h i j k l m n o ô ơ p r s
t u
v w x y z
Trật tự các thanh:
không dấu huyền hỏi ngã sắc nặng
Thanh là một thuộc tính của vần tiếng Việt không phụ thuộc vào
nguyên âm mang dấu thanh bên trong vần. Trật tự các thanh xác định trật tự
các vần cùng gốc. Trật tự chữ cái và vần xác định trật tự các từ.

Trang 7


Trang 8



Chơng II :
Thiết kế chơng trình tuyển sinh đại học và cao
đẳng
I. Một số vấn đề về chơng trình.

Quản lý cơ sở dữ liệu là một công việc vô cùng quan trọng trong công
tác quản lý của tất cả các cấp, các ngành, các doanh nghiệp. Vấn đề tuyển
sinh vào Đại học hàng năm cũng cần phải đợc quản lý một cách chặt chẽ tất
cả các dữ liệu đó là việc quản lý các dữ liệu về thông tin của mỗi thí sinh và
thông qua những dữ liệu này kết hợp với việc xử lý dữ liệu các nhà quản lý
trong công tác tuyển sinh sẽ có đợc những thông tin đầu ra cần thiết phục vụ
cho công việc tuyển sinh của mình. Ngày nay, 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,
linh hoạt và nhanh nhất. Nhng có nhiều hệ quản trị cơ sở đang đợc dùng ở nớc
ta và trên thế giới nh : Microsoft Access, Microsoft Foxpro/ Visual Foxpro,
SQL Server 2000, Oraclemỗi phần mềm đều có u điểm, nhợc điểm riêng và
các tính năng khác nhau nhng theo đánh giá của tạp chí Tin học và Đời sống
hay báo PC Wordl vào năm 1999 thì hiện nay Microsoft Access đã giành đợc
phần lớn trên thị trờng và những phiên bản mới nhất trên thị trờng hiện nay
mà Microsoft đã tung ra thị trờng đó là Microsoft Office 2000, Office XP.
Trong đó phiên bản mới nhất của Access đang đợc sử dụng hiện nay là Access
2000. Access là một phần mềm đợc chạy trên môi trờng Windows
(Windows98, Windows ME, Windows 2000, Windows XP) đây là một môi
trờng mà khi chơng trình đợc thực hiện thì một cửa sổ giành cho chơng trình
ấy đợc mở ra để qua đó ngời dùng giao tiếp với máy nhằm hoàn tất các nhiệm
vụ của chơng trình.
Chơng trình tuyển sinh Đại học và Cao đẳng là một hệ cơ sở dữ liệu tức
là tất cả các thông tin mà ta có đợc từ hồ sơ của thí sinh tiến hành các công
việc nh nhập hồ sơ của các thí sinh đăng ký dự thi sau đó phải gửi giấy báo dự

thi tới từng thí sinh và thẻ dự thi cho mỗi thí sinh khi dự thi. Ngoài ra, còn
phải tiến hành gửi kết quả điểm thi, giấy báo tựu trờng của các thí sinh dự thi
và khi đã đủ điều kiện trúng tuyển. Tuy nhiên, có thể nói phần quan trọng
nhất trong chơng trình này là một phần mềm hỗ trợ cho công tác tuyển sinh
đó là sắp xếp trờng họ tên theo font chữ tiếng Việt bởi vì tuyển sinh là một
công việc đòi hỏi các thí sinh phải đợc sắp xếp theo một trình tự nhất định để
tránh tình trạng các thí sinh trùng tên nhau sẽ bị xếp lẫn lộn nhau. Mặt khác,
việc sắp xếp các trờng trong bất kỳ một cơ sở dữ liệu nào, bất kỳ một ngôn
Trang 9


ngữ nào cũng cực kỳ quan trọng. Nếu dữ liệu không đợc sắp xếp thì việc tìm
kiếm, xử lý gặp rất nhiều khó khăn. Hơn nữa đối với một số lệnh trong các
chơng trình phần mềm nếu trớc khi thực hiện các lệnh đó mà dữ liệu cha đợc
sắp xếp thì các lệnh đó sẽ không thể thực hiện đợc.
Trong các cơ sở dữ liệu soạn thảo bằng các ngôn ngữ chỉ sử dụng các
ký tự Latin nên việc sắp xếp đợc thực hiện khá dễ dàng nhng đối với chữ Việt
vì có đặc thù riêng nên chúng ta không thể sử dụng trực tiếp đợc các công cụ
của chính phần mềm nên việc sắp xếp sẽ gặp nhiều khó khăn. Mặt khác, sự
sắp xếp các chữ cái tiếng Việt phải tuân thủ theo thứ tự a, à, ả, ., x, y, z. Từ
đó xuất hiện nhu cầu cần thiết phải xây dựng các chơng trình phần mềm để
hỗ trợ cho việc sắp xếp này.
Nh vậy, muốn danh sách thí sinh dự thi đợc sắp xếp đúng theo thứ tự
chuẩn thì cần phải có một phần mềm hỗ trợ việc xử lý dữ liệu phục vụ cho
việc nhập danh sách này. Tất cả các vấn đề nêu trên nhằm đạt đạt đợc những
mục tiêu cuối cùng cho công tác tuyển sinh đó là bất cứ một thí sinh nào khi
nộp hồ sơ của mình vào các trờng Đại học sẽ đợc cập nhật các thông tin về họ
tên, ngày sinh và qua chơng trình sẽ cho ta đợc danh sách các thí sinh sắp
xếp theo thứ tự chuẩn Việt Nam và số báo danh sẽ đợc đánh khi chơng trình
đã đợc sắp xếp. Bên cạnh đó đánh số phòng thi theo từng địa điểm thi với số

lợng thí sinh có ở từng phòng trong mỗi địa điểm.
Ngoài các kết quả mà qua chơng trình đạt đợc nh đánh số báo danh,
đánh số phòng thi, địa điểm thi, sắp xếp thì chơng trình còn cần phải đạt đợc một số kết quả khác đó là :
* Phiếu báo dự thi .
* Thẻ dự thi.
* Danh sách thí sinh ở mỗi phòng thi.
* Giấy báo điểm cho mỗi thí sinh sau khi đã dự thi.
* Giấy báo tựu trờng cho mỗi thí sinh sau khi đã đủ các điều kiện
trúng tuyển.
* Ngoài ra, còn cho ra một số đầu ra quan trọng khác.
II. Thiết kế chơng trình.

Vấn đề về chơng trình cũng nh công cụ sử dụng trong chơng trình đã đợc nêu ra ở trên và sự cần thiết của việc sắp xếp theo tiếng Việt cũng đã đợc
trình bày ở các phần trên. Sau đây là phần quan trọng trong quá trình thực
hiện chơng trình đó là thiết kế chơng trình :
Trang 10


2.1 Sơ đồ ngữ cảnh trong chơng trình.

Thí sinh dự thi

Hồ sơ
thí sinh

Xử lý
dữ
liệu

Các đầu ra

báo cáo

Thí sinh dự thi

Sơ đồ 1: Sơ đồ ngữ cảnh chơng trình
Qua sơ đồ trên cho ta thấy đợc các thông tin mà thí sinh đã ghi trong
hồ sơ đăng ký dự thi sẽ đợc thực hiện qua một hệ thống sử lý và cho ra các
thông tin đầu ra và sẽ đợc gửi tới thí sinh dự thi cũng nh cán bộ tổ chức và cán
bộ quản lý công tác thi tuyển.
2.2 Sơ đồ cấu trúc dữ liệu.
* Thông tin về hồ sơ thí sinh :
Hồ sơ : Mã hồ sơ, họ tên, ngày sinh, giới tính, mã ĐVĐKDT, mã
huyện, mã tỉnh, mã ngành đăng ký dự thi, mã trờng đăng ký nguyện vọng 2
và 3, khối thi, môn thi.
* Thông tin về tỉnh, thành phố, quận, huyện :
Mã tỉnh, mã huyện, tên tỉnh, tên huyện.
* Thông tin
ngành, trờng đăng ký NV2, 3.
Mã tỉnh
Tênvềtỉnh
Mã tỉnh, tên tỉnh, mã huyện, tên huyện.
* Thông tin về dân tộc, khu vực
Tất cả
thông
tinhuyện
này đợc thể hiện dới sơ đồ sau :
Mã tỉnh
Mãcác
huyện
Tên

MãHS Họtên MãHuyện MãTỉnh MNgànhNV2 MTrờngNV2 MNgànhNV3 MTrờngNV3 ..

Mã ngành NV2 Tên ngànhNV2 Mã trờng NV2

Tên trờng NV2

Mã trờng NV2

Mã ngành NV3 Tên ngành NV3

Mã trờng NV3

Trang 11
Tên trờng NV2

Mã trờng NV2


Sơ đồ2 : Cấu trúc dữ liệu
Qua sơ đồ cấu trúc dữ liệu ở trên nên trong chơng trình sẽ đợc thiết kế
các mối quan hệ giữa các bảng nh sau:

2.3 Sơ đồ luồng dữ liệu (DFD : Data Flow Diagram )
Sơ đồ dới đây nhằm để mu tả các công đoạn chính trong chơng trình.
Hình 1 : Sơ đồ mối quan hệ giữa các thực thể
Vì sơ đồ DFD là một dạng sơ đồ hệ thống thông tin trên góc độ trừu tợng nên
trên sơ đồ chỉ bao gồm các luồng dữ liệu, các xử lý, các lu trữ, các nguồn,
đích mà không đề cập tới nơi, thời điểm, đối tợng xử lý. Sơ đồ luồng dữ liệu
chỉ mô tả đơn thuần hệ thống thông tin làm gì và để làm gì.
Chính vì yếu tố đó, nên đề hiểu đợc chơng trình, các nguồn dữ liệu và

tiến trình xử lý thì nhất thiết phải có sơ đồ DFD.
Sơ đồ đợc thể hiện nh sau:

Trang 12


2.0
sửa
hs

Danh sách cha đánh SBD

Thí sinh
dự thi

Danh sách đã đánh SBD

Thí sinh

10.0
phiế
u
báo
điểm
11.0
Giấy
báo
nhập
học


1.0
Nhập
DL

Danh sách thí sinh

3.0S
ắpxế
p tv

HS đã chỉnh sửa

9.0
cập
nhật
điểm
thi

thí sinh đã thi

7.0 in
giấy
báo
dt

HS đã hoàn thiện

8.0 in
thẻ
dt


Lãnh đạo

Danh sách cha đánh P.Thi

Thí sinh

Danh sách đã đánh P.Thi

Thí sinh
dự thi

Lãnh đạo

5.0đá
nh
p.thi

DS Địa điểm thi

6.0
cập
nhật
Địa
điểm
thi

(DFD : Data Flow Diagram)

Sơ đồ 3 : Sơ đồ luồng dữ liệu


Trang 13

HS thí sinh dự thi

4.0đán
h sbd

Điểm thi
thí sinh

TS trúng
tuyển

Xử lý điểm thi

Thí sinh

Thí sinh

2.4 Tiến hành thiết kế.
Thiết kế bất kỳ một chơng trình nào chúng ta cũng cần phải dựa chủ
yếu vào các thông tin đầu ra và các yêu cầu của ngời sử dụng. Vì công tác
tuyển sinh vào bất kỳ một trờng Đại học Cao đẳng nào cũng cần phải có
một trình tự thứ tự các bớc không đợc bỏ qua bất kỳ một bớc nào nên trong


chơng trình sẽ đợc tiến hành theo một trình tự các bớc theo sơ đồ nh sau:
Nhập hồ sơ thí sinh
Đánh số báo danh

Đánh số phòng thi
Gửi giấy báo dự thi
Gửi kết quả thi
Gửi giấy nhập học
2.4.1 Thiết kế vào.
2.4.1.1 Thiết kế giao diện chính.
Giao diện chính của chơng trình là một vấn đề vô cùng quan trọng
trong bất kỳ chơng trình nào, nó thể hiện cách nhìn tổng quát về chơng trình.
Trong việc thiết kế chơng trình tuyển sinh này thì giao diện chính đợc thể
hiện nh hình ở phía dới. Trên form giao diện chính đợc thiết kế bao gồm
các các thực đơn (Menu Bar), toolbar, caption, command. Các tác dụng chính
của chúng đợc thể hiện nh sau:
*) Menu: thực đơn (menu) có tác dụng giúp cho ngời sử dụng thực hiện
các công việc đợc ngay cho dù đang ở đâu trong chơng trình. Các menu này
nhằm giúp cho ngời sử dụng có thể nên báo cáo, cập nhật hoàn thiện các
thông tin
*) Toolbar : nhằm giúp cho ngời sử dụng thực hiện các thao tác cơ bản
nhất, nhanh nhất nh có thể in, xem, chuyển sang dạng word, excel, notepad,
.
*) Caption : dùng để mô tả tên của chơng trình.
*) Command : các command này có tác dụng liên kết với các form mà
ngời sử dụng muốn nhập liệu, xem hoặc hoàn thiện danh sách.
Tác dụng chính của một số command nh sau:
- Hồ sơ: command này có tác dụng giúp cho chúng ta cập nhật
các thông tin khi nhận đợc những hồ sơ đăng ký dự thi của thí sinh từ các
Trang 14


tỉnh, thành phố, quận huyện.
- Đánh số báo danh (Đánh SBD): Đây là công việc thứ hai tức là

sau khi hồ sơ của thí sinh đã đợc nhập đủ, chính xác mọi thông tin thì ta tiến
hành đánh số báo danh. Việc đánh số báo danh sẽ đợc tự động điền vào theo
thứ tự từ trên xuống mà chúng ta đã đợc xếp theo vần abc chuẩn của chữ Việt
và chơng trình đợc thiết kế nh sau:

Các command chính
chơng trình

Menu Bar
Toolbar

Hình 1: Giao diện chính trong chơng trình

Ca
pti
on

Trang 15


Trªn form ®îc thiÕt kÕ víi nót ®¸nh sè b¸o danh nh sau:
‘ §¸nh sè b¸o danh cho tõng thÝ sinh
Private Sub SBD_Click()
On Error Goto Loi
Dim Db As Database, RES As Recordset
Set Db = CurrentDb()
Set RES = Db.OpenRecordset("HOANTHIENDS", DB_OPEN_DYNASET)
sobaodanh = 1
Do Until RES.EOF
RES.Edit

RES!sobaodanh = sobaodanh
RES.Update
sobaodanh = sobaodanh + 1
RES.MoveNext
Loop
RES.Close
MsgBox "Hoµn thiÖn viÖc ®¸nh sè b¸o danh cho c¸c thÝ sinh dù thi",
vbCritical, "Chóc mõng "
ERR:
Exit Sub
Loi:
Resume ERR
End Sub

--------------------------------------------------------------------------------------------Trang 16


- Cập nhật P.Thi (Cập nhật phòng thi) : command này có tác dụng
giúp ta cập nhật các thông tin về phòng thi, địa điểm thi.
- Đánh số phòng thi : Sau khi tiến hành hoàn thiện các thủ tục về
hồ sơ, đánh số báo danh, cập nhật đầy đủ các thông tin về phòng thi thì ta sẽ
tiến hành đánh phòng thi một cách tự động cho từng thí sinh ứng với các
thông tin về phòng thi đã đợc cập nhật ở trên. Thủ tục đợc viết nh sau :

Đánh số phòng thi và địa điểm thi.
Private Sub PTHI_Click()
On Error GoTo Loi
Dim PD(1 To 50) As Integer, PC(1 To 50) As Integer
Dim SoTS(1 To 50) As Integer, DDT(1 To 50) As Integer
Dim i As Integer, k As Integer, p As Integer, n As Integer, Sots_Pthi As Long,

Sots_Duthi As Long
Dim Db As Database, RES As Recordset, TB
Set Db = DBEngine.Workspaces(0).Databases(0)
Set RES = Db.OpenRecordset("sodophongthi", DB_OPEN_DYNASET)
i=0
Sots_Pthi = 0
Do Until RES.EOF
i=i+1
PD(i) = RES!Phongdau
PC(i) = RES!Phongcuoi
SoTS(i) = RES!Sothisinh
DDT(i) = RES!DiaDiem
Sots_Pthi = Sots_Pthi + (PC(i) - PD(i) + 1) * SoTS(i)
RES.MoveNext
Loop
n=i
RES.Close
Set RES = Db.OpenRecordset("hoanthiends", DB_OPEN_DYNASET)
Sots_Duthi = RES.RecordCount
TB = "Số thí sinh dự thi : " & STR(Sots_Duthi) & Chr(10)
TB = TB + "Khả năng phòng thi :" & STR(Sots_Pthi)
tieu = "Thông báo"
MsgBox TB, vbCritical, tieu
If Sots_Duthi > Sots_Pthi Then
MsgBox "Không đủ số phòng thi ", vbCritical, "Thông báo"
Exit Sub

Trang 17



End If
For k = 1 To n
For p = PD(k) To PC(k)
For i = 1 To SoTS(k)
RES.Edit
RES!phongthi = p
RES!DiaDiem = DDT(k)
RES.Update
RES.MoveNext
If RES.EOF Then
RES.Close
MsgBox "Hoàn thành công việc đánh số phòng thi", vbCritical, "Chúc mừng"
Exit Sub
End If
Next i
Next p
Next k
ERR:
Exit Sub
Loi:
Resume ERR
End Sub

-------------------------------------------------------------------------------------------- Điểm thi : có thể nói cập nhật điểm thi là một công đoạn cuối
cùng khi chúng ta đã hoàn tất các thủ tục ở phía trên. Cập nhật điểm thi sẽ đợc tiến hành khi thí sinh đã tham gia dự thi trong kỳ thi tuyển sinh và sẽ dựa
vào điểm thi của từng thí sinh mà ta có thể lên điểm chuẩn và gọi thí sinh đủ
điều kiện để nhập học.
2.4.1.2. Thiết kế form cập nhật hồ sơ.
Form cập nhật hồ sơ có tác dụng điền các thông tin về hồ sơ của thí
sinh để ta tiến hành các công việc tiếp theo. Form đợc thiết kế nh sau:


Danh sách đã đợc sắp
xếp theo chữ Việt

Các thông tin cập
nhật

Trang 18
Hình 2 : Form cập nhật hồ sơ

Các command


Trên form đợc thiết kế với các command nhằm giúp cho ta có thể dịch
chuyển từng bản ghi hay cũng có thể thêm thí sinh dự thi, sửa các thông tin về
thí sinh nào đó mà khi ta nhập ban đầu có sai sót. Ngoài ra, ta cũng có thể xóa
bất kỳ một thí sinh nào. Tuy nhiên, trên form còn có hiện một danh sách các
thí sinh đã đợc nhập và các thí sinh này đợc xếp theo thứ tự a, b, c tiêu chuẩn
Việt Nam.
Form đợc thiết kế với các Combo Box nhằm giúp cho ta hiện những
thành phần mà đã nhập ở lúc ban đầu. Nếu không có thông tin đó thì nó sẽ đợc báo lỗi. Ví dụ nh khi ta tiến hành nhập giới tính vì giới tính chỉ có Nam,
Nữ ngoài ra không có bất kỳ một giới tính nào khác nên khi ta tiến hành
nhập các thông tin khác vào đây thì chơng trình sẽ thông báo lỗi hoặc khi ta
tiến hành cập nhật thông tin về tỉnh với mã tỉnh thì tên tỉnh sẽ đợc hiện ngay
bên cạnh và chỉ có những huyện có mã nằm trong tỉnh đó đợc hiện ra.
2.4.1.3. Thiết kế form cập nhật điểm thi.
Trang 19


Điểm thi là một vấn đề cần phải đợc thực hiện chính xác, vì đây là bớc

nhằm thông báo điểm tới tất cả các thí sinh và cũng dựa vào đây để ta có thể
lên điểm chuẩn nhằm tuyển những thí sinh đã đủ điều kiện tiêu chuẩn để đợc
gọi nhập học.

Trang 20


Form đợc thiết kế nh sau:

TextBox

Danh sách theo
thứ tự a,b,c

ComboBox

Hình 3 : Form cập nhật điểm
Trên form đợc thiết kế chủ yếu gồm có 3 thông tin chính đó là : toán,
lý, hóa, đây cũng là các môn mà thí sinh phải thi tuyển. Mặt khác, vì tất cả
các thí sinh khi tham gia dự thi đều đã đợc đánh số báo danh, đánh phòng thi
cho nên bài thi của thí sinh cũng sẽ đợc cán bộ coi thi xếp theo một thứ tự
nhất đinh trong khi thu bài. Chính vì yếu tố này cho nên trên form cũng đợc
thiết kế với công việc nhập điểm theo một thứ tự nhất định. Ngoài ra, trên
form còn có các text box để hiện ra lần lợt từng thí sinh theo thứ tự vần a,b,c
để cho ta tiến hành nhập điểm cho mỗi thí sinh.
Tuy nhiên, trên form còn có các nút, những nút này giúp cho ngời sử
dụng khi tiến hành nhập điểm của từng thí sinh. Khi tiến hành nhập điểm
(Nhập điểm) cho bất kỳ một thí sinh nào thì trên form sẽ hiện ra các nút
(command) khác nhằm thực hiện các tác vụ khác nhau nh (lu, huỷ)
Trang 21



Các TextBox trên form đợc tiến hành lập trình nh sau:
Option Compare Database
Public Function Ho_Ten(mahoso) As String
On Error GoTo Ten_Err
' Trả lại họ tên khi mã trùng nhau
Dim rs As Recordset, Db As Database
Set rs = CurrentDb.OpenRecordset("HoSo", DB_OPEN_SNAPSHOT)
Ho_Ten = " "
rs.MoveFirst
Do Until rs.EOF
If rs!mahoso = mahoso Then
Ho_Ten = rs!hoten
Exit Do
End If
rs.MoveNext
Loop
rs.Close
Exit_Ten:
Exit Function
Ten_Err:
' Trờng hợp họ hoặc tên bỏ trống (NULL)
Ho_Ten = ""
Resume Exit_Ten
End Function
Public Function Ngay_Sinh(mahoso) As String
On Error GoTo Ten_Err
Dim rs As Recordset, Db As Database
Set rs = CurrentDb.OpenRecordset("HoSo", DB_OPEN_SNAPSHOT)

Ngay_Sinh = " "
rs.MoveFirst
Do Until rs.EOF
If rs!mahoso = mahoso Then
Ngay_Sinh = rs!ngaysinh
Exit Do
End If
rs.MoveNext
Loop
rs.Close
Exit_Ten:
Exit Function
Ten_Err:
Ngay_Sinh = ""
Resume Exit_Ten

Trang 22


End Function

--------------------------------------------------------------------------------------------Public Function Gioi_Tinh(mahoso) As String
On Error GoTo Ten_Err
Dim rs As Recordset, Db As Database
Set rs = CurrentDb.OpenRecordset("HoSo", DB_OPEN_SNAPSHOT)
Gioi_Tinh = " "
rs.MoveFirst
Do Until rs.EOF
If rs!mahoso = mahoso Then
Gioi_Tinh = rs!gioitinh

Exit Do
End If
rs.MoveNext
Loop
rs.Close
Exit_Ten:
Exit Function
Ten_Err:
Gioi_Tinh = ""
Resume Exit_Ten
End Function

--------------------------------------------------------------------------------------------Public Function Khu_Vuc(mahoso) As String
On Error GoTo Ten_Err
Dim rs As Recordset, Db As Database
Set rs = CurrentDb.OpenRecordset("HoSo", DB_OPEN_SNAPSHOT)
Khu_Vuc = " "
rs.MoveFirst
Do Until rs.EOF
If rs!mahoso = mahoso Then
Khu_Vuc = rs!khuvuc
Exit Do
End If
rs.MoveNext
Loop
rs.Close
Exit_Ten:
Exit Function
Ten_Err:
Khu_Vuc = ""

Resume Exit_Ten

Trang 23


End Function

--------------------------------------------------------------------------------------------Public Function Doi_Tuong(mahoso) As String
On Error GoTo Ten_Err
Dim rs As Recordset, Db As Database
Set rs = CurrentDb.OpenRecordset("HoSo", DB_OPEN_SNAPSHOT)
Doi_Tuong = " "
rs.MoveFirst
Do Until rs.EOF
If rs!mahoso = mahoso Then
Doi_Tuong = rs!doituong
Exit Do
End If
rs.MoveNext
Loop
rs.Close
Exit_Ten:
Exit Function
Ten_Err:
Doi_Tuong = ""
Resume Exit_Ten
End Function

--------------------------------------------------------------------------------------------Public Function Ma_Ho_So(mahoso) As String
On Error GoTo Ten_Err

Dim rs As Recordset, Db As Database
Set rs = CurrentDb.OpenRecordset("HoSo", DB_OPEN_SNAPSHOT)
Ma_Ho_So = " "
rs.MoveFirst
Do Until rs.EOF
If rs!mahoso = mahoso Then
Ma_Ho_So = rs!mahoso
Exit Do
End If
rs.MoveNext
Loop
rs.Close
Exit_Ten:
Exit Function
Ten_Err:
Ma_Ho_So = ""
Resume Exit_Ten

Trang 24


End Function

--------------------------------------------------------------------------------------------Public Function SO_Bao_Danh(mahoso) As String
On Error GoTo Ten_Err
Dim rs As Recordset, Db As Database
Set rs = CurrentDb.OpenRecordset("HoSo", DB_OPEN_SNAPSHOT)
SO_Bao_Danh = " "
rs.MoveFirst
Do Until rs.EOF

If rs!mahoso = mahoso Then
SO_Bao_Danh = rs!sobaodanh
Exit Do
End If
rs.MoveNext
Loop
rs.Close
Exit_Ten:
Exit Function
Ten_Err:
SO_Bao_Danh = ""
Resume Exit_Ten
End Function
---------------------------------------------------------------------------------------------

2.4.1.4. Thiết kế form cập nhật phòng thi.
Sau khi tiến hành đánh số báo danh cho mỗi thí sinh, thì công đoạn tiếp
theo là tiến hành cập nhật các thông tin về phòng thi để ta có thể gửi giấy báo
dự thi tới tận tay thí sinh.
Trên form này đợc thiết kế bao gồm các thông tin cơ bản nh : Số hiệu
về điểm thi, số phòng có thể có (phòng đầu, phòng cuối), địa điểm thi, số lợng thí sinh có trong mỗi phòng.
Form này có tác dụng giúp cho lãnh đạo sau khi đi tiến hành khảo sát
các địa điểm với số lợng phòng thi của từng địa điểm để có thể nhập vào chơng trình rồi sau đó nhờ sự hỗ trợ của chơng trình nó sẽ đợc cập nhật vào từng
phiếu báo cho thí sinh để gửi tới tận tay thí sinh.
Form đợc thiết kế nh sau:

Trang 25



×