Tải bản đầy đủ (.docx) (40 trang)

Báo cáo thực tập chuyên ngành – xây dựng phần mềm quản lý bán hàng bằng SQL và visual studio 2008

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (787.2 KB, 40 trang )

LỜI MỞ ĐẦU
Một đất nước được coi là phát triển khi đất nước đó có một nền kinh tế vững
mạnh và hiệu quả. Xét ở phạm vi một doanh nghiệp trong cơ chế thị trường hiện
nay thì quá trình bán hàng có vai trò rất lớn, quyết định sự tồn tại và phát triển của
doanh nghiệp .
Trong những năm gần đây, sự chuyển hướng đổi mới của cơ chế thị trường
nền kinh tế nước ta có nhiều biến động .Hoạt động kinh doanh nói chung hầu hết
các doanh nghiệp đều đổi mới, bước đầu đã hoà nhập với nền kinh tế khu vực và cả
thế giới. Đặc biệt, đối với các doanh nghiệp thương mại nói riêng vấn đề tiêu thụ là
một trong những yếu tố quan trọng trong việc tiêu thụ hàng hoá, là một nghệ thuật
kinh doanh của từng doanh nghiệp. Mỗi nhà doanh nghiệp phải biết nắm bắt được
một nguồn cung ứng hàng hoá và sự biến động của nó, phải năng động, thích hợp,
mềm dẻo…
Và trong quá trình kinh doanh phát triển của các công ty, tổ chức, doanh
nghiệp thì một lượng lớn các thông tin về giao dịch (mua bán, trao đổi) các loại
hàng hoá giữa các bên liên quan như nhà cung cấp, nhà buôn bán và khách hàng
đều cần được quản lý, theo dõi hàng ngày. Quy mô và số lượng của giao dịch càng
lớn, càng nhiều người thì số lượng thông tin càng nhiều, càng quan trọng và phức
tạp. Chính vì thế sẽ mất nhiều thời gian, công sức để quản lý để dẫn đến những sai
sót đáng tiếc khi quản lý, khai thác và xử lý các thông tin trên.
Với một thực trạng như vậy thì việc ứng dụng tin học vào công tác quản lý sẽ làm
cho quá trình tác nghiệp đạt được những hiệu quả lớn, nhanh chóng và chính xác
hơn. Vì lý do đó chúng em chọn đề tài: “Xây dựng phần mềm quản lý bán hàng
công ty vật tư – vật liệu xây dựng Mai Ngọc”. Vì thời gian và trình độ có hạn,

chưa có kinh nghiệm thực tế do vậy báo cáo này sẽ còn nhiều thiếu sót.
Chúng em rất mong nhận được sự ủng hộ của các thầy giáo, cô giáo cùng sự
góp ý của các bạn để em có thể đạt được những kết quả tốt nhất.
NHÓM THỰC HIỆN
Dương Ngọc Đức
Nguyễn Văn Tuấn



1


CHƯƠNG 1
TỔNG QUAN TÀI LIỆU
1.1. Tổng quan về đề tài
1.1.1. Mục đích
Thúc đẩy quá trình bán hàng một cách nhanh chóng với số lượng nhiều thì
phải cân nhắc, tính toán, sử dụng một phương sách tiêu thụ đúng đắn, vững chắc
chứ không thể vô tư trước sự biến thiên vạn hoá của thị trường. Điều này đòi hỏi kế
toán cần phải có khả năng cung cấp, kiểm soát số lượng thông tin một cách đầy đủ,
chính xác nhất.
1.1.2. Lý do
Hoạt động kế toán trong một của hàng nói riêng hay công ty nói chung là một
chuỗi công việc rất vất vả và tốn nhiều công sức. Nếu không có sự cần mẫn, chăm
chỉ và sáng suốt thì sự sai sót là không tránh khỏi.Hệ thống thông tin quản lý bán
hàng sẽ giúp cho quá trình mua bán diễn ra mau lẹ hợp lý.
1.1.3. Ý nghĩa
Tổ chức xử lý, tính toán, nắm bắt các thống kê và kết quả trong quá trình bán
hàng.
1.1.4. Phạm vi đề tài ứng dụng
Đề tài này được ứng dụng chỉ đơn thuần phục vụ các yêu cầu về quả lý bán
hàng, chương trình chạy tren máy đơn.
1.1.5. Kế hoạch triển khai đề tài
Tuần 1
Tuần 2
Tuần 3
- Chọn đề tài, họp - Sau đó tập hợp Nhóm tâp trung
nhóm chọn đề tài


lại để thiết kế hệ

“Xây dựng phần

thống và viết bài dựa trên bài cá

mềm quản lý bán

cá nhân.

thiết kế hệ thống
nhân.

hàng công ty vật
tư, vật liệu Mai
Ngọc”

2

Tuần 4
Hoàn thành
đề tài.


- Mỗi thành viên

- Biểu đồ phân

Hoàn thành


nhóm tự tìm hiểu,

cấp chức năng-

đề tài.

viết những phần

FHD

liên quan đến hệ

- Biểu đồ luồng

thống.

dữ liệu
- Entity
Relationship
- DataBase vật

- Thuật toán
- Form nhập liệu
- Các báo cáo
- Các mẫu thử

1.1.6. Khảo sát thực tế
Đề tài được thực hiện tại công ty vật tư vật liệu Mai Ngọc. Là công ty chuyên
kinh doanh về vật liệu xây dựng…đây là công ty có quy mô vừa và nhỏ, đặc biệt là

chưa sử dụng phần mềm kế toán, các hoạt động bán hàng diễn ra chủ yếu bằng thủ
công nên tốn kém nhiều thời gian và chi phí. Vì thế trở ngại trong việc bán hàng là
không tránh khỏi.
1.2. Tổng quan về ngôn ngữ C#
Trong lĩnh vực công nghệ thông tin cảu thế giới ngày nay với sự phát triển liên
tục và đa dạng nhất là về công nghệ phần mềm, các hệ điều hành, các ứng dụng liên
tục ra đời. Tuy nhiên đôi khi việc phát triển không đồng nhất do những lợi ích khác
nhau của các công ty phần mềm lớn làm ảnh hưởng đến những người xây dựng
phần mềm.
Cách đây vài năm (so với năm 2000) java được Sun viết ra đã có sưc mạnh
đáng kể, nó hướng tới việc chạy trên nhiều hệ điều hành khác nhau kể cả ngôn ngữ
và ứng dụng (Application). Độc lập với bộ xử lý (Internet, AMD…..)đặc biết Java
thích hợp viết các ứng dụng trên Internet. Tuy nhiên Java có những nhược điểm

3


như: Hạn chế về mặt tốc độ, ngôn ngữ lập trình phức tạp khó dò tìm và khó Bug
(sửa đổi),
cần tuân theo một quy định làm việc nghiêm ngặt khi tiến hành các ứng dụng theo
nhóm(Application). Mặc dù Sun và IBM có đẩy mạnh Java nhưng vào thời
điểm đó Microsoft đã đưa ra ngôn ngữ ASP nên đã làm giảm khả năng ảnh hưởng
của Java.
Ngôn ngữ Csharp (C#) khá đơn giản, chỉ khoảng hơn 80 từ khoá và hơn mười
kiểu dữ liệu được dựng sẵn. Tuy nhiên, ngôn ngữ C# có ý nghĩa cao khi nó thực thi
những khái niệm lập trình hiện đại.
C# bao gồm nhữn hỗ trợ có cấu trúc, thành phần component, lập trình, hướng
đối tượng. Những tính chất đó hiện diện trong một ngôn gữ lập trình hiện đại. Và
ngôn ngữ C# hội đủ những điều như vậy, hơn nữa nó được xây dựng trên nền tảng
của hai ngôn ngữ mạnh nhất là C++ và Java.

Ngôn ngữ C# được phát triển bởi độ ngũ Microsoft,trong đó người đứng đầu là
Anders Hejlsberg và Scott Wiltamuth. Cả hai người này đều là những người nổi
tiếng, trong đó Anders Hejlsberg được biết đến là tác giả của Turbo Pascal, một
ngôn gữ lập trình PC phổ biến. Và ông đứng đầu trong nhóm
Borland Delphi. Một trong những thành công đầu tiên của việc xây dựng môi
trườngtích hợp (IDE)cho lập trình client/server.
Phần cốt lõi hay gọi là trái tim của bất cứ ngôn ngữ lập trình hướng đối tượng
nào là sự hỗ trợ của nó cho việc định nghĩa và làm việc với lớp. Những lớp thì định
nghĩa những kiểu dữ liệu mới, cho phép người phát triển mở rộng ngôn ngữ để tạo
mô hình tốt hơn để giải quyết vấn đề. Ngôn ngữ C# chứa những từ khoá cho việc
khai báo những kiểu lớp đối tượng mới và những phương thức hay thuộc tính của
lớp, và cho việc thực thi đóng gói, kế thừa , đa hình, ba thuộc tính cơ bản của bất cứ
ngôn ngữ lập trình hướng đối tượng.
Trong ngôn ngữ C# mọi thứ liên quan đến khai báo lớp đều được tìm thấy trong
phần khai báo của nó. Định nghĩa một lớp trong ngôn ngữ C# không đòi hỏi
phải chia ra tập tin header và tập tin nguồn giống trong ngôn ngữ C++. Ngôn ngữ
C# còn hỗ trợ XML, cho phép chèn các Tag XML để phát sinh tự động các
document cho lớp.

4


C# cũng hỗ trợ giao diện interface, nó được xem như một cam kết với một lớp
những dịch vụ mà giao diện quy định. Trong ngôn ngữ C# một lớp chỉ có thể kế
thừa từ duy nhất một lớp cha, tức là không cho đa kế thừa như trong ngôn
ngữ C+, tuy nhiên một lớp cs thể thực thi nhiều giao diện. Khi một lớp thực thi một
giao diện thì nó sẽ hứa là nó sẽ cung cấp chức năng một giao diện
Trong ngôn ngữ C#, những cấu trúc cũng được hỗ trợ, nhưng khái niệm về ngữ
nghĩa của nó thay đổi khác với C++. Trong C#, một cấu trúc được giới hạn, là kiểu
dữ liệu nhỏ gọn và khi tạo thể hiện thì nó yêu cầu ít hơn về hệ điều hành và bộ nhớ

so với một lớp. Một cấu trúc thì không thể kế thừa từ một lớp hay được kế thừa
nhưng một cấu trúc có thể thực thi một giao diện.
Ngôn ngữ C# cung cấp những đặc tính hướng thành phần, như là những thuộc
tính những sự kiện. Lập trình hướng thành phần được hỗ trợ bởi CLR cho phép lưu
trữ metadata với mã nguồn cho một lớp. Metadata mô tả cho một lớp, bao gồm
những phương thức và những thuộc tính của nó, cũng như sự bảo mật cần thiết và
thuộc tính khác. Mã nguồn chứa đựng những logic cần thiết để thực hiện những
chứuc năng của nó. Do vậy, một lớp được biên dịch như là một khối self-contained,
nên môi trường Hosting biết được cách đọc Metadata của một lớp mà mã nguồn cần
thiết và không cần thông tin khác để sử dụng nó. Một lưu ý cuối cùng về C# là ngôn
ngữ nàycũng hỗ trợ truy cập bộ nhớ trực tiếp dùng kiểu con trỏ của C++ và từ khoá
cho dấu ngoặc [] trong toán tử. Các mã nguồn này là không an toàn (unface). Và bộ
giải phóng bộ nhó tự động của CLR sẽ không thực hiện việc giải phóng những đối
tượng được tham chiếu bằng sử dụng con trỏ cho đến khi chúng được giải phóng.
Tại sao phải sử dụng ngôn ngữ C#



C# là ngôn ngữ đơn giản



C# là ngôn ngữ hiện đại



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




C# là ngôn ngữ mạnh mẽ



C# là ngôn ngữ ít từ khoá



C# là ngôn ngữ module hoá



C# là ngôn ngữ phổ biến

5


1.2.1. Csharp là ngôn ngữ đơn giản
Vì nó dựa trên nền tảng C và C++. Nếu chúng ta thân thiện với C và C++
hoặc thậm trí là Java, chúng ta sẽ thấy C# khá giống về diện mạo, cú pháp, iểu thức,
toán tử và các 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. Một vài trong các sự cải tiến là
loại bỏ các dư thừa, hay là thêm vào cú pháp có thay đổi. Ví dụ như trong C++ có
ba toán tử làm việc với các thành viên là ::, ., ->. Để biết khi nào dùng ba toán tử
này cũng phức tạp và nhiều nhầm lẫn. Trong C#, chúng được thay thế với một toán
tử duy nhất gọi là. (DOT). Đối với những người mới học thì điều này và những việc
cải tiến khác làm bớt nhầm lẫn và đơn giản hơn. Nếu chúng ta đã sử dụng Java và
tin nó đơn giản, thì chúng ta cũng sẽ thấy ở C# sự đơn giản. Hầu hết mọi người đều
không tin rằng Java là ngôn ngữ không đơn giản. Tuy nhiên, C# đơn giản hơn Java
và C++.

1.2.2. Csharp là ngôn ngữ hiện đại
Điều gì làm cho một ngôn ngữ hiện đại? Những đặc tính như là xử lý ngoại lệ
thu gom bộ nhớ tự động, những kiểu dữ liệu mở rộng, và bảo mật mã nguồn là
những đặc tính được mong đợi trong ngôn ngữ hiện đại. C# chứa tất cả những đặc
tính trên. Trong ngôn ngữ C++ con trỏ được tích hợp vào, chúng cũng là nguyên
nhân gây ra nhữn rắc rối của ngôn ngữ này. C# loại bỏ những phức tạp và rắc rối
phát sinh bởi con trỏ. Trong C#, bộ thu gom bộ nhớ tự động và kiểu dữ liệu an toàn
được tích hợp vào ngôn ngữ, sẽ loại bỏ những rắc rối của C++.
1.2.3. Csharp là ngôn ngữ hướng đối tượng
Những đặc điểm chính của ngôn ngữ hướng đối tượng (Object-oriented
language) là đóng gói (ancapsulation), sự kế thừa (inhertance), và đa hình
(polymorphism). C# hỗ trợ tất cả những đặc tính trên
1.2.4. Csharp là ngôn ngữ mạnh mẽ
Với C# chúng ta chỉ bị giới hạn bởi chính bản thân hay là chính trí tưởng tượng
của ta. Ngôn ngữ này không đặt những ràng buộc lên việc có thể làm. C#
được sử dụng nhiều cho các dự án khác nhau như là tạo ứng dụng xử lý văn bản,
ứng dụng đồ hoạ, bản tính, hay thậm chí những trình biên dịch cho những ngôn ngữ
khác.

6


1.2.5. Csharp là ngôn ngữ ít từ khoá
C# là ngôn ngữ sử dụng giới hạn những từ khoá. Phần lớn các từ khoá được sử
dụng để mô tả thông tin. Chúng ta có thể nghĩ rằng một ngôn ngữ có nhiều từ khoá
thì sẽ mạnh mẽ hơn. Điều này không phải là sự thật, ít nhất là trong trường hợp
ngôn ngữ C#, chúng ta có thể tìm thấy rằng ngôn ngữ này có thể được sử dụng để
làm bất kỳ nhiệm vụ nào.
abstract
as

base
bool
break
byte
case
catch
char
checked
Class
Const
Continue
decimal

default
dalegate
do
double
else
enum
event
explicit
extern
false
finally
fixed
float
for

foreach
goto

if
implicit
in
int
interface
internal
is
lock
long
namespace
new
null

Object
operator
out
override
params
private
protected
public
readonly
ref
return
sbyte
sealed
short

Sizeof
stackalloc

Static
String
Struct
Switch
This
Throw
True
Try
Typeof
Uint
Ulong
unchecked

unsafe
ushort
using
virtual
volatile
void
while

Bảng 2: Từ khóa của ngôn ngữ C#
1.2.6. Csharp là ngôn ngữ mudule hoá
Mã nguồn của C# có thể được viết trong những phần gọi là những lớp, những
lớp này chứa các phương thức thành viên của nó. Những lớp và phương thức có thể
được sử dụng lại trong ứng dụng hay các phương trình khác. Bằng cách truyền các
mẩu thông tin đến những lớp hay phương thức chúng ta có thể tạo ra mã nguồn
dùng lại có kết quả.

7



1.2.7. Csharp là ngôn ngữ phổ biến
C# là một trong những ngôn ngữ lập trình mới nhất.Vào thời điểm này nó được
biết đến như một ngôn ngữ phổ biến. Ngôn ngữ này có một số lý do để nó trở thành
ngôn ngữ phổ biến, một trong số lý do đó chinh là Mcrosoft và sự can thiệp của
.NET. Microsoft muốn C# trở thành ngôn ngữ phổ biến. Mặc dù một công ty không
thể làm cho một sản phẩm trở nên phổ biến, nhưng nó có thể hỗ trợ. Cách đây
không lâu, Microsoft đã gặp sự thất bại về hệ điều hành Microsoft Bod. Mặc dù
Microsoft muốn Bod trở nên phổ biến nhưng thất bại. C# thay thể tốt hơn để đem
đến thành công so với Bod. Nhiều sản phẩm đã được thay thế viết bằng ngôn ngữ
C#. Do vậy Micrsoft xác nhận C# cần thiết cho người lập trình.
Microsoft.NET là một lý do khác để đem đến sự thành công của C#. .NET là
một cách tạo và thực thi những ứng dụng.
Ngoài hai lý do trên C# sẽ còn phổ biến hơn bởi những đặc tính của ngôn ngữ
này được đề cập ở trên như: Đơn giản, hướng đối tượng, mạnh mẽ….
1.2.8. Csharp với những ngôn ngữ khác
Chúng ta đã từng nghe đến những ngôn ngữ khác như C++, Java
và Visual Basic. có lẽ nhiều người tự hỏi chúng có gì khác nhau? Và cũng tự hỏi tại
sao lại chọn ngôn ngữ này để học chứ không chọn một trong những ngôn ngữ kia.
Có rất nhiều lý do, chúng ta sẽ xem một số so sánh giữa ngôn ngữ C# với một số
ngôn ngữ khác sẽ giúp ta phần nào trả lời đuợc thắc mắc.
Microsoft nói rằng C# mang đến sức mạnh của ngôn ngữ C++ với sự dễ dàng
của ngôn ngữ Visual Basic. Có thể nó không dễ như Visual Basic, nhưng với phiên
bản Visual Basic. NET (Version 7)thì ngang nhau. Bởi vì chúng được viết lại từ một
nền tảng. Chúng ta viết nhiều chương trình với ít mã nguồn hơn với ngôn ngữ C#.
Mặc dù C# loại bỏ một vài đặc tính của C++, nhưng bù lại nó tránh được lỗi
mà trong ngôn ngữ C++ thường gặp. Điều nàycó thể tiết kiệm hàng giờ thậm chí
hàng ngày trong việc hoàn tất một chương trình.
Một điều quan trọng khác với C++ là mã nguồn C# không đòi hỏi phải có tập

tin Header. Tất cả mã nguồn được viết trong khai báo một lớp.
Như đã nói ở trên, NET runtime trong C# thực hiện việc thu gom bộ nhớ tự
động. Do điều này nên việc sử dụng con trỏ trong C# ít quan trọng hơn so với

8


C++. Những con trỏ cũng có thể được sử dụng trong C#, khi đó những đoạn mã
nguồn nay sẽ được đánh dấu là an toàn(unsafe code).
C# cũng từ bỏ ý tưởng đa kế thưa từ C++. Và sự khác nhau là C# đưa thêm
thuộc tính vào trong một lớp giống như trong Visual Basic. Và những thành viên
của lớp được gọi duy nhất bảng toán tử “.” Khác với C++ có nhiều cách gọi trong
các tình huống khác nhau.
Một ngôn ngữ khác rất mạnh và phổ biến là Java. giống như C++ và C# được
phát triển dựa trên C. Điểm giống nhau giữa C# và Java là cả hai đều biên dịch ra
mã trung gian. C# biên dịch ra MSIL còn Java biên dịch ra Bytecode.Sau đó chúng
được thực hiện bằng cách thông dịch hoặc biên dịch just-in-time trong từng máy ảo
tương ứng. Tuy nhiên, trong ngôn ngữ C# nhiều hỗ trợ đưa ra để biên dịch mã ngôn
ngữ trung gian sang mã máy. C# chứa nhiều kiểu dữ liệu cơ bản hơn Java và cũng
cho phép nhiều sự mở rộng với kiểu dữ liệu giá trị. Cũng như Java, C#cũng từ bỏ
tính đa kế thừa trong một lớp, tuy nhiên mô hình kế thừa đơn này được mở rộng bởi
tính đa kế thừa nhiều giao diện.
1.2.9 Thừa kế, biến, điều khiển
a. Thừa kế:
- Trong ngôn ngữ C#, quan hệ đặc biệt hóa được thực thi bằng cách sử dụng sự thừa
kế. Đây không phải là cách duy nhất để thực thi đặc biệt hóa, nhưng nó là cách
chung nhất để thực thi quan hệ này.
- Trong C# để tạo một lớp dẫn xuất từ một lớp ta thêm dấu hai chấm vào sau tên lớp
dẫn xuất và trước tên lớp cơ sở .
Puplic class Listbox: window

- Đoạn lệnh trên khai báo một lóp có tên là Listbox, lớp này được dẫn xuất từ
window. Chúng ta có thể đọc dấu hai chấm là: ”dẫn xuất từ”
- Lớp dẫn xuất xẽ kế thừa tất cả các thành viên của lớp cơ sở. bao gồm tất cả các
phương thức và biến thành viên lớp cơ sở. Lớp dẫn xuất được tự do thực thi các
phiên bản của một phương thức của lớp cơ sở. Lớp cơ sở cũng có thể tạo thành một
phương thức mới bằng việc đánh dấu với từ khóa New.
b. Biến

9


- Một biến là một vùng lưu trữ với một kiểu dữ liệu. Để tạo ra một biến chúng ta
phải khai báo kiểu của biến và gán cho biến một tên duy nhất. Biến có thể được
khởi tạo giá trị khi được khai báo. hay nó cũng có thể được gán một giá trị mới vào
bất cứ lúc nào trong chương trình.
- Giá trị xác định cho biến C# đòi hỏi các biến phải được khởi tạo trước khi được sử
dụng.Việc sử dụng biến khi chưa đươc khởi tạo là không hợp lệ trong ngôn ngữ C#.
Tuy nhiên, không nhất thiết lúc nào chúng ta cũng phải khởi tạo biến. Nhưng để
dung được thì bắt buộc phải gán cho chúng một giá trị. trước khi có một lệnh nào
tham chiếu đến biến đó. Điều này được gọi là gán giá trị xác định cho biến và C#
bắt buộc phải thực hiện điều này.
c. Các điều khiển



Nhãn (label)

- Nhãn là những kí tự để chú thích cho những đối tượng hoạt động khác như
textbox, button, groupbox.
- Thuộc tính:

+ Name (lbl): là tên của nhãn không được trùng với bất kì tên của đối tượng khác
trong form
+ Text: thuộc tính kí tự là những gì mà nhãn hiển thị lên cho người dùng.
+ Visible (ẩn/hiện ): Thuộc tính này chỉ có 2 giá tri true hoặc false. Nếu đặt giá trị
bằng true thì cho phép người sử dụng nhìn thấy nhãn và ngược lại

10




Textbox

- Hộp văn bản dùng để hiện thị, dùng để người dùng nhập kí tự sau đó chương trình
xử lý .
- Thuộc tính :
+ Name (txt): Là tên của hộp văn bản không được trùng với bất kì tên nào khác
của đối tượng trong form.
+ Text: Là kí tự xuất hiện trong văn bản, thuộc tính này dung để lập trình quản lý
text để xử lí trong mã lệnh .
+ visible: Thuộc tính này chỉ có hai giá trị true hoạc false. Nếu đặt giá trị bằng
true thì cho phép người sử dụng nhìn thấy nhãn và ngược lại.
+ Enable: Là thuộc tính mang hai giá trị true hoạc false, nếu thuộc tính này là
false người dùng không thể thao tác với textbox, nó khác với visible, là người dùng
vẫn nhìn được textbox .
+passwork/ password char: thuộc tính có hai trạng thái true hoạc false mặc định
khi đó phải nhập kí tự vào password char. Để hiện thị ký tự đó thay cho kí tự người
dung nhập vào
+ Focus: là thuộc tính đăt thiết lập cho con trỏ có xuất hiện đầu tiên tại nó hay
không




Nut bấm (Button)

11


- Là một đối tượng căn bản trong window form, nút bấm dung để điều khiển
chương trình làm một việc gì đó khi người dung nhấn nút hoặc nhả nút click
- Thuộc tính:
+ Name (btn) : là tên nút bấm không được trùng với bất kì đối tượng nào trong
form .
+ text: là kí tự được ghi trên nút bấm và có tác dụng chú thích cho người dùng tác
dụng của nút bấm.thuộc tính này là Readonly.
+Visible: thuộc tính này chỉ có hai giá trị True nhoặc False. Nếu đặt giá trị bằng
true thì cho phép người sử dụng nhìn thấy nhãn và ngược lại.
+Enable: là thuộc tính mang hai giá trị true hoặc false. Nếu thuộc tính này băng
false người dung không thể thao tác với textbox, nó khác với Visible
Là người dung vẫn nhìn được với textbox.



GruopBoxes

- GroupBoxes là một đối tượng của form bất kỳ như Button, Textbox,…Nó dung để
nhóm các đối tượng khác thành một nhóm để hiển thị, để quản lý theo nhóm.
- Thuộc tính :
+ Name: Là tên của GroupBoxes cần đặt theo quy ước.
+ Text: Là ký tự mô tả cho GroupBoxes nằm trên cùng bên trái của GruopBoxes

tương tự như Lable, Textbox, thuộc tính này có thể trống.

12


+ BackColor: Là màu nền của groupBoxes.
Các thuộc tính còn lại tương tư đối với các đối tượng khác như Data, Design,
Layout…



Panels

- Tương tự như GroupBox nhưng không có tên.



CheckBox and RadioButton

- Là hai đối tượng sử dụng chủ yếu trong form công cụ.
- Nhận tín hiệu điều khiển (RB).
- Nhận dữ liệu đầu vào có sẵn (CB).
* Checkbox: Là hộp chọn mang hai trạng thái chọn và không chọn,
(CheckBox luôn đi kèm với mô tả để mô tả đầu vào), CheckBox dung để sử dụng
trong những form thống kê, yêu cầu chọn lựa nhiều thống kê.
- Thuộc tính:
+Name: Tên của CheckBox không dùng với bất kỳ đối tượng nào trong form và
đặt theo quy ước chuẩn.

13



+Text: Ký tự mô tả ký tự đầu vào của CheckBox.
+Checcked: Là thuộc tính đánh dấu mang hai giá trị True hoặc False để thiết lập
giá trị ban đầu của CheckBox mặc định là false.
* RadioButton: Tương tự như CheckBox nhưng nó khác với CheckBox về bản chất
la tất cả các nút bấm nằm trên cùng một form hoặc một GroupBoxes chỉ cho phép
duy nhất một trong số đó được chọn lựa. Ký iệu là “o”.
- Thuộc tính:
+ Name: Tên của RadioButton không trùng với bất kỳ đối tượng nào khác trong
form và đặt theo quy ước chuẩn.
+ Text: Là ký tự mô tả trong dữ liệu đầu vào của RadioButton.
+ Checked: Là thuộc tính đặc trưng của nut bấm Radio và hộp chọn mang hai
giá trị True hoặc False. Giá trị mặc địnhlà false.



Picture Boes

- Là đối tượng sử dụng thiên về tiết kế đồ họa. Hộp hình ảnh dung để chứa hình ảnh
cho việc thiiets kế đồ họa trên form đôi lúc người lập trình có thể sử dụng nó tương
tự như nút mang hình ảnh, nhưng nút bấm đó không thể hiện đặc trưng của nút bấm.
- Thuộc tính:
+ Name: Tên của hộp hình ảnh không trùng với bất kỳ đối tượng nào khác trong
form.
+ SizeMode: Thuộc tính kiểu kích thước, hình ảnh căn trong hộp hình ảnh mang
4 giá trị.




Normal: Bình thường

14




Stretchimage: Độ căng của hình ảnh



Autosize: Chỉnh kích cỡ tự động cho phù hợp với hộp hình ảnh



CenterImage: căn giữa hình ảnh so với hộp hình ảnh
- Các thuộc tính còn lại tương tự như các đối tượng khác
Menu

- Là đối tượng căn bản của Window. Lập trình Window sử dụng thuộc tính Menu để
lập ra thanh thực đơn.
- Thuộc tính:
+ Name: Tên của Menu trong form không được trùng với bất kỳ đối tượng nào
khác.
+ Text của Button trong Menu: Về bản chất Menu là tập hợp cảu các nút bấm
xếp thành một thực đơn vì vậy thuộc tính Text là của mỗi nút bấm trong thực đơn
được viết theo quy ước chuẩn.
+ Các thuộc tính còn lại của nút bấm trong Menu tương tự các đối tượng khác.




LinkLable

15


- Là đối tượng căn bản của Window mặc định là chữ màu xanh có gạch chân. Đối
tượng này dùng để liên kết đến Form khác hoặc làm chcs năng như Button. Là
thuộc tính:
+ Name: Tên của Linklable trong Form không trùng với bất kỳ đối tượng nào
khác và được đặt theo quy ước chuẩn.
+ Text: là ký tự biểu diễn trên nhãn liên kết .
+ LinkColor: Màu của nhãn liên kết có thể thay đổi được .mặc định là màu xanh
blue.
+ Active Linkblue: Màu của nhãn liên kết kích hoạt (khi click chuột lên nó là màu
đỏ )mặc định là màu đỏ .
+ Disibled Linkcolor: Màu của nhãn liên kết khi không kích hoạt hay người lập
trinh mã lệnh không cho phép kích hoạt (nhãn liên kết màu mặc định là màu xám)
+ Visibled Linkcolr: màu của nhãn liên kết khi đã Click(viếng thăm). Màu mặc
định là màu xám thậm.
+ Các thuộc tính còn lại giống như các đối tượng khác.



ListBoxes and CheckListBoxes

- Hộp danh sách là đối tượng trong Form đưa ra danh sách các biến đầu vào. dùng
để liên kết và cho phép người sử dụng chọn lựa trong danh sách.
- Thuộc tính:
+ Name: tên của ListBoxes không trùng với bất kỳ với bất kỳ đối tượng nào

Khác trong Form được đặt theo quy ước chuẩn.

16


+ Items: đối tượng trong ListBoxes do người lập trình nhận vào hoặc đổi từ trên.
+ Items Height: Chiều cao của đối tượng trong listbox
+ Sorted: thuộc tính sắp xếp trong ListBox mang 2 giá trị true hoặc false
+ Selection Mode: Kiểu chọn lựa Items mang bốn giá trị



None: không lựa chọn



One: chọn lựa một giá trị



Multi Siple: chọn nhiều giá trị kiểu đơn giản



Multi Extended: chọn nhiều giá trị mở rộng.



comboBox


- ComBox là một đối tượng trong lập trình Window Form, nó chứa các Items như
ListBox nhưng cách thể hiện gọn gàng hơn thường được dùng khi người sử dụng
chọn một đối tượng.
- Thuộc tính:
+ Name (cmb): không được trùng với bất kỳ đối tượng nào trong Form, được đặt
theo quy ước chuẩn.
VD: cmbhọten
+ Text: Là ký tự mô tả cho comBoxes, thường nó là Items đầu tiên hoặc đơn thuần
như TextBox không tham gia vào trao đổi giữ liệu.
+Items: Là đối tượng con trực thuộc ComBoxes, người dùng, người lập trình có thể
khởi tạo Items bằng tay hoặc đổ từ CSDL
-Các thuộc tính còn lại giống như các đối tượng khác.
1.2.10. Điều khiển Tab

17


- Nút Tab bàn phím là nút bước nhảy giúp người dùng tiện lợi hơn khi sử dụng
chường trình.
- Ý nghĩa: Trong lập trình Window(Form) nút Tab dùng để chuyển đổi Focus giữa
các đối tượng trên Form. Người lập trình học điều khiển Tab
Và sử dụng chúng sao cho hợp lý giữa các thao tác của người dùng và sự tiện lợi
của chương trình.
*Tab Control:
- Điều khiển Tab trong lập trình Window tương ứng với việc cài đặt TabIndex (chỉ
số Tab), chỉ số Tab là số nguyên từ 1- n, n là số đối tượng trong Form.
- Cách sử dụng: Trong lập trình Window đối tượng nào đươc khởi tạo trước thì có
chỉ số Tab nhỏ hơn đối tượng sau. Khi sử dụng Tab đối tượng có chr số nhỏ Focus
trước các đối tượng có chr số lớn hơn. Khi người dùng ấn Tab trên bàn phím Focus
trước các đối tượng có chỉ số lơn hơn. Khi người dùng ấn Tab trên bàn phím Focus

thì nó sẽ Focus sang đối tượng có chỉ số Tab lớn hơn liệt kê.
- TabControl thuộc với việc đặt chỉ số Tab.
Cách khởi động Visual studio.NET2005
- Vào Start / Programs / Microsoft Visual studio 2008 / Microsoft Visual studio
2008.

18


19


CHƯƠNG 2
NỘI DUNG VÀ PHƯƠNG PHÁP NGHIÊN CỨU
2.1. Phân tích và thiết kế hệ thống
2.1.1. Sơ đồ phân cấp chức năng hệ thống
QUẢN LÝ BÁN HÀNG
Báo cáo
Cập nhật
Tra cứu
Nhập HH
Sửa HH
Xóa HH
Tra cứu
Hàng tồn kho
Hàng đã xuất
Tình hình nhập HH
Tình hình xuất HH
Cnhật DMHH dddddđdddddddddDDDDMHHDMHH


Trong qúa trình quản lý bán hàng thì hệ thống sẽ cập nhập đựoc các danh mục
hàng hoá, nhóm hàng hóa để có thể nắm bắt các thông tin và sửa chữa các thông tin
hàng hoá đó.
Bên cạnh đó, hệ thống sẽ thống kê số lượng hàng còn tồn hay số lượng hàng
đã xuất thông qua các báo cáo về tình hình xuất nhập.

20


2.1.2. Biểu đồ luồng dữ liệu DFD
NCCấp
KH

QLBH
Phiếu NK HH
Phiếu đặt HH
Phiếu XK HH uuuugghhggfggfhrhjgghhhhuytghrhhhhhhhhhhhhhhhHHHHHHH
D Sách mua HH
Yêu cầu báo cáo
Văn bản báo cáo
Phòng TC- KT

Bộ phận quản lý bán hàng trình duyệt báo cáo về việc nhập hàng hoá bằng các
văn bản yêu cầu. Sau đó Nhà cung cấp tiếp nhận đơn đặt hàng của bộ phận Quản lý
bán hàng và đáp ứng đủ số lưọng hàng yêu cầu.Và sau cùng là phục vụ yêu cầu của
khách hàng thông qua danh sách mua hàng, và xuất các hoá đơn bán hàng.
* DDF ở mức đỉnh (Mức1)HH
Nhóm hàng
Nhà cung cấp
1 Cập nhật

2 Nhập Xuất HH
Phiếu NK HH
Phiếu đặt HH
TT HH

TT nhóm hàng

21


* DDF mức đỉnh (Mức 2)
Nhà cung cấp
Hàng hóa
Nhóm hàng
Nhập xuất
HH
TTHH

* DDF ở mức đỉnh (Mức 3)
Nhà cung cấp
Hàng hóa
Cập nhật
Nhập HH
Sửa HH
Xóa HH
TTHH
TT
TT HH
TT moi ve HH
TT HH


22


* DDF ở mức đỉnh (Mức 4)
Hàng hóa
Nhà cung cấp
Tệp Hoá Đơn
Khách hàng
Xuất HH
Nhập
HH
Phiếu NK HH
TTHH
DS mua hang
Phieu xuat HH

TT PX HH
TT phieu nhap
Phieu nhap HH

2.1.3. Entity Relationship

23


2.1.4. Thiết kế mô hình bảng dữ liệu.
tbl_member(Username,

Password,


Cpassword,

Email,

Gender,

Birthday,

Occupation)
Column name
Username
Password
Cpassword
Email
Gender
Birthday
Occupation

Data Type
Nvarchar
Nvarchar
Nvarchar
Nvarchar
Nvarchar
Datetime
Nvarchar

Field size
50

50
50
50
50

Index
Khóa chính

50

Bảng 1: Bảng nhân viên.
tbl_hanghoa(Mahang, Tenhang, DVT, GiaNhap, GiaBan, SoLuong, Mota)
Column name
Mahang
Tenhang
DVT
GiaNhap
GiaBan
SoLuong
Mota

Data Type
Nvarchar
Nvarchar
Nvarchar
Int
Int
Int
Nvarchar


Field size
50
50
50

50

Bảng 2: Bảng hàng hoá.

24

Index
Khóa chính


tbl_hoadonban(MaHD, NgayBan, KhachHang, NhanVien, TongTien)
Column name
MaHD
NgayBan
KhachHang
NhanVien
TongTien

Data Type
Nvarchar
Datetime
Nvarchar
Nvarchar
Int


Field size
50

Index
Khóa chính

50
50

Bảng 3: Bảng hoá đơn bán.
tbl_chitiethoadon(MaHD, MaHang, SoLuong, DVT, DonGia, ThanhTien)
Column name
MaHD
MaHang
SoLuong
DVT
DonGia
ThanhTien

Data Type
Nvarchar
Nvarchar
Int
Nvarchar
Int
Int

Field size
50
50


Index
Khóa chính
Khoá phụ

50

Bảng 4: Bảng chi tiết hoá đơn.

25


×