Đề tài Phân tích và thiết kế hệ thống thông tin quản lý bán hàng tại Trung tâm thương mại và xuất nhập khẩu Hà Nội

Mô hình dữ liệu quan hệ: Cấu trúc của mô hình này được tạo nên bởi một hệ thống các quan hệ được biểu diễn dưới dạng bảng hai chiều. Một số khái niệm liên quan đến mô hình dữ liệu quan hệ. - Bảng: (table) ghi chép dữ liệu về một nhóm phần tử nào đó gọi là thực thể. Mỗi bảng còn được gọi là một quan hệ vì các cột có mối quan hệ với nhau. - Thực thể: (entity) là một nhóm sự vật, sự kiện, hiện tượng hay khái niệm với các đặc điểm và tính chất cần ghi chép và lưu giữ. Thực thể có thể là hữu hình hay là những quan niệm vô hình. - Thuộc tính: (attribute) Mỗi thuộc tính là một cột(trường) trong bảng là chi tiết dữ liệu tách biệt, thường không chia nhỏ được nữa. Các thuộc tính góp phần mô tả thực thể. Giá trị của những thuộc tính chính là những chi tiết dữ liệu mà ta muốn lưu trữ. - Dòng: (row) còn được gọi là bản ghi (record) nó ghi chép dữ liệu về một cá thể. Đây là bộ giá trị cụ thể của các thuộc tính. - CSDL: (database) là một nhóm gồm nhiều bảng liên quan với nhau. Tập hợp các CSDL có liên quan được gọi là một hệ CSDL (database system) hay ngân hàng dữ liệu (databank).

doc50 trang | Chia sẻ: Dung Lona | Lượt xem: 1065 | Lượt tải: 0download
Bạn đang xem trước 20 trang tài liệu Đề tài Phân tích và thiết kế hệ thống thông tin quản lý bán hàng tại Trung tâm thương mại và xuất nhập khẩu Hà Nội, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
cơ sở kinh doanh là rất quan trọng và thiết thực. Ngoài mục đích là nâng cao hiệu quả hoạt động sản xuất kinh doanh, nó còn đảm bảo sự tồn tại vững chắc trong môi trường kinh doanh hiện nay, đáp ứng được những mong muốn và những đòi hỏi khắt khe của khách hàng một cách nhanh chóng hiệu quả. Nhận thức được vấn đề trên, trong đợt thực tập tốt nghiệp của mình, với sự giúp đỡ các anh chị nhân viên ở Trung Tâm TM và XNK Hà Nội em đã khảo sát thực tế tại Trung tâm. nghiên cứu hoạt động quản lý bán hàng và đã quyết định lựa chọn đề tài “Phân tích và thiết kế hệ thống thông tin quản lý bán hàng tại Trung tâm TM và XNK Hà Nội” để làm đề tài cho Đồ án tốt nghiệp của mình. Nội dung của đò án gồm 4 chương: Chương 1: Tổng quan về để tài Chương 2: Khảo sát hệ thống bán hàng Chương 3: Phân tích thiết kế hệ thống thông tin phục vụ cho công tác quản lý bán hàng Chương 4: Thiết kế hệ thống thông tin Với sự cố gắng của bản thân cùng sự giúp đỡ tận tình của thầy giáo Lưu Minh Tuấn, em đã hoàn thành đề tài này. Đây là lần đầu tiên được khảo sát thực tế và làm một đề tài lớn cho nên sự sai sót do thiếu kinh nghiệm là không thể tránh khỏi. Em rất mong có ý kiến của các thầy cô, giúp em hoàn thiện và có tính khả thi hơn. Em xin chân thành cảm ơn Hà nội, Ngày 26 tháng 04 năm 2008 Sinh viên Phạm Khắc Trà CHƯƠNG I: TỔNG QUAN VỀ ĐỂ TÀI Tiện ích của ứng dụng CNTT I.1. Vai trò của thông tin Có thể dễ dàng thấy rằng thông tin là một trong những yếu tố cơ bản của một quá trình thành lập, lựa chọn và ra quyết định để điều khiển một hệ thống nào đó, hệ thống này có thể là trong tự nhiên, trong xã hội hoặc trong tư duy. Quá trình thu thập thông tin, truyền tin, nhận tin, XLTT, lựa chọn quyết định, truyền lại quyết định, tiếp tục thu nhận thông tin,... là một quá trình liên tục tiếp diễn, một chu trình kín, vận động trong một hệ thống nhất định. Qua đó thấy rằng thông tin gắn liền với điều khiển một hệ thống nhất định. Đối với hệ thống kinh tế - xã hội thì từ điều khiển được thay bằng thuật ngữ quản lý. Ở đâu có điều khiển là ở đó có và cần thông tin. Vì vậy thông tin là một phạm trù triết học gắn chặt với quản lý, có nắm được thông tin thì mới làm chủ được quản lý. Trong cuộc sống hàng ngày ai ai cũng cần thông tin, bởi vì tất cả chúng ta dù là nhà quản lý hay người dân bình thường đều phải ra những quyết định cho riêng mình, mà một quyết định đúng đắn, sáng suốt, hiệu quả chỉ có được khi có những thông tin chính xác và kịp thời. Đối với một doanh nghiệp thì thông tin được coi là một trong ba điều kiện cần và ba điều kiện đủ để doanh nghiệp thành đạt (mô hình 6 “T”). T4 (Tâm – Đạo đức kinh doanh) Doanh nghiệp thành đạt với mô hình 6 “T” T1 (Tiền - Vốn) T2 (Tài – Trí) tuệ) T3 (Tin – Thông tin) T5 (Tín – Uy tín) T6 (Tình – Quan hệ) Khoá: Mã VT Tệp phân xưởng 3 điều kiện cần 3 điều kiện đủ Hình 1: Mô hình 6 ”T”- đánh giá vai trò quan trọng của thông tin. Như trên đã nói, thông tin có vai trò rất quan trọng trong mọi lĩnh vực hoạt động của con người. Đặc biệt trong giai đoạn phát triển như vũ bão của CNTT hiện nay, khi nhân loại đang bước vào ngưỡng cửa nền kinh tế tri thức thì vai trò của thông tin lại càng có ý nghĩa quyết định đến sự phát triển của các quốc gia. Trong bối cảnh của một nền kinh tế toàn cầu hóa, các nhà quản lý phải hoạt động với năng suất và hiệu quả cao nhất nhằm đạt được các mục tiêu quản lý đề ra. Những nguồn tài nguyên, vật lực truyền thống mà họ có, sử dụng để sản xuất ra của cải vật chất là: nhà xưởng, máy móc, con người, tiền bạc, nguyên vật liệu, năng lượng,... Rõ ràng những nguồn tài nguyên thiên nhiên sẽ bị cạn kiệt trong một tương lai gần. Trong giai đoạn hiện nay đã xuất hiện một nguồn tài nguyên còn quan trọng hơn nhiều đó là thông tin. Các doanh nghiệp, cơ quan, nhà quản lý đang càng ngày càng nhận thấy rằng thông tin là một trong những nguồn tài nguyên quan trọng nhất của họ, cần có biện pháp quản lý chặt chẽ và sử dụng một cách có hiệu quả. Hầu như trong bất kỳ lĩnh vực hoạt động nào tác dụng của thông tin cũng được đánh giá rất cao. Trong chiến tranh hay trong thời bình, cuộc chiến truy lùng thông tin luôn xảy ra khốc liệt, đầy ý nghĩa và mang tính sống còn đối với tất cả chúng ta. Mọi thông tin đều là cơ sở để ra được quyết định đúng đắn, tránh được những sai lầm do bệnh “thiếu thông tin” gây ra. Giá trị của thông tin thường chỉ được bàn đến trong bối cảnh của một quyết định. Về lý thuyết, giá trị của thông tin là giá trị của mối lợi thu được nhờ sự thay đổi hành vi quyết định gây ra bởi thông tin trừ đi chi phí để nhận được thông tin đó. I.2. Nền kinh tế thông tin Quá trình tự động hóa nền sản xuất công nghiệp và tin học hóa nền kinh tế diễn ra nhanh chóng đã làm cho khu vực thông tin tăng trưởng nhanh chóng, phần giá trị gia tăng tạo ra từ khu vực này ở các nước công nghiệp phát triển đã đạt hơn một nữa tổng sản phẩm quốc nội. Xu thế chung của các nền kinh tế phát triển trên thế giới là khu vực thông tin càng ngày càng chiếm vị trí chủ đạo, và như người ta đã nói, thế giới đang thực hiện một sự chuyển biến từ nền kinh tế công nghiệp sang nền kinh tế thông tin (tri thức). Chuyển biến từ nền kinh tế công nghiệp sang nền kinh tế thông tin là đặc điểm cơ bản của kinh tế thế giới trong thời đại hiện nay. Sự chuyển biến này xẩy ra mạnh mẽ ở những nước phát triển nhất, nhưng có ảnh hưởng to lớn trên toàn cầu. Đây là một sự chuyển biến về chất, mang ý nghĩa thời đại. Nếu cho đến gần đây, mọi nền kinh tế đều dựa chủ yếu vào các nguồn tài nguyên thiên nhiên, lấy việc khai thác và chế biến các tài nguyên là nguồn chủ yếu tạo ra của cải vật chất, tạo ra sự giàu có cho xã hội, thì nền kinh tế mới dựa chủ yếu vào nguồn tài nguyên thông tin và trí tuệ, xem “thông tin là nguồn tài nguyên quốc gia số một” như các nhà kinh tế Mỹ đã khẳng định từ giữa những năm 80. Trong nền kinh tế đó, khai thác các nguồn tài nguyên thông tin, các ý tưởng sáng tạo, các nguồn tri thức, các loại “chất xám” là những yếu tố chủ yếu để làm ra của cải, làm nên sự giàu có. Vì vậy, trong nền kinh tế mới, đầu tư vào vốn con người là chìa khóa để phát triển nhanh, để tạo nên năng lực cạnh tranh trong một thế giới của những nền kinh tế năng động, uyển chuyển, với những ưu thế so sánh luôn luôn biến động. Sự độc quyền, tính an toàn cứng nhắc dưới các hình thức bảo hộ trong các nền kinh tế cũ được thay thế bằng tính mở, sự phụ thuộc lẫn nhau của các thị trường nội địa và quốc tế, sự đua tranh không ngừng trong một tình thế cạnh tranh gay gắt. Đó là những đặc điểm làm cho nền kinh tế mới - nền kinh tế của thông tin và trí tuệ phát triển nhanh chóng, nó sẽ lôi kéo toàn thế giới vào ảnh hưởng của một “nền kinh tế toàn cầu”, với những yếu tố có tính chất toàn cầu mà sự tham gia của các quốc gia, bằng cách này hay cách khác, gần như là điều không tránh được. Tổng quan về cơ sở dữ liệu II.1 Cơ sở dữ liệu Cơ sở dữ liệu: (Database) là khối dữ liệu phản ánh thông tin được lưu trữ trên hệ thống theo một cấu trúc nào đó. Đáp ứng khả năng lưu trữ, truy cập và xử lý dữ liệu. Ngày nay cơ sở dữ liệu (CSDL) tồn tại trong mỗi ứng dụng ví dụ: Hệ kho và kiểm kê. Hệ nguồn nhân lực. Hệ thông tin khách hàng. CSDL hiện nay thường được tổ chức theo mô hình quan hệ. Hệ quản trị CSDL: (Database Managerment Systems) là một hệ thống phần mềm quản lý CSDL và tập các thao tác xử lý dữ liệu. Cung cấp một giao diện giữa người dùng và dữ liệu, cung cấp khả năng bảo mật đảm bảo tính an toàn bí mật của dữ liệu trong môi trường có nhiều người dùng khai thác. Một CSDL có thể có nhiều hệ quản trị CSDL(HQT CSDL). Một HQT CSDL nhất thiết phải có một CSDL, nhưng một CSDL không nhất thiết phải có một HQT CSDL. II.2 Mô hình dữ liệu Mô hình dữ liệu phản ánh khía cạnh cấu trúc logic của CSDL Mô hình phân cấp: Mô hình dữ liệu là một cây trong đó các nút biểu diễn các tập thực thể. Cấu trúc cây phản ánh mối liên hệ giữa các nút con và nút cha. Ví dụ 1.1: xét hình sau. Gốc A là thực thể lớn, ta chia thực thể A làm các thực thể nhỏ hơn là B, C, D Mô hình mạng lưới: mô hình dữ liệu biểu diễn là một đồ thị có hướng(cấu trúc đồ thị). Ví dụ 1.2: Mô tả cho mô hình dữ liệu mạng: Cho 5 đỉnh A,B,C,D,E. Các đỉnh này nối với nhau bởi các đường, đỉnh A gọi là tệp dữ liệu lớn được phân chia thành các tệp dữ liệu nhỏ hơn. Mô hình quan hệ: Mô hình này dựa trên cơ sở lý thuyết của tập hợp các quan hệ. Tức là tập k bộ cố định các ràng buộc được thể hiện qua các quan hệ. Mô hình hướng đối tượng: Hệ thống được xem như là tập các đối tượng tác động qua lại thông qua các thông báo để thực hiện các nhiệm vụ đặt ra. Trong bốn loại mô hình trên thì mô hình quan hệ có nhiều ưu điểm bởi lẽ mô hình dữ liệu quan hệ có tính độc lập dữ liệu rất cao, lại dễ sử dụng. Điều quan trọng là mô hình quan hệ được hình thức hoá toán học tốt, do đó nó được nghiên cứu, phát triển và cho được nhiều kết quả lý thuyết cũng như ứng dụng trong thực tiễn. II.3 Mô hình dữ liệu quan hệ Mô hình dữ liệu quan hệ: Cấu trúc của mô hình này được tạo nên bởi một hệ thống các quan hệ được biểu diễn dưới dạng bảng hai chiều. Một số khái niệm liên quan đến mô hình dữ liệu quan hệ. Bảng: (table) ghi chép dữ liệu về một nhóm phần tử nào đó gọi là thực thể. Mỗi bảng còn được gọi là một quan hệ vì các cột có mối quan hệ với nhau. Thực thể: (entity) là một nhóm sự vật, sự kiện, hiện tượng hay khái niệm với các đặc điểm và tính chất cần ghi chép và lưu giữ. Thực thể có thể là hữu hình hay là những quan niệm vô hình. Thuộc tính: (attribute) Mỗi thuộc tính là một cột(trường) trong bảng là chi tiết dữ liệu tách biệt, thường không chia nhỏ được nữa. Các thuộc tính góp phần mô tả thực thể. Giá trị của những thuộc tính chính là những chi tiết dữ liệu mà ta muốn lưu trữ. Dòng: (row) còn được gọi là bản ghi (record) nó ghi chép dữ liệu về một cá thể. Đây là bộ giá trị cụ thể của các thuộc tính. CSDL: (database) là một nhóm gồm nhiều bảng liên quan với nhau. Tập hợp các CSDL có liên quan được gọi là một hệ CSDL (database system) hay ngân hàng dữ liệu (databank). Mô hình dữ liệu quan hệ là một mô hình rất tiện lợi bao gồm các tệp được biểu diễn dưới dạng các bảng để mô tả cấu trúc logic của các CSDL. Đơn vị CSDL quan hệ là bảng, trong đó các dòng của bảng là các bản ghi dữ liệu cụ thể, còn tên các cột trong bảng là các thuộc tính. II.4 Quan hệ và các phép toán trên quan hệ Quan hệ (relation) là tập con của tích đề các k miền giá trị hữu hạn hoặc vô hạn của k thuộc tính. Cho k miền D1, D2, , Dk khi đó tích đề các của k miền ký hiệu là D1 x D2 x x Dk là tập các bộ có dạng (v1, v2, , vk) trong đó vi thuộc Di, mỗi bộ có k thành phần gọi là k_bộ(k ngôi). Như vậy quan hệ có thể là vô hạn nhưng ở đây ta luôn giả định rằng quan hệ là hữu hạn. Ví dụ 1.3: k = 2, D1 = {0, 1}, D2 = {a, b, c} khi đó D1 x D2 = {(0, a),(0, b), (0, c), (1, a), (1, b), (1, c)}. Tên quan hệ cùng với danh sách thuộc tính gọi là lược đồ quan hệ. Ví dụ SinhVien(MaSV, HoDem, Ten, NgaySinh, QueQuan) là một lược đồ quan hệ 4_ngôi và bộ (CQ460356, Phạm Ngọc, Diện, 18/12/1986, Lai Châu) là một bộ của lược đồ. Các phép toán trên quan hệ: Phép chiếu: Xét C là tập hợp các thuộc tính, R là quan hệ định nghĩa trên C. Phép chiếu của quan hệ R trên C là tập G thuộc C là sự thu hẹp của R đến các phần tử của G. Kí hiệu là P(R). Phép lọc: trích rút ra những bộ thoả mãn điều kiện từ một quan hệ cho trước để tạo thành một quan hệ mới. Phép hợp: cho trước hai quan hệ cùng ngôi và tập thuộc tính tương đương. Hợp của hai quan hệ là một quan hệ mới chứa tất cả các bộ xuất hiện ở một hay cả hai quan hệ đã cho. Phép trừ: cho trước hai quan hệ R1 và R2 cùng ngôi và tập các thuộc tính tương đương “Hiệu R1 cho R2” là một quan hệ mới bao gồm các bộ thuộc tính thuộc R1 nhưng không thuộc R2. Phép nhân: Tạo ra một quan hệ mới từ tất cả các tổ hợp có thể của hai bộ thuộc tính trong hai quan hệ cho trước(tích đề các của hai quan hệ đã cho). Đây là những phép toán cơ bản trong đại số quan hệ mà từ đó có thể kết hợp đưa ra những phép toán phức tạp hơn. II..5 Phụ thuộc hàm X, Y là hai tập thuộc tính có mặt cùng nhau trong quan hệ R. Ta nói rằng có một sự phụ thuộc hàm giữa X và Y nếu với mọi giá trị của X ta chỉ có thể kết hợp với mọi giá trị của Y tại điều kiện cho trước. Trong các HTTT quản lý khi cần thiết kế CSDL quan hệ thường đòi hỏi phải chọn lược đồ các quan hệ dựa trên một số các tiêu chuẩn cụ thể nào đó. Trọng tâm của công việc này là xét đến các phụ thuộc dữ liệu, nghĩa là các mối ràng buộc có thể có hiện hữu của lược đồ. f r Cho R = {a1, a2,.., an} là tập các thuộc tính, r = {h1, h2,.., hm} là một quan hệ trên R, và A, B Í R (A, B là tập cột hay tập thuộc tính). Khi đó ta nói A xác định hàm cho B hay B phụ thuộc hàm vào A trong r ký pháp A B f ("hi, hj Î r) (("a Î A ) ( hi(a) = hj(a)) Þ ("b Î B ) (hi(b) = hj(b) )) r Ta sẽ viết A ® B thay cho A B Nhận xét: Ta có thể thấy rằng B mà phụ thuộc hàm vào A, nếu hai dòng bất kỳ mà các giá trị của tập thuộc tính A mà bằng nhau từng cặp một, thì kéo theo các giá trị trên tập thuộc tính B cũng phải bằng nhau từng cặp một. Ví dụ 1.4: Xét quan hệ ThiSinh SBD HoTen DiaChi Tinh KhuVuc KHA0001 Nguyễn Văn An 12 Kỳ lừa Lạng Sơn 1 KHA0002 Nguyễn Hải Anh 16 Hàng đào Hà Nội 3 KHA0003 Vũ Vân Anh 40 Trần hưng đạo Hải Dương 2 Trong quan hệ ThiSinh, dựa vào định nghĩa phụ thuộc hàm của quan hệ ta có: {Tinh} ® {KhuVuc} {SBD} ® {HoTen, DiaChi, Tinh, KhuVuc} Khái niệm phụ thuộc hàm miêu tả một loại ràng buộc(phụ thuộc dữ liệu) xẩy ra tự nhiên nhất giữa các tập thuộc tính. Dễ thấy Fr là tập tất cả các phụ thuộc hàm đúng trong r. Chẳng hạn có tập phụ thuộc hàm F={A®B, B®C} thì A®C suy ra từ F. Gọi F+ là bao đóng (Closure) của F, tức là tập tất cả các phụ thuộc hàm được suy diễn logic từ F. Nếu F = F+ thì F là họ đầy đủ (Full Family) của phụ thuộc hàm. Để xác định khoá của lược đồ quan hệ và các suy diễn logic giữa các phụ thuộc hàm cần thiết phải tính được F+ từ F. Xét hệ tiên đề Armstrong. Gọi R(U) là lược đồ quan hệ với U = {A1, A2, ... An} là tập các thuộc tính và X, Y, Z Í U. Hệ tiên đề Armstrong bao gồm: A1 (Phản xạ): Nếu Y Í X thì X® Y A2 (Tăng trưởng): Nếu Z Í U và X ® Y thì XZ ® YZ, trong đó kí hiệu XZ là hợp của hai tập hợp X, Z thay cho kí hiệu X È Z A3 (Bắc cầu): Nếu X ® Y và Y ® Z thì X ® Z Với những lập luận trên có thể rút ra những nhận xét: Giả sử F là tập các phụ thuộc hàm đúng trên quan hệ r. Nếu X ® Y là một phụ thuộc hàm được suy dẫn từ F nhờ hệ tiên đề Armstrong thì X ® Y là đúng trên quan hệ r. Những kết luận suy ra từ hệ tiên đề Armstrong: Luật hợp: Nếu X ® Y và X ® Z thì X ® YZ Luật tựa bắc cầu: Nếu X ® Y và WY ® Z thì WX ® Z Luật tách: Nếu X ® Y và Z Í Y thì X ® Z II.6 Khóa Khóa của quan hệ là một hoặc một tập hợp các thuộc tính là nguồn của các phụ thuộc hàm có đích là các thuộc tính khác của quan hệ. Giả sử r = {h1, h2,.., hm} là một quan hệ, s = là một sơ đồ quan hệ, trong đó R = {a1, a2,..., an} là tập các thuộc tính, F là tập tất cả các phụ thuộc hàm trên R. Gọi Y là một họ f trên R và A Í R. Khi ấy A là một khoá của r(tương ứng là một khoá của s, một khóa của Y) nếu: A®R (A®R Î F+, (A, R) ÎY). Nghĩa là A phải thoả mãn các tính chất: Với bất kỳ hai bộ h1, h2 Î r đều tồn tại một thuộc tính a Î A sao cho h1(a) ¹ h2(a). Nói cách khác, không tồn tại hai bộ mà có giá trị bằng nhau trên mọi tập thuộc tính của A. Điều kiện này có thể viết t1(A) ¹ t2(A). Khi biết giá trị thuộc tính trong A sẽ biết được các giá trị của thuộc tính khác. Theo định nghĩa của Codd: Nếu có hai dòng bằng nhau trên các giá trị của khoá A thì sẽ kéo theo bằng nhau trên các cột còn lại. Như vậy sẽ có hai cột bằng nhau, điều này không thể có được và nếu có thì đấy là dữ liệu nhầm lẫn. Chúng ta gọi A(A Í R) là một khoá tối tiểu của r(s, Y) nếu: A là một khoá của r(s, Y) tức A ® R và Bất kỳ một tập con thực sự của A không là khoá của r(s, Y) hay không tồn tại A' tập con thực sự A' Ì A mà A' ® R. Khóa chính là hình ảnh của cột mã số, số thứ tự. Khóa đóng một vai trò rất quan trọng trong tìm kiếm, sau khi tìm kiếm thì người ta mới tiến hành cập nhật, xử lý dữ liệu. Dù rằng dễ thấy A có thể chính bằng R nhưng người ta vẫn phải đi tìm khóa tối thiểu, để quá trình tìm kiếm bản ghi là nhanh nhất. Một sơ đồ quan hệ có thể có nhiều khóa, thậm chí còn có nhiều khoá tối thiểu. Ví dụ 1.5: Xét bảng quan hệ BanHang Mỗi giá trị của khóa MaHang đều xác định duy nhất một loại mặt hàng MaHang TenHang SoLuong DonGia(USD) CPUIT1001 Intel Core 2 Duo E6550 1 177 RAMKM18 KingMax 1GB/1066 2 52 MBAS046 ASUS P5K-E Wifi 1 198 II.7 Chuẩn hóa cơ sở dữ liệu Việc biểu diễn quan hệ thông qua một CSDL quan hệ đảm bảo làm tối thiểu sự dư thừa thông tin, cập nhật dữ liệu nhanh và không rời rạc. Mục đích của biểu diễn quan hệ qua các chuẩn để thoả mãn từng phần hay toàn bộ các tiêu chuẩn trên. Do việc cập nhật dữ liệu gây nên những dị thường dữ liệu cho nên các quan hệ cần phải được biến đổi thành các dạng phù hợp. Quá trình đó được xem là quá trình chuẩn hoá. Quan hệ được chuẩn hoá là quan hệ mà trong đó mỗi miền của một thuộc tính chỉ chứa những giá trị nguyên tố(Atomic) nghĩa là không phân nhỏ được nữa và do đó mỗi giá trị trong quan hệ cũng là nguyên tố. Quan hệ có chứa các miền giá trị không nguyên tố gọi là quan hệ không chuẩn hoá. Một quan hệ được chuẩn hoá có thể thành một hoặc nhiều quan hệ chuẩn hoá khác và không làm mất mát thông tin. Quan hệ được gọi là chuẩn hoá nếu số các thuộc tính trong mọi bộ giá trị của quan hệ là không đổi. Chuẩn hóa 1NF: Mọi quan hệ chuẩn hóa đều ở dạng chuẩn thứ nhất. Trong số các phụ thuộc hàm của một quan hệ R có một phụ thuộc hàm có nguồn là tập con của khóa. Tức là toàn bộ các thuộc tính của mỗi bộ trong quan hệ đều mang giá trị đơn. Chuẩn hóa 2NF: Một quan hệ ở dạng chuẩn thứ hai nếu: Nó ở dạng chuẩn thứ nhất; Mỗi thuộc tính không khóa của quan hệ R phụ thuộc hàm đầy đủ vào khóa chính. Nói một cách khác một quan hệ không thuộc dạng chuẩn thứ hai nếu có một thuộc tính không phải là khóa chính mà chỉ phụ thuộc vào một phần của khóa chính. Ví dụ: K ® Y và X ® Z thì không tồn tại trường hợp X Í K. Trong đó K, X, Y, Z là tập con của quan hệ R, K là khoá chính của quan hệ R. Quan hệ ở dạng chuẩn hai theo nghĩa chặt nếu có phụ thuộc hàm gián tiếp. Chuẩn hóa 3NF: Một quan hệ thuộc dạng chuẩn thứ ba nếu: Nó ở dạng chuẩn thứ hai; Tồn tại một hay một tập các thuộc tính là nguồn của phụ thuộc hàm trực tiếp có đích lần lượt là các thuộc tính khác của quan hệ. Quan hệ ở dạng chuẩn ba theo nghĩa chặt nếu mọi phụ thuộc hàm đi ra từ khoá của quan hệ đều là sơ cấp và trực tiếp. Ví dụ: K ® Y và Y ® X thì không tồn tại K ® X. Nói một cách khác một quan hệ không thuộc dạng chuẩn thứ ba nếu có một cột không thuộc khóa chính mà phụ thuộc vào một cột khác cũng không thuộc khóa chính. Chuẩn hóa BCNF: Một quan hệ ở dạng chuẩn Boyce-Codde nếu: Nó ở dạng chuẩn thứ ba; Không tồn tại một phụ thuộc hàm nào có nguồn là một thuộc tình không khóa và đích là một phần của khóa. Ví dụ: K ® Y và X Í K thì không tồn tại Y ® X Các dạng chuẩn hóa trên thường xuyên được sử dụng trong thiết kế CSDL quan hệ Các chuẩn cho phụ thuộc hàm đa trị: Chuẩn hóa 4NF: Một quan hệ là ở dạng chuẩn thứ tư nếu: Nó là ở dạng chuẩn Boyce-Codd; Nếu có tồn tại một phụ thuộc hàm đa trị không tầm thường thì nguồn của phụ thuộc hàm là khoá của quan hệ . Chuẩn hóa 5NF: Một quan hệ R ở dạng chuẩn 5 nếu mọi phụ thuộc hàm nối gây ra bởi các khoá của quan hệ R. Khảo sát nơi thực tập III.1 Giới thiệu về công ty: Tên công ty: Công ty cổ phần Điện tử Tin học FSC Ngày thành lập: 27 tháng 03 năm 2002 Trụ sở chính: Tầng 1 Toà nhà 3B – Phương Liệt – Thanh Xuân – Hà Nội Website: Điện thoại: 04.8688809, 04.8688832 Fax: 04.8688810 Email: fsc@hn.vnn.vn; info@fscvietnam.com Vốn điều lệ: 3.000.000.000đ Giám đốc: Đỗ Chí Cường Phó Giám đốc: Trần Việt Cường FSC được thành lập vào tháng 3 năm 2002 trên cơ sở một nhóm chuyên gia có nhiều kinh nghiệm trong lĩnh vực công nghệ thông tin và truyền thông. Đến nay, FSC đã xây dựng được một đội ngũ nhân viên có trình độ chuyên môn cao, dày dạn kinh nghiệm, quy trình sản xuất hợp lý, tổ chức quản lý chuyên nghiệp trong việc tư vấn, lập và triển khai thực thi các dự án lớn trong lĩnh vực công nghệ thông tin, điện tử và tự động hoá. Tinh thần của FSC là  tinh thần không ngừng học hỏi và luôn nỗ lực vươn cao, xây dựng một FSC đoàn kết, vững mạnh. Mong muốn của FSC là hướng tới một công ty Việt Nam kiểu mẫu trong thời kỳ mới: Quản lý chuyên nghiệp, năng động hiệu quả, đậm đà bản sắc văn hóa Việt. Mục tiêu của FSC là tập trung nghiên cứu đưa các giải pháp hữu ích dựa trên các công nghệ tiên tiến vào cuộc sống để đem lại sự giàu có về vật chất và phong phú về tinh thần góp phần làm giàu cho đất nước và xã hội. Tiêu chí hoạt động của chúng tôi là "Phát huy sức mạnh trí tuệ tập thể của người Việt", mang trí tuệ và bản sắc của người Việt ra thế giới. Bởi vậy FSC luôn tập trung đầu tư vào con người, trọng người hiền, đãi người tài, tạo điều kiện tốt nhất để phát huy sức mạnh của mỗi người trong một tập thể thống nhất để tạo nên sức mạnh của công ty. Lĩnh vực chuyên sâu của FSC là tập trung đầu tư vào sản xuất các sản phẩm phần mềm, nghiên cứu lắp đặt các hệ thống quản lý tổng thể, tích hợp với các sản phẩm điều khiển, điện tử công nghệ cao. FSC luôn nỗ lực phấn đấu để trở thành một công ty công nghệ hàng đầu tại Việt nam với định hướng: “Giải pháp hiệu quả nhất”. Trên thị trường, người dùng luôn đánh giá các các sản phẩm và dịch vụ của FSC bởi chất lượng vựợt trội và tính hiệu quả. Điều đó được thể hiện thông qua hệ thống khách hàng rộng rãi trong nhiều lĩnh vực khác nhau ở trong và ngoài nước. Nguyên tắc hợp tác của chúng tôi là cùng phát triển. Chúng tôi luôn lắng nghe và thấu hiểu mong muốn của khách hàng để đưa ra các giải pháp hợp lý, hữu ích và phù hợp với khoản tiền đầu tư của họ. Với các đối tác chúng tôi luôn đặt niềm tin và sự tôn trọng để hướng tới mục tiêu cùng có lợi. III.2 Sơ đồ cơ cấu tổ chức Ban Giám đốc Kế toán hàng chính P.Hành chính P.Kinh doanh Phần mềm P.Phần mềm P.Tư vấn giải pháp P.kinh doanh P.Kỹ thuật P.Triển khai P.Triển khai Phần mềm Cty FSC Cty FSCD Phát biểu đề tài IV.1 Giới thiệu về để tài: IV.1.1 Tổng quan về đề tài Quản lí hàng hoá là nghệ thuật thu nhận, xử lý và cung cấp thông tin về toàn bộ tài sản và sự vận động của tài sản (hay là toàn bộ thông tin về tài sản và các hoạt động kinh tế tài chính) trong doanh nghiệp nhằm cung cấp những thông tin hữu ích cho việc ra các quyết định về kinh tế - xã hội và đánh giá hiệu quả của các hoạt động trong doanh nghiệp. Để cung cấp thông tin về kinh tế tài chính thực sự hữu dụng về một doanh nghiệp, cần có một số công cụ theo dõi những hoạt động kinh doanh hàng ngày của doanh nghiệp, trên cơ sở đó tổng hợp các kết quả thành các bản báo cáo. Những phương pháp mà một doanh nghiệp sử dụng để ghi chép và tổng hợp thành các báo cáo định kỳ tạo thành hệ thống quản lý Bán hàng là việc chuyển quyền sở hữu sản phẩm, hàng hoá gắn với phần lớn lợi ích và rủi ro cho khách hàng đồng thời được khách hàng thanh toán hoặc chấp nhận thanh toán. Bán hàng là giai đoạn cuối cùng của hoạt động sản xuất kinh doanh, đây là quá trình chuyển hoá vốn từ hình thái vốn sản phẩm, hàng hoá sang hình thái vốn tiền tệ hoặc vốn trong thanh toán. Vì vậy, đẩy nhanh quá trình bán hàng đồng nghĩa với việc rút ngắn chu kỳ sản xuất kinh doanh, tăng nhanh vòng quay của vốn, tăng lợi nhuận của doanh nghiệp. Kế toán bán hàng có nhiệm vụ phải phản ánh và ghi chép đầy đủ, kịp thời, chính xác tình hình hiện có và sự biến động của từng loại sản phẩm, hàng hoá theo chỉ tiêu số lượng, chất lượng, chủng loại, giá trị. Đồng thời, cung cấp các thông tin kế toán phục vụ cho việc lập báo cáo tài chính và định kỳ phân tích hoạt động kinh tế liên quan đến quá trình bán hàng. IV.1.2 Đề xuất phương án Ta thấy giải pháp tốt nhất ở đây là xây dựng phần mềm quản lý việc bán hàng của công ty, phần mềm này đảm nhiệm toàn bộ từ viêc xuất, nhận đơn đặt hàng, hóa đơn bán hàng, việc bảo hành nó còn sẽ đưa ra các báo cáo tông thể nhất vể doanh số bán của từng loại mặt hàng, doanh số bán hàng của mỗi nhân viên, tổng hợp hoạt đông kinh doanh của công ty. Phần mềm này sẽ được cài vào tất cả các máy của công ty, nhưng mỗi bộ phần chỉ được quyền truy cập vào một chức năng nhất định. Phải có tài khoản mới sử dụng được phần mềm. Tên của phần mễm sẽ xây dựng là: Phần mềm quản lý bán hàng của Công Ty Cổ Phần Điện tử Tin Học FSC. Ngôn ngữ lập trình sử dụng là Visual basic 6.0 và hệ quản trị cơ sở dữ liệu Microsoft SQL Server 2000 IV.1.3 Thuận lợi và khó khăn Với tình hình thực tế của công ty viêc xây dựng dự án này ta thấy được khá nhiều thuận lợi như: cơ sở vật chất đã khá đầy đủ có thể tận dung được các thiết bị đã có sẵn trong công ty, vì là một công ty tin học nên trình độ tin của các nhân viên cung như giám đốc cung khá cao, viêc đào tạo hướng dẫn sự dụng sẽ không tốn nhiều thời gian. Ngoài ra ta cung có thể nhận thấy một khó khăn là việc chuyển toàn bộ dữ liệu từ kho dữ liệu khổng lồ của công ty vào dữ liệu của phần mêm sẽ gặp nhiều khó khăn vì sự không đồng bộ của hệ thống mới với hệ thống cũ. IV.2 Phạm vi đề tài Đề tài này phục vụ quản lý bán hàng tại công ty Cổ phần Điện tử Tin học FSC, với việc quản lý bán hàng Phạm vi đó chỉ là một bộ phận nhỏ của công ty, với mục đích quản lý toàn và giải quyết một một phần nhỏ của công ty, quản lý bán hàng, mà cụ thể là nhập xuất hàng hoá IV.3 Mục đích của đề tài Việc sử dụng một phần mêm chuyên việt sẽ giúp các nhân viên của công ty thực hiên các thao tac nghiệp vụ một cách đơn giản, nhanh chóng và chính xác hơn. Tự động hóa trong việc tông hợp hợp dữ liệu, tinh toán tông kết sẽ được thưc hiện nhanh chong, chính xác Các báo cáo được đưa ra thường xuyên sẽ giúp giám đốc kịp thời lắm được tình hình hoạt động của công ty, cũng như hiệu năng làm việc của nhân viên Các báo cáo tổng hợp sẽ giúp giám đốc xác định được phương hường làm việc trong tương lai. CHƯƠNGII : KHẢO SÁT HỆ THỐNG Khảo sát quá trình hoạt động nghiệp vụ Một công ty thương nghiệp được phép kinh doanh một số loại hàng nào đó. Công ty có nhiều cửa hàng. Mỗi cửa hàng có một tên, một địa chỉ và một số điện thoại. Bộ phận quản lý của mỗi cửa hàng gồm một người cửa hàng trưởng, một số nhân viên đảm nhận các công việc khác như: bán hàng, bảo vệ, thủ kho.  Mỗi một loại hàng mà công ty được phép kinh doanh thường gồm nhiều mặt hàng. Mỗi một mặt hàng được nhận biết qua tên hàng, đơn vị tính và được gán cho một mã số gọi là mã hàng để tiện việc theo dõi.  Phòng kinh doanh ngoài việc nắm bắt thị trường còn phải theo dõi tình hình mua bán của công ty để kinh doanh hiệu quả. Những mặt hàng nào bán được nhiều, và vào thời điểm nào trong năm. Ðồng thời nhận các báo cáo tồn kho ở các cửa hàng, tổng hợp lại để xem mặt hàng nào tồn dưới ngưỡng cho phép thì đề xuất với ban giám đốc điều phối bộ phận cung ứng mua hàng về nhập kho để chủ đôïng trong kinh doanh; những mặt hàng nào tồn động quá lâu thì đề xuất phương án giải quyết, có thể bán hạ giá nhằm thu hồi vốn dành kinh doanh mặt hàng khác.  Khi công ty mua hàng về phải làm thủ tục nhập kho tại các cửa hàng. Mỗi lần nhập kho một phiếu nhập được lập. Phiếu nhập kho thường tổng hợp từ những hóa đơn mà công ty mua từ một đơn vị khác trong một chuyến hàng nào đó. Mỗi phiếu nhập chỉ giải quyết cho việc nhập hàng vào một cửa hàng và do một nhân viên lập và chịu trách nhiệm kiểm tra về chất lượng, số lượng hàng nhập về. Trên phiếu nhập có ghi rõ họ tên, địa chỉ của người bán hàng cho công ty để sau này tiện theo dõi công nợ; họ tên nhân viên cửa hàng chịu trách nhiệm nhập kho cùng các mặt hàng, số lượng, đơn giá mua tương ứng; cộng tiền hàng, tiền thuế GTGT, và tổng số tiền mà công ty phải thanh toán cho người bán. Việc theo dõi chi phí cho một lần nhập hàng (vận chuyển, bốc vác, thuê kho bãi,...) có thể được thực hiện bằng một bút toán khác mà để cho đơn giản chúng ta không đề cập ở đây. Công việc nhập hàng xảy ra hàng ngày khi có hàng được mua về. Khi khách mua tại các cửa hàng:  Nếu mua lẻ, khách hàng phải trả tiền mặt, nhân viên bán hàng phải ghi nhận mặt hàng, số lượng bán, đơn giá bán tương ứng với từng mặt hàng, xác định thuế suất GTGT và nhận tiền của khách hàng. Ðơn giá bán tùy theo thời điểm bán cũng như khách mua và thường do cửa hàng trưởng quy định. Cuối ca bán hàng, nhân viên này phải tổng hợp các mặt hàng mà mình bán được để lập hóa đơn, trên đó xem như người mua là chính nhân viên bán hàng này, đồng thời phải nộp hết số tiền bán được cho thủ quỹ.  Nếu khách hàng muốn mua trả tiền sau phải được phép của cửa hàng trưởng để thỏa thuận về thời hạn thanh toán. Ðiều này cũng được ghi nhận trên hóa đơn cho khách hàng này để tiện việc theo dõi công nợ của người mua.  Bất kỳ hóa đơn kiểu nào, ngoài số thứ tự của hóa đơn, mỗi hóa đơn chỉ thuộc một quyển hóa đơn mang một số seri nào đó. Mỗi loại hàng có một tỷ lệ thu thuế khác nhau do ngành thuế quy định. Trên một hóa đơn bán hàng chỉ bán những mặt hàng có cùng một thuế suất GTGT mà thôi. Công việc bán hàng xảy ra hàng ngày khi có khách mua. Cuối tháng, công ty phải lập các báo cáo thuế giá trị gia tăng hàng bán, báo cáo thuế giá trị gia tăng hàng mua cho chi cục thuế, tình hình sử dụng hóa đơn của mỗi quyển hóa đơn (mỗi quyển bán được bao nhiêu hóa đơn, tờ hóa đơn nào không dùng, tổng tiền thu từ bán hàng, tiền thuế GTGT tương ứng là bao nhiêu), hạch toán giá vốn hàng bán, tình hình kinh doanh bán hàng, báo cáo tồn đầu - nhập - bán - tồn cuối từng mặt hàng, thẻ kho từng mặt hàng tại mỗi cửa hàng. Có nhiều phương pháp hạch toán giá vốn hàng bán như bình quân gia quyền, nhập trước - xuất trước, nhập sau - xuất trước... Công ty phải quyết định chọn một cách và báo cho cơ quan quản lý biết về phương thức hạch toán của mình. Ðể cho đơn giản ta giả thiết đơn vị hạch toán giá vốn hàng bán bằng phương pháp bình quân gia quyền. Ðơn giá vốn của mỗi mặt hàng tại mỗi cửa hàng trong tháng bằng tổng của số tiền tồn cuối tháng trước và số tiền mua chia cho tổng số lượng tồn cuối tháng trước và số lượng nhập của mặt hàng đó vào cửa hàng trong tháng. Từ đơn giá vốn của mỗi mặt hàng tại mỗi cửa hàng người ta mới xác định được trị giá vốn của hàng đã bán ra trong bảng báo cáo nhập - xuất - tồn, cũng như trong bảng kết quả kinh doanh bán hàng và trên thẻ kho của từng mặt hàng trong tháng.  Chi cục thuế sẽ căn cứ vào những báo cáo thuế suất trên để xác định số tiền thuế mà công ty phải nộp hay được chi cục thuế sẽ hoàn lại của tháng đó.  Trong thực tế việc quản lý hàng hóa phức tạp hơn nhiều vì có nhiều hoạt động, mỗi hoạt động đều có cách thức hạch toán riêng mà chúng ta không đề cập ở đây. Chẳng hạn nhập hàng nhập khẩu, xuất điều và nhập chuyển kho nội bộ, nhập hàng trả lại, xuất trả hàng đã mua, nhập hàng ủy thác, bán hàng cho các đại lý, bán hàng ký gửi,... Hay việc xác định giá vốn còn phải dựa vào việc phân bổ phí cho mỗi mặt hàng trong mỗi phiếu nhập khi có sự nhập kho,...  Kèm theo sau đây là một số vật chứng, mẫu biểu mà các nguyên tắc pháp lý đòi hỏi phải tuân thủ khi quản lý việc kinh doanh hàng hóa do nhà nước quy định. Một số mẫu báo cáo III. Lựa chọn môi trường cài đặt III. 1 Giới thiệu về ngôn ngữ lập trình III. 1.1. Lịch sử hình thành và phát triển Visual basic 6.0 Visual Basic là con đường nhanh nhất và đơn giản nhất để tạo những ứng dụng MicroSoft Windows. Bất kể bạn là lập trình viên chuyên nghiệp hay mới làm quen. VB cung cấp cho bạn một tập hợp các công cụ hoàn chỉnh để nhanh chóng phát triển ứng dung. Visual nói đến phương thức dùng để tạo giao diện đồ họa người dùng (GUI - Graphic User Interface). Thay vì phải viết những mã để mô tả sự xuất hiện và vị trí của những thành phần giao diện, ta chỉ cần thêm vào những đối tượng đã được định nghĩa sẵn bằng giao diện đồ họa kéo thả rất nhanh chóng. Basic nói đến là ngôn ngữ Basic (Beginners All-Purpose Symbolic Instruction Code) một ngôn ngữ được sử dụng nhiều nhất hơn bất cứ một ngôn ngữ nào khác. Với những công cụ thông dịch (Interpreters) và biên dịch (Compilers) cho ngôn ngữ làm BASIC trở nên rất phổ thông. Visual Basic được phát triển dần dần dựa trên ngôn ngữ Basic, và bây giờ chứa đựng hàng trăm lệnh, hàm, và từ khóa có quan hệ trực tiếp với giao điện đồ họa Windows. Sự chào đời của Visual Basic Version 1.0 vào năm 1991 thật sự thay đổi bộ mặt lập trình trong Công Nghệ tin học. Trước đó, ta không có 1 giao diện bằng hình ảnh (GUI) với một IDE (Integrated Development Environment) giúp các chuyên gia lập trình tập trung công sức và thì gìờ vào các khó khăn liên hệ đến doanh nghiệp của mình. Mỗi người phải tự thiết kế giao diện qua thư viện có sẵn Windows API (Application Programming Interface) trong nền Windows. Điều này tạo ra những trở ngại không cần thiết làm phức tạp việc lập trình. Visual Basic giúp ta bỏ qua những hệ lụy đó, chuyên gia lập trình có thể tự vẽ cho mình giao diện cần thiết trong ứng dụng (application) một cách dễ dàng và như vậy, tập trung nỗ lực giải đáp các vần đề cần giải quyết trong doanh nghiệp hay kỹ thuật. Ngoài ra, còn nhiều công ty phụ trách phát triển thêm các khuôn mẫu (modules), công cụ (tools, controls) hay ứng dụng (application) phụ giúp dưới hình thức VBX cộng thêm vào giao diện chính càng lúc càng thêm phong phú. Khi Visual Basic phiên bản 3.0 được giới thiệu, thế giới lập trình lại thay đổi lần nữa. Lúc này, ta có thể thiết kế các ứng dụng (application) liên hệ đến CSDL (Database) trực tiếp tác động (interact) đến người dùng qua DAO (Data Access Object). Phiên bản 4.0 và 5.0 mở rộng khả năng VB nhắm đến Hệ Điều Hành Windows 95. Phiên bản 6.0 cung ứng 1 phương pháp mới nối với CSDL (Database) qua sự kết hợp của ADO (Active Data Object). ADO còn giúp các chuyên gia phát triển mạng nối với CSDL (Database) khi dùng Active Server Pages (ASP). Tuy nhiên, VB phiên bản 6.0 (VB6) không cung ứng tất cả các đặc trưng của kiểu mẫu ngôn ngữ lập trình khuynh hướng đối tượng (Object Oriented Language - OOL) như các ngôn ngữ C++, Java. Visual Basic cũng được đóng gói trong những ứng dụng MicroSoft Excel, MicroSoft Access, làm môi trường cho việc phát triển những ứng dụng nhỏ ngay trong một CSDL hay một bảng tính Excel. Visual Basic có thể đáp ứng được tất cả những mục đích xây dựng ứng dụng từ quy mô nhỏ cho bản thân hay một nhóm đến quy mô lớn cho một hệ thống các công ty lớn, phân phối những ứng dụng toàn cầu. Những chức năng truy xuất dữ liệu cho phép lập trình viên tạo ra những CSDL, những ứng dụng Front-End, và những thành phần phạm vi Server-Side cho hầu hết các dạng thức CSDL phổ biến, bao gồm MicroSoft Access, Microsoft SQL Server, và những hệ quản trị CSDL mức Enterprise khác. Những kỹ thuật ActiveX cho phép lập trình viên sử dụng những chức năng được cung cấp từ những ứng dụng khác, như là chương trình xử lý văn bản MS Word, bảng tính MS Excel Cùng với mạng toàn cầu làm cho các ứng dụng dễ dàng nhận được dữ liệu được cập nhật từ những thành viên hệ thống có trách nhiệm cũng như cung cấp những tài liệu và ứng dụng qua Internet, Intranet cho các đối tượng sử dụng thông tin đã được ứng dụng xử lý. Cũng như có thể tạo những ứng dụng Internet Server. Ứng dụng của bạn kết thúc là một file thực thi thực sự. Lập trình viên có thể sử dụng máy ảo Visual Basic để phân phối ứng dụng cho người dùng một thật đơn giản và dễ dàng. III. 1.2. Cấu Trúc một ứng dụng Visual Basic. Một ứng dụng thật ra là một tập hợp các chỉ dẫn trực tiếp đến máy tính để thi hành một hay nhiều tác vụ. Cấu trúc của một ứng dụng là phương pháp trong đó các chỉ dẫn được tổ chức, đó là nơi chỉ dẫ được lưu giữ và thi hành những chỉ dẫn trong một trình tự nhất định. Vì một ứng dụng Visual Basic trên cơ bản là những đối tượng, cấu trúc mã đóng để tượng trưng cho nhưng mô hình vật lý. Lập trình viên phát triển những ứng dụng bằng việc định nghĩa những đối tượng chứa mã và dữ liệu. Form cái mà chúng ta nhìn thấy trên màn hình là tượng trưng cho những thuộc tính, quy định cách xuất hiện và xử lý. Trong mỗi form của ứng dugj có một quan hệ module-form(*.frm) dùng để chứa đựng mã của nó. Mỗi module chứa những thủ tục sự kiện - những đoạn mã, nơi đặt những chỉ dẫn, cái sẽ được thi hành trong việc đáp ứng những sự kiện nhất định. Form có thể chưa những điều khiển, mối điều khiển có một tập hợp những thủ tục sự kiện trong module form đó. Mã không chỉ quan hệ với một form chỉ định hay một điều khiển có thể được đặt trong một module chuẩn (*.bas). Một thủ tục có thể được dùng để đáp ứng những sự kiện trong những đối tượng khác nhau phải được đặt trong cùng một chuẩn. Một lớp module (*.cls) được dùng để tạo những đối tượng người dùng định nghĩa, cái được sử dụng bên trong những ứng dụng của bạn. Trong khi module chuẩn chỉ chứa mã, một lớp module chứa đựng cả mã và dữ liệu. Vì vậy ta có thể nghĩ nó như một điều khiển. III. 2 Giới thiệu về CSDL SQL server 2000 III. 2.1 Tổng quan về SQL server 2000 Ngôn ngữ hỏi có cấu trúc (SQL) và các hệ quản trị cơ sở dữ liệu quan hệ là một trong những nền tảng kỹ thuật quan trọng trong công nghiệp máy tính. Cho đến nay, có thể nói rằng SQL đã được xem là ngôn ngữ chuẩn trong cơ sở dữ liệu. Các hệ quản trị cơ sở dữ liệu quan hệ thương mại hiện có như Oracle, SQL Server, Informix, DB2,... đều chọn SQL làm ngôn ngữ cho sản phẩm của mình Vậy thực sự SQL là gì? Tại sao nó lại quan trọng trong các hệ quản trị cơ sở dữ liệu? SQL có thể làm được những gì và như thế nào? Nó được sử dụng ra sao trong các hệ quản trị cơ sở dữ liệu quan hệ? Nội dung của chương này sẽ cung cấp cho chúng ta cái nhìn tổng quan về SQL và một số vấn đề liên quan. III. 2.2 SQL là ngôn ngữ cơ sở dữ liệu quan hệ SQL, viết tắt của Structured Query Language (ngôn ngữ hỏi có cấu trúc), là công cụ sử dụng để tổ chức, quản lý và truy xuất dữ liệu đuợc lưu trữ trong các cơ sở dữ liệu. SQL là một hệ thống ngôn ngữ bao gồm tập các câu lệnh sử dụng để tương tác với cơ sở dữ liệu quan hệ. Tên gọi ngôn ngữ hỏi có cấu trúc phần nào làm chúng ta liên tưởng đến một công cụ (ngôn ngữ) dùng để truy xuất dữ liệu trong các cơ sở dữ liệu. Thực sự mà nói, khả năng của SQL vượt xa so với một công cụ truy xuất dữ liệu, mặc dù đây là mục đích ban đầu khi SQL được xây dựng nên và truy xuất dữ liệu vẫn còn là một trong những chức năng quan trọng của nó. SQL được sử dụng để điều khiển tất cả các chức năng mà một hệ quản trị cơ sở dữ liệu cung cấp cho người dùng bao gồm: • Định nghĩa dữ liệu: SQL cung cấp khả năng định nghĩa các cơ sở dữ liệu, các cấu trúc lưu trữ và tổ chức dữ liệu cũng như mối quan hệ giữa các thành phần dữ liệu. • Truy xuất và thao tác dữ liệu: Với SQL, người dùng có thể dễ dàng thực hiện các thao tác truy xuất, bổ sung, cập nhật và loại bỏ dữ liệu trong các cơ sở dữ liệu. • Điều khiển truy cập: SQL có thể được sử dụng để cấp phát và kiểm soát các thao tác của người sử dụng trên dữ liệu, đảm bảo sự an toàn cho cơ sở dữ liệu • Đảm bảo toàn vẹn dữ liệu: SQL định nghĩa các ràng buộc toàn vẹn trong cơ sở dữ liệu nhờ đó đảm bảo tính hợp lệ và chính xác của dữ liệu trước các thao tác cập nhật cũng như các lỗi của hệ thống. Như vậy, có thể nói rằng SQL là một ngôn ngữ hoàn thiện được sử dụng trong các hệ thống cơ sở dữ liệu và là một thành phần không thể thiếu trong các hệ quản trị cơ sở dữ liệu. Mặc dù SQL không phải là một ngôn ngữ lập trình như C, C++, Java,... song các câu lệnh mà SQL cung cấp có thể được nhúng vào trong các ngôn ngữ lập trình nhằm xây dựng các ứng dụng tương tác với cơ sở dữ liệu. Khác với các ngôn ngữ lập trình quen thuộc như C, C++, Java,... SQL là ngôn ngữ có tính khai báo. Với SQL, người dùng chỉ cần mô tả các yêu cầu cần phải thực hiện trên cơ sở dữ liệu mà không cần phải chỉ ra cách thức thực hiện các yêu cầu như thế nào. Chính vì vậy, SQL là ngôn ngữ dễ tiếp cận và dễ sử dụng. III.2.3 Vai trò của SQL server 2000 Bản thân SQL không phải là một hệ quản trị cơ sở dữ liệu, nó không thể tồn tại độc lập. SQL thực sự là một phần của hệ quản trị cơ sở dữ liệu, nó xuất hiện trong các hệ quản trị cơ sở dữ liệu với vai trò ngôn ngữ và là công cụ giao tiếp giữa người sử dụng và hệ quản trị cơ sở dữ liệu. Trong hầu hết các hệ quản trị cơ sở dữ liệu quan hệ, SQL có những vai trò như sau: • SQL là ngôn ngữ hỏi có tính tương tác: Người sử dụng có thể dễ dàng thông qua các trình tiện ích để gởi các yêu cầu dưới dạng các câu lệnh SQL đến cơ sở dữ liệu và nhận kết quả trả về từ cơ sở dữ liệu • SQL là ngôn ngữ lập trình cơ sở dữ liệu: Các lập trình viên có thể nhúng các câu lệnh SQL vào trong các ngôn ngữ lập trình để xây dựng nên các chương trình ứng dụng giao tiếp với cơ sở dữ liệu • SQL là ngôn ngữ quản trị cơ sở dữ liệu: Thông qua SQL, người quản trị cơ sở dữ liệu có thể quản lý được cơ sở dữ liệu, định nghĩa các cấu trúc lưu trữ dữ liệu, điều khiển truy cập cơ sở dữ liệu,... • SQL là ngôn ngữ cho các hệ thống khách/chủ (client/server): Trong các hệ thống cơ sở dữ liệu khách/chủ, SQL được sử dụng như là công cụ để giao tiếp giữa các trình ứng dụng phía máy khách với máy chủ cơ sở dữ liệu. • SQL là ngôn ngữ truy cập dữ liệu trên Internet: Cho đến nay, hầu hết các máy chủ Web cũng như các máy chủ trên Internet sử dụng SQL với vai trò là ngôn ngữ để tương tác với dữ liệu trong các cơ sở dữ liệu. • SQL là ngôn ngữ cơ sở dữ liệu phân tán: Đối với các hệ quản trị cơ sở dữ liệu phân tán, mỗi một hệ thống sử dụng SQL để giao tiếp với các hệ thống khác trên mạng, gởi và nhận các yêu cầu truy xuất dữ liệu với nhau. • SQL là ngôn ngữ sử dụng cho các cổng giao tiếp cơ sở dữ liệu: Trong một hệ thống mạng máy tính với nhiều hệ quản trị cơ sở dữ liệu khác nhau, SQL thường được sử dụng như là một chuẩn ngôn ngữ để giao tiếp giữa các hệ quản trị cơ sở dữ liệu. III.3 Giới thiệu về Crytal Report Một trong những đặc điểm quan trọng mà chúng ta có thể thêm vào ứng dụng là khả năng in ra dữ liệu trong cơ sở dữ liệu của ứng dụng Chúng ta có thể tạo dễ dàng tạo các báo cáo từ nhưng ứng dụng đang dùng. Crytal Report là một ứng dụng mạnh cho phép bạn tạo các báo cáo, các danh sách và các nhãn có sẵn từ dữ liệu trong một ứng dụng CSDL. Khi Crytal Report liên kết với một CSDL, nó đọc các dữ liệu từ field mà chúng ta chọn và đặt chúng vào Crytal Report. Các field có thể đứng một mình và một phần của công thức dùng phát sinh những giá trị phức tạp hơn. Chúng ta có thể dùng rất nhiều các công cụ có sẵn để điều khiển phù hợp với yêu cầu của Report. Các công cụ đó cho phép: Tạo các phép tính từ đơn giản đến phức tạp Tính toán tổng lớn và nhỏ Tính toán cộng các mẩu tin trong một hoặc nhiều câu truy vấn Tính trung bình kiểm tra sự hiện diện của các giá trị xác định Lọc các mẩu tin của CSDL Dữ liệu có thể được đặt và định dạng một cách chính xác ở những nơi mà chúng ta cần khi thiết kế báo cáo. Bằng cách sử dụng Crytal Report, các báo cáo của chúng ta trở lên dễ dàng hơn theo những yêu cầu của chương trình. Sau khi thiết kế xong báo cáo cho ứng dụng, chúng ta có thể sử dụng nó trong những ứng dụng hoặc làm mẫu để tạo các báo cáo tương tự khác. Mặc dừ hầu hết CSDL đều chứa phần cho phép sinh ra các báo cáo, nhưng chúng thường quá khó đối với những người lập trình không chuyên nghiệp sử dụng, và thường yêu cầu chúng ta phải hiểu biết về cách làm của chương trình. Crytal Report là công cuh cho cả hai đối tượng, người dùng cuối và nhà phát triển chương trình Cùng với khái niện thiết kế của Visual Basic, Crytal Report có thể kết nối với bất kỳ CSDL nào. Chúng ta sử dụng điều này bằng một trong những phương thức sau: OLE DB (ADO) ADO.NET ODBC (RDO hoặc RDS) File CSDL (Các file cục bộ như dBase) CHƯƠNG III: PHÂN TÍCH THIẾT KẾ HỆ THỐNG THÔNG TIN Biểu đồ phân cấp chức năng I.1 Vẽ biểu đồ Mức 1 Quản lý bán hàng Nhập hàng Xuất hàng Tìm kiếm đối tác Ký kết hợp đồng Nhập hàng về kho Bàn giao hàng hoá Ký kết hợp đồng Tìm kiếm thị trường Mức 0 Mức 2 I.2 Mô tả các chức năng I.2.1 Quản lý bán hàng: Đây là chức năng tổng quát, có ý nghĩ bao trùm toàn bộ chương trình I.2.2 Xuất nhập: Chức năng được phân rã thành 2 chức năng con nhở hơn I.2.2.1 Nhập hàng: Cho phép quản lý về nhập hàng hoá I.2.2.1.1 Tìm kiếm đối tác: Nhiệm vụ tìm kiếm đối tác phù hợp, I.2.2.1.2 Ký kết hợp đồng: Có trách nhiệm đàm phán và đi đến ký hợp đồng mua hàng I.2.2.1.3 Nhập hàng về kho: Có trách nhiệm nhập hàng, viết hoá đơn nhập hàng và thanh toán theo hoá đơn I.2.2.2 Xuất hàng: Cho phép quản lý về bán hàng I.2.2.2.1 Tìm kiếm thị trường: Tìm kiếm thị trường (kinh doanh) I.2.2.2.2 Ký kết hợp đồng: Có trách nhiệm đàm phán ký hợp đồng bán hàng I.2.2.2.3 Bàn giao hàng hoá: Bàn giao hành hoá, viết hoá đơn xuất hàng và thanh toán theo hoá đơn Xây dựng biểu đồ luồng dữ liệu II.1 Biểu đồ luồng dữ liệu mức khung cảnh Quản lý bán hàng Nhà cung cấp Khách hàng Bộ phận QL Phiếu nhập Yêu cầu nhập Yêu cầu mua hàng Hoá đơn bán hàng Báo cáo Yêu cầu báo cáo II.2 Biển đồ luồn dữ liệu mức đỉnh Nhà cung cấp 1.0 Nhập hàng 2.0 Xuất hàng Khách hàng Bộ phận QL Kho hàng Phiếu nhập Yêu cầu nhập Chuyển hàng về kho Nhận hàng về Yêu cầu mua hàng Hoá đơn bán hàng Yêu cầu báo cáo Yêu cầu báo cáo Báo cáo Báo cáo II.3 Biểu đồ luồng dữ liệu mức dưới đỉnh II.3.1 Biểu đồ luồn dữ liệu mức dưới đỉnh thứ 1 (Nhập hàng) Nhà cung cấp Bộ phận QL 1.1 Tìm kiếm đối tác 1.2 Ký kết hợp đồng 1.3 Nhận hàng về kho Thoả thuận mua hàng Chấp nhận bán hàng Chấp nhận nhập hàng Yêu cầu ký hợp đồng Hợp đồng đã được ký kết Đã nhận hàng Yêu cầu xuất hàng Hợp đồng đã sử lý Kho Hàng Chuyển hàng về kho Yêu cầu báo cáo Báo cáo nhập hàng II.3.2 Biểu đồ luồn dữ liệu mức dưới đỉnh 2 (Xuất hàng) Khách hàng Bộ phận QL 2.1 Tìm kiếm thị trường 2.2 Ký kết hợp đồng 2.3 Bàn giao hàng hoá Thoả thuận mua bán Chấp nhận mua hàng Chấp nhận xuất hàng Yêu cầu ký hợp đồng Hợp đồng đã được ký kết Đơn yêu cầu xuất theo HĐ Xuất hàng theo hơp đồng Hợp đồng đã sử lý Kho Hàng Xuất hàng bán Yêu cầu báo cáo Báo cáo nhập hàng Xây dựng biểu đồ thực thể liên kết III.1 Xác định thực thể liên kết Dựa trên vật chứng là các hóa đơn bán hàng, các phiếu nhập kho (hóa đơn mua hàng), bảng  báo cáo nhập - xuất - tồn tại một kho, tình hình kinh doanh, thẻ kho, tình hình sử dụng hóa đơn trong một tháng nào đó... được thu thập trong quá trình đều tra. Trước hết chúng ta cần nhận thấy rằng thông tin trên các hóa đơn bán hàng, phiếu nhập kho là những thông tin cơ bản, còn các thông tin trên những báo cáo nhập - xuất tồn, tình hình kinh doanh, thẻ kho, tình hình sử dụng hóa đơn là những thông tin do việc xử lý dữ liệu trên mà. Từ hình thức và nội dung cụ thể của những hóa đơn bán hàng như đã trình bày trong phần mô tả vấn đề đã đề cập ở phần trước, chúng ta nhận thấy tập hợp các hóa đơn liên quan tới các lớp đối tượng: - Tập hợp HÓA ÐƠN, mỗi hóa đơn có một số thứ tự. - Tập hợp KHÁCH HÀNG - Tâp hợp NHÀ CUNG CẤP - Tập hợp HÀNG HOÁ - Tập hợp KHO HÀNG - Tập hợp NHÂN VIÊN III.2 Xác định các liên kết Ta có thể kể ra các mối kết hợp giữa các thực thể trong ví dụ ở trên: - Mỗi HÓA ÐƠN chỉ Nhập cho một NHÀ CUNG CẤP - Mỗi HÓA ÐƠN chỉ Xuất cho một KHÁCH HÀNG. - Mỗi HÓA ÐƠN chỉ Nhập (Xuất) từ một KHO HÀNG. - Mỗi HÓA ÐƠN chỉ Nhập (Xuất) từ một NHÂN VIÊN. - Mỗi HÓA ÐƠN có thể Nhập (Xuất) nhiều HÀNG HOÁ với số lượng, đơn giá tương ứng. III.3 Xây dựng sơ đồ thực thể liên kết HOÁ ĐƠN HOÁ ĐƠN HOÁ ĐƠN HOÁ ĐƠN HOÁ ĐƠN HÀNG HOÁ NHÂN VIÊN KHO HÀNG KHÁCH HÀNG NHÀ CUNG CẤP CHƯƠNG IV: THIẾT KẾ HỆ THỐNG Thiết kế Cơ sở dữ liệu (CSDL) I.1 Bảng Danh mục nhân viên - Tên bảng: DMNV Mục đích: Lưu trữ thông tin về nhân viện Khoá chính: Mã nhân viên Cấu trúc bảng STT Tên trường Kiểu DL Độ rộng Diễn giải 1 MaNV Char 10 Mã nhân viên – Khoá chính 2 TenNV Varchar 30 Tên nhân viên 3 GioiTinh Char 1 Giới tính 4 NgaySinh Datetime 4 Ngày sinh 5 DiaChi Varchar 80 Địa chỉ 6 DienThoai Varchar 15 Điện thoại I.2 Bảng Danh mục Khách hàng - Tên bảng: DMKHACH Mục đích: Lưu trữ thông tin về khách hàng Khoá chính: Mã khách hàng Cấu trúc bảng STT Tên trường Kiểu DL Độ rộng Diễn giải 1 MaKhach Char 10 Mã nhà khách – Khoá chính 2 TenKhach Varchar 50 Tên khách hàng 3 LoaiKhach Booleal Loại khách 4 DiaChi Varchar 80 Địa chỉ 5 DienThoai Varchar 15 Điện thoại 6 SoTaiKhoan Varchar 30 Số tài khoản 7 MaSoThue Varchar 30 Mã số thuế 8 GhiChu Varchar 100 Ghi chú I.3 Bảng Danh mục kho hàng - Tên bảng: DMKHO Mục đích: Lưu trữ thông tin về kho hàng Khoá chính: Mã kho hàng Cấu trúc bảng STT Tên trường Kiểu DL Độ rộng Diễn giải 1 MaKho Char 10 Mã kho hàng – Khoá chính 2 TenKho Varchar 30 Tên kho hàng 3 DiaChi Varchar 80 Địa chỉ 4 DienThoai Varchar 15 Điện thoại 5 GhiChu Varchar 100 Ghi chú I.4 Bảng Danh mục hàng hoá - Tên bảng: DMHH Mục đích: Lưu trữ thông tin về hàng hoá Khoá chính: Mã hàng hoá Cấu trúc bảng STT Tên trường Kiểu DL Độ rộng Diễn giải 1 MaHH Char 10 Mã hàng hoá – Khoá chính 2 TenHH Varchar 30 Tên hàng hóa 3 DacDiem Varchar 100 Đặc điểm 4 DonViTinh Varchar 10 Đơn vị tính 5 HanSudung Datetime 15 Hạn sử dụng 6 GhiChu Varchar 100 Ghi chú I.5 Bảng Hoá đơn - Tên bảng: HoaDon Mục đích: Lưu trữ thông tin về hoá hoá đơn Khoá chính: số hiệu hoá đơn Khóa phụ: Số hoá đơn, Mã kho, Mã đối tác (khách hàng hoặc Nhà cung cấp) Cấu trúc bảng STT Tên trường Kiểu DL Độ rộng Diễn giải 1 Idhd Int 4 Số hiệu hoá đơn – Khoá chính 2 SoHD Char 10 Số hoá đơn – Khoá phụ 3 MaKho Char 10 Mã kho hàng – khoá phụ 4 MaKhach Char 10 Mã khách hàng – Khoá phụ 5 NgayHD Datetime 4 Ngày hoá đơn 6 LoaiHD Boolean Loại hoá đơn (Nhập - Xuất) 7 DienGiai Varchar 100 Diễn giải I.6 Bảng chi tiết hoá đơn - Tên bảng: XUATNHAP Mục đích: Lưu trữ thông tin về Chi tiết từng hoá đơn Khoá chính: Số hiệu xuất nhập Khoá phụ: Số hoá đơn, Mã hàng hoá Cấu trúc bảng STT Tên trường Kiểu DL Độ rộng Diễn giải 1 Idxn Char 10 Số hiệu xuất nhập – Khoá chính 2 idhd Char 10 Số hiệu hoá đơn – khoá phụ 3 MaHH Char 10 Mã hàng hoá – khoá phụ 4 SoLuong Int 4 Số lượng 5 Dongia Int 4 Đơn giá Thiết kế chương trình Code một số modum chính

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

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