Sự ra phát triển của các ngôn ngữ lập trình cho phép chúng ta xây dựngcác trang Web ngày càng đáp ứng đợc các yêu cầu của ngời sử dụng.ASP.NET là kịch bản trên phía trình chủ Server Scri
Trang 1trờng đại học vinh Khoa công nghệ thông tin
Trang 2Em xin chân thành cảm ơn ban chủ nhiệm khoa Công nghệ Thông tin,
các thầy cô giáo, gia đình và bạn bè, các anh chị trong cụng ty Elink, Công ty FPT Telecom chi nhánh Thanh Hóa, công ty D&T Computer đã động viên
giúp đỡ em rất nhiều trong quá trình hoàn thành đồ án này Đặc biệt em xinbày tỏ lòng cảm ơn sâu sắc tới thầy giáo hớng dẫn Ths Lê Hồng Trang về sự
chỉ dẫn tận tình và giúp đỡ hớng dẫn em từ những ý tởng ban đầu cho đến lúchoàn thành đồ án tốt nghiệp
Tuy đó cố gắng hết sức tỡm hiểu, phõn tớch thiết kế và cài đặt hệ thốngnhưng chắc rằng khụng trỏnh khỏi những sai sút mắc phải Em rất mongnhận được sự đúng gúp ý kiến của thầy cụ và bạn bố trong khoa Cụng nghệThụng tin để đồ ỏn được hoàn thiện hơn và cú nhiều kinh nghiệm thực tế đểtriển khai những đề tài trong tương lai
Em xin chân thành cảm ơn!
Vinh, thỏng 5/2010 Sinh viờn
Nguyễn Đăng Dũng
Lớp: 46k2 - CNTT
Trang 3LờI Mở ĐầU
Ngày nay, công nghệ thông tin đã có những bớc phát triển mạnh mẽ theocả chiều rộng và sâu Máy tính điện tử không còn là một thứ phơng tiện quýhiếm mà đang ngày càng trở thành một công cụ làm việc và giải trí thông dụngcủa con ngời, không chỉ ở công sở mà còn ngay cả trong gia đình
Đứng trớc vai trò của thông tin, các công ty tin học hàng đầu thế giớikhông ngừng đầu t và cải thiện các giải pháp cũng nh các sản phẩm nhằm chophép tiến hành thơng mại hóa trên Internet Thông qua các sản phẩm và côngnghệ này, chúng ta dễ dàng nhận ra tầm quan trọng và tính tất yếu của thơngmại điện tử Bạn chỉ cần vào các trang dịch vụ thơng mại điện tử, làm theo h-ớng dẫn và click vào những gì bạn cần Các nhà dịch vụ sẽ mang đến tận nhàcho bạn
ở việt Nam cũng có rất nhiều doanh nghiệp đang tiến hành thơng mạihóa trên Internet nhng do những khó khăn về cơ sở hạ tầng nh viễn thông chaphát triển mạnh, các dịch vụ thanh toán điện tử qua ngân hàng cha phổ biếnnên chỉ dừng lại ở mức độ giới thiệu sản phẩm và tiếp nhận đơn đặt hàngthông qua web
Sự ra phát triển của các ngôn ngữ lập trình cho phép chúng ta xây dựngcác trang Web ngày càng đáp ứng đợc các yêu cầu của ngời sử dụng.ASP.NET là kịch bản trên phía trình chủ (Server Script) cho phép chúng ta xâydựng trang Web trên cơ sở dữ liệu Với nhiều u điểm nổi bật mà ASP.NET đợcrất nhiều nhà phát triển Web sử dụng
Qua việc nghiên cứu và tìm hiểu tôi đã xây dựng đề tài “ứng dụngngôn ngữ ASP.NET xây dựng Website giới thiệu và bán máy tính” làm đồ án
Trang 5Từ khoảng cuối thập niên 90, ASP (Active Server Page) đã đợc nhiều lậptrình viên lựa chọn để xây dựng và phát triển ứng dụng web động trên máy chủ
sử dụng hệ điều hành Windows ASP đã thể hiện đợc những u điểm của mìnhvới mô hình lập trình thủ tục đơn giản, sử dụng hiệu quả các đối tợng COM:ADO (ActiveX Data Object) - xử lý dữ liệu, FSO (File System Object) - làmviệc với hệ thống tập tin…, đồng thời, ASP cũng hỗ trợ nhiều ngôn ngữ:VBScript, JavaScript Chính những u điểm đó, ASP đã đợc yêu thích trong mộtthời gian dài
Tuy nhiên, ASP vẫn còn tồn đọng một số khó khăn nh Code ASP vàHTML lẫn lộn, điều này làm cho quá trình viết code khó khăn, thể hiện vàtrình bày code không trong sáng, hạn chế khả năng sử dụng lại code Bên cạnh
đó, khi triển khai cài đặt, do không đợc biên dịch trớc nên dễ bị mất
source code Thêm vào đó, ASP không có hỗ trợ cache, không đợc biên dịchtrớc nên phần nào hạn chế về mặt tốc độ thực hiện Quá trình xử lý Postbackkhó khăn, …
Đầu năm 2002, Microsoft giới thiệu một kỹ thuật lập trình Web khá mới
mẻ với tên gọi ban đầu là ASP+, tên chính thức sau này là ASP.NET VớiASP.NET, không những không cần đòi hỏi bạn phải biết các tag HTML, thiết
kế web, mà nó còn hỗ trợ mạnh lập trình hớng đối tợng trong quá trình xâydựng và phát triển ứng dụng Web
ASP.NET là kỹ thuật lập trình và phát triển ứng dụng web ở phía Server(Server-side) dựa trên nền tảng của Microsoft NET Framework
Hầu hết, những ngời mới đến với lập trình web đều bắt đầu tìm hiểunhững kỹ thuật ở phía Client (Client-side) nh: HTML, Java Script, CSS(Cascading Style Sheets) Khi Web browser yêu cầu một trang web (trang web
sử dụng kỹ thuật client-side), Web server tìm trang web mà Client yêu cầu,
Trang 6sau đó gởi về cho Client Client nhận kết quả trả về từ Server và hiển thị lênmàn hình ASP.NET sử dụng kỹ thuật lập trình ở phía server thì hoàn toànkhác, mã lệnh ở phía server (ví dụ: mã lệnh trong trang ASP) sẽ đợc biên dịch
và thi hành tại Web Server Sau khi đợc Server đọc, biên dịch và thi hành, kếtquả tự động đợc chuyển sang HTML/JavaScript/CSS và trả về cho Client Tấtcả các xử lý lệnh ASP.NET đều đợc thực hiện tại Server và do đó, gọi là kỹthuật lập trình ở phía Server
1.2 Những u điểm của ASP.NET
• ASP.NET cho phép bạn lựa chọn một trong các ngôn ngữ lập trình mà bạnyêu thích: Visual Basic.NET, J#, C#,…
• Trang ASP.NET đợc biên dịch trớc Thay vì phải đọc và thông dịch mỗi khitrang web đợc yêu cầu, ASP.NET biên dịch những trang web động thànhnhững tập tin mà Server có thể thi hành nhanh chóng và hiệu quả Yếu tốnày là một bớc nhảy vọt đáng kể so với kỹ thuật thông dịch của ASP
Hình 1 : Quá trình biên dịch ASP.NET
• ASP.NET hỗ trợ mạnh mẽ bộ th viện phong phú và đa dạng của NETFramework, làm việc với XML, Web Service, truy cập cơ sở dữ liệu quaADO.NET, …
• ASPX và ASP có thể cùng hoạt động trong 1 ứng dụng
Trang 7• ASP.NET sử dụng phong cách lập trình mới: Code behide Tách coderiêng, giao diện riêng dễ đọc, dễ quản lý và bảo trì
• Kiến trúc lập trình giống ứng dụng trên Windows
• Hỗ trợ quản lý trạng thái của các Điều khiển(Control)
• Tự động phát sinh mã HTML cho các Server control tơng ứng với từngloại trình duyệt(Browser)
Để hiểu rõ hơn về cấu trúc của ASP.NET ta phải tìm hiểu thêm 1 số thànhphần mang tính chất nền tảng để có thể xây dựng và phát triển ứng dụng Webvới ASP.NET
1.3 Tìm hiểu về NET Flatform
.NET Flatform bao gồm NET Framework và những công cụ đợc dùng đểxây dựng, phát triển ứng dụng và dịch vụ ASP.NET
Hình 2 : Cấu trúc NET Flatform
Những sản phẩm công nghệ NET của Microsoft bao gồm: MSN.NET,Office.NET, Visual Studio.NET và Windows Server 2003 đợc biết đến với têngọi Windows NET Server
Visual Studio NET là bộ phần mềm đợc dùng để xây dựng và phát triểncác ứng dụng bao gồm các ngôn ngữ lập trình: C++.NET, Visual Basic.NET,
Trang 8ASP.NET, C# và J# Tất cả các ngôn ngữ này đợc xây dựng dựa trên nền.NET Framework, vì thế cú pháp cơ bản của những ngôn ngữ này tơng tựnhau.
1.4 Tìm hiểu về NET Framework
Hình 3 : Cấu trúc NET Framework
1.4.1 Bộ th viện các lớp đối tợng
Framework chính là một tập hợp hay th viện các lớp đối tợng hỗ trợ ngờilập trình khi xây dựng ứng dụng Có thể một số ngời trong chúng ta đã nghequa về MFC và JFC Microsoft Foundation Class là bộ th viện mà lập trìnhviên Visual C++ sử dụng trong khi Java Foundation Class là bộ th viện dànhcho các lập trình viên Java Giờ đây, có thể coi NET Framework là bộ th việndành cho các lập trình viên NET
Với hơn 5000 lớp đối tợng để gọi thực hiện đủ các loại dịch vụ từ hệ điềuhành, chúng ta có thể bắt đầu xây dựng ứng dụng bằng Notepad.exe Nhiềungời lầm tởng rằng các môi trờng phát triển phần mềm nh Visual Studio 98hay Visual Studio.NET là tất cả những gì cần để viết chơng trình Thực ra,chúng là những phần mềm dùng làm "vỏ bọc" bên ngoài Với chúng, chúng ta
sẽ viết đợc các đoạn lệnh đủ các màu xanh, đỏ; lỗi cú pháp báo ngay khi đang
gõ lệnh; thuộc tính của các đối tợng đợc đặt ngay trên cửa sổ properties, giaodiện đợc thiết kế theo phong cách trực quan… Nh vậy, chúng ta có thể hìnhdung đợc tầm quan trọng của NET Framework
Trang 9Nếu không có cái cốt lõi NET Framework, Visual Studio.NET cũng chỉ
là cái vỏ bọc! Nhng nếu không có Visual Studio.NET, công việc của lập trìnhviên NET cũng sẽ thật là khó khăn
1.4.2 Th viện các lớp cơ sở (Base class library)
Đây là th viện các lớp cơ bản nhất, đợc dùng trong khi lập trình hay bảnthân những ngời xây dựng NET Framework cũng phải dùng nó để xây dựngcác lớp cao hơn Ví dụ các lớp trong th viện này là String, Integer, Exception,
…
1.4.3 ADO.NET và XML
Bộ th viện này gồm các lớp dùng để xử lý dữ liệu ADO.NET thay thếADO để trong việc thao tác với các dữ liệu thông thờng Các lớp đối tợngXML đợc cung cấp để bạn xử lý các dữ liệu theo định dạng mới: XML Các ví
dụ cho bộ th viện này là SqlDataAdapter, SqlCommand, DataSet, XMLReader,XMLWriter,…
1.4.4 Môi trờng Window form
Bộ th viện về Window form gồm các lớp đối tợng dành cho việc xây dựngcác ứng dụng Windows based Việc xây dựng ứng dụng loại này vẫn đợc hỗtrợ tốt từ trớc tới nay bởi các công cụ và ngôn ngữ lập trình của Microsoft Giờ
đây, ứng dụng chỉ chạy trên Windows sẽ có thể làm việc với ứng dụng Webdựa vào Web service Ví dụ về các lớp trong th viện này là: Form,UserControl,…
1.5 Phân nhóm các lớp đối tợng theo loại
Một khái niệm không đợc thể hiện trong hình vẽ trên nhng cần đề cập
đến là Namespace Đây là tên gọi một nhóm các lớp đối tợng phục vụ cho mộtmục đích nào đó Chẳng hạn, các lớp đối tợng xử lý dữ liệu sẽ đặt trong một
Trang 10namespace tên là Data Các lớp đối tợng dành cho việc hay hiển thị chữ đặttrong namespace tên là Drawing Một namespace có thể là con của mộtnamespace lớn hơn Namespace lớn nhất trong NET Framework là System.Lợi điểm của namespace là phân nhóm các lớp đối tợng, giúp ngời dùng
dễ nhận biết và sử dụng Ngoài ra, namespace tránh việc các lớp đối tợng cótên trùng với nhau không sử dụng đợc .NET Framework cho phép chúng tatạo ra các lớp đối tợng và các namespace của riêng mình Với hơn 5000 tên cósẵn, việc đặt trùng tên lớp của mình với một lớp đối tợng đã có là điều khótránh khỏi Namespace cho phép việc này xảy ra bằng cách sử dụng một tên
đầy đủ để nói đến một lớp đối tợng Ví dụ, nếu muốn dùng lớp WebControls,chúng ta có thể dùng tên tắt của nó là WebControls hay tên đầy đủ làSystem.Web.UI.WebControls
Đặc điểm của bộ th viện các đối tợng NET Framework là sự trải rộng để
hỗ trợ tất cả các ngôn ngữ lập trình NET nh chúng ta thấy ở hình vẽ trên Điềunày sẽ giúp những ngời mới bắt đầu ít bận tâm hơn trong việc lựa chọn ngônngữ lập trình cho mình vì tất cả các ngôn ngữ đều mạnh ngang nhau Cũngbằng cách sử dụng các lớp đối tợng để xây dựng ứng dụng, NET Frameworkbuộc ngời lập trình phải sử dụng kỹ thuật lập trình hớng đối tợng
Trang 111.7.1 Ph©n lo¹i tËp tin trong ASP.NET
Trang 121.7.2 Quy trình xử lý tập tin ASPX
Khi Web server nhận đợc yêu cầu từ phía client, nó sẽ tìm kiếm tập tin
đ-ợc yêu cầu thông qua chuỗi URL đđ-ợc gửi về, sau đó, tiến hành xử lý theo sơ
đồ sau:
Hỡnh 6 : Quỏ trỡnh xử lý tập tin ASPX
1.7.3 Các sự kiện của trang ASP.NET
Đõy là thành phần chớnh của giao diện, là nơi chứa cỏc điều khiển, được
sử dụng để thể hiện nội dung trang web đến người dựng
Trang 13Hình 7 : Chuỗi sự kiện của đối tợng Pages.
a. Page_Init() : Sự kiện xảy ra đầu tiên khi trang Web đợc yêu cầu
b. Page_Load(): Sự kiện này là nơi mà bạn sẽ đặt phần lớn các xử lý, giá trịkhởi động ban đầu cho trang Web Sự kiện này luôn xảy ra mỗi khi trang Web
xự kiện sau cùng, xảy ra sau tất cả những sự kiện khác
1.7.4 Các đối tợng của ASP.NET
ASP.NET cung cấp cho ngời dùng các đối tợng sẵn có :
Trang 14Đîc sö dông để nhận thông tin từ tr×nh duyệt của người dùng göi về choWeb Server.
c Đối tượng Application
Đối tượng Application được sử dụng để quản lý tất cả cỏc thụng tin củamột ứng dụng web Thụng tin được lưu trữ trong đối tượng Application cóthể được xử lý trong bất kỳ trang aspx nào trong suốt chu kỳ sống của ứngdụng
T¹i một thời điểm có thể có nhiều người cùng lúc truy cập và thay đổigiá trị của các thông tin được lưu trong đối tượng Application, chúng ta nên
sử dụng bộ lệnh Lock và UnLock ngay trước và sau khi cập nhật giá trị củabiến Application
Biến Application có thể được sử dụng ở bất kỳ trang nào và được duytrỡ trong suốt chu kỳ sống của ứng dụng
d Đối tượng Session
Đối tượng Session được dùng để lưu trữ thông tin của người dùng trongứng dụng Thông tin được lưu trữ trong Session là của một người dùng trongmột phiên làm việc cụ thể Web Server sẽ tự động tạo một đối tượng Sessioncho mỗi người dùng mới kết nối vào ứng dụng và tự động hủy chúng nếungười dùng kh«ng làm việc với ứng dụng nữa
Tuy nhiên, không giống như đối tượng Application, đối tượng Sessionkhông thể chia sẻ thông tin giữa những lần làm việc của người dùng, nó chỉ
có thể cung cấp, trao đổi thông tin cho các trang trong lần làm việc tươngứng
e Web.config
Trang 15Cấu trúc tập tin :Web.config là một tập tin văn bản đợc sử dụng để lu trữthông tin cấu hình của một ứng dụng, đợc tự động tạo ra khi chúng ta tạo mớiứng dụng web Tập tin web.config đợc viết theo định dạng XML
Web.config đợc tạo kế thừa các giá trị từ tập tin Windows\Microsoft.NET\Framework\[Framework Version]\CONFIG\machine.config
1.8 Giới thiệu về Ajax
Ajax, viết tắt từ Asynchronous JavaScript and XML (JavaScript và XMLkhông đồng bộ), là bộ công cụ cho phép tăng tốc độ ứng dụng web bằng cáchcắt nhỏ dữ liệu và chỉ hiển thị những gì cần thiết, thay vì tải đi tải lại toàn bộtrang web AJAX không phải một công nghệ đơn lẻ mà là sự kết hợp mộtnhóm công nghệ với nhau Trong đó, HTML và CSS đóng vai hiển thị dữ liệu,mô hình DOM trình bày thông tin động, đối tợng XMLHttpRequest trao đổidữ liệu không đồng bộ với máy chủ web, còn XML là định dạng chủ yếu chodữ liệu truyền
ở đây ta không đi sâu tìm hiểu công nghệ của Ajax.Ta sẽ đi trực tiếp vàotìm hiểu cách sử dụng trực tiếp AjaxControlToolkit.Đề có thể tải công cụ hỗtrợ này chúng ta có thể vào trực tiếp trang chủ để tải
Trang 16H×nh 9 : C¸c bíc add AjaxControlToolkit
H×nh 10 : C¸c bíc add AjaxControlToolkit(tiÕp theo)
Trang 17Sau đó ta chỉ việc chọn đờng dẫn đến tệp tin AjaxControlToolkit.Dll mớitải về.
Sau khi add xong tự động chơng trình sẽ tạo cho chúng ta th mục Bin vớicác nội dung có sẵn.Nh vậy chúng ta đã có thể sử dụng các tính năng mở rộngcủa Ajax
Hình 11: Th mục đợc tao sau khi add AjaxControlToolkit
1.9 Sử dụng ASP.Net Configuration.
Đây là một chức năng cao cấp của ASP.Net đợc xây dựng và phát triểnbởi MicroSoft và đợc tích hợp sẵn trong bộ Visual Studio 2008
ASP.Net Configuration cung cấp cho chúng ta các chức năng về quản trị
và bảo mật và phần quyền ngời dùng 1 cách rất có hiệu quả
Khi sử dụng ASP.Net Configuration thì chơng trình sẽ mặc định tạo racho chúng ta 1 cơ sở dữ liệu mẫu với các bảng chuẩn với đầy đủ các tính năng
nh quản lý ngời dùng quản lý các sự kiện sảy ra trong ứng dụng của chúng tathông qua các bản ghi(Record) lu các thông tin sự kiên(Event)
Trang 18Cách sử dụng nh sau : Chọn chức năng ASP.Net Configuration ở bên cửa
sổ Solution Explorer
Hình 12: Chọn chức năng ASP.Net Configuration
Sau đó ta sẽ đợc link đến 1 trang mặc định(Offline)
Trang 19Hình 13 : Trang cấu hình ASP.Net Configuration.
Với các chức năng :
• Security : quản lý ngời dùng, phân quyền sử dụng(roles) cho trangWeb
• Application Configuration : quản lý thiết lập các ứng dụng với trangweb
CHƯƠNG 2 : Công cụ điều khiển liên kết dữ liệu2.1 Hệ quản trị cơ sở dữ liệu SQL Server 2005
SQL Server 2005 là một hệ thống quản lý cơ sở dữ liệu (RelationalDatabase Management System (RDBMS) ) sử dụng Transact-SQL để trao đổi
dữ liệu giữa Client computer và SQL Server computer Một RDBMS bao gồmdatabases, database engine và các ứng dụng dùng để quản lý dữ liệu và các bộphận khác nhau trong RDBMS
SQL Server 2005 đợc tối u để có thể chạy trên môi trờng cơ sở dữ liệu rấtlớn (Very Large Database Environment) lên đến Tera-Byte và có thể phục vụcùng lúc cho hàng ngàn user SQL Server 2005có thể kết hợp "ăn ý" với các
Trang 20server khác nh Microsoft InterNET Information Server (IIS), E-CommerceServer, Proxy Server
2.2 Các thành phần quan trọng trong SQL Server 2005
SQL Server 2000 đợc cấu tạo bởi nhiều thành phần nh RelationalDatabase Engine, Analysis Service và English Query Các thành phần nàykhi phối hợp với nhau tạo thành một giải pháp hoàn chỉnh giúp cho việc lu trữ
và phân tích dữ liệu một cách dễ dàng
2.2.1 Cái lõi của SQL Server:
Đây là một phơng tiện có khả năng chứa data ở các quy mô khác nhau
d-ới dạng table và sự hỗ trợ tất cả các kiểu kết nối (data connection) thông dụngcủa Microsoft nh ActiveX Data Objects (ADO), OLE DB, and Open DatabaseConnectivity (ODBC) Ngoài ra nó còn có khả năng tự điều chỉnh (tune up) ví
dụ nh sử dụng thêm các tài nguyên (resource) của máy khi cần và trả lại tàinguyên cho hệ điều hành khi thoát ngời dùng ra ngoài
2.2.2 Bộ công cụ chuẩn ( SQL Server Tools)
Đây là bộ công cụ của ngời quản trị cơ sở dữ liệu (DBA )
• Enterprise Manager Đây là một công cụ cho ta thấy toàn cảnh hệ
thống cơ sở dữ liệu một cách rất trực quan Nó rất hữu ích đặc biệt cho ngờimới học và không thông thạo lắm về SQL
• Query Analyzer Đối với một DBA giỏi thì hầu nh chỉ cần công cụ
này là có thể quản lý cả một hệ thống DataBase mà không cần đến những thứkhác Đây là một môi trờng làm việc khá tốt vì có thể đánh bất kỳ câu lệnhSQL nào và chạy ngay lập tức đặc biệt là nó giúp gỡ lỗi (debug), thủ tục lu(Stored Procedure) dễ dàng
Trang 21• SQL Profiler Nó có khả năng "chụp" (capture) tất cả các sự kiện hay
hoạt động diễn ra trên một SQL
• Server và lu lại dới dạng text file rất hữu dụng trong việc kiểm soát hoạt
động của SQL Server
2.3 Điều khiển liên kết dữ liệu DataSet.
Trong chơng trình chúng ta sẽ đi sâu tìm hiểu hơn về DataSet.Một công
cụ làm việc với cơ sở dữ liệu rất hiệu quả DataSet nh cầu nối giữa VisualStudio với SQL Server 2005 trong việc liên kết và xử lý dữ liệu
Trong cơ sở dữ liệu khái niêm DataSet không có gì là xa lạ với những lậptrình viên NET Tuy nhiên việc sử dụng công cụ Dataset đợc hỗ trợ sẵn củaVisual Studio lại không phải có nhiều ngời biết
Dataset chính là các lớp đợc tạo ra bởi Công cụ(tool) của IDE VS, nó làcác lớp bao bọc(Wrap) lên DataBase giúp cho bạn thao tác với cơ sở dữ liệu dễdàng hơn và tránh khỏi các lỗi Run-time
Sau khi Generate ra DataSet, có thể quên đi “connection string”, viết câuquery, check dữ liệu, param mọi thứ đều nằm trong các lớp Generate củaDataSet
Sau khi Add thêm DataSource, Winzard sẽ tự sinh ra chuỗi kết dữ liệu
“connection string”, đó là chuỗi để khi dùng DataSet, nó sẽ kết nối vớiDataBase
Với DataSet này, khi dùng nó sẽ tự kết với với DataBase, tiếp theo, nếumuốn truy vấn dữ liệu đến từng table, chỉ cần Add thêm query trong DataSetnày, nó sẽ tạo ra các hàm cho lớp bao bọc
Sau đây là minh họa khi sử dụng chơng trình kết nối với Cơ sở dữ liệudùng DataSet
Trớc tiên cần gắn DataSource vào Project: mở tab DataSource và Addthêm mới vào nếu Project cha có DataSource
Trang 22Hình 14 : Chọn cơ sở dữ liệu cần kêt nối
Sau khi add thêm DataSource, Winzard sẽ Gen cho bạn luôn “Connectionstring”, đó là chuỗi để khi dùng DataSet, nó sẽ kết nối với DataBase.VớiDataset này, khi dùng nó sẽ tự kết với với DataBase, tiếp theo, nếu bạn muốntruy vấn dữ liệu đến từng table, bạn chỉ cần add thêm query trong DataSet này,
nó sẽ gen ra các hàm cho lớp bao bọc Ví dụ: giả sử ở đây muốn truy vấn lấythông tin từ bảng SANPHAM dựa vào Mã Sản phẩm thì sẽ làm nh sau:Double click vào file DataSet để mở DeSigner nó, mở Tabserver lên, bạnmuốn viết truy vấn cho bảng nào thì cứ kéo thả bảng đó vào vùng Designercủa DataSet:
Trang 23Hình 15 : Kéo thả các bảngBạn kéo thả table nào thì nó sẽ tạo ra adapter tơng ứng cho Table đó, rightclick vào adapter đó vào chọn Add query, tùy thao tác mà chọn câu Querythích hợp:
Hình 16 : Viết câu lệnh SQL thích hợp
Trang 24Sử dụng dataset:+ Sau khi bạn Designe nh trên, winzard sẽ tự sinh (General) ra
có lớp drap lên database: các adapter, các lớp drap lên table, các row chotable
+ Sử dụng thì bạn chỉ cần gọi các hàm của lớp đó: ví dụ lấy dữ liệu dựa vào
‘MaSP’
BanHangTableAdapters SANPHAMTableAdapter SPAdapter = new
BanHangTableAdapters SANPHAMTableAdapter ();
BanHang SANPHAMDataTable bangSP = PAdapter.GetDataBy();
// gỏn dữ liệu lấy ra vào điều khiển liờn kết dữ liệu
Trang 25BanHang.BanHangdataDataSet.InformationRow, nó là lớp drap lên database
để bạn có thể truy xuất rất đơn giản Ví dụ InformationRow thì nó có luônthuộc tính BankName kiểu string để bạn lấy dữ liệu:
String BankName = row.BankName;
Trang 26Chơng 3 : Tìm hiểu bài toán 3.1 Khảo sát
3.1.1 Giới thiệu đơn vị khảo sát:
• Tên công ty: Công ty cổ phần thơng mại dịch vụ D&T Computer
• Địa chỉ: 352 Nguyễn Trãi – Phú Sơn- Tp Thanh Hóa- Thanh Hóa
Trang 27• Bộ phận kho: nhập xuất hàng hóa cho bộ phận bán hàng.
• Bộ phận bán hàng: gồm những nhân viên đứng tại bàn t vấn mua hàng,từng quầy trng bày sản phẩm, và các nhân viên thu ngân và giao hàng chokhách
• Bộ phận kỹ thuật: tìm hiểu thông số các sản phẩm, hỗ trợ kỹ thuật vàbảo hành sản phẩm cho khách hàng
• Bộ phận kế toán: thu thập các hóa đơn bán, nhận hàng để tiến hành báocáo tổng kết tình hình tài chính của công ty
• Bộ phận bảo vệ: góp phần giữ gìn trật tự an ninh cho cửa hàng
3.1.3 Hiện trạng nghiệp vụ:
Công ty hiện tại cũng đã có sử dụng phần mềm quản lý để hỗ trợ bánhàng tại chỗ và hỗ trợ một số hoạt động nghiệp vụ của công ty
Khi khách hàng đến cửa hàng mua sản phẩm, họ sẽ xem trong danh mụcsản phẩm những hàng hóa mà họ a thích Lúc này sẽ có nhân viên ra t vấn cho
họ mua đợc những mặt hàng hợp với ý muốn của họ
Sau khi khách hàng đã ng ý một hay nhiều mặt hàng nào đó, nhân viên sẽghi từng món hàng vào giấy, và bảo khách hàng mang giấy này ra quầy thungân
ở quầy thu ngân, khách hàng sẽ trả tiền cho từng mặt hàng mình mua, vànhận đợc phiếu xuất hàng từ quầy thu ngân
Sau đó, khách hàng mang phiếu xuất hàng đến quầy giao hàng Quầy giaohàng mới bắt đầu lấy hàng từ kho và dán tem bảo hành cho khách hàng
Cuối kỳ bộ phận kế toán sẽ tiến hành tổng kết các hóa đơn thu chi để lậpbáo cáo định kỳ( bằng cả thống kê qua phần mềm và cả tổng hợp làm bằng sổsách) gửi cho ban giám đốc biết tình hình tài chính
Trang 283.2 Xác định yêu cầu
3.2.1 Yêu cầu chức năng nhiệm vụ :
Bảng xác định các chức năng nhiệm vụ chính của hệ thống :
STT Công việc Loại CV Quy định liên quan Ghi chú
1 Lu danh mục loại sản
Thêm, sửa, xoá
2 Lu thông tin sản phẩm Lu trữ Quy định lu SP Thêm, sửa,
xoá
3 Lu danh mục nhóm
Quy định lu nhóm ngời dùng
Thêm, sửa, xoá
4 Lu thông tin ngời
Quy định lu TT ngời dùng
Thêm, sửa, xoá
5 Lu thông tin nhà sản
Quy định lu nhà sản xuất
Thêm, sửa, xoá
6 Lu thông tin đơn đặt
Quy định lu TT đơn đặt hàng
Thêm, sửa, xoá
7 Lu chi tiết đơn đặt
Thêm, sửa, xoá
8 Danh mục thể loại bài
Thêm, sửa, xoá
9 Lu thông tin bài viết Lu trữ Quy định lu TTBV Thêm, sửa,
xoá
10 Thay đổi, phục hồi
mật khẩu ngời dùng Lu trữ Quy định MK
11 Hiển thị Menu loại
sản phẩm Kết xuất Quy định HT Loai SP
mới nhất Kết xuất Quy định HT SP mới
15 Hiển thị nhóm bài viết Kết xuất Quy định HT nhóm BV
Trang 2916 Hiển thị thông tin chi
tiết ngời dùng Kết xuất
Quy định HT chi tiết ngời dùng
17 Hiển thị thông tin các
hoá đơn đặt hàng Kết xuất
Quy định HT thông tin các hóa đơn
19 Hiển thị bảng báo giá Kết xuất Quy định HT báo giá
20 Tìm kiếm sản phẩm Tra cứu Quy định tìm kiếm SP
21 Lọc danh sách ngời
dung theo nhóm Tra cứu
Quy định Lọc DS ngời dùng
22 Hiển thị danh sách
Quy định HT DS ngời dùng
23 Tính năng giỏ hàng Lu trữ Quy định giỏ hàng
24 Hiển thị thông tin giỏ
hàng cho khách hàng Kết xuất
Quy định HT thông tin giỏ hàng
- Hệ quản trị CSDL: SQL SERVER 2005
Trang 30CHƯƠNG 4 : Phân tích thiết kế hệ thống4.1 Phân tích thiết kế hệ thống ở mức quan niệm
4.1.1 Sơ đồ phân cấp chức năng