1. Trang chủ
  2. » Luận Văn - Báo Cáo

Xây dựng phần mềm quản lý bán hàng cho các đại lý phân phối vừa và nhỏ tại tỉnh thừa thiên huế dựa trên nền tảng windows form

67 363 1

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 67
Dung lượng 1,16 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Lý do chọn đề tài Trong thời kỳ kinh tế phát triển như hiện nay thì việc mua bán và trao đổi diễn rabằng nhiều hình thức mà hình thức chủ yếu là xây dựng một của hàng để thực hiện việctr

Trang 1

MỤC LỤC

Trang

MỤC LỤC iDANH MỤC BẢNG BIỂU vDANH MỤC HÌNH ẢNH vi

1.1.1 Hệ thống và hệ thống quản lý 5

Đại học Kinh tế Huế

Trang 2

1.1.2 Hệ thống thông tin quản lý 5

1.1.3 Các bước phát triển hệ thống thông tin quản lý 5

1.2 Tổng quan về nền tảng lập trình NET Framework 8

1.3 Tổng quan về môi trường phát triển tích hợp Microsoft Visual Studio và ngôn ngữ lập trình C Sharp (C#) 10

1.3.1 Môi trường phát triển tích hợp Microsoft Visual Studio 10

1.3.2 Ngôn ngữ lập trình C Sharp (C#) 11

1.4 Tổng quan về hệ quản trị cơ sở dữ liệu MS SQLServer 13

1.4.1 Ngôn ngữ truy vấn dữ liệu có cấu trúc (SQL - Structure Query Language) 13

1.4.2 Hệ quản trị cơ sở dữ liệu SQL Server 14

1.5 Giới thiệu về mô hình ba lớp 17

1.6 Phương pháp lập trình hướng chức năng 19

1.7 Thư viện công cụ thiết kế của DevExpress 20

CHƯƠNG 2: BÀI TOÁN QUẢN LÝ BÁN HÀNG CHO CÁC ĐẠI LÝ VỪA VÀ NHỎ TẠI TỈNH THỪA THIÊN HUẾ 21

2.1 Tổng quan về đại lý phân phối 21

2.1.1 Khái niệm về kênh phân phối và đại lý phân phối của các doanh nghiệp thương mại .21

2.1.2 Các dạng kênh phân phối 22

2.2 Mô tả bài toán 24

CHƯƠNG 3: XÂY DỰNG PHẦN MỀM QUẢN LÝ BÁN HÀNG CHO CÁC ĐẠI LÝ PHÂN PHỐI VỪA VÀ NHỎ TẠI TỈNH THỪA THIÊN HUẾ 29

3.1 Phân tích hệ thống quản lý bán hàng cho các đại lý phân phối vừa và nhỏ tại tỉnh Thừa Thiên Huế 29

3.1.1 Phân tích yêu cầu 29

Đại học Kinh tế Huế

Trang 3

3.1.2 Sơ đồ chức năng (BFD – Business Function Diagram) 31

3.1.3 Sơ đồ ngữ cảnh(CD - Context Diagram) 33

3.1.4 Sơ đồ luồng dữ liệu (DFD – Data Flow Diagram) 34

3.1.5 Sơ đồ luồng thông tin (IFD- Information Flow Diagrama) 40

3.1.6 Sơ đồ luồng thông tin bán hàng 41

3.1.7 Xác định các thực thể và các thuộc tính của thực thể 41

3.1.8 Xác đinh mối quan hệ của các thực thể 43

3.1.9 Sơ đồ thực thể mối quan hệ (ERD – Entity Relationship Diagram) 45

3.2 Thiết kế hệ thống quản lý bán hàng 46

3.2.1 Thiết kế cấu trúc hệ thống 46

3.2.2 Thiết kế cơ sở dữ liệu 46

3.2.3 Thiết kế giải thuật 52

3.2.4 Thiết kế giao diện 53

3.3 Cài đặt và kiểm thử 55

KẾT LUẬN

58 TÀI LIỆU THAM KHẢO 60

Đại học Kinh tế Huế

Trang 4

DANH MỤC CHỮ VIẾT TẮT

1 ADO NET Microsoft ActiveX Data Objects.NET

2 BFD Business Function Diagram ( Sơ đồ chức năng )

3 BLL Business Logic Layers (Lớp logic nghiệp vụ)

5 CLR Common Language Runtime (Thời gian chạy ngôn ngữ

chung)

7 DAL Data Access Layers (Lớp truy cập dữ liệu)

8 DFD Data Flow Diagram (Sơ đồ luồng dữ liệu)

9 DTS Data Transformation Service (Công cụ chuyển đổi dữ liệu)

10 GUI Graphical User Interface (Giao diện người dùng đồ họa)

11 IDE Integrate Development Environment (Môi trường phát

triển tích hợp)

12 IFD Information Flow Diagram ( Sơ đồ luồng thông tin )

13 MSIL Microsoft Intermediate Language (Ngôn ngữ trung gian)

15 PL Presentation Layers (Lớp giao diện)

16 SQL Structure Query Language (Ngôn ngữ truy vấn cấu trúc)

Trang 5

DANH MỤC BẢNG BIỂU

Trang

Bảng 3.1 Cấu trúc bảng “NHÂN VIÊN” 47

Bảng 3.2 Cấu trúc bảng “QUYỀN” 47

Bảng 3.3 Cấu trúc bảng “HÀNG HÓA” 47

Bảng 3.4 Cấu trúc bảng “LOẠI HÀNG HÓA” 47

Bảng 3.5 Cấu trúc bảng “KHÁCH HÀNG” 48

Bảng 3.6 Cấu trúc bảng “KHO HÀNG” 48

Bảng 3.7 Cấu trúc bảng “NHÀ CUNG CẤP” 48

Bảng 3.8 Cấu trúc bảng “PHIẾU NHẬP HÀNG” 48

Bảng 3.9 Cấu trúc bảng “CHI TIẾT PHIẾU NHẬP” 49

Bảng 3.10 Cấu trúc bảng “HÓA ĐƠN BÁN” 49

Bảng 3.11 Cấu trúc bảng “CHI TIẾT HÓA ĐƠN BÁN” 49

Bảng 3.12 Cấu trúc bảng “PHIẾU CHI” 49

Bảng 3.13 Cấu trúc bảng “PHIẾU THU” 50

Đại học Kinh tế Huế

Trang 6

DANH MỤC HÌNH ẢNH

Trang

Hình 1.1 Mô hình thác nước 6

Hình 1.2 Các thành phần của SQL Server 16

Hình 1.3 Kiến trúc mô hình 3 lớp 17

Hình 2.1 Dạng kênh phân phối mà doanh nghiệp có thể sử dụng 22

Hình 2.2 Dạng kênh phân phối trực tiếp 23

Hình 2.3 Dạng kênh phân phối gián tiếp 23

Hình 2.4 Dạng kênh phân phối hỗn hợp 24

Hình 2.5 Mối quan hệ giữa các tác nhân chính và hệ thống 25

Hình 2.6 Sơ đồ tổ chức của hệ thống quản lý bán hàng 26

Hình 3.1 Sơ đồ chức năng Quản lý bán hàng 32

Hình 3.2 Sơ đồ ngữ cảnh 33

Hình 3.3 Sơ đồ luồng dữ liệu mức 0 36

Hình 3.4 Sơ đồ luồng dữ liệu chức năng quản lý hệ thống 37

Hình 3.5: Sơ đồ luồng dữ liệu chức năng quản lý thông tin chung 37

Hình 3.6 Sơ đồ luồng dữ liệu chức năng quản lý nhập hàng 38

Hình 3.7 Sơ đồ luồng dữ liệu chức năng quản lý bán hàng 38

Hình 3.8 Sơ đồ luồng dữ liệu chức năng quản lý kho hàng 39

Hình 3.9 Sơ đồ luồng dữ liệu chức năng quản lý công nợ 39

Hình 3.10: Sơ đồ luồng dữ liệu chức năng quản lý thống kê báo cáo 40

Hình 3.11 Sơ đồ luồng thông tin nhập hàng 40

Hình 3.12 Sơ đồ luồng thông tin bán hàng 41

Hình 3.13 Sơ đồ thực thể mối quan hệ 45

Đại học Kinh tế Huế

Trang 7

Hình 3.14 Sơ đồ cấu trúc hệ thống 46

Hình 3.15 Lược đồ quan hệ của cơ sở dữ liệu 51

Hình 3.16 Giải thuật đăng nhập 52

Hình 3.17 Giải thuật nhập hàng 53

Hình 3.18 Giải thuật bán hàng 53

Hình 3.19 Giao diện form chính 54

Hình 3.20 Giao diện lập hóa đơn bán hàng 54

Hình 3.21 Giao diện lập phiếu nhập hàng 55

Hình 3.22 Giao diện thống kê doanh thu 55

Hình 3.23 Giao diện xây dựng phần mềm trên Visual Studio 2013 56

Hình 3.24 Giao diện quản lý dữ liệu trên SQL Server 2012 57

Đại học Kinh tế Huế

Trang 8

PHẦN MỞ ĐẦU

1 Lý do chọn đề tài

Trong thời kỳ kinh tế phát triển như hiện nay thì việc mua bán và trao đổi diễn rabằng nhiều hình thức mà hình thức chủ yếu là xây dựng một của hàng để thực hiện việctrao đổi mua bán, để thực hiện quá trình mua bán giữa người mua và cửa hàng, giữa cửahàng với nhà cung cấp thì chúng ta phải có công tác quản lý tốt, để đáp ứng được cácyêu cầu đó thì rất cần những ứng dụng tin học đặc biệt là các phần mềm quản lý bánhàng

Trong thời đại hiện nay công nghệ thông tin có mặt trong hầu hết các lĩnh vựccuộc sống, sự ra đời của công nghệ thông tin là thành quả vĩ đại nhất của con người vàđặc biệt nó là một công cụ hỗ trợ đắc lực cho công tác quản lý trong kinh doanh haycác lĩnh vực khác như y học, giáo dục

Việc quản lý thông tin của từng doanh nghiệp, từng tổ chức đang là nhu cầu cấpthiết đảm bảo việc các phản hồi của các thông tin là chính xác và nhanh chóng phục vụtốt cho công tác quản lý Trong việc quản trị bán hàng, hệ thống thông tin quản lý sẽgiúp đạt được sự thông hiểu nội bộ, thống nhất hành động, duy trì sức mạnh của tổchức, đạt được lợi thế cạnh tranh Với bên ngoài, hệ thống thông tin quản lý giúp nắmbắt được nhiều thông tin về khách hàng hơn hoặc cải tiến dịch vụ, nâng cao sức cạnhtranh, tạo đà cho sự phát triển Đặt biệt với các hệ thống tổ chức phức tạp thì hệ thốngthông tin quản lý là tất yếu và nếu thực hiện tốt sẽ mang lại lợi ích to lớn

Trong hoạt động bán hàng, các đại lý đóng vai trò là trung gian giữa doanhnghiệp sản xuất với khách hàng, không như trước đây người ta quan niệm đại lý phânphối chỉ gây tốn chi phí, mất thời gian, thực tế cho thấy đại lý phân phối có vai tròquan trọng giúp cho cả bên bán và bên mua Nhờ các mối quan hệ tiếp xúc, kinhnghiệm, chuyên môn hoá , các đại lý phân phối mang lại cho nhà sản xuất nhiều lợi

ích như: Giảm chi phí phân phối cho nhà sản xuất, tăng phạm vi tiếp cận với khách hàng cho nhà sản xuất trong khi giảm đầu mối tiếp xúc cho nhà sản xuất và cho khách hàng, chia sẻ rủi ro với nhà sản xuất, giúp cho cung cầu gặp nhau và tăng khả năng cạnh tranh cho các nhà sản xuất.

Đại học Kinh tế Huế

Trang 9

Tuy nhiên việc quản lý hoạt động kinh doanh như hoạt động quản lý kháchhàng, quản lý các nhà cung cấp, quản lý nợ công, quản lý xuất kho, nhập kho của cácđại lý nhỏ và vừa hiện đang gặp rất nhiều khó khăn do quản lý hoàn toàn bằng công cụMicrosoft Office Excel nên sự liên kết giữa các hoạt động kinh doanh của đại lý chưathống nhất và tốn kém rất nhiều thời gian và công sức Từ đó đặt ra vấn đề là cần thiếtphải có một hệ thống quản lý hoạt động bán hàng cho các đại lý, bổ sung các thiếu sót,cải thiện các điểm bất cập còn tồn tại và nâng cao hơn hiệu quả quản lý, như việckhông cần dùng đến các hàm, các lệnh phức tạp trong Excel, việc xử lý các nghiệp vụtrở nên nhanh chóng và tiện lợi hơn với các chức năng đã được lập trình sẵn trongphần mềm, tạo điều kiện thuận lợi cho hoạt động kinh doanh của đại lý gặp nhiềuthuận lợi.

Từ những lý do đó, tác giả đã quyết định chọn đề tài: “Xây d ựng phần mềm

qu ản lý bán hàng cho các đại lý phân phối vừa và nhỏ tại tỉnh Thừa Thiên Huế dựa trên n ền tảng Windows Form” cho khóa luận của mình.

2 Mục tiêu nghiên cứu

* Mục tiêu tổng quát:

Trên cơ sở hiểu rõ quy trình quản lý bán hàng tại các đại lý phân phối vừa và nhỏtrên địa bàn tỉnh Thừa Thiên Huế cũng như quy trình xây dựng phần mềm, tác giả tiếnhành xây dựng phần mềm quản lý bán hàng cho các đại lý phân phối vừa và nhỏ

- Hiểu rõ quy trình xây dựng, phát triển hệ thống thông tin quản lý

- Xây dựng phần mềm quản lý bán hàng cho các đại lý phân phối trên địa bàntỉnh Thừa Thiên Huế

3 Đối tượng và phạm vi nghiên cứu

* Đối tượng nghiên cứu:

Đại học Kinh tế Huế

Trang 10

- Cơ chế, cách thức hoạt động của nghiệp vụ lưu trữ, quản lý bán hàng của cácđại lý phân phối các mặt hàng gia dụng, lương thực, thực phẩm, thức uống trên địabàn tỉnh Thừa Thiên Huế.

- Các quy định trong quá trình bán hàng

- Các công cụ, nền tảng lập trình để xây dựng hệ thống: Visual C Sharp,Microsoft SQL Server, Dev Express, Crystal Report

- Quy trình xây dựng, phát triển hệ thống thông tin quản lý

* Phạm vi nghiên cứu:

- Không gian: Phần mềm được xây dựng dựa trên khuôn khổ khảo sát thực tế tạicác đại lý phân phối vừa và nhỏ trên địa bàn tỉnh Thừa Thiên Huế

- Thời gian: Từ ngày 18/01/2016 đến hết ngày 15/05/2016

4 Phương pháp nghiên cứu

Để nghiên cứu và xây dựng phần mềm quản lý bán hàng của các đại lý nhỏ vàvừa trên địa bàn tình Thừa Thiên Huế, tác giả đã sử dụng các phương pháp trong quátrình xây thực hiện đề 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 các quy trình nghiệp vụ quản lý

nhập kho, xuất kho, kiểm tra hàng tồn để phân tích và các quy trình cơ bản đối với hệthống quản lý bán hàng

+ Phương pháp thu thập tài liệu: thông qua các nguồn thu thập tài liệu như

sách báo, mạng internet, tổng hợp các tài liệu, ngôn ngữ và công nghệ liên quan Giúpnắm vững quy định về các nghiệp vụ của một hệ thống bán hàng, từ đó xây dựng phầnmềm hoàn thiện hơn

+ Phương pháp phỏng vấn: hỏi đáp nhân viên tại đại lý nhu cầu và mong

muốn trong việc quản lý bán hàng tại đại lý Nhằm khắc phục và nâng cao hiệu quảhơn trong quá trình hoạt động kinh doanh của đại lý

- Phương pháp phát triển hệ thống thông tin: Dựa trên những thông tin thu

được để tiến hành phân tích, thiết kế phần mềm bao gồm những chức năng chính của

Đại học Kinh tế Huế

Trang 11

phần mềm sẽ xây dựng thông qua quá trình mô hình hóa phần mềm, chuẩn hóa cơ sở

dữ liệu một cách phù hợp sau đó tiến hành mã hóa và cài đặt hệ thống

5 Dự kiến kết quả đạt được của đề tài

- Nắm vững các quy trình nhập kho, xuất kho, kiểm tra hàng tồn các mặt hàng,kiểm tra công nợ của khách hàng đối với đại lý, công nợ của đại lý đối với nhà cung cấp

- Nắm rõ các công cụ, nền tảng lập trình được 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 lý

- Xây dựng hoàn chỉnh phần mềm quản lý bán hàng cho các đại lý vừa và nhỏtrên địa bàn tỉnh Thừa Thiên Huế

6 Kết cấu của đề tài

Ngoài phần mở đầu và kết luận, nội dung của khóa luận được kết cấu thành 3chương như sau:

Chương 1: Cơ sở lý luận về phát triển hệ thống thông tin quản lý

Chương 2: Bài toán quản lý bán hàng cho các đại lý phân phối vừa và nhỏ trênđịa bàn tỉnh Thừa Thiên Huế

Chương 3: Xây dựng phần mềm quản lý bán hàng cho các đại lý phân phối vừa

và nhỏ tại tỉnh Thừa Thiên Huế

Đại học Kinh tế Huế

Trang 12

NỘI DUNG NGHIÊN CỨU CHƯƠNG 1: CƠ SỞ LÝ LUẬN VỀ PHÁT TRIỂN HỆ THỐNG THÔNG TIN

QUẢN LÝ Tổng quan về hệ thống thông tin quản lý

1.1.

1.1.1.H ệ thống và hệ thống quản lý

Hệ thống là tập hợp các phần tử tương tác được tổ chức nhằm thực hiện mộtmục đích xác định Các phần tử ở đây là tập hợp các phương tiện vật chất và nhân lực

Tổ chức tạo thành một hệ thống mở, nghĩa là liên hệ với một môi trường Một số phần

tử của hệ thống có sự tương tác với bên ngoài (cung ứng, thương mại, v.v…) Đặcđiểm cơ bản của hệ thống là tính tự động

Hệ thống quản lý là một hệ thống có một mục đích mang lại lợi nhuận hoặc lợiích nào đó Đặc điểm của hệ thống là có sự tham gia của con người và có trao đổi thôngtin

1.1.2.H ệ thống thông tin quản lý

Hệ thống thông tin quản lý là hệ thống cung cấp thông tin cho công tác quản lýcủa tổ chức Hệ thống bao gồm con người, thiết bị và quy trình thu thập, phân tích,đánh giá và phân phối những thông tin cần thiết, kịp thời, chính xác cho những ngườisoạn thảo các quyết định trong tổ chức

Hệ thống thông tin quản lý cũng là tên gọi của một chuyên ngành khoa học.Ngành khoa học này thường được xem là một phân ngành của khoa học quản lý vàquản trị kinh doanh Ngoài ra, do ngày nay việc xử lý dữ liệu thành thông tin và quản

lý thông tin liên quan đến công nghệ thông tin, nó cũng được coi là một phân ngànhtrong toán học, nghiên cứu việc tích hợp hệ thống máy tính vào mục đích tổ chức

1.1.3.Các bước phát triển hệ thống thông tin quản lý

Để phát triển một hệ thống thông tin, tác giả lựa chọn áp dụng mô hình thácnước Mô hình thác nước (waterfall model) là một mô hình của quy trình phát triểnphần mềm, trong đó quy trình phát triển giống như một dòng chảy, với các pha đượcthực hiện theo trật tự nghiêm ngặt và không có sự nhảy vượt

Đại học Kinh tế Huế

Trang 13

Hình 1.1 Mô hình thác nước

Nguồn: Mô hình thách nước (Waterfall model) - http://trantronglekhanh.wordpress.com

Mô hình thác nước có ưu điểm dễ quản lý Thời gian hoàn thành dự án thườngđược dự báo với độ chính xác hơn Các tài liệu đầu ra của từng giai đoạn cũng đượcxây dựng đầy đủ và hệ thống hơn là: phân tích yêu cầu, thiết kế triển khai thực hiện,kiểm thử, liên kết và bảo trì Mô hình thác nước có ưu điểm dễ quản lý Thời gianhoàn thành dự án thường được dự báo với độ chính xác hơn Các tài liệu đầu ra củatừng giai đoạn cũng được xây dựng đầy đủ và hệ thống hơn Dựa vào mô hình thácnước trên ta sẽ có 6 bước để phát triển 1 hệ thống thông tin:

1.1.3.1 Khảo sát tìm hiểu yêu cầu

Mô tả trừu tượng các dịch vụ mà hệ thống được mong đợi phải cung cấp và cácràng buộc mà hệ thống phải tuân thủ khi vận hành Nó chỉ có các đặc tả phẩm hạnhbên ngoài của hệ thống mà không liên quan đến các đặc tính thiết kế Nó phải được

Đại học Kinh tế Huế

Trang 14

viết sao cho người ta có thể hiểu được mà không cần một kiến thức chuyên môn đặcbiệt nào.

1.1.3.2 Phân tích yêu cầu

Bước này là bước rất quan trọng vì nó là bước đầu tiên để hình thành nên 1phần mềm Với sản phẩm phần mềm được xây dựng, việc hiểu đầy đủ các đặc điểmcủa nó là điều không dễ Quá trình xác định các chức năng và các ràng buộc của hệthống gọi là tìm hiểu và xác định yêu cầu Để có được điều này thì cần phải trả lời câuhỏi "cái gì? –what? " chứ không phải là "như thế nào? – how?" Tìm hiểu, xác định vàphân tích yêu cầu là bước hình thành bài toán, do vậy các yêu cầu của bài toán cầnphải được tìm hiểu và phân tích theo chiều rộng (ngang) và theo chiều sâu Vì vậy tacần phải tìm hiểu và phân tích đầy đủ các tất cả các yêu cầu một cách tối ưu nhất để dễdàng tiến hành các bước tiếp theo

1.1.3.3 Thiết kế hệ thống

Xây dựng ứng dụng phần mềm là một dây chuyền các chuyển đổi, mà ở đóphân tích nhằm xác định ứng dụng sẽ thực hiện cái gì (what) còn thiết kế nhằm để trảlời câu hỏi phần mềm cụ thể sẽ như thế nào (how)? Tức là xác định cách thức thựchiện những gì đã được đặt ra ở phần phân tích Trong ba giai đoạn: thiết kế, cài đặt vàbảo trì thì thiết kế là giai đoạn quan trọng nhất, chịu trách nhiệm đến 80% đối với sựthành công của một sản phẩm Quá trình thiết kế tốt là cơ sở để quản lý và giảm chiphí cho công việc bảo trì phần mềm sau này

1.1.3.4 Cài đặt và thử nghiệm đơn thể phần mềm

Cài đặt là việc thực thi những gì đã thiết kế Nếu trong quá trình cài đặt có xuấthiện vấn đề thì phải quay lại sửa bản thiết kế Cài đặt là một công đoạn trong việc pháttriển phần mềm và nó được xem là một hệ quả tất yếu của thiết kế Tuy vậy, phongcách lập trình và các đặc trưng của ngôn ngữ lập trình có ảnh hưởng lớn đến chấtlượng của phần mềm Một chương trình được cài đặt tốt đem lại cho ta thuận lợi trongviệc bảo trì sau này

Đại học Kinh tế Huế

Trang 15

1.1.3.5 Thử nghiệm tổng thể phần mềm

Sản phẩm phần mềm được gọi là đúng nếu nó thực hiện được chính xác nhữngtiêu chuẩn mà người thiết kế đã đặt ra Để có một đánh giá chính xác về cấp độ đúngcủa phần mềm, ta phải kiểm tra chất lượng phần mềm Như thế, kiểm tra là quá trìnhtìm lỗi và nó là một đánh giá cuối cùng về các đặc tả, thiết kế và mã hoá Mục đích củakiểm tra là đảm bảo rằng tất cả các thành phần của ứng dụng ăn khớp, vận hành nhưmong đợi và phù hợp các tiêu chuẩn thiết kế

Tổng quan về nền tảng lập trình NET Framework

1.2.

.NET Framework là một tập những giao diện lập trình và tâm điểm của nềntảng NET Nó cung cấp cơ sở hạ tầng để xây dựng và chạy các dịch vụ web hoặc lậptrình Winform C# là một trong rất nhiều ngôn ngữ lập trình được hổ trợ bởi NETFramework Có thể hiểu đơn giản đây là một trung tâm biên dịch trong đó tất cả các

ngôn ngữ được hỗ trợ bởi NET Framework sẽ được chuyển đổi ra Microsoft Intermediate Language (MSIL) rồi từ đây mới được biên dịch tức thời thành các file

thực thi như exe Một thành tố quan trọng nữa trong kiến trúc NET Framework chính

là Common Language Runtime (CLR), khối chức năng cung cấp tất cả các dịch vụ mà

chương trình cần giao tiếp với phâng cứng, với hệ điều hành

* Các thành phần của NET Framework:

- Thời gian chạy ngôn ngữ chung (Common Language Runtime - CLR): là trungtâm điểm của NET Framework Đây là một hầm máy để chạy các tính năng của.NET Trong NET, tất cả mọi ngôn ngữ lập trình đều được biên dịch ra MSIL Do bắtbuộc mọi ngôn ngữ đều phải dùng các loại kiểu dữ liệu nên CLR có thể kiểm soát mọigiao diện, gọi giữa các thành phần và cho phép các ngôn ngữ có thể tích hợp với nhaumột cách thông suốt

Đại học Kinh tế Huế

Trang 16

- Các lớp cơ sở (The Base Classes): Cho chúng ta những đặc tính của runtime vàcung cấp những dịch vụ cấp cao khác mà những người lập trình đòi hỏi thông quanamespace Namespace là một cách đặt tên để giúp sắp đặt các lớp ta dùng trongchương trình một cách thứ tự để dễ tìm kiếm chúng Tất cả các mã trong NET bằngC# hay một ngôn ngữ nào khác đều được chứa trong một namespace.

- ASP NET: Là một khung lập trình được xây dựng trên bộ thực thi ngôn ngữchung (CLR) và được sử dụng trên một máy chủ phục vụ để tạo ra các ứng dụng webmạnh Webform của ASP NET cho phép xây dựng các giao diện người dung webđộng một cách hiệu quả Các dịch vụ của ASP NET cung cấp những khối hợp nhấtcho việc xây dựng các ứng dụng trên nền web phân tán Những dịch vụ web dựa trêncác chuẩn Internet mở Bộ thực thi ngôn ngữ chung CLR cung cấp sự hỗ trợ dựng sẵn

để tạo và đưa ra những dịch vụ web thông qua việc sử dụng một khái niệm trừa tượnghóa lập trình phù hợp và thân thiện với nhà phát triển cho cả webform và visual basic

- Microsoft ActiveX Data Objects.NET (ADO NET) và ngôn ngữ đánh dấu mởrộng (Extensible Markup Language - XML ): Bộ thư viện này gồm các lớp dùng để xử

lý dữ liệu ADO.NET thay thế ADO để trong việc thao tác với các dữ liệu thôngthường Các lớp đối tượng XML được cung cấp để bạn xử lý các dữ liệu theo địnhdạng mới: XML Các ví dụ cho bộ thư viện này là SqlDataAdapter, SqlCommand,DataSet, XMLReader, XMLWriter, …

- Dịch vụ web (web services): Là các dịch vụ được cung cấp qua web (hayInternet) Dịch vụ được coi là web services không nhằm vào người dùng mà nhằm vàongười xây dựng phần mềm Web services có thể dùng để cung cấp các dữ liệu hay mộtchức năng tính toán

- Windows form: Bộ thư viện về windows form gồm các lớp đối tượng dành choviệc xây dựng các ứng dụng windows based Việc xây dựng ứng dụng loại này vẫnđược hỗ trợ tốt từ trước đến nay bởi các công cụ và ngôn ngữ lập trình của Microsoft.Giờ đây, ứng dụng chỉ chạy trên Windows sẽ có thể làm việc với ứng dụng web dựavào web service Ví dụ về các lớp trong thư viện này là Form, UserControl, …

Đại học Kinh tế Huế

Trang 17

Tổng quan về môi trường phát triển tích hợp Microsoft Visual Studio 1.3.

và ngôn ngữ lập trình C Sharp (C#)

1.3.1.Môi trường phát triển tích hợp Microsoft Visual Studio

Microsoft Visual Studio là môi trường phát triển tích hợp (IntegrateDevelopment Environment - IDE) được phát triển từ Microsoft, là một loại phần mềmmáy tính có công dụng giúp đỡ các lập trình viên trong việc phát triển phần mềm, cungcấp một môi trường phát triển hợp nhất nhiều ngôn ngữ

Microsoft Visual Studio được dùng để phát triển console (thiết bị đầu cuối –bàn giao tiếp người máy) và giao diện người dùng đồ họa (Graphical User Interface -GUI) cùng với các trình ứng dụng như windows forms, các websites, cũng như ứngdụng, dịch vụ wed (web applications, and web services) Chúng được phát triển dựatrên một mã ngôn ngữ gốc (native code) cũng như mã được quản lý (managed code)cho các nền tảng được được hỗ trợ Microsoft windows, windows mobile, NETFramework, NET Compact Framework và Microsoft Silverlight Visual Studio hỗ trợrất nhiều ngôn ngữ lập trình, có thể kể tên như sau: C/C++ ( Visual C++), VB.NET(Visual Basic NET), và C# (Visual C#)… cũng như hỗ trợ các ngôn ngữ khác như F#,Python, và Ruby, ngoài ra còn hỗ trợ cả XML/XSLT, HTML/XHTML, JavaScript vàCSS…Microsoft Visual Studio có những chức năng cơ bản sau: soạn thảo mã (codeeditor), trình gỡ lỗi (debugger), và thiết kế (designer) mà trong đó một số công cụ quantrọng của chức năng Designer được xem là một trong những điểm nhấn của MicrosoftVisual Studio

- WinForms Designer: đây là công cụ tạo giao diện đồ họa dùng WinForms.Điểm đặc biệt ở đây là giao diện với người dùng sinh động, dễ nắm bắt Nó bao gồmcác phím bấm, thanh tác vụ, hay các box đa dạng (textbox, list box, grid view…).Người lập trình có thể di chuyển, kéo ra, nhúng thả chúng một cách dễ dàng

- WPF Designer: Còn có tên mã là Cider, được hỗ trợ trong Visual Studio 2008

Nó tạo các mã dạng ngôn ngữ khai báo (Extensible Application Markup Language –XAML) cho giao diện người sử dụng (UI), mã này tích hợp với trình ứng dụngMicrosoft Expression Design

Đại học Kinh tế Huế

Trang 18

- Web designer: Visual Studio cũng hỗ trợ công cụ thiết kế trang web, trong đócho phép các công cụ thiết kế trang web được kéo, thả, rê, nhúng một cách dễ dàng…Công cụ này dùng để phát triển trình ứng dụng ASP.NET và hỗ trợ HTML, CSS andJavaScript.

- Class designer: Đây là công cụ dùng để thực thi và chỉnh sửa lớp Nó có thểdùng mã C# và VB.NET …

- Data designer: Đây là công cụ dùng để chỉnh sửa một cách sinh động, linh hoạtcác lược đồ dữ liệu, bao gồm nhiều loại lược đồ, liên kết trong và ngoài

- Mapping designer: Đây là công cụ tạo các mối liên hệ giữa sơ đồ dữ liệu và cáclớp để quản lý dữ liệu một cách hiệu quả hơn

* Các phiên b ản của Visual Studio:

- Phiên bản Express: đây là phiên bản miễn phí và phù hợp với các cá nhân, tổchức sử dụng với mục đích nghiên cứu

- Phiên bản Standard: phiên bản này có nhiều tính năng hơn so với phiên bảnExpress và với giá thành thấp, phù hợp với các tổ chức nhỏ

- Phiên bản Professional: phiên bản này có đầy đủ tất cả các tính năng tuy nhiên

hỗ trợ số lượng người dùng hạn chế phù hợp với các tổ chức vừa

- Phiên bản Ultimate: phiên bản này có gần như là đầy đủ tất cả các tính năng tuynhiên hỗ trợ số lượng người dùng hạn chế phù hợp với các cá nhân, tổ chức phục vụcho mục đích nghiên cứu

- Phiên bản Team System: đây là phiên bản có đầy đủ tính năng nhất và hỗ trợ tối

đa cho việc phát triển ứng dụng nhóm, có giá thành cao nhất

1.3.2.Ngôn ng ữ lập trình C Sharp (C#)

Ngôn ngữ C Sharp (C#) được xây dựng và kiến trúc bởi Anders Hejlsberg,người đã viết nên trình biên dịch Pascal và có nhiều đóng góp cho Delphi cũng nhưJava C# là một trong rất nhiều ngôn ngữ lập trình được hỗ trợ bởi NET Framework(như C++, Java…) Có thể hiểu đơn giản đây là một trung tâm biên dịch trong đó tất

cả các ngôn ngữ được hỗ trợ bởi NET Framework sẽ được chuyển đổi ra MSIL (mộtdạng mã trung gian) rồi từ đấy mới được biên dịch tức thời (Just in time Compiler –JIT Compiler) thành các file thực thi như exe Một thành tố quan trọng nữa trong kiến

Đại học Kinh tế Huế

Trang 19

trúc NET Framework chính là CLR (.NET Common Language Runtime), khối chứcnăng cung cấp tất cả các dịch vụ mà chương trình cần giao tiếp với phần cứng, với hệđiều hành.

* Các tính năng cơ bản của ngôn ngữ lập trình C#:

Ngôn ngữ C# là một ngôn ngữ được dẫn xuất từ Java, VB, C và C++, nhưng nóđược tạo từ nền tảng phát triển hơn Microsoft bắt đầu với công việc trong C và C++

và thêm vào những đặc tính mới để làm cho ngôn ngữ này dễ sử dụng hơn Nhiềutrong số những đặc tính này khá giống với những đặc tính có trong ngôn ngữ Java.Không dừng lại ở đó, Microsoft đưa ra một số mục đích khi xây dựng ngôn ngữ này.Những mục đích này được được tóm tắt như sau:

- C# là ngôn ngữ đơn giản và hiện đại

- C# là ngôn ngữ hướng đối tượng

- C# là ngôn ngữ mạnh mẽ và mềm dẻo

- C# là ngôn ngữ có ít từ khóa

- C# là ngôn ngữ hướng module

- C# loại bỏ một vài sự phức tạp của những ngôn ngữ như Java và C++, bao gồmviệc loại bỏ những macro, những template, đa kế thừa, và lớp cơ sở ảo (virtual baseclass) Chúng là những nguyên nhân gây ra sự nhầm lẫn hay dẫn đến những vấn đềcho các người phát triển C++

- Ngôn ngữ C# đơn giản vì nó dựa trên nền tảng C và C++ Diện mạo, cú pháp,biểu thức, toán tử và những chức năng khác được lấy trực tiếp từ ngôn ngữ C và C++,nhưng nó đã được cải tiến để làm cho ngôn ngữ đơn giản hơn

* Các ứng dụng của C#:

C# có thể sử dụng để viết các kiểu ứng dụng khác nhau:

- Các ứng game

- Các ứng dụng cho doanh nghiệp

- Các ứng dụng cho thiết bị di động: PC Pocket, PDA, cell phone

- Các ứng dụng quản lý đơn giản

- Các ứng dụng phân tán phức tạp trải rộng qua nhiều thành phố, đất nước

Đại học Kinh tế Huế

Trang 20

* Các l ợi ích của C#:

- Cross Language Support: hỗ trợ khả năng chuyển đổi dễ dàng giữa các ngônngữ

- Hỗ trợ các giao thức Internet chung

- Triển khai đơn giản

- Hỗ trợ tài liệu XML: các chú thích XML có thể được thêm vào các đoạn code

và sau đó có thể được chiết xuất để làm tài liệu cho các đoạn code để cho phép các lậptrình viên khi sử dụng biết được ý nghĩa của các đoạn code đã viết

Tổng quan về hệ quản trị cơ sở dữ liệu MS SQLServer

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, truy xuất và thao tác dữliệu, điều khiển và truy cập

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

* Đặc điểm của SQL:

- SQL là ngôn ngữ tựa tiếng Anh

- SQL là ngôn ngữ phi thủ tục, nó không yêu cầu cách thức truy nhập cơ sở dữ liệunhư thế nào, tất cả các thông báo của SQL đều rất dễ sử dụng và ít khả năng mắc lỗi

- SQL cung cấp tập lệnh phong phú cho các công việc hỏi đáp dữ liệu

- Chèn, cập nhật, xóa các hàng trong một quan hệ

- Tạo, sửa đổi, thêm và xóa các đối tượng của cơ sở dữ liệu

- Điều khiển việc truy nhập tới cơ sở dữ liệu và các đối tượng của cơ sở dữ liệu

để đảm bảo tính bảo mật của cơ sở dữ liệu

Đại học Kinh tế Huế

Trang 21

- Đảm bảo tính nhất quán và sự ràng buộc của cơ sở dữ liệu.

- SQL sử dụng các kiểu dữ liệu cơ bản: Integer, Number(n,p), char(n),varchar(n), nvarchar(n), data,…

* Vai trò c ủa SQL:

SQL 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ảntrị 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 SQL có 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ôngqua 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áccâ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 ứngdụ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ềukhiển truy cập cơ sở dữ liệu

- SQL là ngôn ngữ truy cập dữ liệu trên Internet: 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 trên Internet

- 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ệuphân tán, mỗi 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: SQL thườngđược 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ệukhi hệ thống máy tính có nhiều hệ quản trị cơ sở dữ liệu khác nhau

1.4.2.H ệ quản trị cơ sở dữ liệu SQL Server

SQL Server là một hệ thống quản trị CSDL quan hệ nhiều người dùng hoạtđộng theo mô hình Client/Server Hệ quản trị CSDL này được sử dụng ở hầu hết cácứng dụng lớn hiện nay

Trong mô hình Client/Server, phần Server chứa CSDL, cung cấp các chức năngphục vụ cho việc tổ chức và quản lý CSDL, cho phép nhiều người sử dụng cùng lúc

Đại học Kinh tế Huế

Trang 22

truy cập dữ liệu Điều này không chỉ tiết kiệm mà còn thể hiện tính nhất quán về mặt

dữ liệu Tất cả dữ liệu đều được truy xuất thông qua Server, không được truy xuất trựctiếp Do đó, có độ bảo mật cao, chịu lỗi tốt hơn, dễ dàng sao lưu dữ liệu Phần Client làcác phần mềm chạy trên máy trạm hay máy chủ Web không chứa CSDL, cho phépngười sử dụng giao tiếp với CSDL trên máy chủ

* Các đặc tính của SQL Server:

- Cho phép quản trị một hệ CSDL lớn (lên đến vài tega byte), có tốc độ xử lý dữliệu nhanh đáp ứng yêu cầu về thời gian

- Cho phép nhiều người cùng khai thác trong một thời điểm đối với một CSDL

và toàn bộ quản trị CSDL (lên đến vài chục ngày user)

- Có hệ thống phân quyền bảo mật tương thích với hệ thống bảo mật của côngnghệ NT (Network Technology), tích hợp với hệ thống bảo mật của Windows NThoặc sử dụng hệ thống bảo về độc lập của SQL Server

- Hỗ trợ trong việc triển khai CSDL phân tán và phát triển ứng dụng trên Internet

- Cho phép lập trình kết nối với nhiều ngôn ngữ lập trình khác dùng xây dựng cácứng dụng đặc thù (Visual Basic, C, C++, ASP )

- Sử dụng câu lệnh truy vấn dữ liệu Transaction – SQL (ví dụ như trong Access

là SQL, trong Oracle là PL/SQL)

*Các thành ph ần của SQL Server

- SQL Server được cấu thành bởi nhiều thành phần khác nhau, các thành phầnnày có mối quan hệ trong một hệ thống, phối hợp với nhau tạo thành một giải pháphoàn chỉnh, nâng cáo hiệu quả quản trị, phân tích, lưu trữ dữ liệu Mô hình các thànhphần của SQL Server được thể hiện như sau:Đại học Kinh tế Huế

Trang 23

Hình 1.2 Các thành phần của SQL Server

Nguồn: http://www.soctrang.vnpost.vn/Motachitiet.asp?matt=105

- Công cụ nhân bản dữ liệu (Replication): Là công cụ mà người dùng có thể tạo

một máy chủ khác với bộ dữ liệu giống bộ dữ liệu trên máy chủ chính Công cụ tạo cơchế tự đồng bộ dữ liệu giữa máy chủ chính và máy chủ nhân bản Mục đích của việctạo máy chủ nhân bản là giảm tải cho máy chủ chính, nâng cao hiệu quả phục vụ với

số lượng người, phiên giao dịch lớn

- Công cụ chuyển đổi dữ liệu (Data Transformation Service – DTS): Là công cụ

giúp người dùng chuyển dữ liệu giữa các máy chủ quản trị CSDL khác nhau, DTS cóthể chuyển dữ liệu từ SQL Server sang Oracle, Access, DB, trước khi chuyển dữ liệuDTS định dạng kiểu dữ liệu để chuyển sang hệ quản trị CSDL khác

- Công cụ phân tích dữ liệu (Analysis service): Là công cụ giúp khai thác phân

tích dữ liệu, hay khai phá dữ liệu theo phương thức đa chiều Từ một tập dữ liệu sẵn

Đại học Kinh tế Huế

Trang 24

có, người dùng có thể khai phá rồi từ đó đưa ra những nhận định, phân tích, đánh giá

và dự đoán theo lĩnh vực nào đó, mỗi chiều trong ngữ cảnh này được coi là một tiêuchí xem xét của dữ liệu

- Công cụ truy vấn tiếng anh (English query): Là công cụ tra cứu dữ liệu bằng

tiếng Anh, cú pháp có thể sử dụng theo văn phạm tiếng Anh thông thường

- Bộ công cụ cung cấp giao diện cho người quản trị (SQL Server tools):

Enterprise manager, Query Analyzer,

Giới thiệu về mô hình ba lớp

1.5.

Mô hình 3 lớp được cấu thành từ: Lớp giao diện (Presentation Layers - PL), lớplogic nghiệp vụ (Business Logic Layers - BLL), và lớp truy cập dữ liệu (Data AccessLayers - DAL) Các lớp này sẽ giao tiếp với nhau thông qua các dịch vụ (services) màmỗi lớp cung cấp để tạo nên ứng dụng, lớp này cũng không cần biết bên trong lớp kialàm gì mà chỉ cần biết lớp kia cung cấp dịch vụ gì cho người dùng và sử dụng nó màthôi

Hình 1.3 Kiến trúc mô hình 3 lớp

Nguồn: Mô hình 3 lớp trong C# - www.toiyeucoding.com

Đại học Kinh tế Huế

Trang 25

- Lớp nghiệp vụ logic (BLL)

Lớp này thực hiện các nghiệp vụ chính của hệ thống, sử dụng các dịch vụ doDAL cung cấp, và cung cấp các dịch vụ cho PL Lớp này cũng có thể sử dụng các dịch

vụ của các nhà cung cấp thứ 3 để thực hiện công việc của mình

- Lớp truy cập dữ liệu (DAL)

Lớp này thực hiện các nghiệp vụ liên quan đến lưu trữ và truy xuất dữ liệu củaứng dụng Thường lớp này sẽ sử dụng các dịch vụ của các hệ quản trị cơ sở dữ liệunhư SQL Server, Oracle,… để thực hiện nhiệm vụ của mình Trong lớp này có cácthành phần chính là Data Access Logic, Data Sources, Servive Agents)

* Cách v ận hành của mô hình

Đối với mô hình 3 lớp, các yêu cầu được xử lý tuần tự qua các lớp như hìnhminh họa ở trên Đầu tiên người dùng giao tiếp với DAL để gửi đi thông tin yêu cầu.Tại lớp này, các thông tin sẽ được kiểm tra sơ bộ, nếu hợp lệ chúng sẽ được chuyểnxuống (BLL) Tại BLL, các thông tin sẽ được nhào nặn, tính toán theo đúng yêu cầu

đã gửi, nếu không cần đến CSDL thì BLL sẽ gửi trả kết quả về cho PL, ngược lại nó sẽđẩy thông tin (dữ liệu đã xử lý) xuống DAL DAL sẽ thao tác với CSDL và trả kết quả

về cho BLL, BLL kiểm tra và gửi nó lên giao diện đồ họa người dùng (Graphic UserInterface – GUI) để hiển thị cho người dùng Một khi gặp lỗi (các trường hợp khôngđúng dữ liệu) thì đang ở lớp nào thì trả mã lỗi lên trên lớp cao hơn nó một bậc cho tớilớp GUI thì sẽ thông báo mã lỗi ra cho người dùng biết Thông tin được vận chuyển

Đại học Kinh tế Huế

Trang 26

giữa các lớp thông qua một đối tượng được gọi là Data Transfer Object (DTO), đơngiản đây chỉ là các lớp đại diện cho các đối tượng được lưu trữ trong CSDL.

* Nh ững ưu điểm khi sử dụng mô hình 3 lớp

Trước hết phải nói rằng việc tổ chức dự án phần mềm dưới dạng mô hình 3 lớp

sẽ giúp cho dự án có cấu trúc sáng sủa, rõ ràng, dễ dùng lại Từ đó việc phát triển vàbảo trì hệ thống sẽ thuận lợi hơn Điều này giúp chúng ta tiết kiệm nhiều thời gian hơnkhi mở rộng chương trình trong tương lai Khi dự án thay đổi hệ quản trị cơ sở dữ liệuhoặc chuyển ứng dụng từ dạng webform sang dạng winform thì chúng ta chỉ tốn ít thờigian để thay đổi trên lớp DAL hoặc GUI mà thôi, giữ nguyên hai lớp còn lại mà khôngcần phải thay đổi toàn bộ dự án

Một điều cũng vô cùng quan trọng đối với người lập trình viên đó là việc xử lý

và bẫy các lỗi thời gian chạy Mô hình 3 lớp hỗ trợ cho người lập trình xác định loạilỗi xuất hiện tại lớp nào và dễ dàng đưa ra cách xử lý chúng ở từng lớp cụ thể

Ngoài ra, mô hình này còn tạo ra một không gian làm việc rất tốt để người thiết

kế giao diện lẫn người lập trình có thể làm việc chung với nhau một cách dễ dàng.Việc phân ứng dụng ra thành 3 lớp cũng thuận lợi cho việc phân chia nhiệm vụ của cáclập trình viên theo các lớp khác nhau

Phương pháp lập trình hướng chức năng

1.6.

Lập trình hướng chức năng (Procedure - Oriented Programming, viết tắt làPOP) Khi máy tính được phát minh lần đầu tiên, chúng cần được lập trình một cách rõràng với những cấu trúc đơn giản và "phần mềm" chỉ đơn thuần là một tập hợp của cáclệnh rất đơn giản này kết hợp với nhau mà có thể chạy theo trình tự

Phương pháp lập trình thủ tục chính là cách thực hiện phương pháp hướng chứcnăng kể trên Phương pháp thủ tục chia một chương trình (chức năng) lớn thành cáckhối chức năng hay hàm (thủ tục) đủ nhỏ để dễ lập trình và kiểm tra Mỗi hàm có mộtđiểm bắt đầu, một điểm kết thúc, có dữ liệu và logic riêng Trong một hệ thống chươngtrình, các biến có các phạm vi nhìn thấy nhất định Trong chương trình, các hàm làm

Đại học Kinh tế Huế

Trang 27

việc độc lập với nhau Dữ liệu được chuyển đổi qua lại thông qua các tham số gọihàm.

Việc chia chương trình thành các hàm cho phép nhiều người có thể tham giavào việc xây dựng chương trình Mỗi người xây dựng một hay một số các hàm độc lậpvới nhau Phương pháp này dẫn đến một khái niệm mới - sự trừu tượng hóa Sự trừutượng hóa có thể xem như khả năng quan sát một sự việc mà không cần xem xét đếncác chi tiết bên trong của nó Trong một chương trình thủ tục, chúng ta chỉ cần biếtmột hàm nào đó có thể làm được những công việc cụ thể gì là đủ Còn làm thế nào đểthực hiện công việc đó là không quan trọng, chừng nào hàm còn tin cậy được thì còn

có thể dùng nó mà không cần phải biết nó thực hiện đúng đắn chức năng của mình nhưthế nào Điều này gọi là sự trừu tượng hóa theo chức năng (functional abstraction)(hay còn gọi là sự chuyên môn hóa) và là nền tảng của lập trình thủ tục

Thư viện công cụ thiết kế của DevExpress

Đại học Kinh tế Huế

Trang 28

BÀI TOÁN QUẢN LÝ BÁN HÀNG CHO CÁC ĐẠI LÝ VỪA VÀ CHƯƠNG 2:

NHỎ TẠI TỈNH THỪA THIÊN HUẾ Tổng quan về đại lý phân phối

Một kênh phân phối được hiểu là một tập hợp các hệ thống, các phần tử thamgia vào quá trình chuyển đưa hàng hoá từ nhà sản xuất (hoặc tổ chức đầu nguồn) đếnngười sử dụng

Đứng dưới góc độ của người quản lý kênh, ta có thể định nghĩa kênh phân phốinhư sau: “kênh phân phối là một tổ chức các tiếp xúc (quan hệ) bên ngoài để quản lýcác hoạt động nhằm đạt các mục tiêu phân phối của nó”

Như vậy đại lý phân phối là một trong những kênh phân phối mà các doanhnghiệp thương mại, sản xuất thường hay sử dụng để mang sản phẩm của mình đến gần

và nhanh hơn với khách hàng Đại lý có thể là một tổ chức công ty hay một cá nhânnhận ký kết hợp đồng phân phối sản phẩm của các doanh nghiệp sản xuất chưa có nhàphân phối, hoặc doanh nghiệp thương mại muốn mở rộng thị trường của mình và chỉcần bán hàng và nhập hàng của doanh nghiệp cần phân phối sản phẩm đã ký kết,không được phép bán hàng nhái của, giữ gìn hình ảnh của doanh nghiệp đó

Đại học Kinh tế Huế

Trang 29

Một cách tổng quát có thể mô tả các dạng kênh phân phối doanh nghiệp có thể

sử dụng qua sơ đồ sau:

Hình 2.1 Dạng kênh phân phối mà doanh nghiệp có thể sử dụng

2.1.2.Các d ạng kênh phân phối

*Theo tiêu th ức trực tiếp/gián tiếp:

Kênh phân phối trực tiếp: Trong dạng kênh này doanh nghiệp không sử dụng

người mua trung gian để phân phối hàng hoá Lực lượng bán hàng của doanh nghiệp(kể cả đại lý có hợp đồng) chịu trách nhiệm trực tiếp bán hàng đến tận tay người sửdụng hàng hoá (người mua công nghiệp đôí với tư liệu sản xuất và tiêu thụ cuối cùngđối với tư liệu tiêu dùng) Kênh này được mô tả như sau:

Đại học Kinh tế Huế

Trang 30

Hình 2.2 Dạng kênh phân phối trực tiếp

Kênh gián tiếp: là dạng kênh phân phối mà trong đó doanh nghiệp “bán” hàng

của mình cho người sử dụng thông qua các người mua trung gian (nhà buôn các cấp/nhà bán lẻ) Tuỳ theo từng trường hợp, khách hàng trực tiếp của doanh nghiệp là bánbuôn hoặc bán lẻ Doanh nghiệp không trực tiếp bán hàng cho người sử dụng sảnphẩm hàng hoá Dạng kênh này được mô tả như sau:

Hình 2.3 Dạng kênh phân phối gián tiếp

Kênh phân phối hỗn hợp: Chính xác đây là một phương án lựa chọn kênh phân

phối trên cơ sở đồng thời sử dụng cả hai dạng kênh phân phối trực tiếp và kênh phânphối gián tiếp Doanh nghiệp vừa tổ chức bán thực tiếp hàng hoá tới tận tay người sửdụng, vừa khai thác lợi thế trong hệ thống phân phối của người mua trung gian Được

mô tả bằng sơ đồ sau:

Đại học Kinh tế Huế

Trang 31

Hình 2.4 Dạng kênh phân phối hỗn hợp

*Theo tiêu th ức ngắn/dài: Để thiêt kế kênh phân phối hàng hoá doanh nghiệp có

thể lựa chọn dạng kênh dài hay ngắn và cũng có thể phối hợp cả hai dạng trên để cóphương án kênh hỗn hợp

Kênh phân phối ngắn: Là kênh phân phối trực tiếp từ doanh nghiệp đến người

sử dụng sản phẩm hoặc có sử dụng người mua trung gian nhưng không có quá nhiềungười trung gian xen giữa khách hàng và doanh nghiệp, thông thường kênh ngắn đượcxác định trong trường hợp không có hoặc chỉ có một người trung gian tham gia vàokênh phân phối của doanh nghiệp

Kênh phân phối dài: Là loại kênh phân phối có sự tham gia của nhiều loại mua

trung gian Hàng hoá của doanh nghiệp có chuyển dần thành quyền sở hữu cho một loạtcác nhà bán buôn lớn đến nhà bán buôn nhỏ hơn rồi qua người bán lẻ đến tay người tiêudùng

Mô tả bài toán

2.2.

Công ty TNHH TechLife là công ty chuyên về thiết kế, xây dựng website, Tưvấn và phát triển phẩn mềm quản lý cho doanh nghiệp, có nhu cầu triển khai hệ thốngquản lý bán hàng cho các đại lý phân phối các mặt hàng gia dụng, lương thực, thựcphẩm, thức uống có nhu cầu trên địa bàn tỉnh Thừa Thiên Huế Thông qua việc tìmhiểu thực tế về các nghiệp vụ bán hàng tại các đại lý vừa và nhỏ trên địa bàn tỉnh ThừaThiên Huế thông qua phương pháp quan sát trực tiếp như: Đại lý phân phối NgọcThủy chuyên phân phối các mặt hàng của công ty Suntory PepsiCo Việt Nam khu vựcNam Thừa Thiên Huế địa chỉ đường Võ Xuân Lâm, Thị xã Hương Thủy, Tỉnh ThừaThiên Huế qua đó yêu cầu chung của bài toán quản lý bán hàng của các đại lý phânphối vừa và nhỏ trên địa bàn tỉnh Thừa Thiên Huế có yêu cầu như sau:

Đại học Kinh tế Huế

Trang 32

Nhiệm vụ cơ bản:

- Lấy hàng từ nhà cung cấp bán cho khách hàng

Hình 2.5 Mối quan hệ giữa các tác nhân chính và hệ thống

- Nhận tiền thanh toán từ khách hàng

- Thanh toán tiền hàng cho nhà cung cấp

Đại học Kinh tế Huế

Trang 33

Sơ đồ tổ chức:

Hình 2.6 Sơ đồ tổ chức của hệ thống quản lý bán hàng

*Quy trình x ử lý:

- Về quản lý nhập kho: Sau khi bộ phận kho hàng có yêu cầu nhập kho mặt

hàng, bộ phận giao dịch sẽ kiểm tra thông tin hàng hóa còn tồn trong kho và lập phiếuyêu cầu nhập kho cho nhà cung cấp về các kho chứa của đại lý Lưu ý là đơn giá mua

đã được nhà cung cấp ký hợp đồng với ban quản lý của đại lý Trong hệ thống quản lýbán hàng chỉ sử dụng hợp đồng để tham chiếu lấy giá mua thanh toán tiền hàng chonhà cung cấp

Nhà cung cấp theo đơn hàng mua, chuyển hàng đến cho công ty Nhân viên khohàng sẽ tiếp nhận hàng đó Khi tiếp nhận hàng, nhân viên sẽ kiểm tra, nếu hàng khôngđảm bảo yêu cầu sẽ trả lại cho nhà cung cấp, sau đó lập phiếu nhập kho và chuyển cho

bộ phận giao dịch để thanh toán Bộ phận giao dịch dựa trên hợp đồng đã ký kết lấyđơn giá mua để lập hóa đơn mua và thanh toán cho nhà cung cấp

- Về quản lý bán hàng: Khi khách hàng đến yêu cầu mua hàng nhân viên bộ

phận giao dịch sẽ trao đổi thông tin với khách hàng để lập đơn hàng bán, đơn hàng bánđược lập thành 2 bản: 1 bản được lưu lại tại bộ phận giao dịch, 1 bản đưa cho kháchsau khi khách hàng đã thanh toán xong Sau khi khách hàng thanh toán, nhân viên sẽxuống kho hàng lấy hàng sau đó bàn giao hàng cho khách Sau khi kiểm tra hàng xong

Đại học Kinh tế Huế

Ngày đăng: 19/10/2016, 21:02

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
1. Dương Quang Thiện. Lập trình Visual C# như thế nào? Tập 1,2,3 Nhà xuất bản Tổng hợp TPHCM, 2005 Sách, tạp chí
Tiêu đề: Lập trình Visual C# như thế nào
Nhà XB: Nhà xuất bảnTổng hợp TPHCM
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 bản đại học Kinh tế quốc dân Hà Nội, 2008 Sách, tạp chí
Tiêu đề: Giáo trình hệ thống thông tin quản lý
Nhà XB: Nhà xuất bản đại học Kinh tếquốc dân Hà Nội
3. Hàn Viết Thuận. Giáo trình công nghệ phần mềm. Trường đại học Kinh tế quốc dân, Khoa tin học kinh tế. Nhà xuất bản đại học Kinh tế quốc dân Hà Nội Sách, tạp chí
Tiêu đề: Giáo trình công nghệ phần mềm
Nhà XB: Nhà xuất bản đại học Kinh tếquốc dân Hà Nội
4. Nguyễn Mậu Hân. Giáo trình phân tích và thiết kế hệ thống thông tin. Trường đại học Khoa học Huế, Khoa Công nghệ thông tin. Huế, 2004 Sách, tạp chí
Tiêu đề: Giáo trình phân tích và thiết kế hệ thống thông tin
5. Phạm Hữu Khang. C# 2005 cơ bản. Nhà xuất bản nhà xuất bản Lao Động Xã Hội, 2006 Sách, tạp chí
Tiêu đề: C# 2005 cơ bản
Nhà XB: Nhà xuất bản nhà xuất bản Lao Động Xã Hội
6. Phạm Hữu Khang. C# 2005 Lập trình WindowsForm. Nhà xuất bản nhà xuất bản Lao Động Xã Hội, 2006 Sách, tạp chí
Tiêu đề: C# 2005 Lập trình WindowsForm
Nhà XB: Nhà xuất bản nhà xuất bảnLao Động Xã Hội
7. 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 Sách, tạp chí
Tiêu đề: Giáo trình SQL
9. Devexpress support ,https://www.devexpress.com/Support/Demos/ Sách, tạp chí
Tiêu đề: Devexpress support
10. MSDN Library Documentation, http://msdn.microsoft.com/en-us/library/Đại học Kinh tế Huế Sách, tạp chí
Tiêu đề: MSDN Library Documentation
8. Diễn đàn www.congdongcviet.com Tài liệu tiếng Anh Khác

HÌNH ẢNH LIÊN QUAN

Hình 1.1. Mô hình thác nước - Xây dựng phần mềm quản lý bán hàng cho các đại lý phân phối vừa và nhỏ tại tỉnh thừa thiên huế dựa trên nền tảng windows form
Hình 1.1. Mô hình thác nước (Trang 13)
Hình 1.2. Các thành phần của SQL Server - Xây dựng phần mềm quản lý bán hàng cho các đại lý phân phối vừa và nhỏ tại tỉnh thừa thiên huế dựa trên nền tảng windows form
Hình 1.2. Các thành phần của SQL Server (Trang 23)
Sơ đồ tổ chức: - Xây dựng phần mềm quản lý bán hàng cho các đại lý phân phối vừa và nhỏ tại tỉnh thừa thiên huế dựa trên nền tảng windows form
Sơ đồ t ổ chức: (Trang 33)
Hình 3.1. Sơ đồ chức năng Quản lý bán hàng - Xây dựng phần mềm quản lý bán hàng cho các đại lý phân phối vừa và nhỏ tại tỉnh thừa thiên huế dựa trên nền tảng windows form
Hình 3.1. Sơ đồ chức năng Quản lý bán hàng (Trang 39)
Hình 3.3. Sơ đồ luồng dữ liệu mức 0 - Xây dựng phần mềm quản lý bán hàng cho các đại lý phân phối vừa và nhỏ tại tỉnh thừa thiên huế dựa trên nền tảng windows form
Hình 3.3. Sơ đồ luồng dữ liệu mức 0 (Trang 43)
Hình 3.4. Sơ đồ luồng dữ liệu chức năng quản lý hệ thống - Xây dựng phần mềm quản lý bán hàng cho các đại lý phân phối vừa và nhỏ tại tỉnh thừa thiên huế dựa trên nền tảng windows form
Hình 3.4. Sơ đồ luồng dữ liệu chức năng quản lý hệ thống (Trang 44)
3.1.4.4. Sơ đồ luồng dữ liệu chức năng quản lý nhập hàng - Xây dựng phần mềm quản lý bán hàng cho các đại lý phân phối vừa và nhỏ tại tỉnh thừa thiên huế dựa trên nền tảng windows form
3.1.4.4. Sơ đồ luồng dữ liệu chức năng quản lý nhập hàng (Trang 45)
3.1.4.6. Sơ đồ luồng dữ liệu chức năng quản lý kho hàng - Xây dựng phần mềm quản lý bán hàng cho các đại lý phân phối vừa và nhỏ tại tỉnh thừa thiên huế dựa trên nền tảng windows form
3.1.4.6. Sơ đồ luồng dữ liệu chức năng quản lý kho hàng (Trang 46)
Hình 3.10: Sơ đồ luồng dữ liệu chức năng quản lý thống kê báo cáo - Xây dựng phần mềm quản lý bán hàng cho các đại lý phân phối vừa và nhỏ tại tỉnh thừa thiên huế dựa trên nền tảng windows form
Hình 3.10 Sơ đồ luồng dữ liệu chức năng quản lý thống kê báo cáo (Trang 47)
3.1.6. Sơ đồ lu ồ ng thông tin bán hàng - Xây dựng phần mềm quản lý bán hàng cho các đại lý phân phối vừa và nhỏ tại tỉnh thừa thiên huế dựa trên nền tảng windows form
3.1.6. Sơ đồ lu ồ ng thông tin bán hàng (Trang 48)
3.1.9. Sơ đồ th ự c th ể m ố i quan h ệ (ERD – Entity Relationship Diagram) - Xây dựng phần mềm quản lý bán hàng cho các đại lý phân phối vừa và nhỏ tại tỉnh thừa thiên huế dựa trên nền tảng windows form
3.1.9. Sơ đồ th ự c th ể m ố i quan h ệ (ERD – Entity Relationship Diagram) (Trang 52)
Bảng 3.9. C ấ u trúc b ảng “CHI TIẾ T PHI Ế U NH ẬP” - Xây dựng phần mềm quản lý bán hàng cho các đại lý phân phối vừa và nhỏ tại tỉnh thừa thiên huế dựa trên nền tảng windows form
Bảng 3.9. C ấ u trúc b ảng “CHI TIẾ T PHI Ế U NH ẬP” (Trang 56)
Hình 3.15. Lược đồ quan hệ của cơ sở dữ liệu - Xây dựng phần mềm quản lý bán hàng cho các đại lý phân phối vừa và nhỏ tại tỉnh thừa thiên huế dựa trên nền tảng windows form
Hình 3.15. Lược đồ quan hệ của cơ sở dữ liệu (Trang 58)
Hình 3.16. Giải thuật đăng nhập - Xây dựng phần mềm quản lý bán hàng cho các đại lý phân phối vừa và nhỏ tại tỉnh thừa thiên huế dựa trên nền tảng windows form
Hình 3.16. Giải thuật đăng nhập (Trang 59)
Hình 3.19. Giao diện form chính - Xây dựng phần mềm quản lý bán hàng cho các đại lý phân phối vừa và nhỏ tại tỉnh thừa thiên huế dựa trên nền tảng windows form
Hình 3.19. Giao diện form chính (Trang 61)

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm