Báo cáo Xây dựng Cơ sở dữ liệu quản lý xuất nhập đĩa cho các cửa hàng vừa và nhỏ, áp dụng cho Cửa hàng đĩa Heaven

MỤC LỤC

MỞ ĐẦU 2

CHƯƠNG I: KHẢO SÁT HỆ THỐNG 4

I. MÔ TẢ HỆ THỐNG 4

1) Tổng quan 4

2) Quy trình xử lý 4

II. YÊU CẦU TIN HỌC HÓA 7

1) Nội dung đề tài 7

2) Mô tả yêu cầu 7

III. GIẢI QUYẾT VẤN ĐỀ 8

CHƯƠNG II: MÔ HÌNH THỰC THỂ LIÊN KẾT E-R VÀ MÔ HÌNH QUAN HỆ 9

I. CÁC BƯỚC XÂY DỰNG 9

II. KÝ HIỆU SỬ DỤNG 9

III. ÁP DỤNG BÀI TOÁN 9

CHƯƠNG III: CƠ SỞ DỮ LIỆU SQL SERVER 2005 14

I. MÔ TẢ CÁC BẢNG VÀ QUAN HỆ 14

1) Mô tả các bảng trong cơ sở dữ liệu 14

2) Các bảng của cơ sở dữ liệu 14

3) Sơ đồ mô tả mối quan hệ giữa các bảng 17

II. CÁC THỦ TỤC MÔ TẢ YÊU CẦU CỦA CƠ SỞ DỮ LIỆU 17

1) Các thủ tục mô tả chức năng cơ bản 17

2) Các thủ tục mô tả chức năng được yêu cầu 18

3) Chi tiết các Store Procedure thực thi yêu cầu 19

PHỤ LỤC

PHỤ LỤC 1: KẾ HOẠCH TỔNG THỂ 24

PHỤ LỤC 2: BIÊN BẢN KHẢO SÁT 28

PHỤ LỤC 3: ĐÁNH GIÁ THÀNH VIÊN 33

 

 

doc34 trang | Chia sẻ: netpro | Lượt xem: 1759 | Lượt tải: 0download
Bạn đang xem trước 20 trang tài liệu Báo cáo Xây dựng Cơ sở dữ liệu quản lý xuất nhập đĩa cho các cửa hàng vừa và nhỏ, áp dụng cho Cửa hàng đĩa Heaven, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
ng máy Xbox 360, Xbox Live của Microsoft. Đĩa Wii: dành cho dòng máy Wii của Nintendo. Đĩa phần mềm gồm các phiên bản hệ điều hành và các phần mềm thông dụng được đánh mã S+Tên thể loại bao gồm: Đĩa hệ điều hành: gồm các phiên bản hệ điều hành Windows từ Windows 98 đến Windows 7 và các phiên bản Linux ít phổ thông: Fedora, Ubuntu,… Đĩa phần mềm tiện ích: gồm các đĩa phần mềm tiện ích khối văn phòng như bộ Microsoft Office, HTKK Thuế,… và các phần mềm chuyên dụng phục vụ khối thiết kế như Adobe Photoshop, AutoCAD, CorelDRAW,… Ngoài ra gồm các đĩa phần mềm phổ thông khác. 2.2. Phương thức triển khai hoá đơn Coi đối tượng khách hàng vừa là nguồn nhập hàng, vừa là khách mua hàng. Hoá đơn được triển khai làm 2 loại chính: Nhập hàng và Xuất hàng. 2.3. Mục tiêu của cơ sở dữ liệu Đầy đủ các chức năng cơ bản để nhập xuất dữ liệu cho từng bảng. Thực hiện thêm các yêu cầu quản lý như: thống kê, báo cáo,... theo yêu cầu của công việc kinh doanh. 2.4. Một số mẫu biểu Qua quá trình khảo sát trên, tại cửa hàng đĩa Heaven có các mẫu biểu sau: Đơn đặt hàng: Cửa hàng đĩa Heaven Địa chỉ: 668 đường Láng - Đống Đa - Hà Nội Điện thoại: (04)3xxxxxxx - Di động: 098xxxxxxx ĐƠN ĐẶT HÀNG Họ tên: ……………………………………………………………………………………………... Địa chỉ: …………………………………………………………………………………………….. ……………………………………………………………………………………………………… Điện thoại: ………………………………………… Hình thức thanh toán: ……………………………… STT Mã đĩa Tên đĩa Số lượng Đơn giá Thành tiền 1 x X x x x Cộng tiền hàng: ……………….. Tổng cộng thanh toán: ……………….. Số tiền viết bằng chữ: ……………………………………………………………………………... Người mua hàng (Ký, ghi rõ họ tên) Người bán hàng (Ký, ghi rõ họ tên) Hoá đơn nhập hàng: Đơn vị bán hàng:…………………………………………………………………………………… Địa chỉ: …………………………………………………………………………………………….. Số tài khoản: …………………………………………………. Điện thoại: …………………………………… HOÁ ĐƠN NHẬP HÀNG Đơn vị mua hàng: Cửa hàng đĩa Heaven Địa chỉ: 668 đường Láng - Đống Đa - Hà Nội Điện thoại: (04)3xxxxxxx - Di động: 098xxxxxxx Số tài khoản: 1234-5678-ABCD Hình thức thanh toán: …………………………… STT Mã đĩa Tên đĩa Số lượng Đơn giá Thành tiền 1 x X x x x Cộng tiền hàng: ……………….. Tổng cộng thanh toán: ……………….. Số tiền viết bằng chữ: ……………………………………………………………………………... Người giao hàng (Ký, ghi rõ họ tên) Người nhận hàng (Ký, ghi rõ họ tên) Hoá đơn bán hàng: Cửa hàng đĩa Heaven Địa chỉ: 668 đường Láng - Đống Đa - Hà Nội Điện thoại: (04)3xxxxxxx - Di động: 098xxxxxxx HOÁ ĐƠN BÁN HÀNG Họ tên: ……………………………………………………………………………………………... Địa chỉ: …………………………………………………………………………………………….. Điện thoại: ………………………………………… Hình thức thanh toán: ……………………………… STT Mã đĩa Tên đĩa Số lượng Đơn giá Thành tiền 1 x X x x x Cộng tiền hàng: ……………….. Tổng cộng thanh toán: ……………….. Số tiền viết bằng chữ: ……………………………………………………………………………... Người mua hàng (Ký, ghi rõ họ tên) Người bán hàng (Ký, ghi rõ họ tên) II. YÊU CẦU TIN HỌC HÓA 1) Nội dung đề tài Với nhu cầu thông tin và quy mô kinh doanh ngày càng mở rộng của cửa hàng, tạo điều kiện thuận lợi cho việc quản lý đĩa cũng như việc nhập xuất đĩa và truy xuất thông tin nhanh chóng về đĩa. Do đó CSDL đòi hỏi phải lập trình để thực hiện được đầy đủ các thao tác nhập xuất, thống kê thông tin một cách đầy đủ và cụ thể, giúp cho cập nhật những đĩa mới cho cửa hàng nhanh chóng, dễ hàng hơn. Nhân viên phải nhập các thông tin cho các đĩa mới, nhà cung cấp mới, khách hàng mới vào trong dữ liệu và có sự kiểm tra về tính chính xác, đúng đắn của dữ liệu. Nhân viên được phép chỉnh sửa, xóa những thông tin sai, không phù hợp theo quyền hạn cho phép. Chủ cửa hàng theo dõi quá trình mua bán, thống kê doanh thu của cửa hàng. 2) Mô tả yêu cầu Yêu cầu chức năng: Liệt kê thông tin Đĩa: Toàn bộ Theo thời gian Theo nhân viên Theo khách hàng Liệt kê nhân viên theo doanh thu. Thống kê tổng doanh thu: Toàn bộ Theo tháng Theo năm Báo cáo chung về tổng nhập, xuất: Toàn bộ Theo tháng Theo năm Liệt kê các đĩa chưa bán. Liệt kê các đĩa bán chạy nhất. III. GIẢI QUYẾT VẤN ĐỀ Từng bước đi vào phân tích, thiết kế hệ thống để giải quyết vấn đề. Khảo sát: Tiến hành khảo sát ở một khu vực, địa chỉ cụ thể để lấy thông tin thực tế. Mô hình hóa nghiệp vụ: Dựa trên khảo sát thực trạng, mô hình hóa các nghiệp vụ bằng mô hình thực thể liên kết, từ đó chuyển sang mô hình quan hệ. Thiết kế: Từ kết quả ở các mô hình quan hệ, triển khai thiết kế CSDL để đạt được các kết quả như mong muốn. CHƯƠNG II: MÔ HÌNH THỰC THỂ LIÊN KẾT E-R VÀ MÔ HÌNH QUAN HỆ I. CÁC BƯỚC XÂY DỰNG Bước 1: Xác định các thực thể. Bước 2: Đặc tả mô hình. Bước 3: Mô hình thực thể liên kết. Bước 4: Mô hình quan hệ. II. KÝ HIỆU SỬ DỤNG Thuộc tính: Tập thực thể: Quan hệ: (min,max): Ràng buộc liên kết. III. ÁP DỤNG BÀI TOÁN Bước 1: Xác định các thực thể Các tập thực thể: Khách hàng. Nhân viên bán hàng. Hoá Đơn. Loại phiếu xuất nhập. Đĩa. Thực thể yếu: Thể loại đĩa. Chi tiết hoá đơn. Bước 2: Đặc tả mô hình KhachHang (Khách hàng): Thuộc tính Viết đầy đủ Định dạng Đặc tả MaKH Mã khách hàng Text PK TenKH Tên khách hàng Text Dchi_KH Địa chỉ khách hàng Text SDT Số điện thoại khách hàng Text Email Thư điện tử khách hàng Text NhanVienBH (Nhân viên bán hàng): Thuộc tính Viết đầy đủ Định dạng Đặc tả MaNV Mã người bán Text PK TenNV Tên người bán Text Dchi_NV Địa chỉ người bán Text TheLoaiDia (Thể loại đĩa): Thuộc tính Viết đầy đủ Định dạng Đặc tả MaTL Mã thể loại đĩa Text PK TenTL Tên thể loại đĩa Text Dia (Đĩa): Thuộc tính Viết đầy đủ Định dạng Đặc tả MaDia Mã đĩa Text PK TenDia Tên đĩa Text HoaDon (Hoá đơn): Thuộc tính Viết đầy đủ Định dạng Đặc tả MaHD Mã hoá đơn Text PK NgayBan Ngày bán Date/Time CTiet_HD (Chi tiết hoá đơn): Thuộc tính Viết đầy đủ Định dạng Đặc tả SoLuong Số lượng bán Number DonGia Giá tiền Number Bước 3: Mô hình thực thể liên kết Hình 2.1: Mô hình thực thể liên kết của cửa hàng bán đĩa Bước 4: Mô hình quan hệ + KhachHang (MaKH, TenKH, Dchi_KH, SDT, Email) + NhanVienBH (MaNV, TenNV, Dchi_NV) + Dia (MaDia, TenDia, MaTL) + TheLoaiDia (MaTL, TenTL) + HoaDon (MaHD, NgayBan, MaNV, MaKH, MaLoai) + CTiet_HD (MaHD, MaDia, SoLuong, DonGia) + LoaiPhieu (MaLoai, TenLoai) CHƯƠNG III: CƠ SỞ DỮ LIỆU SQL SERVER 2005 I. MÔ TẢ CÁC BẢNG VÀ QUAN HỆ 1) Mô tả các bảng trong cơ sở dữ liệu STT Tên bảng Tên định nghĩa Ý nghĩa 1 NhanVienBH Nhân viên bán hàng Các thông tin về nhân viên 2 KhachHang Khách hàng Các thông tin về khách hàng 3 HoaDon Hoá đơn Thông tin chung về giao dịch 4 CTiet_HD Chi tiết hoá đơn Thông tin chi tiết về từng đĩa được giao dịch 5 LoaiPhieu Loại phiếu xuất nhập Cho biết loại hoá đơn là nhập hay bán hàng 6 Dia Đĩa Cho biết thông tin chung về Đĩa 7 TheLoaiDia Thể loại đĩa Cho biết Đĩa đó thuộc thể loại gì 2) Các bảng của cơ sở dữ liệu Bảng HoaDon Tên cột (Trường) Kiểu dữ liệu Cho phép trống Mô tả MaHD nchar(10) PK NgayBan datetime MaNV char(3) FK MaKH char(5) FK MaLoai nchar(10) FK Bảng KhachHang Tên cột (Trường) Kiểu dữ liệu Cho phép trống Mô tả MaKH char(5) PK TenKH nvarchar(50) Dchi_KH nvarchar(100) SDT int x Email nchar(20) x Bảng NhanVienBH Tên cột (Trường) Kiểu dữ liệu Cho phép trống Mô tả MaNV char(3) PK TenNV nvarchar(50) Dchi_NV nvarchar(100) Bảng LoaiPhieu Tên cột (Trường) Kiểu dữ liệu Cho phép trống Mô tả MaLoai nchar(10) PK TenLoai nvarchar(50) Bảng CTiet_HoaDon Tên cột (Trường) Kiểu dữ liệu Cho phép trống Mô tả MaHD nchar(10) PK MaDia nchar(10) SoLuong bigint DonGia float Bảng Dia Tên cột (Trường) Kiểu dữ liệu Cho phép trống Mô tả MaDia nchar(10) PK TenDia nvarchar(50) MaTL nchar(10) FK Bảng TheLoaiDia Tên cột (Trường) Kiểu dữ liệu Cho phép trống Mô tả MaTL nchar(10) PK TenTL nvarchar(50) 3) Sơ đồ mô tả mối quan hệ giữa các bảng Hình 3.1: Mối quan hệ giữa các bảng trong CSDL II. CÁC THỦ TỤC MÔ TẢ YÊU CẦU CỦA CƠ SỞ DỮ LIỆU 1) Các thủ tục mô tả chức năng cơ bản Tên thủ tục Chức năng Ghi chú dbo.sp_Insert[Tên bảng] Nhập dữ liệu cho các bảng dbo.sp_Delete[Tên bảng] Xoá dữ liệu ở từng bảng Cho phép sửa, xoá, thống kê đầy đủ theo các khoá, các trường dbo.sp_Update[Tên bảng] Sửa dữ liệu ở từng bảng dbo.sp_Select[Tên bảng] Thống kê dữ liệu ở từng bảng 2) Các thủ tục mô tả chức năng được yêu cầu STT Tên thủ tục Chức năng Liệt kê Đĩa 1 dbo.yc_1_LietKeDia Liệt kê toàn bộ đĩa 2 dbo.yc_1a_LietKeDia Liệt kê đĩa theo thể loại 3 dbo.yc_1b_LietKeDia Liệt kê đĩa theo hoá đơn Liệt kê khách hàng 4 dbo.yc_2_LietKeKH Liệt kê các khách hàng đã mua hàng (đã sắp xếp) 5 dbo.yc_2a_LietKeKH Liệt kê các khách hàng đã mua hàng theo khu vực (đã sắp xếp) Liệt kê nhân viên 6 dbo.yc_3_NhanVien Liệt kê 3 nhân viên bán hàng thu được doanh thu nhiều nhất Thống kê doanh thu 7 dbo.yc_4_DoanhThu Tổng doanh thu bán hàng 8 dbo.yc_4a_DoanhThu Tổng doanh thu bán hàng theo tháng 9 dbo.yc_4b_DoanhThu Tổng doanh thu bán hàng theo năm Báo cáo tổng hợp nhập, xuất 10 dbo.yc_5_BaoCaoChung Báo cáo chung 11 dbo.yc_5a_BaoCaoThang Báo cáo theo tháng 12 dbo.yc_5b_BaoCaoNam Báo cáo theo năm Thống kê sự phổ biến của đĩa 13 dbo.yc_6_DiaKoBanDuoc Thống kê các đĩa không bán được trong toàn bộ thời gian 14 dbo.yc_6a_DiaKoBanDuoc Thống kê các đĩa không bán được theo tháng 15 dbo.yc_6b_DiaKoBanDuoc Thống kê các đĩa không bán được theo năm 16 dbo.yc_7_DiaBanChay Thống kê 10 đĩa bán chạy nhất 17 dbo.yc_7a_DiaBanChay Thống kê 10 đĩa bán chạy nhất theo tháng 18 dbo.yc_7b_DiaBanChay Thống kê 10 đĩa bán chạy nhất theo năm 3) Chi tiết các Store Procedure thực thi yêu cầu STT Chức năng Store Procedure 1 Liệt kê thông tin toàn bộ Đĩa SELECT Dia.MaDia, Dia.TenDia, TheLoaiDia.TenTL, SUM(CTiet_HD.SoLuong) AS SoLuong, CTiet_HD.DonGia, LoaiPhieu.TenLoai FROM CTiet_HD INNER JOIN Dia ON CTiet_HD.MaDia = Dia.MaDia INNER JOIN TheLoaiDia ON Dia.MaTL = TheLoaiDia.MaTL INNER JOIN HoaDon ON CTiet_HD.MaHD = HoaDon.MaHD INNER JOIN LoaiPhieu ON HoaDon.MaLoai = LoaiPhieu.MaLoai GROUP BY Dia.MaDia, Dia.TenDia, TheLoaiDia.TenTL, CTiet_HD.DonGia, HoaDon.MaLoai, LoaiPhieu.TenLoai ORDER BY HoaDon.MaLoai 2 Liệt kê thông tin đĩa theo thể loại SELECT Dia.MaDia, Dia.TenDia, TheLoaiDia.TenTL, SUM(CTiet_HD.SoLuong) AS SoLuong, CTiet_HD.DonGia, LoaiPhieu.TenLoai FROM CTiet_HD INNER JOIN Dia ON CTiet_HD.MaDia = Dia.MaDia INNER JOIN TheLoaiDia ON Dia.MaTL = TheLoaiDia.MaTL INNER JOIN HoaDon ON CTiet_HD.MaHD = HoaDon.MaHD INNER JOIN LoaiPhieu ON HoaDon.MaLoai = LoaiPhieu.MaLoai WHERE TheLoaiDia.TenTL = @TenTL GROUP BY Dia.MaDia, Dia.TenDia, TheLoaiDia.TenTL, CTiet_HD.DonGia, HoaDon.MaLoai, LoaiPhieu.TenLoai ORDER BY HoaDon.MaLoai 3 Liệt kê thông tin đĩa theo hoá đơn SELECT Dia.MaDia, Dia.TenDia, TheLoaiDia.TenTL, SUM(CTiet_HD.SoLuong) AS SoLuong, CTiet_HD.DonGia, LoaiPhieu.TenLoai FROM CTiet_HD INNER JOIN Dia ON CTiet_HD.MaDia = Dia.MaDia INNER JOIN TheLoaiDia ON Dia.MaTL = TheLoaiDia.MaTL INNER JOIN HoaDon ON CTiet_HD.MaHD = HoaDon.MaHD INNER JOIN LoaiPhieu ON HoaDon.MaLoai = LoaiPhieu.MaLoai WHERE LoaiPhieu.TenLoai = @LoaiHD GROUP BY Dia.MaDia, Dia.TenDia, TheLoaiDia.TenTL, CTiet_HD.DonGia, HoaDon.MaLoai, LoaiPhieu.TenLoai ORDER BY HoaDon.MaLoai 4 Liệt kê các khách hàng đã mua hàng SELECT KhachHang.MaKH, KhachHang.TenKH, KhachHang.Dchi_KH, KhachHang.SDT, KhachHang.Email, SUM(CTiet_HD.SoLuong*CTiet_HD.DonGia) AS TongTien FROM CTiet_HD INNER JOIN HoaDon ON CTiet_HD.MaHD = HoaDon.MaHD INNER JOIN KhachHang ON HoaDon.MaKH = KhachHang.MaKH WHERE HoaDon.MaLoai = 'PX' GROUP BY KhachHang.MaKH, KhachHang.TenKH, KhachHang.Dchi_KH, KhachHang.SDT, KhachHang.Email ORDER BY TongTien DESC 5 Liệt kê các khách hàng đã mua hàng theo khu vực SELECT KhachHang.MaKH, KhachHang.TenKH, KhachHang.Dchi_KH, KhachHang.SDT, KhachHang.Email, SUM(CTiet_HD.SoLuong*CTiet_HD.DonGia) AS TongTien FROM CTiet_HD INNER JOIN HoaDon ON CTiet_HD.MaHD = HoaDon.MaHD INNER JOIN KhachHang ON HoaDon.MaKH = KhachHang.MaKH WHERE HoaDon.MaLoai = 'PX' AND KhachHang.Dchi_KH = @DiaChi GROUP BY KhachHang.MaKH, KhachHang.TenKH, KhachHang.Dchi_KH, KhachHang.SDT, KhachHang.Email ORDER BY TongTien DESC 6 Top 3 nhân viên bán hàng có doanh thu lớn nhất SELECT TOP(3) NhanVienBH.MaNV, NhanVienBH.TenNV, NhanVienBH.Dchi_NV, SUM(CTiet_HD.SoLuong*CTiet_HD.DonGia) AS TongTien FROM CTiet_HD INNER JOIN HoaDon ON CTiet_HD.MaHD = HoaDon.MaHD INNER JOIN NhanVienBH ON HoaDon.MaNV = NhanVienBH.MaNV WHERE HoaDon.MaLoai = 'PX' GROUP BY NhanVienBH.MaNV, NhanVienBH.TenNV, NhanVienBH.Dchi_NV ORDER BY TongTien DESC 7 Tổng doanh thu bán đĩa SELECT SUM(ch.SoLuong*ch.DonGia) AS DoanhThu FROM CTiet_HD ch 8 Doanh thu bán hàng theo tháng SELECT SUM(ch.SoLuong * ch.DonGia) AS DoanhThu FROM CTiet_HD AS ch INNER JOIN HoaDon ON ch.MaHD = HoaDon.MaHD WHERE DATEPART(MONTH,HoaDon.NgayBan) = @Thang AND DATEPART(YEAR,HoaDon.NgayBan) = @Nam 9 Doanh thu bán hàng theo năm SELECT SUM(ch.SoLuong * ch.DonGia) AS DoanhThu FROM CTiet_HD AS ch INNER JOIN HoaDon ON ch.MaHD = HoaDon.MaHD WHERE DATEPART(YEAR,HoaDon.NgayBan) = @Nam 10 Báo cáo chung SELECT Dia.MaDia, Dia.TenDia, tld.TenTL, A.TongNhap, B.TongXuat FROM Dia INNER JOIN TheLoaiDia tld ON tld.MaTL = Dia.MaTL LEFT JOIN ( SELECT Dia.MaDia, SUM(CTiet_HD.SoLuong*CTiet_HD.DonGia) AS TongNhap FROM CTiet_HD INNER JOIN Dia ON CTiet_HD.MaDia = Dia.MaDia INNER JOIN HoaDon ON CTiet_HD.MaHD = HoaDon.MaHD HERE (HoaDon.MaLoai = 'PN') GROUP BY Dia.MaDia ) A ON A.MaDia = Dia.MaDia LEFT JOIN ( SELECT Dia.MaDia, SUM(CTiet_HD.SoLuong*CTiet_HD.DonGia) AS TongXuat FROM CTiet_HD INNER JOIN Dia ON CTiet_HD.MaDia = Dia.MaDia INNER JOIN HoaDon ON CTiet_HD.MaHD = HoaDon.MaHD WHERE (HoaDon.MaLoai = 'PX') GROUP BY Dia.MaDia ) B ON B.MaDia = A.MaDia 11 Báo cáo theo tháng SELECT Dia.MaDia, Dia.TenDia, TheLoaiDia.TenTL, A.TongNhap, B.TongXuat FROM CTiet_HD INNER JOIN Dia ON CTiet_HD.MaDia = Dia.MaDia INNER JOIN HoaDon ON CTiet_HD.MaHD = HoaDon.MaHD INNER JOIN TheLoaiDia ON Dia.MaTL = TheLoaiDia.MaTL LEFT JOIN ( SELECT Dia.MaDia, SUM(CTiet_HD.SoLuong*CTiet_HD.DonGia) AS TongNhap FROM CTiet_HD INNER JOIN Dia ON CTiet_HD.MaDia = Dia.MaDia INNER JOIN HoaDon ON CTiet_HD.MaHD = HoaDon.MaHD WHERE (HoaDon.MaLoai = 'PN') GROUP BY Dia.MaDia ) A ON A.MaDia = Dia.MaDia LEFT JOIN ( SELECT Dia.MaDia, SUM(CTiet_HD.SoLuong*CTiet_HD.DonGia) AS TongXuat FROM CTiet_HD INNER JOIN Dia ON CTiet_HD.MaDia = Dia.MaDia INNER JOIN HoaDon ON CTiet_HD.MaHD = HoaDon.MaHD WHERE (HoaDon.MaLoai = 'PX') GROUP BY Dia.MaDia ) B ON B.MaDia = A.MaDia WHERE DATEPART(MONTH,HoaDon.NgayBan) = @Thang AND DATEPART(YEAR,HoaDon.NgayBan) = @Nam GROUP BY Dia.MaDia, Dia.TenDia, TheLoaiDia.TenTL, A.TongNhap, B.TongXuat 12 Báo cáo theo năm SELECT Dia.MaDia, Dia.TenDia, TheLoaiDia.TenTL, A.TongNhap, B.TongXuat FROM CTiet_HD INNER JOIN Dia ON CTiet_HD.MaDia = Dia.MaDia INNER JOIN HoaDon ON CTiet_HD.MaHD = HoaDon.MaHD INNER JOIN TheLoaiDia ON Dia.MaTL = TheLoaiDia.MaTL LEFT JOIN ( SELECT Dia.MaDia, SUM(CTiet_HD.SoLuong*CTiet_HD.DonGia) AS TongNhap FROM CTiet_HD INNER JOIN Dia ON CTiet_HD.MaDia = Dia.MaDia INNER JOIN HoaDon ON CTiet_HD.MaHD = HoaDon.MaHD WHERE (HoaDon.MaLoai = 'PN') GROUP BY Dia.MaDia ) A ON A.MaDia = Dia.MaDia LEFT JOIN ( SELECT Dia.MaDia, SUM(CTiet_HD.SoLuong*CTiet_HD.DonGia) AS TongXuat FROM CTiet_HD INNER JOIN Dia ON CTiet_HD.MaDia = Dia.MaDia INNER JOIN HoaDon ON CTiet_HD.MaHD = HoaDon.MaHD WHERE (HoaDon.MaLoai = 'PX') GROUP BY Dia.MaDia ) B ON B.MaDia = A.MaDia WHERE DATEPART(YEAR,HoaDon.NgayBan) = @Nam GROUP BY Dia.MaDia, Dia.TenDia, TheLoaiDia.TenTL, A.TongNhap, B.TongXuat 13 Đĩa không bán được SELECT TheLoaiDia.MaTL, Dia.MaDia, Dia.TenDia, TheLoaiDia.TenTL, HoaDon.NgayBan FROM Dia INNER JOIN TheLoaiDia ON Dia.MaTL = TheLoaiDia.MaTL INNER JOIN CTiet_HD ON Dia.MaDia = CTiet_HD.MaDia INNER JOIN HoaDon ON CTiet_HD.MaHD = HoaDon.MaHD WHERE Dia.MaDia NOT IN ( SELECT CTiet_HD.MaDia FROM CTiet_HD INNER JOIN HoaDon ON CTiet_HD.MaHD = HoaDon.MaHD WHERE (HoaDon.MaLoai = 'PX') ) 14 Đĩa không bán được theo tháng SELECT TheLoaiDia.MaTL, Dia.MaDia, Dia.TenDia, TheLoaiDia.TenTL, HoaDon.NgayBan FROM Dia INNER JOIN TheLoaiDia ON Dia.MaTL = TheLoaiDia.MaTL INNER JOIN CTiet_HD ON Dia.MaDia = CTiet_HD.MaDia INNER JOIN HoaDon ON CTiet_HD.MaHD = HoaDon.MaHD WHERE Dia.MaDia NOT IN ( SELECT CTiet_HD.MaDia FROM CTiet_HD INNER JOIN HoaDon ON CTiet_HD.MaHD = HoaDon.MaHD WHERE (HoaDon.MaLoai = 'PX') ) AND DATEPART(MONTH,HoaDon.NgayBan) = @Thang AND DATEPART(YEAR,HoaDon.NgayBan) = @Nam 15 Đĩa không bán được theo năm SELECT TheLoaiDia.MaTL, Dia.MaDia, Dia.TenDia, TheLoaiDia.TenTL, HoaDon.NgayBan FROM Dia INNER JOIN TheLoaiDia ON Dia.MaTL = TheLoaiDia.MaTL INNER JOIN CTiet_HD ON Dia.MaDia = CTiet_HD.MaDia INNER JOIN HoaDon ON CTiet_HD.MaHD = HoaDon.MaHD WHERE Dia.MaDia NOT IN ( SELECT CTiet_HD.MaDia FROM CTiet_HD INNER JOIN HoaDon ON CTiet_HD.MaHD = HoaDon.MaHD WHERE (HoaDon.MaLoai = 'PX') ) AND DATEPART(YEAR,HoaDon.NgayBan) = @Nam 16 Top 10 đĩa bán chạy nhất SELECT TOP(10) Dia.MaDia, Dia.TenDia, TheLoaiDia.TenTL, SUM(CTiet_HD.SoLuong) AS SoLuong, CTiet_HD.DonGia, LoaiPhieu.TenLoai FROM CTiet_HD INNER JOIN Dia ON CTiet_HD.MaDia = Dia.MaDia INNER JOIN TheLoaiDia ON Dia.MaTL = TheLoaiDia.MaTL INNER JOIN HoaDon ON CTiet_HD.MaHD = HoaDon.MaHD INNER JOIN LoaiPhieu ON HoaDon.MaLoai = LoaiPhieu.MaLoai WHERE HoaDon.MaLoai = 'PX' GROUP BY Dia.MaDia, Dia.TenDia, TheLoaiDia.TenTL, CTiet_HD.DonGia, HoaDon.MaLoai, LoaiPhieu.TenLoai ORDER BY SoLuong DESC 17 Top 10 đĩa bán chạy nhất theo tháng SELECT TOP(10) Dia.MaDia, Dia.TenDia, TheLoaiDia.TenTL, SUM(CTiet_HD.SoLuong) AS SoLuong, CTiet_HD.DonGia, LoaiPhieu.TenLoai FROM CTiet_HD INNER JOIN Dia ON CTiet_HD.MaDia = Dia.MaDia INNER JOIN TheLoaiDia ON Dia.MaTL = TheLoaiDia.MaTL INNER JOIN HoaDon ON CTiet_HD.MaHD = HoaDon.MaHD INNER JOIN LoaiPhieu ON HoaDon.MaLoai = LoaiPhieu.MaLoai WHERE HoaDon.MaLoai = 'PX' AND DATEPART(MONTH,HoaDon.NgayBan) = @Thang AND DATEPART(YEAR,HoaDon.NgayBan) = @Nam GROUP BY Dia.MaDia, Dia.TenDia, TheLoaiDia.TenTL, CTiet_HD.DonGia, HoaDon.MaLoai, LoaiPhieu.TenLoai ORDER BY SoLuong DESC 18 Top 10 đĩa bán chạy nhất theo năm SELECT TOP(10) Dia.MaDia, Dia.TenDia, TheLoaiDia.TenTL, SUM(CTiet_HD.SoLuong) AS SoLuong, CTiet_HD.DonGia, LoaiPhieu.TenLoai FROM CTiet_HD INNER JOIN Dia ON CTiet_HD.MaDia = Dia.MaDia INNER JOIN TheLoaiDia ON Dia.MaTL = TheLoaiDia.MaTL INNER JOIN HoaDon ON CTiet_HD.MaHD = HoaDon.MaHD INNER JOIN LoaiPhieu ON HoaDon.MaLoai = LoaiPhieu.MaLoai WHERE HoaDon.MaLoai = 'PX' AND DATEPART(YEAR,HoaDon.NgayBan) = @Nam GROUP BY Dia.MaDia, Dia.TenDia, TheLoaiDia.TenTL, CTiet_HD.DonGia, HoaDon.MaLoai, LoaiPhieu.TenLoai ORDER BY SoLuong DESC PHỤ LỤC 1: KẾ HOẠCH TỔNG THỂ I) GIỚI THIỆU 1. Tên đề tài: Quản lý cửa hàng đĩa (Software + Games) 2. Thông tin về nhóm xây dựng đề tài Dương Thị Ánh Nguyệt - Nhóm trưởng Trần Phúc Hoàn Lê Ngọc Hòa Nguyễn Minh Khiêm Hứa Thanh Tùng 3. Mục đích của tài liệu: Kế hoạch tổng thể định nghĩa các hoạt động phát triển phần mềm và các giai đoạn trong dự án để xây dựng phần mềm quản lý cửa hàng đĩa. Kế hoạch tổng thể miêu tả toàn bộ kế hoạch được sử dụng cho đội ngũ phát triển hệ thống. Các chi tiết công việc cụ thể được miêu tả rõ hơn trong kế hoạch chi tiết hàng tháng. 4. Phạm vi tài liệu Tài liệu này phục vụ cho các đối tượng là người sử dụng chương trình để quản lý các cửa hàng đĩa phần mềm, trò chơi vừa và nhỏ. 5. Mô tả tài liệu Tài liệu bao gồm các phần chính sau: Giới thiệu chung: giới thiệu tổng quan về tài liệu. Nội dung: Kế hoạch xây dựng và phát triển CSDL phần mềm. 5.1. Giới thiệu chung Thời gian và nội dung công việc: Ngày tháng ghi cụ thể và rõ ràng trong từng thời điểm công việc. Nội dung khái quát nhưng thể hiện chính xác công việc cần làm trong thời gian đó. 5.2. Sản phẩm: Được viết ra một cách cụ thể bằng các biên bản hoặc báo cáo trực tiếp từ người có trách nhiệm. Trách nhiệm và Kết quả: Người được giao trách nhiệm thực hiện đúng và nhiệt tình với công việc cần làm. Kết quả được yêu cầu theo một mức nhất định, được đánh giá bởi toàn nhóm thông qua nhóm trưởng. Báo cáo toàn bộ và thiết kế Slide giới thiệu sản phẩm. 5.3. Kế hoạch xây dựng và phát triển phần mềm 5.3.1. Triển khai khảo sát các cửa hàng đĩa Tham khảo cách sắp xếp, phân chia các thể loại đĩa khác nhau. Thu thập cả các thông tin như cách đánh mã số, mục đích, cách thức,… Tìm hiểu các hóa đơn nhập xuất đĩa. 5.3.2. Nghiên cứu các khảo sát Sau khi khảo sát, tập trung đưa ra các đặc tả yêu cầu để phân tích thiết kế. Toàn nhóm sẽ nghiên cứu các mục của các khảo sát để thống kê các bộ, các thuộc tính và quan hệ để tiến tới xây dựng lược đồ thực thể liên kết và mô hình quan hệ. Các khảo sát cũng sẽ được phân chia rõ ràng cụ thể từng phần, các thành viên sẽ nghiên cứu các phần khác nhau và thống nhất bởi nhóm trưởng. 5.3.3. Thiết kế Cơ sở dữ liệu Thành viên được giao trách nhiệm lập trình chính sẽ định hướng dựa theo các nghiên cứu khảo sát. Các thành viên còn lại sẽ đồng thời theo dõi, góp ý, chỉnh sửa và bổ sung cho CSDL, đảm bảo tính chính xác tối đa cho CSDL sẽ được tạo. 5.3.4. Báo cáo và thiết kế Slide Show Báo cáo: Các thành viên có trách nhiệm với từng phần sẽ đưa ra các báo cáo chi tiết của phần đó. Báo cáo sẽ được tổng hợp và kết hợp giải thích song song với CSDL được tạo. Dưới sự tổng hợp của nhóm trưởng và góp ý, bổ sung của thành viên, báo cáo sẽ được kết hợp một cách hoàn thiện nhất. Slide Show: Sẽ được thiết kế bằng PowerPoint 2003. Dựa theo báo cáo chi tiết đã được đưa ra, chọn lọc các thành phần chính, mục tiêu để đưa ra những nổi bật của CSDL được tạo. Nhóm trưởng tổng hợp và góp ý của thành viên, Slide sẽ được hoàn thiện. II) Nội dung PHỤ LỤC 2: BIÊN BẢN KHẢO SÁT Hôm nay, vào lúc 13 giờ ngày 05 tháng 02 năm 2011, Nhóm 1 đã tiến hành đi khảo sát để phục vụ cho bài tập lớn môn Đồ án CSDL tại: Cửa hàng: Heaven. Địa chỉ: 668 đường Láng – Đống Đa – Hà Nội. I) Thành phần khảo sát: Nguyễn Vũ Vi Vi - Nhân viên bán hàng. Hứa Thanh Tùng - Đại diện nhóm. Nguyễn Minh Khiêm - Đại diện nhóm. II) Nội dung khảo sát: 1. Thông tin chung: Họ tên: Nguyễn Vũ Vi Vi. Năm sinh: 1985. Nghề nghiệp: Nhân viên cửa hàng đĩa. Địa chỉ thường trú: 186 Yên Hoà – Cầu Giấy – Hà Nội. 2. Tiến hành khảo sát: 2.1. Hình thức kinh doanh: 2.1.1. Bán lẻ: Bán lẻ trực tiếp từng sản phẩm đến người dùng cuối. Khách hàng chính: Cá nhân. Số lượng: 1 đến 20 đĩa. Hình thức thanh toán: Tiền mặt. Cách thức mua hàng: Liên hệ qua điện thoại (Số lượng từ 10 đĩa trở lên). Đến trực tiếp tại cửa hàng. Phương thức đưa hàng: Chuyển hàng tận nơi. Khách nhận đĩa ngay tại cửa hàng. Giá bán: phụ thuộc vào giá bán lẻ từng loại đĩa (8.000 – 200.000 VND/1 đĩa). Đánh giá phương thức bán hàng: Ưu điểm: Rủi ro thấp, vốn ít, dễ quản lý. Nhược điểm: Hàng bán không được nhiều, nhiều đối thủ cạnh tranh, lợi nhuận thấp. 2.1.2. Bán trực tuyến: Bán trực tuyến (sell online) là hình thức khá mới của cửa hàng vừa có thể trực tiếp quảng bá cũng như bán hàng thông qua Internet. Khách hàng chính: Cá nhân, Công ty vừa và nhỏ,… Số lượng: 20 đến 1000 đĩa. Cách thức mua hàng: Đặt hàng trên website của cửa hàng. Đặt hàng thông qua shop của cửa hàng trên các website thương mại điện tử như: chodientu.vn, vatgia.com, 123mua.vn, enbac.com,… Hình thức thanh toán: Tiền mặt: Trả 100% chi phí + tiền vận chuyển. Chuyển khoản ngân hàng: Trả trước 70% chi phí + tiền vận chuyển. Ví điện tử online: V-Cash, Nganluong.vn,… Phương thức đưa hàng: Chuyển hàng tận nơi. Khách nhận đĩa ngay tại cửa hàng. Giá bán: phụ thuộc vào số lượng đĩa (8.000 – 200.000 VND/1 đĩa). Từ 10 đến 50 đĩa: giảm 5%. Từ 50 đến 500 đĩa: giảm 10%. Trên 500 đĩa: giảm 15%. Đánh giá phương thức bán hàng: Ưu điểm: Có thể không cần mặt bằng, tiết kiệm thời gian cho khách hàng, hàng bán được nhiều, dễ quản lý. Nhược điểm: Rủi ro tương đối cao, vốn nhiều, nhiều cạnh tranh. 2.2. Mặt hàng kinh doanh: Đĩa trò chơi dành cho các thể loại máy khác nhau được đánh mã G+Tên thể loại bao gồm: Đĩa PC: dành để cài đặt cho các máy vi tính cá nhân. Đĩa PS2: dành cho dòng máy PlayStation 2 của Sony. Đĩa Xbox: dành cho dòng máy Xbox 360, Xbox Live của Microsoft. Đĩa Wii: dành cho dòng máy Wii của Nintendo. Đĩa phần mềm gồm các phiên bản hệ điều hành và các phần mềm thông dụng được đánh mã S+Tên thể loại bao gồm: Đĩa hệ điều hành: gồm các phiên bản hệ điều hành Windows từ Windows 98 đến Windows 7 và các phiên bản Linux ít phổ thông: Fedora, Ubuntu,… Đĩa phần mềm tiện ích: gồm các đĩa phần mềm tiện ích khối văn phòng như bộ Microsoft Office, HTKK Thuế,… và các phần mềm chuyên dụng phục vụ khối thiết kế như Adobe Photoshop, AutoCAD, CorelDRAW,… Ngoài ra gồm các đĩa phần mềm p

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

  • docXây dựng Cơ sở dữ liệu quản lý xuất nhập đĩa cho các cửa hàng vừa và nhỏ, áp dụng cho Cửa hàng đĩa Heaven.doc