Đề tài Xây dựng hệ thống quản lý bán hàng cho công ty TNHH C&T

Qua thời gian hoạt động, Công ty đã tạo được uy tín và sự tin cậy của nhiều khách hàng tại TP. Sơn Tây. Điều này đã giúp cho Công ty ngày càng lớn mạnh hơn trong các lĩnh vực hoạt động. C&T có một đội ngũ nhân viên hùng hậu và có trình độ chuyên môn rất cao, đủ khả năng để có thể đáp ứng mọi yêu cầu dù là khắt khe nhất của quí khách hàng. Không những thế, đội ngũ nhân viên của C&T còn là những người đầy lòng nhiệt tình và có thái độ rất niềm nở trong cung cách phục vụ khách hàng.

doc74 trang | Chia sẻ: DUng Lona | Lượt xem: 1176 | Lượt tải: 0download
Bạn đang xem trước 20 trang tài liệu Đề tài Xây dựng hệ thống quản lý bán hàng cho công ty TNHH C&T, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
sual Basic cho phép ta thay đổI kích cỡ và di chuyển vị trí của Form cho đến bất kỳ nơi nào trên màn hình khi chạy một đề án, bằng cách thay đổI các thuộc tính của nó trong cửa sổ thuộc tính đối tượng ( Properties Windows ). Thực tế, một trong những tính năng thiết yếu của Visual Basic đó là khả năng tiến hành các thay đổi để đáp ứng các sự kiện của người dùng. Tools Box ( Hộp công cụ ) Bản thân hộp công cụ này chỉ chứa các biểu tượng biểu thị cho các điều khiển mà ta có thể bổ sung vào biểu mẫu là bảng chứa các đốI tượng được định nghĩa sẵn của Visual Basic. Các đốI tượng này được sử dụng trong Form để tạo thành giao diện cho các chương trình ứng dụng của Visual Basic. Các đốI tượng trong thanh công cụ sau đây là công dụng nhất: Properties Windows (Cửa sổ thuộc tính) Properties Windows là nơi chứa danh sách các thuộc tính của đốI tượng cụ thể. Các thuộc tính này có thể thay đổI được để phù hợp vớI yêu cầu về giao diện của các chương trình ứng dụng. Project Explorer Do các ứng dụng của Visual Basic thường dùng chung mã hoặc Form đã tuỳ biến trước đó, nên Visual Basic tổ chức các ứng dụng thành các Project. MỗI Project có thể có nhiều Form sẽ được lưu trữ chung vớI Form đó trong các tập tin riêng biệt. Mã lập trình chung 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, gọI là các Module mã Project Explorer nếu tất cả các biểu mẫu tuỳ biến được và các Module chung, tạo nên ứng dụng của ta. II.3.3 Giới thiệu hệ quản trị CSDL Microsoft Access Access là gì? Access là một hệ thống quản lý cơ sở dữ liệu ( CSDL ). Cũng giống như các hệ CSDL khác, Access lưu trữ và tìm kiếm dữ liệu, biểu diễn thông tin và tự động làm nhiều nhiệm vụ khác. Việc sử dụng Access, chúng ta có thể phát triển cho các ứng dụng một cách nhanh chóng. Access cũng là một ứng dụng mạnh trong môi trường Windows. Ngày từ đầu Access cũng là một sản phẩm của CSDL trong Microsoft Windows. Bởi vì cả Window và Access đều xuất phát từ Microsoft nên cả hai sản phẩm này làm việc rất tốt cùng nhau, Access chạy trên nền Windows cũng thể hiện được trong Access. Bạn có thể cắt, dán dữ liệu từ bất cứ ứng dụng nào trong môi trường Windows nào cho Access và ngược lại. Bạn có thể liên kết các đốI tượng nào đó ví dụ như: OLE trong Excel, Paintbrush và Word for Windows vào môi trường Access. Dù sao Access là một hệ quản trị dữ liệu rất tốt trong cơ sở dữ liệu, đồng thời nó có thể giúp chúng ta truy nhập tới tất cả các dạng dữ liệu. Nó có thể làm việc vớI nhiều hơn một mảng (Table) tại cùng một thời điểm để giảm bớt sự rắc rối của dữ liệu và làm cho công việc dễ dàng thực hiện hơn. Chúng có thể liên kết một bảng trong Paradox và một bảng trong dbase, có thể lấy kết quả của việc liên kết đó và kết nốI dữ liệu này vớI những bảng làm việc trong Excel một cách nhanh chóng và dễ dàng. Access cung cấp những công cụ gì? Access cung cấp những thông tin quản lý CSDL quan hệ thực sự, hoàn thiện vớI những định nghĩa khoá (Primary key) và khoá ngoại (Foreign key), các loại luật quan hệ (một - một, một-nhiều), các mức kiểm tra mức toàn vẹn của dữ liệu cũng như định dạng và những định nghĩa mặc định cho môi trường (Filed) trong một bảng. Bằng việc thực hiện sự toàn vẹn dữ liệu ở mức database engine, Access ngăn chặn được sự cập nhật và xoá thông tin không phù hợp. Access cung cấp tất cả các kiểu dữ liệu cần thiết cho trường, bao gồm văn bản (text), kiểu số (number), kiểu tiền tệ (currency), kiểu ngày/tháng (data/time), kiểu meno, kiểu có/không (yes/no) và các đốI tượng OLE.Nó cũng hỗ trợ cho các giá trị rỗng ( Null) khi các giá trị này bị bỏ qua. Việc xử lý quan hệ trong Access đáp ứng được những đòi hỏi với kiến trúc mềm dẻo của nó. Nó có thể sử dụng như một hệ quản lý CSDL độc lập, hoặc theo mô hình Client/ Server. Thông qua ODBC (Open Database Connectivity), chúng ta có thể kết nối với nhiều dạng dữ liệu bên ngoài, ví dụ như: Oracle, Sybase, thậm chí với cả những CSDL trên máy tính lớn như DB/2. Với Access chúng ta cũng có thể phân quyền cho ngườI sử dụng và cho các nhóm trong việc xem và thay đổi rất nhiều các kiểu đốI tượng dữ liệu. Tóm lại: Microsoft Access là một hệ quản trị cơ sở dữ liệu tương tác vớI ngườI sử dụng chạy trên môi trường Windows, nó tăng thêm sức mạnh trong công tác tổ chức, tìm kiếm và tổ chức thông tin. Các quy tắc kiểm tra dữ liệu, giá trị mặc định, khuôn nhập dữ liệu của Microsoft Access hoàn toàn đáp ứng yêu cầu. Khả năng kết nối và công cụ truy vấn mạnh của nó giúp ta tìm kiếm thông tin một cách nhanh chóng. Nó cho phép ta thiết kế được các biểu mẫu và báo cáo phức tạp đáp ứng các yêu cầu đề ra. Đối với những yêu cầu quản lý dữ liệu ở mức độ chuyên môn cao. II.3.4 Giới thiệu công cụ lập báo cáo Crystal Reports Crystal Reports là một trong những phần mềm hàng đầu để tạo ra các report tương tác, nó được tích hợp rộng rãi vào ứng dụng Windows và Web. Với hơn 4 triệu licenses được bán, nó dẫn đầu trong các cách tạo ra Report cho Windows. Crystal Report đã được sử dụng trong VS từ 1993 nhưng với sự ra mắt của VS. Net 2002 thì phiên bản mới Crystal Reports .NET ra đời và được tích hợp vào VS. Net. Từ VS.Net 2003 trở đi thì Crystal Report đã được tích hợp vào trong VS. Net và là Crystal Report Net tuy nhiên phần tích hợp có 1 số tính năng bị cắt giảm nhưng không ảnh hưởng nhiều lắm đến những nhu cầu bình thường. Một số khái niệm nền tảng về Crystal Report. Report Section Một Crystal Report thì bao gồm nhiều section khác nhau. Mỗi section là tập hợp các thuộc tính được thể hiện như các hành vi. Ví dụ: page header sẽ xuất hiện ở trên đầu của mỗi trang. Để xem thuộc tính của một section ta chọn Report--> Section Expert. Bạn có thể chọn Suppress nếu ko muốn một section nào đó xuất hiện. Các section chuẩn Report Header : Xuất hiện trên cùng của trang đầu tiên của report và thường được bị ẩn đi. Nó có thể được dùng để chỉ ra điểm bắt đầu của 1 report mới hay dùng để bao bọc. Report Footer : Xuất hiện ở cuối của trang cuối cùng của report, mặc định được hiển thị, có thể dùng để tóm tắt cho report (Số record, ngày...) Page Header : Xuất hiện trên cùng của mỗi trang và dùng để hiển thị column header, tựa của report, và đếm số trang, giữa những item khác. Page Footer : Xuất hiện ở cuối mỗi trang và dùng để hiển thị số trang, ngày in, thời gian ... Group Header : Xuất hiện ở đầu mỗi nhóm và dùng để hiển thị tên nhóm. Group Footer : Xuất hiện ở cuối của 1 nhóm record và dùng để hiển thị tên nhóm, subtotal và tóm tắt Details Section : Có một cho mỗi record trong report của bạn. Chúng thường được dùng để hiển thị thông tin về column và có thể mở rộng để bao đóng một số section của field để tạo form. Field Objects: Chứa đựng đa số nội dung của report. Từ những field hiển thị reocord, đến text object mô tả mỗi column hay summary field cung cấp tổng số, bất kỳ report nào đều là một tập hợp của Field object Có 8 kiểu khác nhau của field objects được add vào report. Database Fields Database field có thể được chèn vào từ bất kỳ bảng nào và nó sẽ xuất hiện trong report. Field này chính là nơi mà dữ liệu sẽ hiển thị Text Objects Được sử dụng để nhập text như column heading và comments. Khi bạn đã nhập xong thì bạn click vào bất kỳ nơi nào bên ngoài để thoát khỏi edit mode. Special Fields Là những field được xác định trước với những chức năng xác định. Print Date Ngày tháng mà report được in Print Time Thời gian mà report được in Modification Date : Ngày tháng mà report được sửa lần cuối Modification Time : Thời gian mà report được sửa lần cuối Data Date : Date mà data được đọc từ database Data Time : Time mà data được đọc từ database Record Number : Số record tuần tự được gán vào cho tất cả record trả về cho report Page Number : Số trang Group Number : Số tuần từ đuóc gán vào tất cả các nhóm Total Page Count : Tổng số trang Report Title : Tựa của Report, được save lại trong phần tóm tắt của file report Report Comments : Comment được nhập vào thông tin summary Record Selection Formula : Record Selection Formula được dùng cho report Group Selection Formula : The group selection formula được dùng cho report File Path and Name : của report file File Author : Tác giả của report từ report file’s Summary Information File Creation Date : The date the report file được tạo ra Page N of M : N là trang hiện tại và M là tổng số trang. Summary Fields Summary fields thường được dùng với nhóm trong report. Subtotal và summary fields thì tương tự nhau nhưng subtotal đặc trưng như là 1 phép cộng sum, ngược lại summary field có thể là sum, average hay độ lệch tiêu chuẩn Formula Fields Được bao bọc trong cặp ngoặc nhọn {} và đứng trước nó là ký tự @ {@SalesTax} + {@InvoiceTotal} Formula fields được tạo ra bằng cách sử dụng Formula editor tích hợp. Parameter Fields Được sử dụng để cho user nhập thông tin vào khi report run. Parameter có thể được sử dụng theo 1 số cách khác nhau, từ dạng đơn giản (như nhập tên của một user để hiển thị lên report ) đến chọn lựa record (lọc nội dung). Parameter field được thiết kế với 1 cặp ngoặc nhọn {} và đứng trược tên nó là ? If {?EnterCountry} = “USA” then “North America” Có 7 kiểu khác nhau : Boolean, Currency, Date, Date Time, Number, String, Time. SQL Expression Fields Để làm hầu hết mọi công việc trên Database server của bạn, ta dùng SQL Expression Fields thay vì Crystal Formulas. Việc sử dụng SQL Expression sẽ đảm bảo tính toán sẽ được thực hiện trên Server database của nó, và cho bạn truy cập các function của SQL. Unbound Fields Sử dụng field này , bạn sẽ tạo ra được một report chung và có thể lập trình thiét lập nội dung của nó lúc runtime. Có 7 kiểu khác nhau : Boolean, Currency, Date, Date Time, Number, String, Time. Cấu hình cần thiết để cài đặt hệ thống thông tin “Quản Lý Bán Hàng” sẽ được thiết kế : Máy tính điện tử đã được cài đặt Microsoft Windows NT Workstation 4.0 trở lên và cài đặt Microsoft Access 2003. Vi xử lý 486 DX trở lên Có ổ đĩa CD-ROM Ram 64Mb (đề nghị) Thiết bị ngoại vi như chuột, bàn phím. CHƯƠNG III : PHÂN TÍCH HỆ THỐNG * III. PHÂN TÍCH HỆ THỐNG VỀ XỬ LÝ. Sự phân tích hệ thống về mặt xử lý nhằm mục đích lập một mô hình xử lý của hệ thống, để trả lời cầu hỏi “Hệ thống làm gì?”, tức là đi sâu vào bản chất, đi sâu vào chi tiết của hệ thống về mặt xử lý thông tin, và chỉ diễn ta ở mức độ logic, tức là trả lời câu hỏi “Làm gì?” mà gạt bỏ câu hỏi “Làm như thế nào?”, chỉ diễn tả mục đích, bản chất của quá trình xử lý mà bỏ qua các yếu tố về thực hiện, về cài đặt (là các yếu tố về vật lý). Giai đoạn này gọi là giai đoạn thiết kế logic, phải được thực hiện một cách hoàn chỉnh để chuẩn bị cho giai đoạn thiết kế vật lý. Đường lối thực hiện: đề tài này chọn hướng phân tích “Top-Down” là phân tích từ trên xuống, từ đại thể đến chi tiết. Cách làm: xây dựng hai loại biểu đồ là biểu đồ phân cấp chức năng và biểu đồ luồng dữ liệu. III.1 XÂY DỰNG BIỂU ĐỒ PHÂN CẤP CHỨC NĂNG (BPC) Biểu đồ phân cấp chức năng BPC (Business Functional Diagram) diễn tả sự phân rã dần dần các chức năng của hệ thống từ đại thể đến chi tiết. Mỗi chức năng có thể gồm nhiều chức năng con, và mỗi nút trong biểu đồ diễn tả một chức năng con. Quan hệ duy nhất giữa các chức năng được diễn tả bởi các cung nối liền các nút là quan hệ bao hàm. Như vậy BPC tạo thành một cấu trúc cây chức năng. Việc phân cấp sơ đồ chức năng kinh doanh cho phép phân tích viên hệ thống có thể đi từ tổng hợp đến cụ thể, từ tổng quát đến chi tiết. Trên cơ sở đó, phân tích viên hệ thống có thể tiến hành theo một trình tự khoa học, có sự phân công mỗi nhóm phụ trách phân tích một mức nào đó. Điều này tạo ra nhiệm vụ cụ thể của mỗi nhóm và làm cho quy trình phân tích không trùng lặp và tránh nhầm lẫn. Xây dựng sơ đồ là quá trình phân rã, từ một chức năng lớn (ở cấp cao) được phân chia thành những phần thích hợp, nhỏ hơn (ở cấp thấp hơn) theo sơ đồ cấu trúc hình cây. Thành phần của biểu đồ gồm : + Các chức năng : được ký hiệu bằng hình chữ nhật có đặt tên (nhãn) Định nghĩa : Chức năng là công việc mà tổ chức cần làm và được phân theo nhiều mức từ tổng hợp đến chi tiết. Tên gọi : Động từ + Bổ ngữ (Động từ nên ở dạng thức mệnh lệnh). Chú ý : + Tên chức năng phải phản ánh được các chức năng của thế giới thực chứ không chỉ dùng cho hệ thông tin . + Tên của chức năng là một câu ngắn giải thích đủ nghĩa của chức năng , sử dụng thuật ngữ nghiệp vụ . + Kết nối : kết nối giữa các chức năng. Định nghĩa : Mỗi chức năng được phân rã thành các chức năng con, các chức năng con có quan hệ phân cấp với chức năng cha . Biểu diễn : hoặc * Mục đích của biểu đồ phân cấp chức năng (BPC) là: - Xác định phạm vi mà hệ thống cần phân tích. - Tiếp cận logic tới hệ thống mà trong đó các chức năng được làm sáng tỏ để sử dụng cho các mô hình sau này. * Đặc điểm của biểu đồ phân cấp chức năng (BPC) là: - Có tính chất “tĩnh”, bởi chúng chỉ cho thấy các chức năng mà không cho thấy trình tự xử lý. Các chức năng không bị lặp lại và không dư thừa. - Thiếu vắng sự trao đổi thông tin giữa các chức năng, không có mô tả dữ liệu hoặc mô tả các thuộc tính. - Trong biểu đồ, các nút có nhãn là tên các chức năng. - Đơn giản, dễ thành lập (BPC được sử dụng trong giai đoạn đầu của thiết kế ). Nó trình bày hệ thống phải làm gì hơn là hệ thống làm như thế nào ? - Rất gần gũi với sơ đồ tổ chức nhưng không đồng nhất với sơ đồ tổ chức. III.1.1 Biểu đồ phân cấp chức năng (BPC) Qua khảo sát sơ bộ và xác định mục tiêu ở chương II : Khảo sát hệ thống , ta xây dựng được sơ đồ phân cấp chức năng của hệ thống “Quản lý bán hàng ” : Hình III.1.1.1 : biểu đồ phân cấp chức năng của hệ thống “Quản lý bán hàng”. III.1.2 Mô tả các chức năng Chức năng “Quản Lý Bán Hàng” là chức năng chính, trung nhất của hệ thống cần phân tích và xây dựng. Chức năng này được phân cấp thành 3 chức năng con nhỏ hơn là : Bán Hàng, Thanh Toán và Thống Kê. Chức năng “Bán Hàng” là chức năng được xây dựng để quản lý việc bán hàng cho đối tác của cơ sở kinh doanh. Chức năng này được phân rã thành các chức năng con nhỏ hơn gồm: + (1.1) Nhận đơn đặt hàng : Sau khi khách hàng tham khảo và có nhu cầu mua bán thiết bị, nhân viên kinh doanh sẽ tiến hành việc tiếp nhận yêu cầu của khách . + (1.2) Lập hóa đơn bán hàng : Sau khi đối chiếu với bảng báo giá nếu khách yêu cầu mua thiết bị thì công ty sẽ đưa ra phiếu mua thiết bị cho khách và khách hàng sẽ ghi những thiết bị cần mua vào đó và gửi tới bộ phận bán hàng của công ty. + (1.3) Xuất bán hàng hóa : Nhân viên thực hiện các thủ tục xuất bán hàng hóa cho khách. Chức năng “Thanh toán” là chức năng được xây dựng để quản lý việc thanh toán các chi phi với đối tác của cơ sở kinh doanh. Chức năng này được phân rã thành các chức năng con nhỏ hơn gồm: + (2.1) Cân đối hóa đơn : Nhân viên thực hiện các thao tác nghiệp vụ để cân đối hóa đơn như cập nhật thông tin, tính toán chi phí ... + (2.2) Thống kê công nợ : Công ty sẽ kiểm soát công nợ của khách hàng và đưa ra yêu cầu việc thanh toán tới khách hàng kịp thời. + (2.3) Viết phiếu thu tiền : Công ty đưa ra giá của từng thiết bị mà khách đã mua và tổng số tiền mà khách phải trả. Sau khi khách hàng đã thanh toán tiền thì công ty sẽ đưa biên lai thanh toán tiền đó cho khách. + (2.4) Thanh toán : Khách hàng thực hiện chi trả bằng tiền mặt cho các hóa đơn mua hàng. Chức năng “Thống Kê” là chức năng được xây dựng để quản lý báo cáo doanh thu của cơ sở kinh doanh theo thời điểm. Chức năng này được phân rã thành các chức năng con nhỏ hơn gồm: + (3.1) Thống kê hàng hóa : Báo cáo số lượng, khả năng tiêu thụ của từng mặt hàng cụ thể. + (3.2) Thống kê doanh thu tháng : Báo cáo doanh thu và tiền thuế trên hóa đơnn bán hàng theo từng tháng. + (3.3) Thống kê doanh thu theo nhân viên : Báo cáo doanh thu bán hàng theo từng nhân viên trong tháng. III.2 XÂY DỰNG BIỂU ĐỒ LUỒNG DỮ LIỆU (BLD) Biểu đồ luồng dữ liệu BLD (Data Flow Diagram = DFD) nhằm diễn tả (ở mức logic) tập hợp các chức năng của hệ thống trong các mối quan hệ trước sau trong tiến trình xử lý, trong việc bàn giao thông tin cho nhau. * Mục đích của BLD là: - Giúp ta thấy được bản chất của hệ thống, làm rõ những chức năng nào cần thiết cho quản lý, chức năng nào phải thực hiện để hoàn tất quá trình xử lý cần mô tả. - Chỉ rõ các thông tin được chuyển giao giữa các chức năng đó, và qua đó phần nào thấy được trình tự thực hiện của chúng. - Giúp hỗ trợ các hoạt động sau: + Xác định yêu cầu của người dùng. + Lập kế hoạch và minh hoạ các phương án cho nhà phân tích và người dùng xem xét. + Trao đổi giữa nhà phân tích và người dùng do tính tường minh của BLD. + Làm tài liệu đặc tả yêu cầu hình thức và đặc tả thiết kế hệ thống. Như vậy có thể thấy trong các biểu đồ cần xây dựng thì BLD là biểu đồ rất quan trọng, nó chứa đựng cả yếu tố xử lý và dữ liệu. * Các thành phần của BLD: a) Chức năng xử lý (Process): Khái niệm : Chức năng xử lý là chức năng biểu đạt các thao tác, nhiệm vụ hay tiến trình xử lý nào đó. Tính chất quan trọng của chức năng là biến đổi thông tin, tức là nó phải làm thay đổi thông tin từ đầu vào theo một cách nào đó như tổ chức lại thông tin, bổ sung thông tin hoặc tạo ra thông tin mới. Biểu diễn : Đường tròn hay ô van, trong đó có ghi nhãn (tên) của chức năng. Hoặc Nhãn (tên) chức năng : Phải là một động từ, có thêm bổ ngữ nếu cần, cho phép hiểu một cách văn tắt chức năng làm gì. Ví dụ: Nhập hàng, Xuất hàng... b) Luồng dữ liệu (Data Flow): Khái niệm : Luồng dữ liệu là luồng thông tin vào hay ra của một chức năng xử lý. Chú ý: Mọi luồng dữ liệu là phải vào hay ra một chức năng nào đó, vậy trong hai đầu của một luồng dữ liệu (đầu đi và đầu đến), ít nhất phải có một đầu dính tới một chức năng. Biểu diễn : Bằng mũi tên có hướng trên đó có ghi tên nhãn là tên luồng thông tin mang theo. Mũi tên để chỉ hướng của luồng thông tin. Nhãn (tên) luồng dữ liệu : Vì thông tin mang trên luồng, nên tên phải là một danh từ cộng với tính từ nếu cần, cho phép hiểu vắn tắt nội dung của dữ liệu được chuyển giao. c) Kho dữ liệu (Data Store): Khái niệm : Kho dữ liệu là các thông tin cần lưu giữ lại trong một khoảng thời gian, để sau đó một hay vài chức năng xử lý, hoặc tác nhân trong sử dụng. (Dưới dạng vật lý chúng có thể là các tài liệu lưu trữ trong văn phòng hoặc các file trên các thiết bị mang tin (băng từ, đĩa từ) của máy tính. Biểu diễn : Kho dữ liệu được biểu diễn bằng cặp đoạn thẳng song song nằm ngang, kẹp giữa là tên của kho dữ liệu. Nhãn (tên) kho dữ liệu : Tên của kho dữ liệu phải là một danh từ cộng với tính từ nếu cần, cho phép hiểu vắn tắt nội dung của dữ liệu được lưu giữ. Ví dụ: Danh mục hàng, Nhà cung cấp.... d) Tác nhân ngoài (External Entity) : Khái niệm : Tác nhân ngoài còn được gọi là đối tác , là một người, một nhóm hay một tổ chức ở bên ngoài lĩnh vực nghiên cứu của hệ thống nhưng có một số hình thức tiếp xúc, trao đổi thông tin với hệ thống. Sự có mặt của các nhân tố này trên sơ đồ chỉ ra giới hạn của hệ thống, và định rõ mối quan hệ của hệ thống với thế giới bên ngoài. Biểu diễn : Tác nhân ngoài được biểu diễn bằng hình chữ nhật có gán nhãn. Nhãn (tên) tác nhân ngoài : Được xác định bằng danh từ kèm theo tính từ nếu cần thiết. d) Tác nhân trong (Internal Entity) : Khái niệm : Một tác nhân trong là một chức năng hay 1 hệ con của hệ thống, được mô tả ở một trang khác của mô hình, nhưng có trao đổi thông tin với các phần tử thuộc trang hiện tại của mô hình. Như vậy tác nhân trong xuất hiện trong biểu đồ chỉ để làm nhiệm vụ tham chiếu. Biểu diễn : Tác nhân ngoài được biểu diễn bằng hình chữ nhật khuyết một cạnh và có gán nhãn. Nhãn (tên) tác nhân trong : Được xác định bằng động từ, kèm theo bổ ngữ nếu cần thiết. * Kỹ thuật phân rã biểu đồ BLD : Dùng kỹ thuật phân mức - có 3 mức: - BLD mức khung cảnh (Context DFD) – mức 0 : tại mức này cả hệ thống là 1 chức năng.Các tác nhân ngoài và các luồng dữ liệu vào,ra từ tác nhân ngoài đến hệ thống được xác định.Tác nhân ngoài xuất hiện đầy đủ ở mức này. - BLD mức đỉnh (Top Level DFD) – mức 1 : đây là mô hình phân rã từ BLD mức khung cảnh với các chức năng phân rã tương ứng mức 2 của biểu đồ phân cấp chức năng BPC. Các nguyên tắc phân rã là: + Các luồng dữ liệu được bảo toàn. + Các tác nhân ngoài được bảo toàn. + Có thể xuất hiện các kho dữ liệu. + Bổ sung thêm các luồng dữ liệu nội tại nếu cần thiết. - BLD mức dưới đỉnh (Levelling DFD) – mức 2 : đây là mô hình phân rã từ BLD mức đỉnh ,một chức năng ở mức trước được phân rã thành nhiều chức năng nhỏ hơn và phải đảm bảo các yêu cầu sau: + Bảo toàn các tác nhân ngoài và các luồng thông tin vào ra đối với tác nhân ngoài. + Bảo toàn các luồng thông tin vào,ra đối với chức năng mà nó phân rã. + Có thể tiếp tục xuất hiện các kho dữ liệu mới cùng với các luồng thông tin giữa các chức năng mới. Quá trình phân rã các chức năng ở BLD mức dưới đỉnh có thể tiếp tục cho đến khi không phân rã được nữa. III.2.1 Biểu đồ luồng dữ liệu (BLD) mức ngữ cảnh (mức 0) Trên cơ sở Biểu đồ phân cấp chức năng của hệ thống “Quản Lý Bán Hàng”, ta xây dựng được biểu đồ luồng dữ liệu ở mức ngữ cảnh của hệ thống như sau: Hình III.2.1. : biểu đồ luồng dữ liệu mức ngữ cảnh (Mức 0 )của hệ thống “Quản lý bán hàng”. III.2.2 Biểu đồ luồng dữ liệu (BLD) mức đỉnh (mức 1) Trên cơ sở biểu đồ phân cấp chức năng (BPC), biểu đồ luồng dữ liệu ở mức ngữ cảnh (mức 0) của hệ thống “Quản Lý Bán Hàng” đã được xây dựng ở trên ta xây dựng được biểu đồ luồng dữ liệu (BLD) ở mức đỉnh (mức 1) của hệ thống “Quản Lý Bán Hàng” như sau : Hình III.2.2 Biểu đồ luồng dữ liệu (BLD) mức đỉnh (mức 1) của hệ thống “Quản lý bán hàng”. III.2.3 Biểu đồ luồng dữ liệu (BLD) mức dưới đỉnh (mức 2) III.2.3.1 Biều đồ luồng dữ liệu (BLD) mức dưới đỉnh của chức năng 1 “Bán Hàng” : Dựa vào các phân tích ta có được biểu đồ luồng dữ liệu (BLD) ở mức dưới đỉnh của chức năng “Bán Hàng” của hệ thống “Quản Lý Bán Hàng” như sau: Hình III.2.3.1 Biểu đồ luồng dữ liệu (BLD) mức dưới đỉnh (mức 2) của chức năng “Bán Hàng”. III.2.3.2 Biều đồ luồng dữ liệu (BLD) mức dưới đỉnh của chức năng 2 “Thanh Toán” : Hình III.2.3.1 Biểu đồ luồng dữ liệu (BLD) mức dưới đỉnh (mức 2) của chức năng “Thanh Toán”. III.2.3.3 Biều đồ luồng dữ liệu (BLD) mức dưới đỉnh của chức năng 2 “Thống Kê” : Hình III.2.3.1 Biểu đồ luồng dữ liệu (BLD) mức dưới đỉnh (mức 2) của chức năng “Thống Kê”. III.3 XÂY DỰNG SƠ ĐỒ THỰC THỂ LIÊN KẾT (ER) Mô hình thực thể liên kết: nhằm xác định khung khái niệm về các thực thể, thuộc tính và mối liên hệ ràng buộc giữa chúng, là cơ sở thiết kế cơ sở dữ liệu cho hệ thống quản lý. Mục đích của mô hình là xác định các yếu tố: - Dữ liệu nào cần xử lý. - Mối liên quan nội tại giữa các dữ liệu. Để xây dựng mô hình thực thể liên kết phải thu thập thông tin theo 3 yếu tố: - Kiểu thực thể (Entities Type) : là tập hợp các thực thể hoặc một lớp các thực thể có cùng đặc trưng, cùng bản chất. Thể hiện thực thể là một thực thể cụ thể, nó là một phần tử trong tập hợp hay lớp của kiểu thực thể. Kiểu thực thể tương đương với bảng logic và có dạng hộp trong sơ đồ mô hình thực thể. - Kiểu liên kết (Entities Relationship Type) : là tập các liên kết có cùng bản chất. Giữa các kiểu thực thể có tồn tại nhiều mối quan hệ (liên kết), mỗi mối quan hệ liên kết xác định một tên duy nhất. Biểu diễn các quan hệ bằng đoạn thẳng nối giữa hai thực thể. Có ba kiểu quan hệ chính được sử dụng dưới dạng đơn giản nhất của mô hình thực thể: cho hai thực thể A và B có mối liên kết với nhau. Khi đó sẽ xuất hiện ba loại quan hệ : + Quan hệ một - một (1-1): giữa hai kiểu thực thể A, B là ứng với một thực thể trong A có một thực thể trong B và ngược lại. + Quan hệ một – nhiều (1-N): giữa hai kiểu thực thể A, B là ứng với một thực thể trong A có nhiều thực thể trong B ,nhưng ngược lại ứng với một thực thể trong B chỉ có một thực thể trong A. + Quan hệ nhiều – nhiều (N-N): giữa hai kiểu thực thể A, B là ứng với một thực thể trong A có nhiều thực thể trong B và ngược lại ứng với một thực thể trong B có nhiều thực thể trong A. Ta vẫn dùng hai bảng thực thể tưởng tượng A và B, mối quan hệ nhiều – nhiều có nghĩa như sau: Với mỗi thực thể trong bảng A có nhiều thực thể trong bảng B. Với mỗi thực thể trong bảng B có nhiều thực thể trong bảng A. - Các thuộc tính (Attributes) : là giá trị thể hiện một đặc điểm nào đó của một thực thể hay một liên kết. Mỗi một thực thể bao gồm một số thuộc tính, và phân thành 4 loại thuộc tính phổ biến: + Thuộc tính tên gọi (định danh) : thuộc tính định danh như Họ và Tên, Tên hàng , Lớp ... + Thuộc tính mô tả : các dữ liệu gắn liền với thực thể dùng mô tả các tính chất, các đặc trưng của thực thể và là thuộc tính không khóa. + Thuộc tính kết nối : nhận diện thực thể trong kiểu thực thể hay mối liên kết. Thuộc tính này dùng để kết nối giữa các thực thể có liên kết. Thuộc tính kết nối là khóa ở quan hệ này và là mô tả ở quan hệ khác. + Thuộc tính khóa : dùng để phân biệt các thực thể liên kết. Khóa có thể là khóa đơn hay khóa kép. Thuộc tính này xác định sự duy nhất thể hiện của thực thể trong kiểu thực thể. Trình tự để xây dựng mô hình thực thể liên kết gồm 3 bước : Bước 1:Xác định các thực thể. Bước 2:Xác định các mối liên kết giữa các kiểu thực thể. Bước 3:Xác định các thuộc tính cho các kiểu thực thể. III.3.1 Xác định các thực thể của hệ thống “Quản Lý Bán Hàng” Từ qúa trình phân tích ta thấy các thực thể sau: - KHACHHANG (MaKH, TenKH, DiaChi, DienThoai): lưu trữ thông tin về khách hàng. - NHANVIEN (MaNV, TenNV , DiaChi, DienThoai): lưu trữ thông tin của nhân viên trong công ty. - BANGGIA (GiaSP, MaHang , TuNgay, DenNgay, TuSoluong, DenSoluong): cập nhật giá cho sản phẩm cho từng thời điểm. - NHOMHANG (MaNhom, TenNhom): lưu trữ thông tin về phân loại nhóm sản phẩm. - HANGHOA (MaHang, MaNhom, TenHang, DonVi): lưu trữ thông tin chi tiết về hàng hóa. - HOADONBANHANG (SoHD, NgayHD, DienGiai, MaKH, HoTen, DiaChi, DaTT, HanTT, ThueGTGT, MaNV) : lưu trữ thông tin về hóa đơn bán hàng. - HOADONCHITIET (SoHD, NgayHD, MaHang, SoLuong, DonGia) : lưu trữ thông tin chi tiết của hóa đơn bán. - PHIEUTHU (SoChungtu, NgayChungtu, DienGiai, MaKH, Ten, DiaChi) :lưu trữ thông tin về phiếu thu. - PHIEUTHUCHITIET (SoChungtu, NgayChungtu, TongGT TraHet , TinhTrang , TrietkhauTT, Lai , SoHD) : lưu trữ thông tin chi tiết của phiếu thu. III.3.2 : Xác định các mối liên kết giữa các kiểu thực thể cho hệ thống “Quản Lý Bán Hàng” - Thực thể PHIEUTHU có liên kết 1- nhiều (1- n) với thực thể PHIEUTHUCHITIET - Thực thể NHOMHANG có liên kết 1- nhiều (1- n) với thực thể HANGHOA - Thực thể HANGHOA có liên kết 1- nhiều (1- n) với thực thể BANGIA - Thực thể HANGHOA có liên kết 1- nhiều (1- n) với thực thể HOADONCHITIET - Thực thể HOADON có liên kết 1- nhiều (1- n) với thực thể HOADONCHITIET - Thực thể KHACHHANG có liên kết 1- nhiều (1- n) với thực thể HOADON - Thực thể NHANVIEN có liên kết 1- nhiều (1- n) với thực thể HOADON III.3.3 : Xác định thuộc tính cho các kiểu thực thể trong hệ thống “Quản Lý Bán Hàng” Ta xây dựng được sơ đồ thực thể liên kết (ER) của hệ thống “Quản Lý Bán Hàng” như sau: Hình III.3.3. Biểu sơ đồ thực thể liên kết (ER) của hệ thống “Quản Lý Bán Hàng” CHƯƠNG IV : THIẾT KẾ VÀ CÀI ĐẶT HỆ THỐNG * IV.1 THIẾT KẾ CƠ SỞ DỮ LIỆU IV.1.1 Bảng KHÁCH HÀNG (KHACHHANG) - Mục đích : bảng KHÁCH HÀNG được tạo ra có tác dụng để lưu trữ thông tin của từng khách hàng. Bảng tạo thành một danh mục các khách hàng đã mua hàng của cơ sở kinh doanh. Bảng gồm các trường : + Mã khách hàng (MaKH) : mã dùng để phân biệt các khách hàng khác nhau, mỗi khách hàng sẽ được gán một MaKH riêng biệt và không được trùng với khách hàng nào khác. + Tên khách hàng (TenKH) : tên giao dịch của khách hàng hoặc tên giao dịch của công ty, tổ chức, cơ sở kinh doanh ... + Địa chỉ (DiaChi) : địa chỉ của khách hàng. + Điện thoại (DienThoai) : số điện thoại liên lạc của khách hàng , có thể là số di động hoặc cố định. - Khóa chính : trong bảng KHÁCH HÀNG thì thuộc tính Mã Khách Hàng (MaKH) là thuộc tính khóa chính của bảng. - Cấu trúc của bảng : STT Tên trường Kiểu dữ liệu Độ rộng Diễn giải Ghi chú 1 MaKH Text 8 Mã khách hàng Khóa chính 2 TenKH Text 50 Tên khách hàng 3 DiaChi Text 50 Địa chỉ 4 Điện thoại Text 15 Điện thoại IV.1.2 Bảng NHÂN VIÊN (NHANVIEN) - Mục đích : bảng NHÂN VIÊN được tạo ra có tác dụng để lưu trữ thông tin của từng nhân viên. Bảng tạo thành một danh mục các nhân viên đang hoạt động và làm việc tại cơ sở kinh doanh. Bảng gồm các trường : + Mã nhân viên (MaNV) : mã dùng để phân biệt các nhân viên khác nhau, mỗi nhân viên sẽ được gán một MaNV riêng biệt và không được trùng với nhân viên nào khác. + Tên nhân viên (TenNV) : tên của nhân viên đó được đăng ký trong giấy khai sinh , trong các giấy tờ xin việc kèm theo. + Địa chỉ (DiaChi) : địa chỉ của nhân viên, được đăng ký đầy đủ và rõ ràng để tiện liên lạc khi cần. + Điện thoại (DienThoai) : số điện thoại liên lạc của nhân viên, có thể là số di động hoặc cố định. - Khóa chính : trong bảng NHÂN VIÊN thì thuộc tính Mã Nhân Viên (MaNV) là thuộc tính khóa chính của bảng. - Cấu trúc của bảng : STT Tên trường Kiểu dữ liệu Độ rộng Diễn giải Ghi chú 1 MaNV Text 8 Mã nhân viên Khóa chính 2 TenNV Text 30 Tên nhân viên 3 DiaChi Text 50 Địa chỉ 4 DienThoai Text 15 Điện thoại IV.1.3 Bảng BẢNG GIÁ (BANGGIA) - Mục đích : bảng BẢNG GIÁ được tạo ra có tác dụng để lưu trữ thông tin của các sản phẩm và giá được áp dụng cho sản phẩm đó trong từng thời điểm kinh doanh. Bảng gồm các trường : + Giá sản phẩm (GiaSP) : giá được áp dụng cho sản phẩm. + Mã hàng hóa(MaHang) : mã của loại sản phẩm được áp dụng giá bán, và mã hàng hóa này là duy nhất. + Từ ngày (TuNgay) : thời điểm bắt đầu sử dụng giá đó cho sản phẩm. + Đến ngày (DenNgay) : thời điểm kết thúc sử dụng giá đó cho sản phẩm. + Từ số lượng (TuSoluong) : số lượng tối thiểu của hàng hóa sử dụng giá đã áp dụng. + Đến số lượng (DenSoluong) : số lượng tối đa của hàng hóa sử dụng giá đã áp dụng. - Khóa chính : trong bảng BẢNG GIÁ thì thuộc tính Mã hàng (MaHang) là thuộc tính khóa chính của bảng. - Khóa phụ : là hai thuộc tính Từ Số Lượng (TuSoLuong),Đến Số Lượng (DenSoLuong). - Cấu trúc của bảng : STT Tên trường Kiểu dữ liệu Độ rộng Diễn giải Ghi chú 1 GiaSP Number Double Giá của hàng hóa 2 MaHang Text 8 Mã mặt hàng Khóa chính 3 TuNgay Date 10 Ngày sử dụng áp dụng giá Khóa phụ 4 DenNgay Date 10 Ngày kết thúc áp dụng giá 5 TuSoluong Number Double Số lượng tối thiểu Khóa phụ 6 DenSoluong Number Double Số lượng tối IV.1.4 Bảng NHÓM HÀNG(NHOMHANG) - Mục đích : bảng NHÓM HÀNG được tạo ra có tác dụng để lưu trữ thông tin của nhóm hàng hóa. Bảng tạo thành một danh mục các nhóm sản phẩm mà cơ sở kinh doanh đang bán ra thị trường. Bảng gồm các trường : + Mã nhóm hàng hóa (MaNhom) : mã dùng để phân biệt các nhóm hàng hóa khác nhau, mỗi nhóm hàng hóa sẽ được gán một MaNhom riêng biệt và không được trùng với nhóm hàng hóa nào khác. + Tên nhóm sản phẩm (TenNhom) : tên của nhóm hàng được phân loại theo tính năng thiết bị hoặc hãng sản xuất để tiện cho việc phân loại các gói sản phẩm khi thống kê. - Khóa chính : trong bảng NHÓM HÀNG thì thuộc tính Mã Nhóm (MaNhom) là thuộc tính khóa chính của bảng. - Cấu trúc của bảng : STT Tên trường Kiểu dữ liệu Độ rộng Diễn giải Ghi chú 1 MaNhom Text 8 Mã nhóm hàng Khóa chính 2 TenNhom Text 30 Tên nhóm hàng IV.1.5 Bảng HÀNG HÓA(HANGHOA) - Mục đích : bảng HÀNG HÓA được tạo ra có tác dụng để lưu trữ thông tin chi tiết của từng hàng hóa được công ty cung cấp ra thị trường tại thời điểm hiện tại, bảng tạo thành một danh mục hàng hóa. Bảng gồm các trường : + Mã hàng hóa (MaHang) : mã dùng để phân biệt các hàng hóa khác nhau, mỗi hàng hóa sẽ được gán một MaHang riêng biệt và không được trùng với hàng hóa nào khác. + Mã nhóm hàng hóa (MaNhom) : mã dùng để phân biệt các nhóm hàng hóa khác nhau. Trong bảng này được sử dụng để phân loại xem hàng hóa trong bảng thuộc nhóm sản phẩm nào. + Tên mặt hàng (TenHang) : tên mặt hàng được gán cho hàng hóa, phục vụ cho việc thống kê. + Đơn vị tính (DonVi) : đại lượng dùng để xác định rõ loại mặt hàng đó được cân – đo – đong – đếm với loại đơn vị tính như thế nào (ví dụ : chiếc, mét, hộp ...) - Khóa chính : trong bảng HÀNG HÓA thì thuộc tính Mã Hàng (MaHang) là thuộc tính khóa chính của bảng. - Cấu trúc của bảng : STT Tên trường Kiểu dữ liệu Độ rộng Diễn giải Ghi chú 1 MaHang Text 8 Mã hàng hóa Khóa chính 2 MaNhom Text 8 Mã nhóm hàng 3 TenHang Text 30 Tên hàng hóa 4 DonVi Text 5 Đơn vị tính IV.1.6 Bảng HÓA ĐƠN BÁN HÀNG(HOADONBANHANG) - Mục đích : bảng HÓA ĐƠN BÁN HÀNG được tạo ra có tác dụng để lưu trữ thông tin của các hóa đơn bán hàng hóa hay dịch vụ được cơ sở kinh doanh đưa ra hay phục vụ và được coi như là hàng hóa kinh doanh tại cơ sở kinh doanh đó, bảng tạo thành một danh mục các hóa đơn bán hàng , dịch vụ. Bảng gồm các trường : + Số hóa đơn (SoHD) : mã dùng để phân biệt các hóa đơn bán khác nhau, mỗi hóa đơn sẽ được gán một SoHD riêng biệt và không được trùng với hóa đơn bán nào khác. + Ngày lập hóa đơn (NgayHD) : ngày mà cơ sở kinh doanh xuất, bán hàng cho khách hàng có Mã Khách Hàng (MaKH) tới mua hay sử dụng hàng hóa, dịch vụ của cơ sở kinh doanh đó. + Diễn giải (DienGiai) : diễn giải thông tin về hóa đơn. + Mã Khách Hàng (MaKH) : dùng để phân biệt các khách hàng khác nhau, trong bảng này nó được sử dụng để xác đinh rõ ràng khách hàng nào đang sử dụng hay mua hàng hóa, dịch vụ của cửa hàng theo hóa đơn này. + Họ tên khách (HoTen) : tên giao dịch của khách hàng hoặc tên giao dịch của công ty, tổ chức, cơ sở kinh doanh ... + Địa chỉ (DiaChi) : địa chỉ của khách hàng. + Đã thanh toán (DaTT) : số tiền mà khách hàng đã thanh toán với nhân viên của cơ sở kinh doanh. + Hạn thanh toán (HanTT) : thời hạn thanh toán số tiền còn lại. + Thuế GTGT (ThueGTGT) : thuế giá trị gia tăng được áp dụng theo quy định của nhà nước. + Mã nhân viên (MaNV) : mã số của nhân viên được cơ sở kinh doanh giao nhiệm vụ phục vụ khách hàng và có trách nhiệm với việc làm này để đảm bảo cho khách hàng có Mã Khách Hàng (MaKH) được xác định ở trên, có hàng hóa hay dịch vụ họ đáng được nhận khi sử dụng dịch vụ hay hàng hóa tại cơ sở kinh doanh mà nhân viên này làm việc. - Khóa chính : trong bảng HÓA ĐƠN BÁN HÀNG thì thuộc tính Số Hóa Đơn (SoHD) là thuộc tính khóa chính của bảng. - Cấu trúc của bảng : STT Tên trường Kiểu dữ liệu Độ rộng Diễn giải Ghi chú 1 SoHD Text 8 Số hóa đơn Khóa chính 2 NgayHD Date 10 Ngày lập hóa đơn 3 DienGiai Text 30 Diễn giải hóa đơn 4 MaKH Text 8 Mã khách hàng 5 HoTen Text 50 Họ tên khách hàng 6 DiaChi Text 30 Địa chỉ khách hàng 7 DaTT Number Double Số tiền đã thanh toán 8 HanTT Number Double Hạn thanh toán số còn lại 9 ThueGTGT Number Double Thuế GTGT 10 MaNV Text 8 Mã nhân viên IV.1.7 Bảng HÓA ĐƠN CHI TIẾT(HOADONCHITIET) - Mục đích : bảng HÓA ĐƠN CHI TIẾT được tạo ra có tác dụng để lưu trữ thông tin chi tiết của các hàng hóa hay dịch vụ được cơ sở kinh doanh xuất, bán cho khách hàng nhất định nào đó được thông tin trong một hóa đơn xuất xác định, và tạo thành danh sách các hàng hóa và dịch vụ trong một hóa đơn xuất cố định. Bảng gồm các trường : + Số hóa đơn (SoHD) : mã dùng để phân biệt các hóa đơn bán khác nhau, mỗi hóa đơn sẽ được gán một SoHD riêng biệt và không được trùng với hóa đơn bán nào khác. Số hóa đơn trong bảng này được xác định cố định và duy nhất cho nhiều hàng hóa hay dịch vụ khác nhau được cơ sở kinh doanh cung cấp và phục vụ tới khách hàng, và được xác định trong một hóa đơn xuất xác định nào đó. + Ngày lập hóa đơn (NgayHD) : ngày mà cơ sở kinh doanh xuất, bán hàng cho khách hàng có Mã Khách Hàng (MaKH) tới mua hay sử dụng hàng hóa, dịch vụ của cơ sở kinh doanh đó. + Mã hàng hóa (MaHang) : mã của mặt hàng hay dịch vụ được cơ sở kinh doanh đó xuất, bán cho khách hàng của mình, trong bảng này có thể nhập được nhiều mã mặt hàng khác nhau cho một hóa đơn xuất nhất định. + Số lượng (SoLuong) : là số lượng xác định mà cơ sở kinh doanh đó xuất, bán ứng với loại mã mặt hàng ở trên và đã được tính toán bằng đơn vị tính xác định. + Đơn giá (DonGia) : đơn giá mặt hàng đó được cơ sở kinh doanh xuất, bán cho từ khách hàng của mình đã được xác định trong hóa đơn xuất có số hóa đơn xuất ở trên, đơn giá bán đã được niêm yết, báo giá tới khách hàng theo hình thức bảng báo giá, ứng với mỗi mặt hàng hay dịch vụ có mã mặt hàng (MaHang) xác định ở trên. - Khóa chính : trong bảng HÓA ĐƠN CHI TIẾT thì thuộc tính Số Hóa Đơn (SoHD) là thuộc tính khóa chính của bảng. - Cấu trúc của bảng : STT Tên trường Kiểu dữ liệu Độ rộng Diễn giải Ghi chú 1 SoHD Text 8 Số hóa đơn Khóa chính 2 NgayHD Date 10 Ngày lập hóa đơn 3 MaHang Text 8 Mã hàng hóa 4 SoLuong Number Double Số lượng 5 DonGia Number Double Đơn giá IV.1.8 Bảng PHIẾU THU(PHIEUTHU) - Mục đích : bảng PHIẾU THU được tạo ra có tác dụng để lưu trữ thông tin chi tiết của của các phiếu thu khi khách hàng thanh toán tiền. Bảng gồm các trường : + Số chứng từ (SoChungtu) : mã dùng để phân biệt các phiếu thu khác nhau, mỗi phiếu thu sẽ được gán một SoChungtu riêng biệt và không được trùng với phiếu thu nào khác. + Ngày lập chứng từ (NgayChungtu) : ngày mà cơ sở kinh lập phiếu thu đối với khách hàng xác định trước thông qua Mã Khách Hàng (MaKH). + Diễn giải (DienGiai) : diễn giải thông tin thành lập phiếu thu. + Mã Khách Hàng (MaKH) : dùng để phân biệt các khách hàng khác nhau, trong bảng này nó được sử dụng để xác định rõ ràng khách hàng nào đã thanh toán tiền theo hóa đơn này. + Họ tên khách (HoTen) : tên giao dịch của khách hàng hoặc tên giao dịch của công ty, tổ chức, cơ sở kinh doanh ... + Địa chỉ (DiaChi) : địa chỉ của khách hàng. - Khóa chính : trong bảng PHIẾU THU thì thuộc tính Số Chứng Từ (SoChungtu) là thuộc tính khóa chính của bảng. - Cấu trúc của bảng : STT Tên trường Kiểu dữ liệu Độ rộng Diễn giải Ghi chú 1 SoChungtu Text 8 Số chứng từ Khóa chính 2 NgayChungtu Date 10 Ngày lập chứng từ 3 DienGiai Text 30 Diễn giải 4 MaKH Text 8 Mã khách hàng 5 HoTen Text 50 Họ tên khách hàng 6 DiaChi Text 30 Địa chỉ khách hàng IV.1.9 Bảng PHIẾU THU CHI TIẾT(PHIEUTHUCHITIET) - Mục đích bảng PHIẾU THU CHI TIẾT được tạo ra có tác dụng để lưu trữ thông tin chi tiết của các phiếu thu khi cơ sở kinh doanh thực hiện thanh toán tiền với khách hàng nhất định nào đó được thông tin trong một phiếu thu xác định. Bảng gồm các trường : + Số chứng từ (SoChungtu) : mã dùng để phân biệt các phiếu thu khác nhau, mỗi phiếu thu sẽ được gán một SoChungtu riêng biệt và không được trùng với phiếu thu nào khác. + Ngày lập chứng từ (NgayChungtu) : ngày mà cơ sở kinh lập phiếu thu đối với khách hàng xác định trước thông qua Mã Khách Hàng (MaKH). + Tổng giá trị (TongGT) : tổng tiền mà khách hàng đã thực hiện thanh toán cho cơ sở kinh doanh. + Trả hết (TraHet) : cho biết khách hàng có trả hết hay một phần trong một lần thanh toán. + Tình trạng (TinhTrang) : tình trạng thanh toán của khách hàng (nợ hoặc trả sau). + Triết khấu thanh toán (TrietkhauTT) : triết khấu trên phiếu thu. + Lãi (Lai) : số tiền lãi khách hàng phải trả. + Số hóa đơn (SoHD) : mã dùng để phân biệt các hóa đơn bán khác nhau, mỗi hóa đơn sẽ được gán một SoHD riêng biệt và không được trùng với hóa đơn bán nào khác. Trong bảng này số hóa đơn được sử dụng để xác định phiếu thu này được dùng để thanh toán cho hóa đơn xác định nào. - Khóa chính : trong bảng PHIẾU THU CHI TIẾT thì thuộc tính Số Chứng Từ (SoChungtu) là thuộc tính khóa chính của bảng. - Khóa phụ : thuộc tính Số Hóa Đơn (SoHD) là thuộc tính khóa phụ của bảng. - Cấu trúc của bảng : STT Tên trường Kiểu dữ liệu Độ rộng Diễn giải Ghi chú 1 SoChungtu Text 8 Số chứng từ Khóa chính 2 NgayChungtu Date 10 Ngày lập chứng từ 3 TongGT Text 8 Diễn giải 4 TraHet Number Double Mã khách hàng 5 TinhTrang Text 10 Họ tên khách hàng 6 TrietkhauTT Number Double Địa chỉ khách hàng 7 Lai Number Double 8 SoHD Text 8 IV.1.10 Mối quan hệ giữa các bảng dữ liệu Hình IV.1.10 mối quan hệ giữa các bảng dữ liệu. IV.2 THIẾT KẾ CHƯƠNG TRÌNH Thiết kế chương trình là giai đoạn cuối của quá trình phân tích và thiết kế. Tại thời điểm này ta đã mô tả logic của hệ thống mới với tập các biểu đồ thực hiện ở các bước trước bao gồm biểu đồ phân cấp chức năng, biểu đồ luồng dữ liệu và biểu đồ cấu trúc dữ liệu. Nhiệm vụ của giai đoạn thiết kế tiếp sau là chuyển các biểu đồ ở mức logic sang mức vật lý nhắm chỉ ra: các biện pháp ứng dụng. các phương tiện thực thi. cách cài đặt cụ thể. Các bước tiến hành: Thiết kế tổng thể : Mục đích là: Nhằm đưa ra một kiến trúc tổng thể của hệ thống. Kiến trúc này thể hiện sự phân chia hệ thống thành nhiều hệ thống con. - Phân định ranh giới giữa phần thực hiện thủ công và máy tính. - Thiết kế hệ thống con máy tính: Thiết kế các File dữ liệu : Cơ sở dữ liệu là nơi lưu trữ lâu dài các dữ liệu của hệ thống ở bộ nhớ ngoài. Các dữ liệu này phải được tổ chức sao cho: hợp lý (đủ dùng và không dư thừa) và truy cập thuận lợi. Khi thiết kế logic BCD chỉ quan tâm dữ liệu đủ và không trùng lặp đảm bảo các yêu cầu về lý thuyết. Nhưng thực tế mục đích của thiết kế cần được thỏa mãn cho công việc cài đặt sau này : tiện – nhanh khi truy cập. Trong giai đoạn 2,dữ liệu đã được tổ chức theo tiêu chí hợp lý và kết quả là thành lập được lược đồ dữ liệu theo mô hình thực thể liên kết E-R.Sang giai đoạn thiết kế hệ thống cần phải biến đổi cơ sở dữ liệu để đảm bảo yêu cầu truy cập thuận lợi ,có thể chấp nhận sự dư thừa dữ liệu. Thiết kế giao diện : thiết kế đầu ra và đầu vào, thực tế thường thiết kế đầu ra trước rồi mới thiết kế đầu vào. Giao diện dự kiến của chương trình “Quản Lý Bán Hàng” : Hình IV.2 Giao diện dự kiến của chương trình “Quản Lý Bán Hàng” Thiết kế giao diện là một trong những phần thiết yếu của hệ thống để hệ thống trình bày một phần các thông tin mà người sử dụng cần biết. Bởi vậy mục tiêu của nó cần được người thiết kế tiến hành một cách hết sức cẩn thận. các yêu cầu chính cần được xem xét : Loại thiết bị phương tiện giao diện được sử dụng. Thiết kế hội thoại người dùng – hệ thống. Bản chất của dữ liệu và phương cách mã hóa dữ liệu. Các yêu cầu về kỹ thuật đánh giá dữ liệu. Thiết lập định dạng màn hình và các báo cáo. Thiết kế về chương trình : trong khi thiết kế hệ thống cụ thể có nhiều phương thức sử dụng máy tính : Tập trung hay phân tán. Các hình thức xử lý theo mẻ hay theo kiểu trực tuyến. Phân định máy tính / thủ công. Thiết kế từng module, ghép nối, module tải. Thiết kế các mẫu thử. IV.3 MỘT SỐ FORM MẪU BIỂU IV.3.1 Mẫu Form thông tin về khách hàng Hình IV.3.1 Form thông tin về khách hàng. IV.3.2 Mẫu Form thông tin về hàng hóa Hình IV.3.2 Form thông tin về hàng hóa. IV.3.3 Mẫu Form thông tin về hóa đơn bán hàng Hình IV.3.3 Form thông tin về hóa đơn bán hàng. IV.3.4 Mẫu Form thông tin về phiếu thu Hình IV.3.4 Form thông tin về phiếu thu. IV.3.5 Mẫu Form thông tin về cập nhật hóa đơn bán hàng Hình IV.3.5 Form thông tin về cập nhật hóa đơn bán. IV.3.6 Mẫu Form thông tin về cập nhật thông tin hàng hóa Hình IV.3.6 Form thông tin về cập thông tin hàng hóa. IV.4 HƯỚNG DẪN CÀI ĐẶT VÀ SỬ DỤNG CHƯƠNG TRÌNH Cài đặt chương trình : Máy tính điện tử dùng để chạy chương trình “Quản Lý Bán Hàng” là máy tính được cài đặt hệ điều hành Windows (khuyến cáo nên sử dụng Windows XP). Cài đặt chương trình Microsoft Accecss nằm trong bộ Microsoft Office. Đưa đĩa CD chứa bộ cài Microsoft Office vào ổ CD của máy tính và thực hiện lệnh Setup để bắt đầu quá trình cài đặt. (Khuyến cáo nên sử dụng Microsoft Office 2003). Máy tính phải cài đặt font chữ “.Vntime” để hiển thị giao diện tiếng Việt. Hướng dẫn sử dụng chương trình : Sau khi cài đặt thành công bộ Microsoft Office , lấy đĩa chương trình có hệ thống “Quản Lý Nhà Hàng” đặt vào ổ CD của máy tính, sau đó copy thư mục “QLBH” vào ổ đĩa cứng trên máy tính. Khởi động file QLBH.exe để đăng nhập vào chương trình và thực hiện các thao tác trên chương trình. Trong form chương trình chính nếu cần xem và cập nhật thêm dữ liệu của các đối tượng (khách hàng, nhân viên, hàng hóa ...) thì ta chọn menu Danh Muc sau đó chọn tới đối tượng cần thêm hay sửa đổi dữ liệu. Chọn menu Du Lieu để xử lý thông tin về hóa đơn và phiếu thu Chọn menu Thong Ke để lấy hay in các bảng tổng hợp (báo cáo bán hàng, báo cáo tổng hợp ...) Muốn thoát khỏi chương trình thì ta có thể sử dụng trình đơn Thoat trong menu He Thong IV.4 CODE MỘT SỐ CHỨC NĂNG CHÍNH Module kết nối cơ sở dữ liệu (Open_mdb.bas): Option Explicit Public cn As New ADODB.Connection Public rs1 As New ADODB.Recordset Public rs2 As New ADODB.Recordset Public strSQL As String Public str As String 'ket noi csdl Public Sub Open_mdb1() Set cn = New ADODB.Connection cn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\Database\database.mdb;Persist Security Info=False" cn.CursorLocation = adUseClient cn.Open Set rs1 = New ADODB.Recordset rs1.LockType = adLockOptimistic rs1.CursorType = adOpenKeyset Set rs2 = New ADODB.Recordset rs2.LockType = adLockOptimistic rs2.CursorType = adOpenKeyset End Sub Form DANH MỤC HÀNG HÓA (frmDanhmuchanghoa.frm): Option Explicit Private Sub Display_Listview() – đưa dữ liệu vào trong Listview Dim rs As New ADODB.Recordset Dim mItem As ListItem Dim str As String Set rs = New ADODB.Recordset str = "select * from HANGHOA order by MaHang" rs.Source = str rs.ActiveConnection = cn rs.Open If Not rs.EOF Then txtMahanghoa = rs!MaHang txtManhomhang = rs!MaNhom txtTenhanghoa = rs!TenHang txtDonvi = rs!Donvi End If ListView1.ListItems.Clear Do While Not rs.EOF Set mItem = ListView1.ListItems.Add(, , rs!MaHang) mItem.SubItems(1) = Trim(rs!TenHang) mItem.SubItems(2) = Trim(rs!Donvi) mItem.SubItems(3) = Trim(rs!MaNhom) rs.MoveNext Loop rs.Close End Sub Private Sub cmdSua_Click() – sửa bản ghi hiện tại ChucNang = "sua" frmCapnhathanghoa.Show End Sub Private Sub cmdThem_Click() – thêm một bản ghi mới ChucNang = "moi" frmCapnhathanghoa.Show End Sub Private Sub cmdThoat_Click() – thoát khỏi form xử lý Unload Me End Sub Private Sub cmdXoa_Click() – gọi thủ tục xóa dữ liệu Xoa_Dulieu End Sub Private Sub ListView1_DblClick() – xử lý với thao tác nhấp đúp chuột ' Lua chon chuc nang Chon End Sub Private Sub ListView1_ItemClick(ByVal Item As MSComctlLib.ListItem) txtMahanghoa = Item.Text txtManhomhang = Item.SubItems(3) txtTenhanghoa = Item.SubItems(1) txtDonvi = Item.SubItems(2) End Sub ' thu tuc xoa du lieu Private Sub Xoa_Dulieu() – thủ tục xóa dữ liệu Dim str As String Dim response If txtMahanghoa "" Then response = MsgBox("Co xoa danh muc nay khong?", vbYesNo + vbQuestion, "Thong bao") If response = vbNo Then Exit Sub Else ' xoa bang voi dieu kien ma hang hoaduoc chon ben duoi str = "delete from HANGHOA where MaHang='" & txtMahanghoa & "'" cn.Execute (str) End If Else MsgBox "Ban phai chon danh muc can xoa !", vbOKCancel + vbExclamation, "Thong bao" End If ' sau khi xoa goi lai thu tuc de hien thi du lieu moi Display_Listview End Sub KẾT LUẬN * I. Ưu điểm của hệ thống Quá trình xây dựng hệ thống cơ bản đã đáp ứng được các mục tiêu đặt ra. Các thông tin cần thiết trong quá trình hoạt động giao dịch của cửa hàng được xử lý theo đúng qui trình. Vì là hệ thống có qui mô nhỏ,đơn giản và chỉ cần một người quản lý nên ít gặp trục trặc. Chương trình sử dụng giao diện tiếng Việt nên khiến người sử dụng dễ dàng nắm bắt được chức năng xử lý một cách thuận tiện. Đồng thời việc lập trình bằng ngôn ngữ Visual Basic kết hợp với Microsoft Access khiến cho chương trình tương đối nhẹ và không yêu cầu máy tính cài đặt phải có cấu hình cao. II. Những tồn tại của hệ thống Chức năng tìm kiếm còn hạn chế. Chưa phân quyền sử dụng được cho từng đối tượng nhân viên. Chương trình chỉ chạy trên máy đơn và hỗ trợ quản lý với một cơ sở dữ liệu nhỏ. Mặc dù đã rất cố gắng tìm hiểu công việc “Quản Lý Bán Hàng” nhưng do thời gian hạn chế, kinh nghiệm và trình độ hiểu biết chưa nhiều nên trong việc phân tích – thiết kế và cài đặt hệ thống thông tin “Quản Lý Nhà Hàng” chưa hoàn thiện như một sản phẩm phần mềm chính thức. Chương trình phục vụ cho đồ án thực tập nên mang tính chất học hỏi , tìm hiểu các giai đoạn phát triển một phần mềm trong thực tế. Điều đó khó tránh khỏi những sai sót mang tính học thuật. Tuy nhiên qua lần thực tập tốt nghiệp này, em đã học hỏi và tích lũy thêm được nhiều kinh nghiệm thực tiễn trong quá trình xây dựng một chương trình quản lý, đồng thời cũng bổ xung thêm kiến thức cho bản thân. III. Hướng phát triển của đề tài trong tương lai Chương trình hiện tại mới chỉ hỗ trợ nhân viên thực hiện các thao tác nghiệp vụ trên một máy đơn. Hướng tiếp theo là đưa phần mềm thành một ứng dụng chạy trên nhiều máy đáp ứng quy mô lớn dần của công ty. Có thể phân quyền sử dụng hệ thống cho các cấp nhân viên. Hoàn thiện chức năng tìm kiếm các danh mục một cách thuận tiện nhất. Ngoài ra để chương trình có thể tối ưu hơn, ta có thể xây dựng thêm các hệ thống cung cấp thông tin (như tỉ giá tiền tệ, các mức thuế ...) và có thể thiết kế thành một ứng dụng cho phép thực hiện giao dịch qua mạng. TÀI LIỆU THAM KHẢO * [1] – FPT Software Solution . Giáo trình đào tạo Visual Basic 6.0 [2] – PGS.TS Phan Huy Khánh. Phân Tích & Thiết Kế Hệ Thống. Đại học Đà Nẵng. [3] – PGS.TS Đặng Minh Ất. Bài giảng môn “Cấu trúc dữ liệu và giải thuật”. Đại học Kinh Tế Quốc Dân. 2006 [4] – KS. Lâm Hoài Bảo. Visual Basic. Trường Đại học Cần Thơ. [5] – Visual Basic 6 Certification Exam Guide - Dan Mezick & Scot Hillier - McGraw-Hill - 1998. [6] – Khoa Công Nghệ Thông Tin - Thực hành Visual Basic. Trường Đại học Cần Thơ. [7] – Hoàng Quang – Phan Ánh . Tự học Visual Basic với kế toán doanh nghiệp. Nhà xuất bản giao thông vận tải. 2007 [8] – VN - GUIDE . Kế toán doanh nghiệp với Access. Nhà xuất bản thống kê. 2008 [9] – Diễn đàn:

Các file đính kèm theo tài liệu này:

  • doc2461.doc
Tài liệu liên quan