LỜI NÓI ĐẦU
Như chúng ta đã biết, trong thời đại thông tin phát triển mạnh như vũ bão thì
cuộc sống của chúng ta không thể thiếu được phương tiện trao đổi thông tin đó
chính là điện thoại. Điện thoại là một phương tiện giao tiếp rất quan trọng trong
đời sống hàng ngày, nó giúp chúng ta trao đổi thông tin một cách chính xác đến
người được liên lạc. Xã hội càng phát triển thì nhu cầu sử dụng điện thoại của
người dân càng đòi hỏi cao hơn, công việc tính cước cũng nằm trong số những đòi
hỏi đó. Công việc tính cước yêu cầu sù nhanh chóng, chính xác vì vậy ứng dụng tin
học trong việc tính cước là cách giải quyết nhanh, chính xác và khoa học.
PHẦN I
Các khái niệm cơ bản
CHƯƠNG 1
TỔNG QUAN VỀ CƠ SƠ DỮ LIỆU
1.1. Khái niệm cơ bản về cơ sở dữ liệu
Dữ liệu cho mét vấn đề được lưu trong máy tính theo mét quy định nào đó
được gọi là cơ sở dữ liệu ( CSDL ). Phần chương trình xử lý được , thay đổi dữ liệu
( DL ) này là hệ quản trị cơ sở dữ liệu ( HQTCSDL ). HQTCSDL có nhiệm vụ rất
quan trọng như bộ diễn dịch với ngôn ngữ bậc cao giúp cho người sử dụng có thể
dùng được hệ thống CSDL đã được lưu trong bé nhí của máy tính.
1.2. Kiến trúc của hệ cơ sở dữ liệu
Một CSDL được phân thành các mức khác nhau. Đây có thể xem như chỉ
có một CSDL đơn giản và có một phần mềm HQTCSDL .
Phần CSDL vật lý là các tệp được lưu trên các thiết bị bé nhí thứ cấp như (
đĩa từ, băng từ ) CSDL mức khái niệm là diễn tả trừu tượng của CSDL vật lý. Các
khung nhìn ( view ) là cách nhìn , là quan niệm của từng ngươi sử dụng đối với
CSDL mức khái niệm.
1.2.1. Thể hiện
Mét CSDL khi được thiết kế người ta quan tâm đến “ Khung ” hay còn gọi
là khuân mẫu của CSDL . DL hiện có trong CSDL gọi là sự thể hiện của CSDL,
mặc dù DL thay đổi trong mét chu kỳ thời gian nào đó thì “ Khung ”
Của CSDL còng vẫn không thay đổi,
1.2.2. Cơ sở dữ liệu vật lý
Đây là mức thấp nhất của kiến trúc hệ CSDL là CSDL vật lý. CSDL vật lý
có thể xem được tổ chức ở nhiều mức khác nhau như : bản ghi, têp.
1.3.1. Các khái niệm cơ bản
1.3.1.1. Quan hệ
và d
1
, d
i
∈ dom( A
i
) là các giá trị thuộc miền giá trị tương ứng của thuộc tính A
i
.
- Tính phản xạ: nếu Y⊆X thì X - > Y
Chương 2
PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG
2.1. Đại cương về các hệ thống thông tin
2.1.1. Khái niệm về hệ thống
Hệ thống là một tập hợp các tổ chức gồm nhiều phần tử hợp thành và cùng
hoạt động để đạt được một mục đích chung, phần tử của hệ thống rất đa dạng,
phong phó, phức tạp. Mục đích của hệ thống là biến đổi thông tin vào thành thông
tin ra. Hệ thống nào cũng cần có môi trường của nã.
2.1.2. Hệ thống thông tin trong doanh nghiệp
2.1.2.1. Hai loại thông tin:
* Thông tin tự nhiên: Là thông tin sản sinh và cảm nhận
bằng giác quan con người như: văn bản, hình vẽ, âm
thanh
* Thông tin cấu trúc: Là thông tin được chuyển từ dạng
thông tin tự nhiên thành dạng cô đọng, có cấu tróc.
2.1.2.2. Vai trò và nhiệm vụ của hệ thống thông tin
Hệ thống thông tin (HTTT) có vai trò trung gian về thông tin giữa hệ
thống và môi trường cũng như các bộ phận bên trong hệ thống. Nhiệm vụ:
* Đối nội
+ Liên lạc giữa các bộ phận.
+ Cung cấp thông tin có cấu tróc.
+ Phản ánh tình trạng nội bộ hệ thống.
+ Phản ánh tình trạng hoạt động kinh doanh, dịch vụ của hệ thống.
* Đối ngoại
+ Thu nhận thông tin tõ môi trường.
+ Đưa các chứng từ, thông báo ra ngoài.
2.1.2.3. Hai bộ phận hợp thành của hệ thống thông tin
- Các DL: đó là các thông tin đặc biệt là các thông tin có cấu trúc được lưu
trong hệ thống. Các thông tin này ổn định về lâu dài. Những thay đổi của các thành
phần này gọi là sự kiện hoá. Dạng lưu trữ của DL như: Hồ sơ văn bản, sổ sách
( thông tin có cấu tróc ), các tệp.
- Các xử lý: các biến đổi có thể thực hiện đối với thông tin , có thể là quy tắc
xử lý do nhà nước hay cơ quan quy định , có thể là các quy trình hay thủ tục.
2.1.2.4. Các hệ thống thông tin tự động hoá
HTTT tự động hoá là HTTT có sử dụng máy tính. Có ba mức :
- Mức thấp: sử dụng máy tính vào việc nhá ( tính lương, tuyển sinh )
- Mức trung bình: Máy tính tham gia vào xử lý liên hoàn nhiều công việc
(không làm thay đổi tổ chức cơ quan)
- Mức cao: Máy tính tham gia vào xử lý rộng rãi hơn: Tự động hoá toàn bộ
quản lý, con người đưa thông tin vào máy tính và nhận thông tin ta tõ máy tính.
- Xử lý theo mẻ: Thông tin đến chưa được xử lý ngay mà được tích luỹ lại
cho đến khi đủ một mẻ thông tin sau đó xử lý cùng môt lóc.
- Xử lý trực tuyến: Thông tin đưa về được xử lý ngay.
2.2. Đại cương về phân tích thiết kế hệ thống
2.2.1. Mục đích và nhiệm vụ
Nhận thức hệ thống và diễn tả cho người lập trình hiểu. Phương pháp làm
chính là dùng mô hình để thâu tóm các chi tiờt trên nhiều phương tiện khác nhau,
thông thường mô hình hoá về khả năng hệ thống, dữ liệu hệ thống, biểu diễn dữ
liệu dưới các mô hình dữ liệu .
2.2.2. Các giai đoạn phân tích và thiết kế
2.2.2.1. Tìm hiểu và khảo sát yêu cầu
Khi cần xây dựng mét hệ thống thông tin quản lý, người phân tích và thiết
kế phải hiểu được môi trường của hệ thống thông tin Êy, hệ thống thông tin được
xây dựng trong tương lai phải đáp ứng được nhu cầu gi?
2.2.1.2. Phân tích hệ thống
Là bước đi sâu vào bản chất và chi tiết của hệ thống. Đi sâu vào bản chất là
trả lời hệ thống phải làm gì, tức là phát hiện chức năng của hệ thống và hệ thống
hoat động trên loại DL gì. Một điều quan trọng là mô tả về chức năng, mô tả về DL
là trả lời câu hỏi là làm gì chứ không đề cập đến câu hỏi làm như thế nào.
2.2.1.3. Thiết kế hệ thống
Là giai đoạn đưa ra những quyết định cụ thể nào đó hoàn thành trong quá
trình phân tích, Đây là lúc trả lời câu hỏi như thế nào. Trong thiết kế người ta đưa
ra các giai đoạn là thiết kế tổng thể và thiết kế chi tiết.
2.2.1.4. Cài đặt
Hiện thực hoá các vấn đề thiết kế trang bị vật chất như nào , thu thập các
thông tin cho CSDL , thông tin ban đầu và đặc biệt là khi lập trình.
2.2.1.5. Kiểm tra
Chạy thử hệ thống đã cài. Sự kiểm tra thử hệ thống có thể là từng phần hay
chạy toàn bộ hệ thống, kiểm tra thử là đưa ra mét bé DLvào và xem rằng hệ thống
có đưa ra kết quả như mong muốn không.
2.3. Khảo sát và phân tích hệ thống
2.3.1. Khảo sát sơ bộ và xác lập dự án
Muc đích:
- Tìm hiểu và đánh giá hệ thống cò
- Xác định phạm vi, khả năng và các hạn chế mục tiêu
của dự án
- Phác thảo giải pháp
- Lập dự trù và kế hoạch dự án
2.3.2. Tìm hiểu và đánh giá hiện trạng
Phương pháp khảo sát: Khi ta xây dựng hệ thống thông tin thì người xây
dựng hệ thống phải tiến hành khảo sát hệ thống. Sự khảo sát phải đi dần theo từng
bước như sau:
- Mức thao tác thực hành
- Mức điều phối quản lý
- Mức quyết định hay lập kế hoạch
- Mức chuyên gia, cố vấn, những ý tưởng chiến lược
phat triển lâu dài
2.3.3. Xác định
- Khả năng
- Phạm vi
- Hạn chế
- Mục tiêu của dự án
2.3.4. Phác hoạ giải pháp
Sau khi xác định được nhược và ưu điểm của hệ thống cò , người thiết kế
phải phác hoạ ra giải pháp cho hệ thống .
Giải pháp này không phải là giải pháp được mô tả một cách chi tiết, các
giải pháp cho ta thấy kiến tróc chung của hệ thống .
2.4. Phân tích hệ thống về chức năng
2.4.1. Mục đích
- Đi sâu vào bản chất của hệ thống để trả lời rằng hệ
thống làm gì ?
- Đi sâu vào chi tiết các chức năng của hệ thống.
- Lập lược đồ logic về chức năng cho hệ thống mới, vận
dụng ba kỹ thuật mới:
+ Phân tích từ trên xuống.
+ Mô tả vật lý đến mô tả logic.
+ Mô tả hệ thống cò sang hệ thống mới.
2.4.2. Các công cụ diễn tả các chức năng
- Biểu đồ phân cấp các chức năng
+ Tư tưởng chính: mô tả các chức năng, nhiệm vụ theo
quan hệ bao hàm dạng cây.
+ Các thành phần của một biểu đồ phân cấp chức
năng.
* Chức năng: Là quá trình biến đổi thông tin, biểu diễn
một chức năng bằng đường tròn hay một elip.
Tên chức năng: là một động từ (+ bổ ngữ )
* Luồng DL: là tuyến truyền thông tin vào/ ra một chức năng, khi ta nói
luồng DL là hiểu rằng đó là con đường truyền đi của thông tin khỏi một chức năng,
ký hiệu biểu diễn:
Biểu diễn: tên dữ liệutên dữ
liệu tªn d÷ liÖu
Tên DL: là mét danh từ ( + tính từ ) Tªn DL: lµ mét danh tõ ( +tÝnh tõ )
* Kho DL: là một DL đơn hay phức được lưu lại để có thể truy cập nhiều
lần.
Biểu diễn: Tên kho dữ liệu Tên kho dữ
liệu Tªn kho d÷
liÖu
* Đối tác: là thực thể ngoài hệ thống, có trao đổi thông tin với hệ thống ( tác
nhân ngoài ).
Biểu diễn:
* Tác nhân trong: là chức năng hệ thống con của hệ thống , được biểu diễn ở
một trạng thái khác nhưng lại có trao đổi thông tin với các phần tử của trạng thái
hiện tại.
Biểu diễn: Tên tác nhân
Trong biểu đồ luồng DL có thể vẽ lặp lại ở những nơi để sơ đồ luồng DL
không bị chồng chéo, nhưng các chức năng không được lặp lại. Không đưa các yếu
tố điều khiển trong biểu đồ luồng DL.
2.4.3. Phân mức
Phân tích hệ thống về chức năng: từ trên xuống nghĩa là đi tõ chung đến
chi tiết. Có hai các phân cấp:
- Phân cấp với biểu đồ cấp chức năng: là biểu diễn hệ
thống tõ chung đến chi tiết.
Mức
0
Mức 1 Mức 2. . . Mức
2
Møc 2
- phân tích biểu đồ luồng DL: mỗi mức gồm mét sè
BLD, mét BLD ở mức duới sự mô tả chi tiết một chức
năng ở trên.
+ Mức 0: Đây là mức bối cảnh hệ thống được coi là chức
năng duy nhất, chỉ có chức năng một BLD, các đối tác,
luông DL vào/ ra hệ thống .
+ Mức 1: Đây là mức đỉnh một BLD gồm nhiều chức
năng, các luồng DL.
+ Mức 2: Đây là mức dưới đỉnh và các mức 3, 4 nhiều
BLD. Phân rã một chức năng trên ra nhiều chức năng,
thêm luồng DL + kho DL giữa các chức năng đó, bảo toàn
các luồng vào/ ra chức năng ở mức trên mà BLD mức
duới mô tả.
2.5. Phân tích hệ thống về dữ liệu
2.5.1. Mục đích yêu cầu
Lập một lược đồ DL cho hệ thống là cho biết các DL cần dùng cho hệ
thống và các mối quan hệ giữa chúng, mà căn cứ vào đó xây dựng CSDL cho hệ
thống sau này. Các yêu cầu phân tích hệ thống :
- Đầy đủ, không thiếu các DL cần dùng cho việc xử lý
nghiệp vụ.
- Không dư thừa như dữ liệu lặp lại hai lần, một thông
tin đưa vào CSDL mà lại suy ra tõ các thông tin khác.
2.5.2. Mô hình mô tả CSDL
2.5.2.1. Mô hình thực thể liên kết
Mô hình này được xây dựng trên mét sè các yếu tố cụ thể như:
* Các yếu tố của mô hình
+ Các thực thể: là một đối tượng, vật cụ thể hay trừu
tượng mà thông tin về nó cần thiết cho hệ thống.
+ Kiểu thực thể: Tập hợp của các thực thể cùng một cách
mô tả như nhau hay cung bản chất.
Mô hình biểu diễn kiểu thực
thể:
+ Liên kết: là kết nối giữa hai thực thể
Là những chữ số đại diện cho từng vùng, tỉnh, thành phố trong quốc gia
đó. Mã vùng được quy định và dùng thống nhất, mỗi mã vùng là duy nhất không
có mã vùng thứ hai trong cùng một bảng tính cước đã quy định.
VD:
Mã vùng Quảng Ninh là 033, Hà Nội 04, Nếu khách hàng ở mỗi tỉnh
khác nhau mà muốn gọi đi đến tỉnh nào đó thì phải bấm mã vùng của tỉnh đó, gọi
đến Quảng Ninh thì phải thêm 033 vào số cần gọi ví du khách hàng bấm 033
871023 còn nếu khách hàng đó gọi ở tỉnh khác đến Hà Nội phải thêm 04 vào trước
số cần gọi, và khách hàng đó gọi trong nội tỉnh chỉ việc bấm số cần gọi.
Đối với cuộc gọi đi quốc tế thì mã cũng được quy định để đảm bảo tính
duy nhất của nã.
1.1.5. Vùng cước
Trong mỗi tỉnh, khu vực trong tỉnh thuộc một quốc gia thì đều có các quy
định riêng về vùng cước. Thông thường các vùng cươc trong quốc gia được đánh
số La Mã I, II, III, hoặc các chữ cái như: K, L, M, , giá cước sẽ khác nhau ở
các vùng cước khác nhau, vùng cước sẽ phụ thuộc vào khoảng cách các tỉnh trong
nước ( cước liên tỉnh ), các khu vực trong tỉnh ( đối với các cuộc gọi trong tỉnh ).
Vì vậy mỗi tỉnh , thành phố trong cả nước có bảng cước liên tỉnh, nội tỉnh, thành
phố. Riêng bảng cước quốc tế được áp dụng cho tất cả các tỉnh thành trong cả nước
không phụ thuộc vào khoảng cách.
1.1.6. Giá cước
Tương ứng với vùng cước có các giá tiền cho các phút liện lạc gọi là giá
cước:
* Giá cước của các vùng trong nước là:
- V_cuocqt: Vùng cước quốc tế
ô tả
Mavung Text Mã vùng
Noiden Text Nơi đến
V_ cuoc Text Vùng cướ
ơi đến
V_ cuoc Text Vùng cước
2.3.9. Bảng B_ cuocdd
Tên trường Kiểu Mô tả
Mavung Text Mã v
Mẫu bản kê tổng hợp cước viễn thông
Mẫu gồm các thông tin chi tiết liên quan đến các cuộc gọi của các khách
hàng, mẫu này bao gồm các thông tin sau: số điện thoại gọi đi, số điện thoại gọi
đến , ngày gọi, thời gian liên lạc. Các thông tin này được phân loại theo các cuộc
gọi của khách hàng để khách hàng tiện theo dõi, kiểm tra, mẫu được thiết kế như
sau:
+ Các thuộc tính sẵn có của điều khiển chỉ thiết lập lúc chương trình chạy
nghĩa là khi chương trình chạy ta có thể thay đổi hành vi của các điều khiển , ví dụ
như ta có thể thay đổi thuộc tính Enabled của các điều khiển giúp người sử dụng có
thể tương tác hoặc không tương tác với các điều khiển.
+ Các thuộc tính sẵn có của điều khiển có thể thiết lập bất kì lúc nào, ví dụ
như các thuộc tính FillColor, Font… có thể thiết lập vào lúc thiết kế chương trình
hoặc lúc chương trình chạy.
3.2.4. Project Explorer:
Các Form , Module, Class Module, ActiveX, …của Visual Basic có thể
dùng chung mã và Visual Basic tổ chức các Forms, Modules, Class Modules,
ActiveX, … thành các Projects. Mỗi Project có thể gồm các Forms, Modules, Class
Modules, ActiveX, … Mã mà tất cả các Form trong ứng dụng chia sẻ có thể được
phân thành các Module khác nhau và cũng được lưu trữ tách biệt được gọi là các
Module mã. Project Explorer chứa các Forms, Modules, Class Modules, ActiveX
tạo nên ứng dụng của ta.
3.3. Viết lệnh cho các đối tượng:
3.3.1. Cửa sổ Code:
Cửa sổ Code luôn là nơi để viết mã . Cửa sổ Code có mét thanh tách
( Split Bar) nằm bên dưới thanh tiêu đề , tại đầu thanh cuộn dọc . Thanh cuộn này
có tác dụng tách cửa sổ Code thành hai cửa sổ Code con để có thể xem cả hai phần
cửa sổ Code cùng lóc.
Hộp liệt kê Object :
Hộp liệt kê bên trái cửa sổ Code là hộp Objects, nã liệt kê mọi đối tượng trên
Form, cùng với một đối tượng General lưu giữ mã chung mà tất cả mọi thủ tục
trong kèm với Form có thể sử dụng.
Hộp liệt kê Procedures(Events):
3.3.2. Tạo Menu:
Menu là công cụ giúp người dùng tương tác với ứng dụng , mỗi Menu là
một lệnh tương ứng với một mục của ứng dụng.
Trong môi trường Visual Basic tõ Menu ta chọn Tools/ Menu Editor hoặc
Ctrl + E hoặc trên thanh công cụ ta chọn Menu Editor , công cụ này giúp ta tạo
Menu cũng như thêm , xoá, sửa mét Menu…
Trong cửa sổ để tạo mét Menu thì ta cần gõ Name và Caption. Thuộc tính
Name phải là duy nhất đối với mỗi Menu, dấu “ - ” dùng để tạo thanh ngăn cách
giữa các Menu hoặc nhóm các Menu.
3.3.3. Giao diện đa cửa sổ ( Multiple Document Interface = MDI ):
MDI cho phép chúng ta tạo ứng dụng chứa nhiều
Form trong mét Form. Form có nhiều Form trong đó gọi là MDI cha (MDI Form) ,
các Form con nằm trong nã gọi là MDI con (MDI Child). Mỗi MDI con là một cửa
sổ độc lập ví dụ như MS Word hoặc MS Excel là ứng dụng MDI.
MDI cũng như Form bình thường, nó khác ở chỗ chỉ có các điều khiển
( Controls) có thuộc tính Align( như Picture Box Control) hoặc giao diện không
nhìn thấy khi chương trình chạy.
Trong Visual Basic chỉ có mét Form MDI cha , tất cả các Form chứa trong
nã gọi là Form con, mét Form trở thành Form con ta đặt thuộc tính MDI
Child=True. Lóc chương trình chạy Form con sẽ hiển thị bên trong Form MDI cha,
Form con có thể phóng to, thu nhỏ và di chuyển trong Form MDI cha.
• Các đặc điểm của Form MDI con :
Đối với Form con ta có thao tác bình thường trong Visual Basic. Các điều khiển
có thể đưa vào Form , thiết lập thuộc tính và viết mã cho điều khiển . Lóc chương
trình chạy Form con có các hành vi sau:
Trường Mavung là khoá chính nên khi nhập, sửa dữ liệu hệ thống sẽ kiểm
tra và không cho phép người sử dụng nhập vào 2 Mavùng trùng nhau để đảm bảo
trường Mavung là duy nhất. Còn đối với Vùng cước thì phải được tồn tại trong
bảng V_cuocnt, V_cuoclt, V_cuocqt, V_ cuocdd tương ứng.
* Mẫu cập nhật thông tin ở bảng V_ cuocnt
* Mẫu cập nhật thông tin ở bảng V_ cuoclt
Hình 28: Mẫu cập nhật thông tin ở bảng V_ cuoclt
Hình 28: Mẫu cập nhật thông tin ở bảng B_ cuocdd
4.1.2. Modul tính cước
Modul tính cước phải thực hiện 2 nhiệm vụ : trước tiên là tệp “solieu” nã
phải thực hiện tra mã vùng cho mỗi cuộc gọi ( mỗi bản ghi) trong đó, sau đó căn cứ
vào loại cuộc gọi (tự động hay nhân công) để tính cước cho mỗi cuộc gọi
4.2. Cài đặt hệ thống
Các modul của hệ thống được thể hiện trên form chính, form này bao gồm
cập nhật, bổ sung, in hoá đơn - báo cáo và mục hệ thống gồm giới thiệu, tính
chương trình để em khắc phục và hoàn thiện hệ thống có hiệu quả hơn. Em mong
sù đóng góp ý kiến của các Thầy, các Cô.
Dim frm As New frm_ Vungcuoc
Private Sub Cuocnoitinh()
Dim frmDisplay As New frm3
frm3. Show vbamodal, Me
End Sub
Private Sub Design()
Dim frmDisplay As New frmBoss
frmBoss. Show vbamodal, Me
End Sub
Private Sub ID13_Click()
Private Sub Vcnt()
Dim frmDisplay As New frm6
frm6. Show vbamodal, Me
End Sub
Private Sub ID16_Click()
Call Vcnt
End Sub
Private Sub Vclt()