Xây dựng phần mềm quản lý bán hàng tại đại lý xe máy dựa trên nền tảng winform bằng ngôn ngữ c

76 4 0
  • Loading ...
1/76 trang

Thông tin tài liệu

Ngày đăng: 01/04/2019, 21:43

Khóa luận tốt nghiệp MỤC LỤC Trang MỤC LỤC .i DANH MỤC HÌNH ẢNH .v DANH MỤC BẢNG BIỂU vii chọn đề tài Mục tiêu nghiên cứu uế Đối tượng phạm vi nghiên cứu H Phương pháp nghiên cứu Dự kiến kết đạt đề tài tế Kết cấu đề tài NỘI DUNG NGHIÊN CỨU h CHƯƠNG 1: CƠ SỞ LUẬN VỀ PHÁT TRIỂN HỆ THỐNG THÔNG TIN QUẢN in họ cK 1.1 Tổng quan hệ thống thông tin quản 1.1.1 Khái niệm hệ thống thông tin quản 1.1.2 Các loại thông tin quản 1.1.3 Cấu trúc hệ thống thông tin quản 1.1.4 Quy trình phát triển hệ thống thơng tin quản ại 1.1.4.1 Khái niệm quy trình phát triển hệ thống thông tin quản Đ 1.1.4.2 Giới thiệu mơ hình thác nước 1.2 Ngôn ngữ lập trình C# 1.3 Tổng quan tảng lập trình NET Framework 11 1.3.1 Giới thiệu NET Framework 11 1.3.2 Các thành phần NET Framework 12 1.3.3 Nền tảng lập trình NET Framework 4.5 .12 1.3.3.1 Tổng quan tảng NET Framework 4.5 12 1.3.3.2 Các tính NET Framework 4.5 14 SVTH: Nguyễn Thị Yến Nhi Trang i Khóa luận tốt nghiệp 1.4 Tổng quan kiến trúc ADO NET 15 1.5 Hệ quản trị sở liệu SQL Server 16 1.5.1 Ngơn ngữ truy vấn có cấu trúc (SQL - Structure Query Language) .16 1.5.1.1 Khái niệm SQL 16 1.5.1.2 Đặc điểm SQL 16 1.5.1.3 Vai trò SQL 16 1.5.2 Microsoft SQL Server 17 uế 1.5.2.1 Tổng quan Microsoft SQL Server .17 1.5.2.2 Thành phần Microsoft SQL Server 17 H 1.6 Các phương pháp nghiên cứu, giải pháp công nghệ ứng dụng để xây dựng tế phần mềm 18 1.6.1 Phương pháp lập trình hướng chức (Procedure – Oriented Programming) 18 h 1.6.1.1 Giới thiệu 18 in 1.6.1.2 Các khái niệm 19 1.6.2 Sử dụng mơ hình lớp thiết kế 21 họ cK CHƯƠNG 2: BÀI TOÁN QUẢN BÁN HÀNG TẠI ĐẠI XE MÁY 24 2.1 Mơ tả tốn 24 2.2 Xác định yêu cầu 26 CHƯƠNG 3: XÂY DỰNG PHẦN MỀM QUẢN BÁN HÀNG TẠI ĐẠI XE ại MÁY 27 3.1 Phân tích hệ thống Quản bán hàng đại xe máy 27 Đ 3.1.1 Phân tích yêu cầu 27 3.1.1.1 Quản hệ thống 27 3.1.1.2 Quản danh mục .27 3.1.1.3 Quản bán hàng 27 3.1.1.4 Quản nhập mua .27 3.1.1.5 Quản công nợ - tồn kho đầu kỳ 28 3.1.1.6 Thống kê báo cáo 28 3.1.2 Sơ đồ chức (BFD – Business Function Diagram) 28 SVTH: Nguyễn Thị Yến Nhi Trang ii Khóa luận tốt nghiệp 3.1.3 Sơ đồ ngữ cảnh (Context Diagram) .30 3.1.4 Sơ đồ luồng liệu (DFD – Data Flow Diagram) 31 3.1.4.1 Sơ đồ phân rã mức 32 3.1.4.2 Sơ đồ phân rã mức cho chức 1.0 33 3.1.4.3 Sơ đồ phân rã mức cho chức 2.0 33 3.1.4.4 Sơ đồ phân rã mức cho chức 3.0 34 3.1.4.5 Sơ đồ phân rã mức cho chức 4.0 34 uế 3.1.4.6 Sơ đồ phân rã mức cho chức 5.0 34 3.1.4.7 Sơ đồ phân rã mức cho chức 6.0 35 H 3.1.5 Sơ đồ luồng thông tin (IFD – Information Flow Diagram) 35 tế 3.1.5.1 Sơ đồ luồng thông tin nhập mua .35 3.1.5.2 Sơ đồ luồng thông tin bán hàng 36 h 3.2 Thiết kế 36 in 3.2.1 Thiết kế sở liệu 36 họ cK 3.2.1.1 Xác định thực thể thuộc tính thực thể 36 3.2.1.2 Sơ đồ thực thể mối quan hệ (ERD – Entity Relationship Diagram) 39 3.2.1.3 Chuyển mối quan hệ thành lược đồ quan hệ 39 3.2.1.4 Chuẩn hóa sở liệu 41 3.2.2 Thiết kế thuật toán .47 ại 3.2.2.1 Kí hiệu sử dụng .47 3.2.2.2 Một số giải thuật chương trình 47 Đ 3.2.3 Thiết kế giao diện 52 3.3 Xây dựng thử nghiệm 54 PHẦN KẾT LUẬN 55 TÀI LIỆU THAM KHẢO 57 PHỤ LỤC 58 SVTH: Nguyễn Thị Yến Nhi Trang iii Khóa luận tốt nghiệp DANH MỤC CHỮ VIẾT TẮT STT Ký hiệu (viết tắt) Diễn giải BLL Business Logic Layers (lớp logic nghiệp vụ) CLR Common Language Runtime (Bộ thực thi ngôn ngữ chung) CSDL Cơ sở liệu DAL Data Access Layers (lớp truy cập liệu) IDE Integrated Developement Environment (Mơi trường phát triển tích hợp) GTGT Giá trị gia tăng KH Khách hàng NCC Nhà cung cấp NM Nhập mua 10 PC Phiếu chi 11 PT Phiếu thu 12 SQL Structured Query Language (ngơn ngữ truy vấn có cấu trúc) 13 TT Thơng tin 14 TS Tiến sĩ Đ ại họ cK in h tế H uế SVTH: Nguyễn Thị Yến Nhi Trang iv Khóa luận tốt nghiệp DANH MỤC HÌNH ẢNH Trang Hình 1.1 Mơ hình thác nước Hình 1.2 Kiến trúc NET Framework 11 Hình 1.3 Mơ hình NET Framework 4.5 13 Hình 1.4 Kiến trúc mơ hình lớp 21 uế Hình 3.1 Sơ đồ chức Quản bán hàng đại xe máy 28 Hình 3.2 Sơ đồ chức Quản hệ thống 29 H Hình 3.3 Sơ đồ chức Quản danh mục 29 tế Hình 3.4 Sơ đồ chức Quản Bán hàng 29 Hình 3.5 Sơ đồ chức Quản Kho 30 h Hình 3.6 Sơ đồ chức Thống kê 30 in Hình 3.7 Sơ đồ ngữ cảnh hệ thống quản bán hàng đại xe máy 31 họ cK Hình 3.8 Sơ đồ luồng liệu mức 32 Hình 3.9 Sơ đồ luồng liệu mức cho chức 1.0 33 Hình 3.10 Sơ đồ luồng liệu mức cho chức 2.0 33 Hình 3.11 Sơ đồ luồng liệu mức cho chức 3.0 34 Hình 3.12 Sơ đồ luồng liệu mức cho chức 4.0 34 ại Hình 3.13 Sơ đồ luồng liệu mức cho chức 5.0 34 Đ Hình 3.14 Sơ đồ luồng liệu mức cho chức 6.0 35 Hình 3.15 Sơ đồ luồng thơng tin nhập mua 35 Hình 3.16 Sơ đồ luồng thơng tin bán hàng 36 Hình 3.17 Sơ đồ thực thể mối quan hệ 39 Hình 3.18 Giải thuật đăng nhập 47 Hình 3.19 Giải thuật cập nhật liệu 48 Hình 3.20 Giải thuật xóa liệu 49 SVTH: Nguyễn Thị Yến Nhi Trang v Khóa luận tốt nghiệp Hình 3.21 Giải thuật nhập kho 50 Hình 3.22 Giải thuật bán hàng 51 Hình 3.23 Giao diện trang chủ 52 Hình 3.24 Giao diện hóa đơn 52 Hình 3.25 Giao diện phiếu thu 53 Hình 3.26 Giao diện báo cáo tồn kho 53 uế Hình 3.27 Giao diện xây dựng phần mềm Visial Studio 2012 54 Đ ại họ cK in h tế H Hình 3.28 Giao diện quản liệu SQL Server 2012 54 SVTH: Nguyễn Thị Yến Nhi Trang vi Khóa luận tốt nghiệp DANH MỤC BẢNG BIỂU Trang Bảng 3.1 Cấu trúc liệu bảng Chứng Từ (B00DmCt) 41 Bảng 3.2 Cấu trúc liệu bảng Trạng Thái Chứng Từ (B00DocStatus) 41 Bảng 3.3 Cấu trúc liệu bảng Người Dùng (B00UserList) 41 Bảng 3.4 Cấu trúc liệu bảng Khách Hàng (B20Customer) 41 Bảng 3.5 Cấu trúc liệu bảng Linh Kiện (B20Item) 42 uế Bảng 3.6 Cấu trúc liệu bảng Định Mức Linh Kiện (B20ItemNorm) 42 Bảng 3.7 Cấu trúc liệu bảng Kho (B20Warehouse) 42 H Bảng 3.8 Cấu trúc liệu bảng Đầu Phiếu (B30AccDoc) 43 tế Bảng 3.9 Cấu trúc liệu bảng Phiếu Chi (B30AccDocCashPayment) 43 Bảng 3.10 Cấu trúc liệu bảngPhiếu Thu (B30AccDocCashReceipt) 44 h Bảng 3.11 Cấu trúc liệu bảng Phiếu Xuất (B30AccDocInventory) 44 in Bảng 3.12 Cấu trúc liệu bảng Phiếu Nhập (B30AccDocPurchase) 44 Bảng 3.13 Cấu trúc liệu bảng Hóa Đơn (B30AccDocSales) 45 họ cK Bảng 3.14 Cấu trúc liệu bảng Bảng Giá (B30BizDoc) 45 Bảng 3.15 Cấu trúc liệu bảng Chi Tiết Bảng Giá (B30BizDocPriceTableDealer) 46 Bảng 3.16 Cấu trúc liệu bảng Công Nợ Đầu Kỳ (B30OpenBalance) 46 Bảng 3.17 Cấu trúc liệu bảng Tồn Kho Đầu Kỳ (B30OpenInventory) 46 Đ ại Bảng 3.18 Bảng kí hiệu sơ đồ thuật toán 47 SVTH: Nguyễn Thị Yến Nhi Trang vii Khóa luận tốt nghiệp PHẦN MỞ ĐẦU chọn đề tài Những năm gần đây, ngành công nghệ thơng tin phát triển cách nhanh chóng có nhiều bước tiến vượt bậc Tuy sau nhiều nước, ngành công nghệ thông tin nước ta có tốc độ nhanh ứng dụng rộng rãi nhiều lĩnh vực kinh tế, góp phần thúc đẩy phát triển xã hội Một lĩnh vực ứng dụng tin học hóa phổ biến nước uế ta lĩnh vực hệ thống thông tin quản Tin học hóa quản giúp cho H nhà quản điều hành công việc cách khoa học, xác hiệu Tất quan, công ty, tổ chức muốn tin học hóa vào hoạt động quản tế Hiệu quản lĩnh vực nhà quản quan tâm điều phụ thuộc nhiều vào hệ thống thông tin mà cụ thể chương trình quản dựa in h máy tính Nó giúp người giải phóng sức lao động, thực cơng việc cách hiệu mà hình thức quản thủ công giấy trước quản triệt để họ cK nên thường xuyên xảy nhầm lẫn, sai số, thất lạc số liệu gây thời gian, công sức mà hiệu mang lại không cao Quản bán hàng doanh nghiệp cơng việc quan trọng, đòi hỏi phận quản phải thực nhiều nghiệp vụ phức tạp Một doanh nghiệp muốn phát ại triển khả sản xuất để đáp ứng nhu cầu khách hàng cách hiệu khơng thể thiếu hệ thống thông tin hỗ trợ thường xuyên kịp thời Vì thế, việc tin học Đ hóa cơng tác quản lý, khai thác điều hành kinh doanh đòi hỏi ngày cấp thiết hết Tại cửa hàng xe máy, tồn chế quản thủ công chủ cửa hàng nhân viên quản quan tâm đến vấn đề ứng dụng công nghệ tin học vào công tác quản nhằm giảm bớt sức lao động người, tiết kiệm thời gian, giúp cho công tác quản gọn nhẹ, đáp ứng nhanh chóng, kịp thời cho nhu cầu quản mình, góp phần nâng cao hiệu kinh doanh cửa hàng SVTH: Nguyễn Thị Yến Nhi Trang Khóa luận tốt nghiệp Chính lí trên, tác giả định chọn đề tài: “Xây dựng phần mềm quản bán hàng đại xe máy dựa tảng Winform ngôn ngữ C#” để làm đề tài cho khóa luận Mục tiêu nghiên cứu * Mục tiêu tổng quát: Trên sở phân tích nghiệp vụ quản bán hàng quy trình quản cơng xây dựng phần mềm Quản bán hàng đại xe máy H * Mục tiêu cụ thể: uế nợ đại xe máy hiểu rõ quy trình xây dựng phần mềm, tác giả tiến hành - Nghiên cứu nắm vững quy trình bán hàng, quy trình quản thơng tin tế tình hình cơng nợ phải trả khách hàng cửa hàng cửa hàng nhà cung cấp h - Nghiên cứu cơng cụ, tảng lập trình sử dụng để xây dựng hệ in thống: ADO NET, C Sharp, MS SQL Server 2012 họ cK - Hiểu rõ quy trình xây dựng phát triển hệ thống thơng tin quản - Xây dựng phần mềm Quản bán hàng đại xe máy Đối tượng phạm vi nghiên cứu * Đối tượng nghiên cứu: - Các quy trình quản bán hàng quản công nợ đại xe máy ại - Cơ chế, cách thức hoạt động nghiệp vụ lưu trữ, quản bán hàng quản Đ công nợ đại xe máy - Các công cụ, tảng lập trình để xây dựng hệ thống: ADO NET, C Sharp, MS SQL Server 2012 - Quy trình xây dựng, phát triển hệ thống thông tin quản * Phạm vi nghiên cứu: - Không gian: Khảo sát thực tế quy trình nghiệp vụ quản bán hàng quản công nợ đại xe máy - Thời gian: Từ ngày 19/01/2016 đến hết ngày 15/05/2016 SVTH: Nguyễn Thị Yến Nhi Trang Khóa luận tốt nghiệp Phương pháp nghiên cứu Để nghiên cứu quy trình quản bán hàng, quản cơng nợ xây dựng phần mềm quản bán hàng phù hợp với yêu cầu thực tế đại xe máy, tác giả sử dụng phương pháp trình thực đề tài: - Phương pháp thu thập thông tin: + Phương pháp quan sát: trực tiếp quan sát hệ thống quản bán hàng quản công nợ đại xe máy, để phân tích ưu nhược điểm, quy trình uế hệ thống quản công nợ H + Phương pháp thu thập tài liệu: chủ động tìm kiếm nghiên cứu tài liệu liên quan đến đề tài thực hiện, để từ nắm vững quy định quản bán hàng tế quản công nợ giúp xây dựng phần mềm đạt yêu cầu + Phương pháp vấn: vấn trình quản bán hàng in h quản công nợ tại cửa hàng, yêu cầu mong muốn nhân viên quản chủ cửa hàng việc quản bán hàng công nợ nhằm khắc phục họ cK xây dựng phần mền đáp ứng nhu cầu nguyện vọng người sử dụng - Phương pháp mơ hình hóa: sử dụng mơ hình, sơ đồ để mơ tả lại quy trình, nghiệp vụ quản bán hàng quản công nợ cửa hàng - Phương pháp phát triển hệ thống thông tin: Dựa thông tin thu để tiến hành phân tích, thiết kế phần mềm bao gồm chức phần ại mềm xây dựng thơng qua q trình mơ hình hóa phần mềm, chuẩn hóa sở liệu Đ mã hóa để đưa sản phẩm phần mềm phù hợp với yêu cầu Dự kiến kết đạt đề tài - Nắm vững quy trình quản bán hàng, quy trình quản cơng nợ khách hàng nhà cung cấp - Nắm rõ cơng cụ, tảng lập trình sử dụng để xây dựng hệ thống - Hiểu rõ quy trình xây dựng, phát triển hệ thống thơng tin quản - Xây dựng phần mềm hoàn chỉnh Quản bán hàng đại xe máy SVTH: Nguyễn Thị Yến Nhi Trang Khóa luận tốt nghiệp PHẦN KẾT LUẬN Hiện nay, công nghệ thông tin ứng dụng rộng rãi hầu hết lĩnh vực đời sống ngày mở rộng, đặc biệt cơng cụ hỗ trợ đắc lực cho công tác quản Đối với công tác quản bán hàng phức tạp, dễ nhầm lẫn sai sót nhu cầu tin học hóa, đại hóa cần thiết Việc sử dụng phần mềm quản bán hàng giúp doanh nghiệp nâng cao hiệu công tác quản lý, tạo điều kiện cho doanh nghiệp hoạt động bền vững ổn định uế Với mong muốn xây dựng phần mềm quản bán hàng dành riêng cho đại xe máy nhằm hỗ trợ đem lại hiệu cao cho công tác quản bán hàng, H cho phép chủ cửa hàng kiểm sốt điều khiển hoạt động kinh doanh cách hiệu tế nhất, tác giả tiến hành xây dựng phần mềm quản bán hàng cho đại xe máy h Khóa luận thực nhằm giúp cho cá nhân, tổ chức tiếp cận hiểu in rõ hệ thống quản thông tin xây dựng công nghệ NET tảng mơ hình lớp Trong q trình thực đề tài, tác giả đạt kết họ cK sau: - Về mặt luận, tác giả nắm vững quy trình quản bán hàng quản công nợ đại xe máy, nắm bắt cách thức xây dựng phần mềm quản bán hàng Tác giả vận dụng công cụ Visual Studio 2012 SQL Server 2012 tảng lập trình để xây dựng hồn chỉnh phần mềm ại Quản bán hàng đại xe máy Đ - Về mặt thực tiễn, tác giả xây dựng phần mềm quản bán hàng tương đối hồn thiện với tính sau: + Cho phép người quản kiểm sốt điều khiển tồn q trình quản lý, cung cấp thơng tin phản hồi xác Ngồi ra, giúp cho chủ doanh nghiệp nắm vững tình hình sản xuất kinh doanh doanh nghiệp thông qua báo cáo mà khơng nhiều thời gian, đồng thời kiểm tra báo cáo công nợ phải thu – phải trả để chủ doanh nghiệp tổng hợp đưa định hợp kịp thời cho việc kinh doanh doanh nghiệp SVTH: Nguyễn Thị Yến Nhi Trang 55 Khóa luận tốt nghiệp + Phần mềm có giao diện thân thiện, thuận tiện cho người sử dụng, dễ dàng sử dụng quản Hỗ trợ nhiều chức phù hợp với thực tế việc tìm kiếm, trao đổi, cập nhật, quản thông tin Nhìn chung, phần mềm ứng dụng vào việc quản đại xe máy hoàn toàn khả thi, đáp ứng nhiều nhu cầu cho công tác quản bán hàng Tuy nhiên phần mềm tồn hạn chế như: chưa áp dụng đầy đủ quy trình kế tốn vào quản cơng nợ Hy vọng thời gian tới, với trau dồi thêm kiến thức, tác giả có uế thể hồn thiện thiếu sót để phần mềm quản tốt nữa, bổ sung điều chỉnh thêm số tính để phần mềm ngày hoạt động có hiệu Đ ại họ cK in h tế H hơn, ứng dụng công nghệ vào việc quản sở liệu phần mềm SVTH: Nguyễn Thị Yến Nhi Trang 56 Khóa luận tốt nghiệp TÀI LIỆU THAM KHẢO [1] Trần Nguyên Phong Giáo trình SQL Trường đại học Khoa học Huế Khoa cơng nghệ thông tin Huế, 2004 [2] Hàn Viết Thuận Giáo trình hệ thống thơng tin quản lý, Trường đại học Kinh tế quốc dân, Khoa tin học kinh tế Nhà xuất đại học Kinh tế quốc dân Hà Nội, 2008 [3] Dương Quang Thiện, Lập trình liệu dùng ADO.NET C# Nhà xuất Đ ại họ cK in h tế H [4] Wikipedia Tiếng Việt, http://vi.wikipedia.org/ uế tổng hợp TP.HCM, xuất 2005 SVTH: Nguyễn Thị Yến Nhi Trang 57 Khóa luận tốt nghiệp PHỤ LỤC Phụ lục 1: Code bảng Đối tượng tế H uế using System; using System.Collections.Generic; using System.ComponentModel; using System.Drawing; using System.Data; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Forms; using BLL; using DevExpress.XtraGrid.Menu; using DevExpress.XtraEditors; Đ ại họ cK in h namespace QuanLyBanHang { public partial class UcCustomer : UserControl { public UcCustomer() { InitializeComponent(); } B20Customer_BLL khbll = new B20Customer_BLL(); int MaKhCu = 0; int id; private void UC_Customer_Load(object sender, EventArgs e) { txt_code.Text = new B20Customer_BLL().B20Customer_GetDocNo().Rows[0][0].ToString(); gridControl1.DataSource = khbll.B20Customer_GetData(); } private void navBarItem1_LinkClicked(object sender, DevExpress.XtraNavBar.NavBarLinkEventArgs e) { gridControl1.DataSource = khbll.B20Customer_GetData(); } SVTH: Nguyễn Thị Yến Nhi Trang 58 Khóa luận tốt nghiệp Đ ại họ cK in h tế H uế private void navBarItem2_LinkClicked(object sender, DevExpress.XtraNavBar.NavBarLinkEventArgs e) { gridControl1.DataSource = khbll.B20Customer_GetData_NotIsActive(); } void itemEdit_Click(object sender, EventArgs e) { DataRow dr = grid_Customer.GetFocusedDataRow(); int Id = int.Parse(dr["Id"].ToString()); DialogResult dialogResult = XtraMessageBox.Show("Bạn có muốn khơi phục khách hàng khơng ?", "Thông báo", MessageBoxButtons.YesNo, MessageBoxIcon.Information); if (dialogResult == DialogResult.Yes) { khbll.B20Customer_Update_ReIsActive(Id); XtraMessageBox.Show("Khôi phục thành công", "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Information); gridControl1.DataSource = khbll.B20Customer_GetData_NotIsActive(); } else if (dialogResult == DialogResult.No) { } } void itemDelete_Click(object sender, EventArgs e) { DataRow dr = grid_Customer.GetFocusedDataRow(); int Id = int.Parse(dr["Id"].ToString()); DialogResult dialogResult = XtraMessageBox.Show("Bạn có muốn xóa khách hàng khơng ?", "Thơng báo", MessageBoxButtons.YesNo, MessageBoxIcon.Information); if (dialogResult == DialogResult.Yes) { khbll.B20Customer_Update_IsActive(Id); XtraMessageBox.Show("Xóa thành cơng", "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Information); gridControl1.DataSource = khbll.B20Customer_GetData(); } SVTH: Nguyễn Thị Yến Nhi Trang 59 Khóa luận tốt nghiệp else if (dialogResult == DialogResult.No) { } Đ ại họ cK in h tế H uế } private void navBarItem1_LinkClicked_1(object sender, DevExpress.XtraNavBar.NavBarLinkEventArgs e) { gridControl1.DataSource = khbll.B20Customer_GetData(); TT = 0; simpleButton1.Enabled = true; simpleButton3.Enabled = true; } private void navBarItem2_LinkClicked_1(object sender, DevExpress.XtraNavBar.NavBarLinkEventArgs e) { gridControl1.DataSource = khbll.B20Customer_GetData_NotIsActive(); TT = 1; simpleButton1.Enabled = false; simpleButton3.Enabled = false; } int TT = 0; private void grid_Customer_PopupMenuShowing_1(object sender, DevExpress.XtraGrid.Views.Grid.PopupMenuShowingEventArgs e) { if (e.MenuType == DevExpress.XtraGrid.Views.Grid.GridMenuType.Row) { if (TT == 0) { GridViewMenu menu = e.Menu as GridViewMenu; DevExpress.Utils.Menu.DXMenuItem itemDelete = new DevExpress.Utils.Menu.DXMenuItem("Xóa"); itemDelete.Click += new EventHandler(itemDelete_Click); menu.Items.Add(itemDelete); } else { GridViewMenu menu = e.Menu as GridViewMenu; SVTH: Nguyễn Thị Yến Nhi Trang 60 Khóa luận tốt nghiệp Đ ại họ cK in h tế H uế DevExpress.Utils.Menu.DXMenuItem itemEdit = new DevExpress.Utils.Menu.DXMenuItem("Khôi phục"); itemEdit.Click += new EventHandler(itemEdit_Click); menu.Items.Add(itemEdit); } } } private void but_dong_Click(object sender, EventArgs e) { txt_code.Text = ""; txt_name.Text = ""; txt_phone.Text = ""; txt_address.Text = ""; } private void simpleButton1_Click(object sender, EventArgs e) { try { DialogResult dg = MessageBox.Show("Bạn muốn cập nhật thông tin này?", "Thông Báo", MessageBoxButtons.YesNo, MessageBoxIcon.Question); if (dg == DialogResult.Yes) { string MaKh = txt_code.Text; string TenKH = txt_name.Text; string SDT = txt_phone.Text; string DiaChi = txt_address.Text; DataTable dt = khbll.B20Customer_CheckSameDocNo(MaKhCu); int Count = dt.Rows.Count; if (Count == 0) { khbll.B20Customer_Insert(MaKh, TenKH, SDT, DiaChi, true); } else { khbll.B20Customer_Update(id, MaKh, TenKH, SDT, DiaChi, true); } UC_Customer_Load(sender, e); SVTH: Nguyễn Thị Yến Nhi Trang 61 Khóa luận tốt nghiệp } } catch //(Exception ex) { MessageBox.Show("Lỗi! Vui lòng kiểm tra lại"); } Đ ại họ cK in h tế H uế } private void grid_Customer_RowClick(object sender, DevExpress.XtraGrid.Views.Grid.RowClickEventArgs e) { DataRow row = grid_Customer.GetFocusedDataRow(); id = int.Parse(row["Id"].ToString()); MaKhCu = int.Parse(row["Id"].ToString()); txt_code.Text = row["Code"].ToString(); txt_name.Text = row["Name"].ToString(); txt_phone.Text = (row["PhoneNumber"].ToString()); txt_address.Text = row["Address"].ToString(); } private void simpleButton3_Click(object sender, EventArgs e) { txt_code.Text = new B20Customer_BLL().B20Customer_GetDocNo().Rows[0][0].ToString(); txt_name.Text = ""; txt_phone.Text = ""; txt_address.Text = ""; } } } Phụ lục 2: Code bảng Hoá đơn using System; using System.Collections.Generic; using System.ComponentModel; using System.Drawing; using System.Data; using System.Text; using System.Linq; SVTH: Nguyễn Thị Yến Nhi Trang 62 Khóa luận tốt nghiệp using System.Threading.Tasks; using System.Windows.Forms; using DevExpress.XtraEditors; using System.Data.SqlClient; using BLL; using DevExpress.XtraGrid.Menu; Đ ại họ cK in h tế H uế namespace QuanLyBanHang { public partial class UcAccDocSales : DevExpress.XtraEditors.XtraUserControl { private class Item { public string Name; public int Value; public Item(string name, int value) { Name = name; Value = value; } public override string ToString() { return Name; } } public UcAccDocSales() { InitializeComponent(); } string _lienket = ""; string _SoHdCu = ""; B20Customer_BLL khbll = new B20Customer_BLL(); B30AccDoc_BLL dpbll = new B30AccDoc_BLL(); B30AccDocSales_BLL cthd = new B30AccDocSales_BLL(); B20Item_BLL lkbll = new B20Item_BLL(); B20Warehouse_BLL kbll = new B20Warehouse_BLL(); private void UcAccDoc_Load(object sender, EventArgs e) SVTH: Nguyễn Thị Yến Nhi Trang 63 Khóa luận tốt nghiệp { gridControl1.DataSource = cthd.B30AccDoc_GetDataAccDocSales_IsActive(); gridControl2.DataSource = cthd.B30AccDocSales_GetData0(); lkdoituong.Properties.DataSource = khbll.B20Customer_GetCodeAndName(); lkdoituong.Properties.ValueMember = "Mã khách hàng"; lkdoituong.Properties.DisplayMember = "Tên khách hàng"; Đ ại họ cK in h tế H uế repositoryItemLookUpEdit2.DataSource = lkbll.B20Item_GetCodeAndName(); repositoryItemLookUpEdit2.ValueMember = "Mã linh kiện"; repositoryItemLookUpEdit2.DisplayMember = "Tên linh kiện"; repositoryItemLookUpEdit3.DataSource = kbll.B20Warehouse_GetCodeAndName(); repositoryItemLookUpEdit3.ValueMember = "Mã kho"; repositoryItemLookUpEdit3.DisplayMember = "Tên kho"; comboBox1.Items.Add(new Item("VNĐ", 1)); comboBox1.Items.Add(new Item("USD", 2)); } int TT = 0; private void navBarItem3_LinkClicked(object sender, DevExpress.XtraNavBar.NavBarLinkEventArgs e) { gridControl1.DataSource = cthd.B30AccDoc_GetDataAccDocSales_IsActive(); TT = 0; } private void navBarItem4_LinkClicked(object sender, DevExpress.XtraNavBar.NavBarLinkEventArgs e) { gridControl1.DataSource = cthd.B30AccDoc_GetDataAccDocSales_NotIsActive(); TT = 1; } void itemEdit_Click(object sender, EventArgs e) { SVTH: Nguyễn Thị Yến Nhi Trang 64 Khóa luận tốt nghiệp Đ ại họ cK in h tế H uế DataRow dr = gridView1.GetFocusedDataRow(); int Id = int.Parse(dr["Id"].ToString()); DialogResult dialogResult = XtraMessageBox.Show("Bạn có muốn khôi phục thông tin không ?", "Thông báo", MessageBoxButtons.YesNo, MessageBoxIcon.Information); if (dialogResult == DialogResult.Yes) { dpbll.B30AccDoc_Update_ReIsActive(Id); XtraMessageBox.Show("Khôi phục thành công", "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Information); gridControl1.DataSource = cthd.B30AccDoc_GetDataAccDocSales_NotIsActive(); gridControl2.DataSource = cthd.B30AccDocSales_GetData0(); } else if (dialogResult == DialogResult.No) { } } void itemDelete_Click(object sender, EventArgs e) { DataRow dr = gridView1.GetFocusedDataRow(); int Id = int.Parse(dr["Id"].ToString()); DialogResult dialogResult = XtraMessageBox.Show("Bạn có muốn xóa thơng tin khơng ?", "Thơng báo", MessageBoxButtons.YesNo, MessageBoxIcon.Information); if (dialogResult == DialogResult.Yes) { dpbll.B30AccDoc_Update_IsActive(Id); XtraMessageBox.Show("Xóa thành cơng", "Thơng báo", MessageBoxButtons.OK, MessageBoxIcon.Information); gridControl1.DataSource = cthd.B30AccDoc_GetDataAccDocSales_IsActive(); gridControl2.DataSource = cthd.B30AccDocSales_GetData0(); } else if (dialogResult == DialogResult.No) { } SVTH: Nguyễn Thị Yến Nhi Trang 65 Khóa luận tốt nghiệp Đ ại họ cK in h tế H uế } private void gridView1_PopupMenuShowing(object sender, DevExpress.XtraGrid.Views.Grid.PopupMenuShowingEventArgs e) { if (e.MenuType == DevExpress.XtraGrid.Views.Grid.GridMenuType.Row) { if (TT == 0) { GridViewMenu menu = e.Menu as GridViewMenu; DevExpress.Utils.Menu.DXMenuItem itemDelete = new DevExpress.Utils.Menu.DXMenuItem("Xóa"); itemDelete.Click += new EventHandler(itemDelete_Click); menu.Items.Add(itemDelete); } else { GridViewMenu menu = e.Menu as GridViewMenu; DevExpress.Utils.Menu.DXMenuItem itemEdit = new DevExpress.Utils.Menu.DXMenuItem("Khôi phục"); itemEdit.Click += new EventHandler(itemEdit_Click); menu.Items.Add(itemEdit); } } } string Stt1 = ""; private void gridView1_RowClick(object sender, DevExpress.XtraGrid.Views.Grid.RowClickEventArgs e) { DataRow row = gridView1.GetFocusedDataRow(); _lienket = row["DocNo"].ToString(); Stt1 = row["Stt"].ToString(); if (_lienket == null) { _lienket = ""; } gridControl2.DataSource = cthd.B30AccDocSales_GetDataIsGroupStt(Stt1); _SoHdCu = row["DocNo"].ToString(); SVTH: Nguyễn Thị Yến Nhi Trang 66 Khóa luận tốt nghiệp tế H if (int.Parse(row["DocStatus"].ToString()) == 0) { cbdahoanthien.Checked = false; } else { cbdahoanthien.Checked = true; } uế txtSochungtu.Text = row["DocNo"].ToString(); dtngaychungtu.EditValue = DateTime.Parse(row["DocDate"].ToString()); lkdoituong.Text = (row["CustomerCode"].ToString()); txtnguoidaidien.Text = row["Person"].ToString(); txtdiachi.Text = row["Address"].ToString(); comboBox1.Text = row["CurrencyCode"].ToString(); Đ ại họ cK in h } private void simpleButton1_Click_1(object sender, EventArgs e) { try { DialogResult dg = MessageBox.Show("Bạn muốn cập nhật thông tin này?", "Thông Báo", MessageBoxButtons.YesNo, MessageBoxIcon.Question); if (dg == DialogResult.Yes) { string SoChungTu = txtSochungtu.Text; DateTime NgayChungTu = Convert.ToDateTime(dtngaychungtu.EditValue); string DoiTuong = lkdoituong.Text.ToString(); string NguoiDaiDien = txtnguoidaidien.Text; string MaTienTe = comboBox1.Text.ToString(); string DiaChi = txtdiachi.Text; int TrangThai; if (cbdahoanthien.Checked == false) { TrangThai = 1; } else SVTH: Nguyễn Thị Yến Nhi Trang 67 Khóa luận tốt nghiệp { TrangThai = 0; Đ ại họ cK in h tế H uế } DataTable dt = dpbll.B30AccDoc_CheckSameDocNo(_SoHdCu); int Count = dt.Rows.Count; if (Count == 0) { dpbll.B30AccDoc_Insert(SoChungTu, NgayChungTu, DoiTuong, NguoiDaiDien, DiaChi, MaTienTe, TrangThai, "HD"); for (int i = 0; i
- Xem thêm -

Xem thêm: Xây dựng phần mềm quản lý bán hàng tại đại lý xe máy dựa trên nền tảng winform bằng ngôn ngữ c , Xây dựng phần mềm quản lý bán hàng tại đại lý xe máy dựa trên nền tảng winform bằng ngôn ngữ c

Tài liệu mới bán

Gợi ý tài liệu liên quan cho bạn

Nhận lời giải ngay chưa đến 10 phút Đăng bài tập ngay