Tải bản đầy đủ (.pdf) (61 trang)

Xây dựng chương trình quản lý khách sạn tích hợp dịch vụ đặt phòng qua mạ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 (2.73 MB, 61 trang )

Mục Lục
Lời cảm ơn......................................................................Error! Bookmark not defined.
Mục Lục..........................................................................................................................1
GIỚI THIỆU ...................................................................................................................3
Chương 1. TỔNG QUAN................................................................................................4
1.1 Khảo sát khách sạn Hoa Hồng ...............................................................................4
1.2 Những yêu cầu tính năng đối với hệ thống .............................................................6
1.3 Các yêu cầu khác đối với hệ thống.........................................................................7
Chương 2. TỔNG HỢP CÁC KIẾN THỨC LIÊN QUAN...............................................8
2.1 Một vài nét khái quát về VB.Net............................................................................8
2.1.1 Các kiểu dữ liệu ..............................................................................................8
2.1.2 Biến – Tính chất, khai báo và khởi tạo ............................................................9
2.1.3 Mảng và cấu trúc...........................................................................................10
2.1.4 Các toán tử....................................................................................................11
2.1.5 Cấu trúc điều khiển .......................................................................................12
2.1.6 Hỗ trợ lập trình với cơ sở dữ liệu...................................................................13
2.2 Giới thiệu ngôn ngữ ASP.....................................................................................19
2.2.1 Khái niệm ASP .............................................................................................19
2.2.2 Mô hình hoạt động của Active Server Page ...................................................20
2.2.3 Các đối tượng được xây dựng sẵn của ASP ...................................................20
2.2.4 Truy nhập cơ sở dữ liệu.................................................................................21
2.2.5 Một số cấu trúc điều khiển ............................................................................22
Chương 3. PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG...................................................25
3.1 phân tích hệ thống ...............................................................................................25
3.1.1 Sơ đồ ngữ cảnh của hệ thống ............................................................................25
3.1.2 sơ đồ phân rã chức năng của hệ thống ...............................................................26
3.1.2.1 Quản lý tài nguyên .....................................................................................26
3.1.2.2 Quản lý đặt phòng ......................................................................................27
3.1.2.3 Quản lý khách vào......................................................................................27
3.1.2.4 Quản lý sử dụng dịch vụ.............................................................................27
3.1.2.5 Quản lý khách ra ........................................................................................27



1


3.1.2.6 Báo cáo ......................................................................................................28
3.1.2.7 Thông tin về khách sạn...............................................................................28
3.1.2.8 Đặt phòng qua mạng ..................................................................................30
3.1.3 Biểu đồ luồng dữ liệu của hệ thống ...................................................................34
3.1.3.1 Biểu đồ luồng dữ liệu mức đỉnh..................................................................34
3.1.3.2 Biểu đồ luồng phân rã chức năng quản lý đặt phòng...................................35
3.1.3.3 Biểu đồ luồng phân rã chức năng quản lý khách vào...................................35
3.1.3.4 Biểu đồ luồng phân rã chức năng quản lý sử dụng dịch vụ..........................36
3.1.3.5 Biểu đồ luồng phân rã chức năng quản lý khách ra .....................................37
3.1.3.6 Biểu đồ luồng phân rã chức năng quản lý tài nguyên ..................................37
3.1.3.7 Biểu đồ luồng phân rã chức năng lập báo cáo .............................................38
3.1.4 Phân tích dữ liệu của hệ thống ..........................................................................38
3.1.4.1 Các thực thể của hệ thống...........................................................................38
3.1.4.2 Mô hình quan hệ giữa các thực thể ER .......................................................41
3.2 Thiết kế hệ thống .................................................................................................41
3.2.1 Thiết kế hệ thống dữ liệu ..................................................................................41
3.2.1 Mô hình quan hệ giữa các bảng.........................................................................47
3.3 Xây dựng chương trình ........................................................................................48
KẾT LUẬN...................................................................................................................60
TÀI LIỆU THAM KHẢO .............................................................................................61

2


GIỚI THIỆU
Ngày nay cùng với sự phát triển của khoa học kỹ thuật, ngành công nghệ

thông tin đã và đang có sự phát triển vượt bậc, trở thành phương tiện giúp đỡ đắc
lực nhất của con người trong mọi lĩnh vực.Vai trò của nó đã không thể thiếu
được trong đời sống con người, như trong mỗi cơ quan các tổ chức đơn vị xí
nghiệp. Chỉ với mới một chiếc máy tính bạn có thể làm được rất nhiều việc như:
quản lý thông tin với số lượng lớn, tính toán nhanh chính xác, giải trí, có thể truy
cập đươc nhiều thông tin trên thế giới, và sử dụng máy tính vào công việc hàng
ngày. Trong các ngành công nghiệp thì ngành du lịch tại các nước phát triển hết
sức mạnh mẽ và đạt thu nhập cao với sự hỗ trợ đắc lực từ công nghệ thông tin,
ngành du lịch nước ta đã có từ lâu đời nhưng mới phát triển nên ứng dụng công
nghệ thông tin còn nhiều hạn chế. Trong bối cảnh đó việc xây dựng chương trình
quản lý khách sạn và quảng bá nét đẹp con người Việt cho bạn bè thế giới là vô
cùng cần thiết. Quê hương em cũng có rất nhiều khu di tích và địa điểm du lịch
hấp dẫn, đặc biệt là khi nghỉ mát Tam Đảo. Em đã xây dựng chương trình quản
lý khách sạn tích hợp dịch vụ đặt phòng qua mạng để góp phần phát triển ngành
du lịch quê hương ngày càng giàu mạnh hơn.

Thái Nguyên 12/6/2009

3


Chương 1. TỔNG QUAN
1.1 Khảo sát khách sạn Hoa Hồng
Khách sạn Hoa Hồng nằm tại số 12, thị trấn Tam Đảo, là khách sạn hoạt
động lâu năm. Tuy nhiên trong khâu quản lý hoạt động kinh doanh vẫn hoạt
động thủ công. Mô hình hoạt động của hệ thống như sau:

Quy trình hoạt đông của hệ thống

4



Nhận yêu cầu thuê phòng

Xác nhận các đặt phòng, Xác
định khả năng đáp ứng

Trả lời khách

Từ chối

Lập thông tin thuê phòng

Sửa Đổi

Nhận khẳng định từ khách

Hủy Bỏ

Tổng hợp tình hình thuê
phòng

Quy trình thuê phòng của hệ thống

Quy trình cung cấp dịch vụ của hệ thống

Yêu cầu trả phòng

Xác nhận thông tin trả phòng


Lưu thông tin trả phòng

Lập hóa đơn

Nhận tiền thanh toán

Tổng hợp tình hình trả phòng

Quá trình trả phòng của hệ thống

5


Nhận xét: quá trình làm thủ công dựa vào sức người đã bộc lộ những nhược
điểm sau đây:
 Việc lưu trữ hồ sơ khách hàng cũng như các thông tin khác trong quá trình
thanh toán được tiến hành thủ công bằng sổ sách và số lượng chứng từ. Sau
nhiều năm thì khối lượng sẽ có một số lượng lớn dữ liệu, nên việc thông kê
tìm kiếm gặp vô cùng khó khăn, tốn nhiều công sức.
 Khi lưu trữ thì có nhiều sai sót
 Tốn nhiều nhân lực trong khâu quản lý
 Mất thời gian trong việc đăng ký với số lượng đông
 Khách sạn không thể mở rộng kinh doanh nếu không quảng bá khách sạn
và dịch vụ nhanh tróng thuận tiện.
Chính vì những nhược điểm đó nên mục tiêu nâng cao chất lượng dịch vụ
khách hàng và quản lý hiệu quả việc kinh doanh khách sạn rất khó thực hiện. Vì vậy
ta cần xây dựng hệ thống quản lý khách sạn tích hợp đặt hàng qua mạng dựa trên
nhu cầu tin học hóa công việc kinh doanh của khách sạn Hoa Hồng.

1.2 Những yêu cầu tính năng đối với hệ thống

 Tự động hóa các yêu cầu của hệ thống: tự động đặt phòng, quản lý khách tự
động, dịch vụ thanh toán, in hóa đơn…nhằm tăng kết quả kinh doanh.
 Dữ liệu được đưa vào phải kiểm tra chuẩn hóa
 Cơ sở dữ liệu phải đầy đủ thống nhất
 Cung cấp đầy đủ chính xác thông tin về khách sạn
 Cho phép khách hàng truy vấn thông tin khách sạn và tự động đặt phòng
bởi chính khách hàng qua mạng Internet.
 Tạo ra các báo cáo, thống kế để người quản lý có thể biết được tình hình
kinh doanh của khách sạn.

6


1.3 Các yêu cầu khác đối với hệ thống
 Hệ thống tin cậy, chính xác.
 Giao diện thân thiện dễ sử dụng, hệ thống linh động, dữ liệu truy cập
nhanh.
 Hệ thống đảm bảo bảo mật cho người dùng, đảm bảo người dùng thực
hiện đúng phạm vi chức năng.
Với các yêu cầu đặt ra tôi đã lựa chọn phương pháp và công cụ để phát triển
hệ thống như sau:
-

Phương pháp: Qua quá trình khảo sát hoạt động của khách sạn tôi thấy
khách sạn có quy mô nhỏ nên tôi đã sử dụng phương pháp phân tích hướng
chức năng dùng công cụ Viso 2003 hỗ trợ trong quá trình thiết kế.

-

Ngôn ngữ: ASP và VB.NET hiện nay rất phổ biến, nó rất mạnh và linh

hoạt nên nó có thể thực hiện đầy đủ các yêu cầu của hệ thống.

-

FRONTPAGE 2003 với CSS là công cụ thiết kế giao diện nhanh và đẹp,
dùng nó để thiết kế giao diện của website sẽ đảm bảo thẩm mỹ cho trang
web này.

7


Chương 2. TỔNG HỢP CÁC KIẾN THỨC LIÊN QUAN
2.1 Một vài nét khái quát về VB.Net
2.1.1 Các kiểu dữ liệu
Các kiểu dữ liệu xuất phát từ lớp System.Object. Ngoài ra các phương thức kế
thừa từ lớp này, các biến kiểu dữ liệu còn có các phương thức và thuộc tính đặc thù.
Các phương thức chung kế thừa từ lớp System.Object
 Equals: hỗ trợ việc so sánh giữa hai Object
 Finalize: thực hiện các thao tác xóa bỏ trước khi Object được tự động xóa
bỏ.
 GetHashCode: phát sinh một số tương ứng với giá trị của Object
 Getype: Trả về kiểu Object
 Tostring: trả về chuỗi chứa nội dung mô tả một thể hiện của lớp.
Các kiểu dữ liệu trong .Net được mô tả chi tiết trong một cấu trúc gọi là
Common Type System (CTS). CTS định nghĩa các kiểu dữ liệu, cách thức sử
dụng, cách thức được quản lý lúc thực thi và cùng với Common Language
Specification đóng một vai trò quan trọng trong việc trao đổi giữa các ngôn
ngữ lập trình trong .Net
Dưới đây là các bảng liệt kê những phương thức và thuộc tính đặc thù của các
kiểu dữ liệu. Do các phương thức có nhiều kiểu sử dụng khác nhau, nên trong các

phần nói về phương thức chỉ mô tả công dụng.

Kiểu

Thuộc tính

8

Phương thức


String

Char(i), Length

Clone,

Compare,

CompareOrdinal,

Concat,

Copy, Copyto, Endswith,
Format,

Index,

IndexOf,


Insert, Joint, LatsIndexOf…
Datetime

Maxvalue, Minvalue Date, Adddays,

Addhours,

Day, Second, DayOfWeek, AddYears,

Compare,

DayOfYear, Hour, Month, DayInmonth,
Now,

Second,

Subtract,

Today, AddMonth..

year…
Number

Maxvalue, Minvalue

C, E , F

2.1.2 Biến – Tính chất, khai báo và khởi tạo
Tính chất: có 6 tính chất của biến
 Address: địa chỉ vùng nhớ nơi lưu giữ giá trị của biến. Trong chu trình

sống, địa chỉ của biến thay đổi.
 Type: kiểu của biến, còn gọi là kiểu dữ liệu
 Value: giá trị của biến
 Scope: phạm vi sử dụng của biến
Mỗi biến có một phạm vi sử dụng là phạm vi trong chương trình, nơi biến
được nhìn nhận thay đổi với câu lệnh: Phạm vi khối lệnh và phạm vi thủ tục, phạm
vi module và phạm vi project.
Dim x as Integer, a, b, c as Long
Các biến a, b, c đều cùng có kiểu Long
Có thể khai báo và khởi tạo giá trị cho biến cùng lúc:
Dim as Integer = 100, y as Integer = 200
Trong cách này, phải khai báo tường minh kiểu dữ liệu cho từng biến.
Với các biến kiểu đối tượng, cách khai báo cũng như thế.

Dim obj a As Myclass()

9


Lệnh trên chưa tạo ra biến đối tượng và sau dòng lệnh, obj A vẫn là
Nothing. Những cách sau đây sẽ khai báo và tạo biến đối tượng:
Dim obja as new myclass()
Hoặc
Dim obja as myclass =new myclass()
Các từ khóa khai báo:
 Public: sử dụng toàn cục
 Private: sử dụng cục bộ trong phạm vi khai báo dim
 Friend: sử dụng trong phạm vi project
 Protected: sử dụng trong phạm vi của lớp và các lớp con
 Protected Friend: sử dụng trong phạm vi của proctected và friend.

VB.Net không có kiểu con trỏ nên chúng ta chị xem xét kiểu trị và kiểu
tham chiếu.
Khi một biến kiểu trị được khai báo, một vùng nhớ được dành riêng để
chứa giá trị thực của biến. Ngược lại, khi một biến kiểu tham chiếu được khai
báo, trình biên dịch sẽ tạo đối tượng trên vùng nhớ, nhưng sẽ gán cho biến
bốn byte chứa địa chỉ của đối tượng. Tóm lại, biến kiểu trị chứa giá trị của
biến còn biến kiểu tham chiếu chỉ đến nơi chứa giá trị.
2.1.3 Mảng và cấu trúc
Mảng là tập hợp các biến có cùng kiểu dữ liệu, cùng tên nhưng có
chỉ số khác nhau. Trong VB.Net, mảng có chỉ số bắt đầu là 0 và luôn luôn
là mảng động. Không như trong VB6, với VB.Net chúng ta không được
dùng từ khóa Redim để khai báo mảng nhưng chỉ được dùng để định lại
kích thước mảng. Chúng ta có các cách khai báo mảng như sau:
Cú pháp
Khai báo mảng: dim a() as integer hoặc dim a as integer()
Mảng thuộc lớp System.Array nên có các thuộc tính và phương thức
của lớp này. Sau đây là một số thuộc tính và phương thức đáng chú ý:
Thuộc tính: Length, Rank

10


Phương

thức:

Binarysearch,

clear,


clone,

copy,

copyto,

getlength,

getlowerBound, getupperBound, getvalue, indexof, LastIndexOf, Reverse,
setvalue, sort.
Khác với mảng, Structure kiểu do người dùng định nghĩa (UDT: User
Defined Type), là một cấu trúc gồm một hoặc nhiều thành phần có kiểu dữ liệu
khác nhau. Tuy chúng ta có thể truy xuất riêng lẻ các thành phần nhưng Structure
được xem như là một thực thể duy nhất. Trong phiên bản trước, UDT được
khai báo với từ khóa Type … End Type. Trong VB.NET, cú pháp khai
báo Structure như sau:
Cú pháp

[Public|Private|Protected] Structure <tên strucure>

{Dim|Public|Private|Friend}<tên thành phần> As <kiểu dữ liệu>
{Dim|Public|Private|Friend}<tên thành phần N> As <kiểu dữ liệu> End Structure
Các đặc điểm của Structure
Có các thành phần, kể cả bộ khởi tạo, phương thức, thuộc tính, hằng, sự kiện.
Có thể cài đặt các lớp giao tiếp (Interface).
Có thể có các bộ khởi tạo chung, có hoặc không có tham số.
Structure là kiểu trị
Tất cả các thành phần của Structure mặc định là Public.
Các thành phần của Structure không được khai báo với từ khóa Protected.
Structure không thể kế thừa.

2.1.4 Các toán tử
Toán tử toán học: +, -, *, /,\, mod, ^
Toán tử nối chuổi: toán tử chỉ dành cho kiểu string là & và +, kết quả là một
string gồm các ký tự của toán hạng thứ nhất tiếp theo sau là các ký tự của toán hạng
thứ hai.
Toán tử gán: =, +=, *=, /=, ^=, &=
Toán tử so sánh: =, >=, <=, >,<, <>, typeof…is, is, like.
Toán tử lý luận: Not, And, AndAlso, Or, OrElse, Xor

11


2.1.5 Cấu trúc điều khiển
Cấu trúc chọn
If <điều kiện> Then
Các câu lệnh
Else
Các câu lệnh
End if
Select case <biểu thức>
Case <giá trị 1>..
Case <giá trị n>
End select

Cấu trúc lặp
For <biến đếm> = <giá trị đầu> To <giá trị cuối>[step]
Các câu lệnh
Next
For each in <tập hợp>
Các câu lệnh

Next
Do while <biểu thức logic>
Các câu lệnh
Loop
Try
Các lệnh có thể xảy ra lỗi
Cache
Các lệnh xử lý lỗi
[finally]
Các lệnh thực hiện sau cùng
End Try

12


Cấu trúc này chia làm các khối sau:
Khối Try: chứa các câu lệnh có khả năng gây lỗi
Khối Catch: các dòng lệnh để bẫy và xử lý lỗi phát sinh trên khối Try.
Khối này gồm một loạt các lệnh bắt đầu với từ khóa Catch, biến kiểu Exception
ứng với một kiểu Exception muốn bẫy và các lệnh xử lý. Dĩ nhiên, chúng
ta có thể dùng một lệnh Catch cho các System.Exception, nhưng như thế sẽ
không cung cấp thông tin đầy đủ cho người dùng về lỗi đang xảy ra cũng như
hướng dẫn cách xử lý cụ thể cho mỗi tình huống. Ngoài những lỗi đã xử lý, có
thể xảy ra những lỗi ngoài dự kiến, để xử lý các lỗi này, chúng ta nên đưa
thêm một lệnh Catch để bẫy tất cả các trường hợp còn lại và xuất thông tin về lỗi
xảy ra.
Khối Finally: là khối tùy chọn, sau khi chạy qua các khối Try và Catch
nếu không có chỉ định nào khác, khối Finally sẽ được thực hiện bất kể có xảy ra
lỗi hay không. Cuối cùng, cấu trúc bẫy và xử lý lỗi chấm dứt với từ khóa End
Try.

2.1.6 Hỗ trợ lập trình với cơ sở dữ liệu
Kiến trúc ado.net

Kiến trúc ADO.NET có thể chia làm 2 phần chính:
Managed Provider Component:

bao gồm các đối tượng như

DataAdapter, DataReader,… giữ nhiệm vụ làm việc trực tiếp với dữ liệu như
database, file,…

13


Content Component:

bao gồm các đối tượng như DataSet,

DataTable,…đại diện cho dữ liệu thực sự cần làm việc. DataReader là đối tượng
mới, giúp truy cập dữ liệu nhanh chóng nhưng forward-only và read-only giống
như ADO RecordSet sử

dụng Server cursor,

OpenFowardOnly và

LockReadOnly.
DataSet cũng là một đối tượng mới, không chỉ là dữ liệu, DataSet có thể
coi là một bản sao gọn nhẹ của CSDL trong bộ nhớ với nhiều bảng và các mối
quan hệ. DataAdapter là đối tượng kết nối giữa DataSet và CSDL, nó bao gồm

hai đối tượng Connection và Command để cung cấp dữ liệu cho DataSet cũng
như cập nhật dữ liệu từDataSet xuống CSDL.
ADO.NET có nhiều thay đổi so với ADO trước đây dù vẫn giữ lại kiến
trúc các đối tượng độc lập với nhau và cố gắng không thay đổi cách thức các
lập trình viên đã sử dụng quen thuộc với ADO. ADO.NET có nhiều đặc điểm
mới, nổi bật:
INTEROPERRABILITY: phương thức đóng gói dữ liệu dưới dạng
NetWork.
Scalability ( Hỗ trợ nhiều người dùng ).
Productivity (Mở rộng khả năng làm việc với cơ sở dữ liệu): Với
ADO.NET, có sự tập trung rõ ràng hơn về các chức năng của các đối tượng.
Performance ( Hiệu quả trong xử lý dữ liệu): Với các thay đổi trong bản
chất cơ chế thực hiện hiệu quả của ứng dụng dùng ADO.NET sẽ cao hơn nhiều
Disconnected data đảm bảo ứng dụng trên Client ít gặp lỗi khi xử lý dữ
liệu đồng thời giúp mở rộng ứng dụng tới nhiều người dùng hơn. Các
managed provider component hỗ trợ tính năng thiết lập connection pooling
ngầm định để giảm bớt thời gian tái kết nối.
Định dạng XML thay thế cho NDR trong trao đổi dữ liệu giữa Server
và Client giúp cho dữ liệu có thể được xử lý bởi nhiều client hơn dù ứng dụng
trên Client có hay không sử dụng COM.

14


Các thành phần của ado.net
Content component là các đối tượng đại diện cho dữ liệu cần xử
lý. Trong ADO, RecordSet là content component. Dữ liệu trong RecordSet ở
dạng bảng, bao gồm các Row và Column. Trong ADO.NET, dữ liệu được đại
diện bởi DataSet nhưng dưới hình ảnh của một CSDL thu gọn, có nhiều
table và các mối quan hệ. Các class chính giúp tạo nên content component bao

gồm:

DataAdapter được ADO.NET cung cấp như một công cụ giúp kết nối dữ
liệu của một table trong DataSet với database trên Server.
ADO.NET chứa dữ liệu trong DataSet cùng với mối quan hệ giữa các
dữ liệu đó. DataSet giống như một hình ảnh về CSDL trong bộ nhớ, có thể có
nhiều DataTable và các mối quan hệ giữa chúng đại diện bởi các
DataRelation.
DataTable là một thành phần trong DataSet, DataTable chứa dữ liệu của
một bảng trong DataSet và thuộc lớp DataTable. DataTable bao gồm: tập hợp
Columns thuộc lớp DataColumnCollection trong đó mỗi cột là một đối tượng

15


thuộc lớp DataColumn Tập hợp Rows thuộc lớp DataRowCollection trong đó
mỗi dòng là một đối tượng thuộc lớp DataRow.
DataSet bao gồm tập hợp các table đại diện bởi các đối tượng
DataTable và quan hệ giữa các table đó đại diện bởi các đối tượng
DataRelation.
DataView gần giống với khái niệm RecordSet của ADO. Trên
một DataTable có thể tạo nhiều DataView với các điều kiện lọc, sắp
xếp dữ liệu khác nhau. Trên DataView ta có thể xem hay thay đổi giá
trị các mẩu tin.

Hình trên mô tả mô hình phân cấp các class của DataAdapter, cả
SQLDataAdapte và OleDBDataAdapter đều thừa kế từ class DbDataAdapter,
DbDataAdapter lại thừa kết từ abstract class DataAdapter, đến lượt abstract class
này lại implement IDataAdapter interface để hỗ trợ hai phương thức Fill và
Update.

Để lấy dữ liệu cho một table trong DataSet, sử dụng phương thức Fill(),
để cập nhật dữ liệu cho DataSet, sử dụng phương thức Update().
Để lấy dữ liệu, DataAdapter dùng SELECT query thông qua thuộc tính
SelectCommand. Để cập nhật dữ liệu, DataAdapter dùng các câu query
UPDATE, INSERT, DETETE thông qua các thuộc tính UpdateCommand,
InsertCommand và DeleteCommand.

16


Ngoài Fill và Update, DataAdapter còn kế thừa thuộc tính
TableMappings giúp cung cấp cho người dùng các tên table và tên column dễ
đọc hơn các tên thực được sử dụng trong Database.
Trong các đối tượng Command của DataAdapter, chỉ có đối
SelectCommand là bắt buộc, các đối tượng còn lại đều có thể tự động được phát
sinh.

Text: (mặc định) một câu lệnh SQL
Storedprocedure: tên một thủ tục nội
TableDirect: tên của một hoặc nhiều bảng. Khi CommandType có giá trị này,
CommandText là tên của một bảng, hoặc tên của nhiều bảng liên tiếp và
cách nhau một dấu phẩy. Khi Command thực hiện sẽ trả về đủ các dòng
và các cột, với nhiều bảng kết quả trả về sẽ là kết quả của các bảng nối nhau (chỉ
dùng cho OledbCommand).

17


Một số điều khiển thường dùng:
Điều khiển


Thuộc tính liên kết dữ liệu

Label

Text

Textbox

Text

Domainupdown

Text

Checkbox

Checked

Radiobutton

Checked

Combobox

Selected value

Listbox

Selected value


CheckListbox

Selected value

Datetimepicker

Value

NumericUpdon

Value

Combobox, listbox, CheckListbox
Sau đây chúng ta sẽ đề cập đến một số điều khiển đặc biệt trong việc hiển thị
dữ liệu. Khi được dùng để hiển thị dữ liệu, chúng ta cần quan tâm đến các thuộc tính
sau :
_ DataSource: Chỉ ra nguồn dữ liệu để lấy giá trị liệt kê chọn lựa
_ DisplayMember: Cho biết tên cột trên nguồn dữ liệu liệt kê sẽ được hiển thị
trên điều khiển
_ ValueMember: Cho biết tên cột trên nguồn dữ liệu liệt kê sẽ được lấy giá trị
để cập nhật
vào nguồn dữ liệu khi chọn một dòng trên điều khiển
_ SelectedValue: Giá trị của dòng được chọn ứng với cột có tên là giá trị của
ValueMember
DataGrid
DataGrid là điều khiển cho phép liên kết dữ liệu dạng bảng gồm các dòng và
các cột. Đặc điểm của DataGrid trong .NET là có thể liên kết với DataSet chứa nhiều
bảng, quan hệ và có thể hiện thị từng bảng dữ liệu theo từng quan hệ trên lưới. Lưới


18


lúc này hiển thị như cây thư mục, chọn bảng nào lưới sẽ chuyển sang liên kết dữ liệu
của bảng đó và xuất hiện các nút di chuyển về bảng trước, v.v…

2.2 Giới thiệu ngôn ngữ ASP
2.2.1 Khái niệm ASP
Active server Page (ASP) là một môi trường lập trình script trên server, nó
cho phép người lập trình tạo các trang web động có tính bảo mật cao và làm tăng
khả năng giao tiếp của chương trình ứng dụng. Các ứng dụng xây dựng bằng ASP là
các file có phần mở rộng ASP. Trong một File ASP có thể trộn lẫn các đoạn mã
script, các thẻ của HTML và các đoạn văn bản (text).
Trên mỗi trang ASP có một ngôn ngữ cơ sở script gọi là ngôn ngữ script cơ
sở. ngôn ngữ đó có thể là: Jscript, Vbscript,.. Ngôn ngữ mặc định là Vbscript. Để
thiết lập ta dùng lệnh sau:
<% LANGUAGE = Tên_Ngôn_ngữ_script %>
Các script này được chạy trên Web Server mà không cần biên dịch riêng.
Chính điều này đã làm cải thiện đáng kể tới tốc độ thực hiện ứng dụng được xây
dựng bằng ASP.
Phân loại Script: các ngôn ngữ Script còn được phân loại theo vị trí mà nó
được nạp và thực hiện. có hai loại như sau:
Sever – side script: là đoạn script nằm trong tệp ASP được thực hiện trên
server, không nằm trong kết quả trả về cho web browser của người dùng. Nó sử
dụng các Active Server Component (COM componet) để truy cập CSDL. Cú pháp
như sau:
<% Script Language = Tên_script_language Runat = Server %>
Các lệnh script
<% Script %>
Client – side script: là những đoạn script nằm trong tệp ASP mà nó sẽ được

thực hiện khi trang web được download về client. Những đoạn script này thường
dùng để hỗ trợ việc tính toán đơn giản ngay trên client. Các Client_side_script được
khai báo như sau:

19


<% Script Language = Tên_script_language %>
Các lệnh script
<% Script %>
2.2.2 Mô hình hoạt động của Active Server Page
Cách hoạt động của mô hình ASP được mô tả tóm tắt qua 3 bước sau:
 Bước 1: khi Web browser ở máy người dùng gửi một yêu cầu về một tệp
ASP cho Web Browser
 Bước 2: tệp ASP đó được nạp vào bộ nhớ và thực hiện (tại máy chủ). Các
đoạn chương trình script trong tệp ASP đó có thể là mở dữ liệu, thao tác với
dữ liệu để lấy được thông tin mà người dùng cần đến. trong giai đoạn này
tệp ASP đó cũng xác định xem là đoạn Script nào chạy trên máy chủ, đoạn
Script nào là chạy trên máy người dùng.
 Bước 3: Sau khi thực hiện kết quả đó sẽ được trả về cho Web Browser của
người dùng dưới dạng một Web tĩnh.
2.2.3 Các đối tượng được xây dựng sẵn của ASP
Gồm có 6 đối tường sau:
Application: được dùng để chia sẻ thông tin giữa các người dùng của một hệ
thống ứng dụng. một ứng dụng cơ bản ASP được định nghĩa là gồm tất cả các tệp
ASP ở trong một thư mục ảo và tất cả thư mục con của thư mục ảo đó. Đối tượng
Application hỗ trợ các phương thức LOCK và UNLOCK để khóa và bỏ khóa khi
chạy ứng dụng đó với nhiều người dùng.
Session: dùng lưu trữ những thông tin cần thiết trong phiên làm việc của
người dùng, những thông tin lưu trữ trong session khách hàng không bị mất đi khi

người dùng di chuyển qua các trang trong ứng dụng.
Request: dùng để truy cập những thông tin được chuyển cùng với các yêu
cầu HTTP. Thường thông tin này gồm có các tham số của Form khi được Submit
dùng phương thức POST và Get hay các tham số được ghi cùng với trang ASP trong
lời gọi đến các trang đó. Dùng đối tượng Request để chia sẻ thông tin qua lại giữa

20


các trang ASP trong một ứng dụng. Ngoài ra Request còn được dùng để lấy các giá
trị Cookies lưu trên máy Client.
Response: đối tượng này được dùng để gửi kế quả cho Web Browser, chuyển
Browser đến một URL khách hoặc thiết lập các cookies trên máy client.
Server: đối tượng này cung cấp các phương thức cũng như thuộc tính của
Server. Thường sử dụng phương thức Server.CreateObject để khởi tạo Instance của
một Active Object trên trang ASP.
ObjectContext: dùng đối tường này để chấp nhận hoặc hủy bỏ các
Transaction được điều khiển bởi Microsoft Transaction Server. Khi mà các tệp ASP
có chứa từ khóa @TRANSACTION ở trên đầu thì tệp ASP đó sẽ chạy cho đến khi
ma transaction thực hiện thành công hoặc thất bại.
2.2.4 Truy nhập cơ sở dữ liệu
Truy nhập dữ liệu trong Visual InterDev rất đơn giản. các điều khiển có thể
được thêm vào trang, kết nối nguồn dữ liệu vào project, và liên kết dữ liệu với các
điều khiển.
Để hiển thị dữ liệu từ cơ sở dữ liệu trong một trang ASP cần tiến hành như sau:
 Dùng một liên kết tới cơ sở dữ liệu
 Dùng một tên nguồn dữ liệu để định danh cơ sở dữ liệu
 Dùng một câu lệnh truy xuất dữ liệu…
Sử dụng ADO để truy cập cơ sở dữ liệu
ADO(ACESS DATA OBJECT) là đối tượng Activex truy nhập dữ liệu mới

nhất mà Microsoft đưa ra nhằm hỗ trợ tích cực cho việc tương tác với cơ sở dữ liệu
qua bất kỳ một nhà cung cấp cơ sở dữ liệu nào (DB Provider). Ado cho phép viết
các ứng dụng truy nhập cơ ở dữ liệu từ các nguồn dữ liệu OLEDB, gồm tất cả các
nguồn dữ liệu ODBC. Nó dựa trên kỹ thuật tự động. Khi sử dụng ADO với Active
Server Pages, mọi truy xuất dữ liệu và thao tác được thực hiện trên server. Mô hình
hoạt động như sau:

21


2.2.5 Một số cấu trúc điều khiển
a. Cấu trúc điều kiện If…then…else….if

Cú pháp:
<%
If <Điều kiện 1> then
<Các câu lệnh>
Else
If <Điều kiện 2> then
<Các câu lệnh>
End if
End if
%>

22


Ngoài ra có thể sử dụng cấu trúc If.. then. . . . elseif. . . end if
<%
If <Điều kiện 1> then

<Các câu lệnh 1>
ElseIf <Điều kiện 2> then
<Các câu lệnh 2>
Else
<Các câu lệnh 3>
End if
%>

b. Cấu trúc lựa chọn Select case… end select
Cú pháp:
<%
Select Case <tenbien>
Case <gia tri 1>
<Nhóm lệnh 1>
Case <gia tri 2>
<Nhóm lệnh 2>
Case <gia tri n>
<Nhóm lệnh n>
Case Else
<Nhóm lệnh n+1>
%>

23


c. Các cấu trúc lặp
For…Next
Dùng để lặp với số lần đã biết, tuy nhiên ta có thể ngắt bằng lệnh EXIT FOR.
Cú pháp:
<%

FOR <tenbien>=<giatridau> TO <Giatribien> STEP nhay>
NEXT
%>
Do While….Loop
Cú pháp:
<%
Do while <Dieukien>
<Các cau lenh>
Loop
%>
While….Wend
Cú pháp:
<%
While <Dieukien>
<Các cau lenh>
Wend
%>
Do…Loop until
Cú pháp:
<%
DO
<Các cau lenh>
Loop until <Điều kiện>
%>

24


Chương 3. PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG


3.1 phân tích hệ thống
3.1.1 Sơ đồ ngữ cảnh của hệ thống
Các khái niệm cơ bản:
Luồng dữ liệu: là dữ liệu di chuyển từ vị trí này đến vị trí khác
Kí hiệu
Kho dữ liệu: là các dữ liệu được lưu tại chỗ
Kí hiệu:

Tiến trình: là một công việc hay hành động tác động lên dữ liệu làm cho chúng di
chuyển được, lưu trữ được, thay đổi hay được phân phối. phải là động từ ngắn gọn
và xúc tích

Ký hiệu
Tác nhân: là nơi xuất phát hoặc nơi đến của nguồn dữ liệu
Ký hiệu

25


×