MỤC LỤC
Chương I. Tổng quan
Giới thiệu về đề tài
Hiện nay cc doanh nghiệp tại việt nam,nhất l cc doanh nghiệp cĩ quy mơ trung bình v lớn hoạt động trong lĩnh vực dịch vụ,thương mại,sản xuất thì vai trị của thơng tin v quản lý thơng tin bằng tin học lại cng cĩ ý nghĩa đặc biệt,nó giúp các đơn vị đột biến về chất lượng quản lý điều hnh và qua đó góp phần quan trọng trong việc nâng cao chất lượng và hiệu quả hoạt động của doanh nghiệp,đáp ứng yêu cầu cạnh tranh và phát triển làm cho thị trường
53 trang |
Chia sẻ: huyen82 | Lượt xem: 2780 | Lượt tải: 2
Tóm tắt tài liệu Chương trình quản lý kế toán Doanh nghiệp (C#), để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
phần mềm quản trị dữ liệu đ chuyễn mình v sẽ trở thnh thị trường quan trọng do hai điều kiện.
Một: Số lượng máy tính trang bị trong các công ty đ nhiều v bắt đầu tiến trình nối mạng.
Hai: Môi trường kinh doanh ngày càng mang tính thị trường r rệt với sự cạnh tranh mạnh mẽ giữa cc doanh nghiệp trong nước cũng như với các doanh nghiệp nước ngoài.
Điều này địi hỏi cc doanh nghiệp phải trang bị hệ thống quản lý thơng tin tin tiến để phân tích tình hình kinh doanh v ra quyết định một cách nhanh nhất.Do đó,các phần mềm ứng dụng trong quản lý đ đóng vai trị quan trọng,đặc biệt là phần mềm quản trị dữ liệu về nghiệp vụ kế toán cho các doanh nghiệp.
Hiện nay,trên thị trường có rất nhiều phần mềm quản trị cơ sở dữ liệu để thực hiện cho việc quản lý kế tốn trong cc doanh nghiệp nhưng để xác định hệ quản trị nào là tối ưu,gần gủi với người sử dụng.Đặc biệt đối với nước ta hiện nay thì việc nắm vững,thao tc v sử dụng vẫn cịn nhiều khĩ khăn nên việc tạo ra một phần mềm như trn l rất quan trọng v cần thiết.Bởi vì ,giao diện của chương trình đều sử dụng Font chữ tiếng việt nên người sử dụng có thể thao tác,sử dụng dễ dàng khi người sử dụng không thành thạo tiếng anh…
Từ nhận định đó mà em đ chọn đề tài:”Chương trình Quản lý kế tốn doanh nghiệp”.
Khảo st hệ thống quản lý kế tốn doanh nghiệp
Trong công tác kế toán,tất cả sổ sách,báo cáo kế toán đều phải được lập theo mẫu quy định của nhà nước và theo từng kỳ kế toán (Từng tháng).khi xây dựng phần mềm kế toán,phải hướng nội dung đến việc lập sổ sách và báo cáo theo từng kỳ kế toán đúng với quy định của chế độ.Việc lập sổ sách bằng máy cũng như làm thủ công đều phải tuân thủ đúng chế độ kế toán hiện hành,cả về quy tắc xây dựng,trình tự ghi sổ.
Hầu ht cc loại sổ sch kế tốn đều được lập với các thông tin như: Số dư đầu kỳ,chi tiết phát sinh trong kỳ và kết số cuối kỳ.Các báo cáo tài chính sẽ được lập dựa vào số dư đầu kỳ,Số phát sinh trong kỳ và số cuối kỳ của các tài khoản kế toán
Do đó khi thiết kế cơ sở dữ liệu để “May hóa” cách làm thủ công phải phân chia cơ sở dữ liệu để quản lý các đối tượng tương ứng với các mục trên.Để công tác kế toán được liền mạch,thuận tiện cho việc lập báo cáo tháng,báo cáo năm,sẽ hướng đến việc theo di lin tiếp thơng tin kế tốn cho nhiều kỳ kế tốn.
Khi niệm
Kế toán là công việc ghi chép,tính toán bằng con số dưới hình thức gi trị,hiện vật v thời gian lao động.Chủ yếu là dưới hình thức gi trị để phản ánh,kiểm tra tình hình vận động của các loại tài sản,quá trình v kết quả sản xuất kinh doanh,sử dụng vốn và kinh phí nhà nước,cũng như từng tổ chức,xí nghiệp.
Vai trị kế tốn trong doanh nghiệp
Đối với doanh nghiệp kế toán giúp theo di thường xuyên tình hình hoạt động sản xuất
kinh doanh của doanh nghiệp như sản xuất sản phẩm,tiêu thụ sản phẩm,tình hình cung ứng nguyn vật liệu phục vụ sản xuất,gip cho việc theo di thị trường để sản xuất,tích trữ hàng hóa nhẵm cung cấp kịp thời cho thị trường những sản phẩm đáp ứng nhu cầu và thị hiếu của người tiêu dùng.Ngoài ra,kế toán cịn cung cấp ti liệu cho doanh nghiệp để làm cơ sở hoạch định chương trình hnh động cho từng giai đoạn,thời kỳ.
Nhờ kế toán mà người quản lý điều hành trôi chảy các hoạt động của đơn vị,giúp cho việc quản lý lnh mạnh,trnh hiện tượng tham ô,lng phí ti sản,thực hiện việc kiểm sốt nội bộ cĩ hiệu quả.
Nhờ kế toán mà người quản lý tính được công việc mình đ điều hành trong từng giai đoạn và qua đó vạch ra phương hướng hoạt động cho tương lai.điều hịa được tình hình ti chính của doanh nghiệp.
Kế toán là cơ sở để giải quyết mọi tranh chấp,khiếu tố.là cơ sở pháp lý chưng minh về hành vi thương mại.
Tổ chức kế tốn tại doanh nghiệp
Tổ chức cơng tc kế tốn l một trong những nội dung quan trọng trong tổ chức cơng tc quản lý của doanh nghiệp.Với chức năng cung cấp thông tin và kiểm tra các hoạt động kinh tế tài chính trong doanh nghiệp nên công tác kế toán ảnh hưởng trực tiếp tới chất lượng và hiệu quả của công tác quản lý doanh nghiệp.Hơn nữa nó cịn ảnh hưởng đến việc đáp ứng các yêu cầu quản lý khác nhau của các đối tượng có lợi ích trực tiếp hoặc gián tiếp đến hoạt động của doanh nghiệp,trong đó có các cơ quan chức năng của Nhà nước.
Tổ chức công tác kế toán bao gồm quy định nội dung,phương pháp và các quy trình của cơng tc kế tốn để đạt được những mục tiêu đ đề ra.Hay nói cách khác đây là những công việc kế toán phải làm và những phương pháp kế toán phải thực hiện.
Để tổ chức công tác kế toán trong một doanh nghiệp cần phải căn cứ vào quy mô hoạt động,đặc điểm của nghành và lĩnh vực hoạt động,đặc điểm về tổ chức sản xuất v quản lý cũng như tính chất của quy trình sản xuất trong doanh nghiệp.Bn cạnh đó cịn phải căn cứ vào các chính sách chế độ.thể lệ được Nhà nước ban hành.Nội dung tổ chức công tác kế toán bao gồm những công việc sau đây:
Tổ chức thực hiện chế độ chứng từ kế tốn
Vn dụng hệ thống ti khoản kế tốn
Vn dụng hình thức kế tốn
Tin học hĩa quản lý thơng tin trong cc doanh nghiệp
Khi niệm
Làm kế toán bằng máy tính là việc áp dụng những tài nguyên trên máy tính (các phần mềm ứng dụng) để hạch toán kế toán,thay cho việc ghi chép,thống kê,tổng hợp số liệu kế toán bằng phương pháp thủ công.
Vai trị của tin học trong quản lý
Thông tin tư lâu đ được đánh giá có vai trị quan trọng trong quản lý kinh tế,ngy nay việc nhận định “Ai nắm được thông tin,người đó sẽ chiến thắng ”lại càng trở nên đúng đắn.Chính từ việc tin học hóa thông tin với sự trợ giúp của máy tính và phần mềm đ đưa đến những khái niệm mới như kỷ nguyn của kỷ thuật số,nền kinh tế tri thức…
Việc tin học hĩa vo quản lý hoạt động sản xuất kinh doanh sẽ giúp cho các doanh nghiệp có khả năng cạnh tranh trong một nền kinh tế thị trường,đồng thời cạnh tranh với các doanh nghiệp nước ngoài được đánh gia qua các đặc điểm sau:
Tính nhanh chĩng
Bất kỳ lc no cũng cĩ thể trả lời cc thơng tin một cch nhanh chĩng,chính xc.
Tính thích ứng
Giúp người quản lý điều hành trôi chảy các hoạt động của đơn vị và có thể tính được công việc của mình đ điều hành trong từng giai đoạn và qua đó vạch ra phương hướng hoạt động cho tương lai.Điều hành được tình hình ti chính của doanh nghiệp.
Tính an tồn
Bảo đảm sự an toàn dữ liệu của doanh nghiệp.
Nhiệm vụ của đề tài
Thay thế việc ghi chép vào sổ sách bằng cách nhập,xuất và lưu trử lượng thông tin khổng lồ một cách nhanh chóng,chính xác và an toàn về dữ liệu.Đáp ứng kịp thời thông tin khi người kế toán cần đến.Tránh sai sót và giảm thiểu về thời gian công việc nhằm nâng cao hiệu quả kinh doanh trong từng giai đoạn,chu kỳ sản xuất kinh doanh của doanh nghiệp
Cung cấp giao diện gần gủi với người sử dụng,người sử dụng có thể tham khảo danh mục tài khoản doanh nghiệp bất kỳ lúc nào cần đến,cho biết các mặt hàng nào được nhập – xuất trong khoảng thời gian nhất định…
Một số phần mềm lin quan
Với sự trợ giúp của máy tính,công việc tính toán và kết sổ kế toán ngày một được cải thiện.Bắt đầu từ việc sử dụng Exel 4.0 cho đến hiện nay vẫn cịn một số doanh nghiệp chọn chng lm giải php hiệu quả cho cơng tc my tính hĩa cc nhiệm vụ kế tốn doanh nghiệp v sản xuất.
Song song với pht triển tin học v trình độ dân trí ngày một nâng cao của cán bộ làm kế toán,đồng thời tình hình đầu tư vào công tác kế toán trong một vài doanh nghiệp ngày càng được chú trọng hơn.nhằm giúp cho công tác kế toán đúng hạn kỳ,độ chính xác cao,giảm chi phí nhân công,một số phần mềm kế toán đ được đưa vào sử dụng như:
Phần mềm Misa
Phần mềm Bravo
Phần mềm Fast..
Chương II. Phân tích và thiết kế chương trình
Phân tích hệ thống
Các bước cơ bản của kế toán doanh nghiệp
Lập chứng từ gốc để ghi nhận nghiệp vụ kinh tế phát sinh và đã hoàn thành
Phân tích nghiệp vụ kế toán trên cơ sở chứng từ gốc để :
Định khoản cho các nghiệp vụ kế toán
Cập nhật chứng từ vào máy tính như : chứng từ nhập xuất hàng hóa, chứng từ thu chi, ủy nhiệm chi, ủy nhiệm thu…
In ra các báo cáo : báo cáo nhập xuất trong kỳ, tổng hợp thu chi trong kỳ, báo cáo hàng tồn kho, thẻ kho…
Ghi chép những nghiệp vụ đã được phân tích vào nhật ký chung theo một trình tự thời gian : Lập chứng từ ghi sổ hay sổ nhật ký chung.
Điều chỉnh số liệu để phản ánh đúng chi phí cũng như doanh thu đạt được trong kỳ : Lập bảng cân đối số phát sinh
Kết chuyển số liệu trên các tài khoản tạm thời để :
Tính giá thành sản phẩm
Tính kết quả hoạt động kinh doanh…
Tổng hợp số liệu từ tài khoản và từ các tài liệu có liên quan để lập báo cáo tài chính như :
Lập bảng cân đối kế toán.
Bảng báo cáo kết quả hoạt động kinh doanh.
Bảng lưu chuyển tiền tệ.
Thuyết minh báo cáo tài chính.
Tình hình thực hiện nghĩa vụ thuế với nhà nước
Chuyển số liệu từ nhật ký vào sổ cái các tài khoản liên quan để in ra bất kỳ lúc nào khi cần đến
Kiểm tra đối chiếu số liệu trên sổ sách kế toán đã lập, trên những tài khoản tổng hợp
Mơ tả yu cầu quảnl ý của chương trình
Quản lý tiền mặt
Chương trình cĩ thể:
Quản lý cc khoản thu –chi của doanh nghiệp
Xác định được tồn quỷ tiền mặt của doanh nghiệp
In ra các phiếu thu-chi để xác định giao cho khách hàng hay để lưu trữ.
Lập bo co thu-chi chi tiết v tổng hợp trong thng.
Cung cấp dữ liệu cho các phân hệ kế toán khác như:
Phn hệ kế tốn tổng hợp
Phn hệ kế tốn chi phí…
Quản lý hng hĩa:
Chương trình cĩ thể:
Quản lý các phiếu nhập xuất kho của doanh nghiệp,biết được mau hàng từ các nhà cung cấp nào và xuất bn cho khch hng no.
Lập bo co chi tiết nhập xuất hng hĩa.
Lập bo co tổng hợp nhập xuất hng hĩa theo từng ngy,từng thng,từng kho,từng mặt hng,từng khch hng v từng nh cung cấp.
In ra thẻ kho cho biết việc nhập xuất v tồn của một mặt hng ứng với một kho trong khoảng thởi gian xác định trong tháng.
In báo cáo tồn kho:Tồn kho tổng hợp cho biết việc nhập xuất và tồn của tất cả hàng hóa trong tất cả các kho hiện có đến ngày cần thiết.Tồn theo kho cho biết việc nhập xuất và tồn của tất cả hàng hóa trong một kho cho đến ngày cần thiết.
Lập bo co gi vốn của cc mặt hng xuất bn trong thng.
Báo cáo giá hàng nhập :Cho biết đơn giá cụ thể của từng mặt hàng.Nếu một mặt hàng có nhiều đơn giá nhập khác nhau thì phải liệt k tất cả đơn giá nhập đó và số lượng nhập tương ứng.
In bo co thống k: Theo từng mặt hng Theo từng nhĩm hng Theo từng kho hng.
Nguồn nhập xuất: Cho biết nguồn nhập xuất trong thng
Cung cấp dữ liệu cho các phân hệ kế toán khác như: Tổng hợp,chi phí,tiền mặt…
Tra cứu: Phiếu nhập kho Phiếu xuất kho
Quản lý cơng nợ:
Chương trình cĩ thể:
Quản lý hình thức thanh toán công nợ giữa khách hàng với doanh nghiệp và giữa doanh nghiệp với nhà cung cấp.
Đối với nhà cung cấp :
Khi mua hàng (Phiếu nhập kho) thì sẽ làm công nợ nhà cung cấp tăng lên.
Khi doanh nghiệp trả tiền mặt cho nhà cung cấp (Phiếu chi tiền mặt) thì làm công nợ nhà cung cấp giảm.
Đối với khách hàng :
Khi xuất hàng cho khách hàng (Hóa đơn bán hàng) thì sẽ làm công nợ khách hàng tăng lên.
Khi doanh nghiệp thu tiền mặt của khách hàng trả nợ (Phiếu thu tiền mặt) thì làm công nợ khách hàng giảm.
Lập báo cáo tổng hợp công nợ khách hàng và nhà cung cấp.
Lập báo cáo công nợ chi tiết cho từng khách hàng và nhà cung cấp.
Cung cấp dữ liệu cho các phân hệ kế toán khác như : tổng hợp, tiền mặt, hàng hóa,…
Dữ liệu đầu vào và đầu ra của chương trình
Thông tin nhập
Danh mục chứng từ
Danh mục tài khoản
Danh mục hàng hóa
Danh mục nhóm hàng
Danh mục kho hàng
Danh mục khách hàng
Danh mục nhà cung cấp
Danh mục nhân viên
Danh mục thuế
Danh mục hình thức nhập xuất
Danh mục hình thức thanh toán
Các loại phiếu : Phiếu nhập và phiếu xuất
Thông tin xuất
Báo cáo tình hình thu, chi tồn quỹ tiền mặt
Báo cáo tình hình việc nhập xuất và tồn kho hàng hóa
Báo cáo công nợ khách hàng và nhà cung cấp
Cấu trúc chương trình
Danh mục ti khoản
Danh mục kho
Danh mục hng hĩa
Danh mục nhĩm hng
Danh mục khch hng
Danh mục nh cung cấp
Danh mục chứng từ
Danh mục nhn vin
Danh mục thuế
Danh mục tình hình nhập xuất
Danh mục hình thức thanh tốn
Hệ thống danh mục
Phn hệ quản lý tiền mặt
Cập nhật phiếu thu-chi
Bo co tiền mặt
Tổng hợp
Chi Tiết
Phn hệ quản lý hng hĩa
Cập nhật chứng từ nhập –xuất
Bo co hang hĩa
Tổng hợp
Chi tiết
Phn hệ kế tốn cơng nợ
Cập nhật phiếu thu-chi cơng nợ
Bo co cơng nợ
Tổng hợp
Chi tiết
Cơ sở dữ liệu của chương trình
Cấu trc table dữ liệu của chưng trình
tblKyketoan
tblKyketoan
FieldName
DataType
Description
Indexed
MaKy
Nvarchar(6)
M kỳ
Primery key
DienGiai
Nvarchar(50)
Diễn Giải
tblDMTK
tblDMTK
FieldName
DataType
Description
Indexed
MaTK
Nvarchar(20)
Số hiệu ti khoản
Primery
LoaiTK
Nvarcharr(1)
Loại TK
TenTK
Nvarchar(50)
Tn ti khoản
DVT
Nvarchar(20)
Đơn Vị tính
TKme
Nvarchar(3)
Ti khoản mẹ
BacTK
int
Bc ti khoản
tblKhachHang
tblKhachHang
Field
DataType
Description
Indexed
MaKh
Varchar(20)
M khch hang
Primery
TenKh
Text(255)
Tn khch hang
Diachi
Text(255)
Địa chỉ
SoDienThoai
Text(11)
Số điện thoại
tblNhaCungCap
tblNhaCungCap
Field
DataType
Description
Indexed
MaNCC
Varchar(20)
M nh cung cấp
TenNCC
Varchar(255)
Tn nh cung cấp
Diachi
Text(255)
Địa chỉ
SoDienThoai
Varchar(11)
Số điện thoại
tblChungTu
tblChungTu
FieldName
DataType
Description
Indexed
MaCT
Text(20)
M chứng từ
Primery
TenCT
Text(255)
Tn chứng từ
tblNhanVien
tblNhanVien
FieldName
DataType
Description
Indexed
MaNV
Text(10)
M nhn vin
Primery
TenNV
Text(25)
Tn nhn vin
ChuVu
Text(20)
Chức vụ
Diachi
Text(255)
Địa chỉ
SoDienThoai
Text(11)
Số điện thoại
tblDMThue
FieldName
DataType
Description
Indexed
MaSoThue
Text(30)
M số thuế
Primery
DienGiai
Text(255)
Diễn giải
Muc_Thue
Text
Mức thuế
tblTonDauky
tblTonDauky
FieldName
DataType
Description
Indexed
MaTK
Text(20)
Số hiệu ti khoản
Primery
MaKy
Text(6)
M kỳ kế tốn
Primery
SoLuongTonDK
Number
Số lượng tồn đầu kỳ
SoDuDK
Currency
Số dư đầu kỳ
tblPhieuthu
TblPhieuthu
FieldName
DataType
Description
Indexed
MaNV
Nvarchar(50)
M nghiệp vụ
Primary
Maky
Nvarchar(6)
M kỳ
MaCT
Nvarchar(20)
M chứng từ
NgayCT
datetime
Ngy chứng từ
MaKH
Nvarchar(20)
M khch hang
MaSoThue
Nvarchar(50)
M số thuế
Sotien
money
Số tiền
TK_No
Nvarchar(20)
Ti khoản nợ
TK_Co
Nvarchar(20)
Ti khoản cĩ
DienGiai
Nvarchar(50)
Diễn giải
tblPhieuchi
TblPhieuchi
FieldName
DataType
Description
Indexed
MaNV
Nvarchar(50)
M nghiệp vụ
Primary
Maky
Nvarchar(6)
M kỳ
MaCT
Nvarchar(20)
M chứng từ
NgayCT
datetime
Ngy chứng từ
MaNCC
Nvarchar(20)
M khch hang
MaSoThue
Nvarchar(50)
M số thuế
Sotien
money
Số tiền
TK_No
Nvarchar(20)
Ti khoản nợ
TK_Co
Nvarchar(20)
Ti khoản cĩ
DienGiai
Nvarchar(50)
Diễn giải
tblHDNhap
TblHDNhap
FieldName
DataType
Description
Indexed
SoCT
Nvarchar(20)
Số chứng từ
Primary
SoCTG
Nvarchar(20)
Số chứng từ gốc
DienGiai
Nvarchar(20)
Diễn giải
NgayCT
datetime
Ngy chứng từ
MaNVien
Nvarchar(20)
M nhn vin
MaNCC
Nvarchar(50)
M nh cung cấp
TyGia
int
Tỷ gi nhập
Makho
Nvarchar(50)
M kho
MaCT
Nvarchar(50)
M chứng từ
TK_No
Nvarchar(20)
Ti khoản nợ
TK_Co
Nvarchar(20)
Ti khoản cĩ
DienGiai
Nvarchar(50)
Diễn giải
Ma_HTTT
Nvarchar(5)
M hình thức thanh tốn
tblHDNhapchitiet
TblHDNhapchitiet
FieldName
DataType
Description
Indexed
SoCT
Nvarchar(20)
Số chứng từ
Primary
MaHH
Nvarchar(20)
M hng hĩa
MaThue
Nvarchar(20)
M thuế
DVT
Nvarchar(20)
Đơn vị tính
SLNhap
int
Số lượng nhập
Sotien
money
Số tiền
Tong
money
Tổng
tblHDXuat
TblHDXuat
FieldName
DataType
Description
Indexed
SoCT
Nvarchar(20)
Số chứng từ
Primary
SoCTG
Nvarchar(20)
Số chứng từ gốc
DienGiai
Nvarchar(20)
Diễn giải
NgayCT
datetime
Ngy chứng từ
MaNVien
Nvarchar(20)
M nhn vin
MaNCC
Nvarchar(50)
M nh cung cấp
TyGia
int
Tỷ gi Xuat
Makho
Nvarchar(50)
M kho
MaCT
Nvarchar(50)
M chứng từ
TK_No
Nvarchar(20)
Ti khoản nợ
TK_Co
Nvarchar(20)
Ti khoản cĩ
DienGiai
Nvarchar(50)
Diễn giải
Ma_HTTT
Nvarchar(5)
M hình thức thanh tốn
tblHDXuatchitiet
TblHDXuatchitiet
FieldName
DataType
Description
Indexed
SoCT
Nvarchar(20)
Số chứng từ
Primary
MaHH
Nvarchar(20)
M hng hĩa
MaThue
Nvarchar(20)
M thuế
DVT
Nvarchar(20)
Đơn vị tính
SLXuat
int
Số lượng nhập
Sotien
money
Số tiền
Tong
money
Tổng
tblNhomHH
tblChungTu
FieldName
DataType
Description
Indexed
MaNhomHH
Nvarchar(20)
M nhĩm
Primery
TennhomHH
Nvarchar(50)
Tn nhĩm
tblDMHH
TblDMHH
FieldName
DataType
Description
Indexed
MaHH
Nvarchar(20)
M hng hĩa
Primary
MaNhomHH
Nvarchar(20)
M nhĩm hng hĩa
TenHH
Nvarchar(20)
Tn hng hĩa
DVT
Nvarchar(20)
Đơn vị tính
Quycach
Nvarchar(20)
Quy cch
DGNhap
money
Đơn giá nhập
DGXuat
money
Đơn giá xuất
Sơ đồ các Module kế toán
Hệ thống kế tốn
Danh mục
Hệ thống
Quản lý hng hĩa
Quản lý cơng nợ
Quản lý tiền mặt
Sơ đồ hệ thống kế toán
Sử dụng SQL Server 2005 để thiết kế bảng dữ liệu chương trình
Hệ thống bảng dữ liệu
Phn hệ quản lý tiền mặt
Mơ hình quan hệ thực thể
Mơ hình quan hệ
Xy dựng Module xử lý mẫu tin
CREATE proc [dbo].[sp_Phieuchi]
@mode int,
@MaCT nvarchar(20),
@NgayCT datetime,
@MaNCC nvarchar(20),
@TKNo nvarchar(20),
@TKCo nvarchar(20),
@SoTien int,
@DienGiai nvarchar(50),
@MaThue nvarchar(20)
as
if(@mode = 1) --Them
begin
if not exists(select * from tblPhieuchi where MaCT = @MaCT and MaNCC=@MaNCC )
begin
INSERT INTO tblPhieuchi (MaCT, NgayCT,MaNCC, TKNo, TKCo, SoTien,DienGiai,MaThue)
VALUES(@MaCT, @NgayCT, @MaNCC, @TKNo, @TKCo, @SoTien,@DienGiai,@MaThue)
end
end
if(@mode =-1) --Xoa
begin
delete from tblPhieuchi where MaCT = @MaCT
end
if(@mode = 0) --Sua
begin
if exists(select * from tblPhieuchi where MaCT = @MaCT)
begin
update tblPhieuchi set MaCT=@MaCT,
NgayCT=@NgayCT,
MaNCC=@MaNCC,
TKNo=@TKNo,
TKCo=@TKCo,
SoTien=@SoTien,
DienGiai=@DienGiai,
MaThue=@MaThue
where MaCT = @MaCT
end
end
Phn hệ quản lý hng hĩa
Mơ hình quan hệ thực thể
//chưa hoàn thành
Phn hệ quản lý cơng nợ
Mơ hình quan hệ thực thể
//chưa hoàn thành
Thiết kế chương trình
Biểu đồ use case
biểu đồ use case Danh mục
biểu đồ use case kế toán tiền mặt
Use case Phn hệ kế tốn hang hĩa
Use case Phn hệ quản lý cơng nợ
Use case Bo co
Biểu đồ tuần tự
//chưa hoàn thành
3. Biểu đồ tương tác
//chưa hoàn thành
4. Biểu đồ lớp
//chưa hoàn thành
Chương III. Ngôn ngữ lập trình
Giới thiệu về ngơn ngữ C#
Một số đặc điểm của C#
Thực ra, môi trường .NET cho phép bạn viết bằng nhiều ngôn ngữ khác nhau. Các chương trình được viết bằng các ngôn ngữ khác nhau cuối cùng đều dịch ra được cùng một dạng là m CLR. Bạn có thể lập trình trên .NET bằng nhiều ngôn ngữ như VB .NET, VC++ .NET hoặc cả Delphi. Tuy nhiên, trong phạm vi giáo trình này, chúng tôi xin giới thiệu ngôn ngữ .NET do ngôn ngữ này có các đặc điểm như đơn giản, trong sáng và gọn gàng. Sau đây là một số đặc điểm cụ thể của C#:
a. c# là ngôn ngữ đơn giản
Loại bỏ các thành phần ngôn ngữ phức tạp (như MACRO của C++), template, đa kế thừa của Java và C++.
C# dựa trên nền tảng của ngôn ngữ C và C++ (các cú pháp và từ khóa hầu hết được kế thừa từ C, C++). Nhưng loại bỏ đi các tốn tử v từ khĩa phức tạp.
c# là ngôn ngữ hiện đại
c# bao gồm đầy đủ các đặc tính của một ngôn ngữ lập trình hiện đại: Hướng đối tượng, xử lý ngoại lệ, thu gom bộ nhớ tự động, kiểu dữ liệu mở rộng, bảo mật m nguồn.
c# là ngôn hướng đối tượng
c# gồm đầy đủ các đặc điểm của một ngôn ngữ hướng đối tượng, bao gồm: sự đóng gói, sự kế thừa, tính đa hình. Các đặc điểm này giúp cho việc phát triển các ứng dụng bằng ngôn ngữ C# trở nên bền vững hơn. Người phát triển có thể xây dựng ứng dụng theo nhiều lớp, tạo nên một hệ thống hoàn chỉnh và khó đổ vỡ trong khoảng thời gian ít hơn.
d. c#là ngôn ngữ ít từ khĩa
Sự phức tạp của C++ được tạo nên bởi số lượng đồ sộ các từ khóa và toán tử. Chính điều này đa gây ra nhiều khó khăn không cần thiết cho người lập trình. C# tránh được nhược điểm này bằng tiêu chí: Càng ít từ khóa càng tốt. Theo thống kê, C# chỉ gồm hơn 100 từ khóa nhưng thực hiện được mọi yêu cầu từ đơn giản đến phức tạp
Các khi niệm trong C#
Lớp (class), đối tượng (object)
Trong sinh học cĩ khi niệm lồi (lồi người, loài mèo...) và mỗi cá thể cụ thể trong loài (ông Nguyễn Văn A, con mèo A, con mèo B...). Trong lập trình hướng đối tượng:
Lớp (class) tương ứng với loài
Đối tượng (object) tương ứng với từng cá thể trong loài
Như vậy, mỗi loài có thể có nhiều cá thể khác nhau thuộc loài đó
Trong lập trình truyền thống, bạn cĩ thể khai bo cc biến với kiểu của chng. Một cch đơn giản, có thể hiểu:
Lớp (class) l kiểu biến
Đối tượng (object) là một giá trị tương ứng với kiểu
Tĩm lại, trong lập trình hướng đối tượng, cc cơng việc của bạn gồm :
Khai báo các lớp (gồm các thuộc tính, các phương thức của lớp đó)
Khai báo các đối tượng thuộc các lớp
Hoạt động của chương trình l sự tc động qua lại giữa các đối tượng
Stack v Heap
C# phân chia bộ nhớ thành 2 dạng: Stack & Heap:
Stack là dạng vùng nhớ dạng vào sau ra trước (các giá trị được đưa vào sau thì được lấy ra trước). Stack thường sử dụng để lưu các biến tạm (không có chu kỳ sống dài)
Heap là dạng vùng nhớ được cấp phát cho các biến có chu kỳ sống lâu dài.
Trong ngơn ngữ C v C++:
Stack được sử dụng để lưu các biến được khai báo trong hàm và chương trình con. Mỗi khi một biến được khai báo trong chương trình con, gi trị của nĩ được lưu vào trong stack. Khi thoát khỏi chương trình con, cc gi trị ny sẽ được lấy ra khỏi stack theo thứ tự ngược với thứ tự khai báo
Heap được sử dụng để lưu các biến được tạo bằng từ khóa new, các lệnh malloc... Các biến này phải được giải phóng bằng các lệnh delete hoặc free khi không sử dụng đến. Nguyên tắc này thường gây nhiều lỗi do:
Lập trình vin qun giải phĩng biến đ xin cấp pht
Biến bị giải phĩng 2 lần
Biến đ bị giải phĩng nhưng các đoạn chương trình sử dụng chng khơng biết v vẫn tiếp tục sử dụng
Cc lỗi kể trn rất dễ xảy ra kể cả với lập trình vin giu kinh nghiệm. Những lỗi ny lại rất khĩ tìm v l những lỗi nghim trọng cĩ thể gy đổ vỡ hoàn toàn hệ thống.
Kiểu gi trị(value type),kiểu tham chiếu(reference type)
Việc sử dụng vùng nhớ stack và heap của C++ rắc rối, phức tạp và dễ gây lỗi cho chương trình. C# đưa ra những cải tiến sau:
Chia cc kiểu biến thnh 2 kiểu: Kiểu gi trị (value type) v kiểu tham chiếu (reference type)
Kiểu gi trị (value type) gồm
Kiểu cấu trc
Cc kiểu số nguyn (byte, int, long)
Các kiểu số thực dấu phẩy động (float, double)
Cc kiểu số thực thập phn (decimal)
Kiểu bool
Các struct do người dùng định nghĩa (nên hạn chế dùng kiểu này)
Kiểu liệt k (enum)
Kiểu tham chiếu (reference type) gồm
Lớp (class)
Giao diện (interface)
Ủy thc (delegate)
Kiểu gi trị l kiểu m khi thực hiện php gn, toàn bộ giá trị của vế phải được sao chép và gán vào biến bên vế trái. Do đặc tính này, giá trị của biến value type thường nằm trong stack (khi các biến này được khai báo trong hàm).
Kiểu tham chiếu là kiểu mà các biến lưu dữ liệu trên heap. Các biến là tham chiếu (reference – gần giống khái niệm con trỏ trong C & C++) đến dữ liệu trên heap. Một dữ liệu có thể có nhiều biến tham chiếu đến. Khi thực hiện lệnh gán, phần dữ liệu trên heap không được sao chép mà chỉ có tham chiếu đến dữ liệu này được chép sang vế trái. Khi đó, sẽ có thêm 1 biến nữa tham chiếu đến dữ liệu trên heap.
Để hiểu r hơn về kiểu giá trị và kiểu tham chiếu, hy quan st ví dụ sau:
Biến & Kiểu
C php khai bo biến của C# giống với c php khai bo của C++. Ch ý:
Biến có thể được khai báo tại:
Trong một lớp, khi đó các biến được gọi là biến thành viên của lớp
Trong một hàm, khi đó biến có thể khai báo ở bất cứ nơi nào trong hàm, không nhất thiểt phải nằm ở đầu hàm.
Biến được khai báo ở khối chương trình no thì cĩ hiệu lực trong phạm vi của khối đó. Khi chương trình chạy ra ngồi khối thì biến khơng cịn tồn tại.
C# giống với C và C++, phân biệt chữ hoa và chữ thường. Tên biến cũng phân biệt chữ hoa và chữ thường, do đó bạn phải nhập vào đúng tên biến. Rất may, chế độ tự động (auto-complete) của VS2005 rất tốt, bạn hầu như không phải nhập đầy đủ 1 tên biến nào. Do đó, khả năng nhầm tên biến chữ hoa chữ thường rất hiếm khi xảy ra.
;
= ;
, ;
Ví dụ
int i; // Biến kiểu số nguyn
string s; // Biến kiểu xu ký tự
double a = 10; // Biến kiểu số thực kp
double a, b, c = 20, d;
Quy ước đặt tên biến
Bắt đầu bằng chữ cái, không bắt đầu bằng chữ số.
Tn biến cĩ thể chứa chữ ci, chữ số, ký tự “_”, nhưng không chứa các ký tự đặc biệt.
Độ dài tối đa của tên biến là 255 ký tự.
Kiểu biến
Biến được sử dụng để lưu các giá trị, giá trị có thể là số (số thứ tự, số người...), có thể là dạng văn bản (xâu ký tự). Ngồi ra biến cĩ thể ở dạng phức tạp, ví dụ mảng: chuỗi các giá trị cùng kiểu sắp xếp liên tiếp, hoặc kiểu dữ liệu do người dùng định nghĩa.
Khi bạn đ biết lập trình trn một ngơn ngữ, việc hiểu kiểu biến của một ngơn ngữ khc l tương đối đơn giản.
Biến kiểu số
Kiểu
Mơ tả
Kích thước
Khoảng gi trị
Ví dụ
byte
Số nguyn
8 bit
0..255
short
Số nguyn ngắn
16 bit
-32768.. 32767
int
Số nguyn
32 bit
-2147483648.. 2147483647
long
Số nguyn di
64 bit
float
Số thực độ chính xác đơn
32 bit
double
Số thực độ chính xác kép
64 bit
ushort
Số nguyn ngắn khơng dấu
16 bit
uint
Số nguyn khơng dấu
32 bit
ulong
Số nguyn di khơng dấu
64 bit
Biến kiểu xu ký tự
Mỗi ký tự trong my tính tương ứng với một số hiệu. Một chuỗi các ký tự ghép với nhau tạo ra một xâu ký tự (String). Nếu bạn đ quen thuộc với m ASCII của, đặt tương ứng 256 giá trị với 256 ký tự thì xu ký tự của C# cĩ một cht khc biệt: Xu ký tự trong C# l xu ký tự Unicode, mỗi ký tự trong xu ny cĩ thể l 1 trong hơn 60000 ký tự của tất cả các ngôn ngữ. Do đó, vấn đề bảng m, ngơn ngữ trong C# được giải quyết triệt để từ gốc.u
String trong C# được ký hiệu trong cặp ngoặc kp, ví dụ:
string FirstWord;
string SecondWord;
FirstWord = "Hello";
SecondWord = "World";
string Greeting = FirstWord + SecondWord; // Greeting by giờ l "HelloWorld"
Greeting = FirstWord + " " + SecondWord;
Biến kiểu bool
Kiểu bool là kiểu biến cơ bản, có mặt trong hầu hết các ngôn ngữ. Biến logic (bool) chỉ mang hai giá trị là true (đúng) và false (sai).
Biến kiểu bool thường được sử dụng với các toán tử logic (&&, ||, ^, !). Cc biểu thức so snh trả về gi trị kiểu bool.
Biến kiểu mảng
Mảng l kiểu dữ liệu phức gồm nhiều gi trị cng kiểu sắp xếp lin tiếp nhau. Các phần tử này được truy xuất qua chỉ số. Chú ý, chỉ số của mảng C# giống như mảng trong C và C++, được bắt đầu từ 0;
Mảng trong C# rất linh hoạt và được hỗ trợ một số lượng lớn các hàm sắp xếp, tìm kiếm, thm, xĩa...
Cú pháp khai báo mảng trong C# như sau
[] ; // Mảng chưa được khởi tạo, không sử dụng được
[] = new [];
long[] N;
long[] M = new long[3];
N[0] = 1;
M[0] = 1;
M[1] = 2;
M[2] = 3;
M[3] = 4;
M = new long[100];
for (int i=0; i<100; i++) {
M[i] = i;
}
C php khai bo mảng của C# trơng cĩ vẻ kỳ cục (nếu như bạn đ quen với C++). Tuy nhin, nếu xt về mặt logic thì khai bo kiểu ny hợp lý hơn nhiều. Nếu theo đúng quy ước khai báo biến:
int i; // Biến i kiểu int
string a; // Biến a kiểu string
int[] M; // Biến M kiểu int[] (tức l kiểu biến chứa nhiều số int, kiểu mảng)
Đoạn m dưới đây minh họa sự mềm dẻo của mảng trong C#. Trong đó có sử dụng hàm sắp xếp để sắp mảng A theo chiều tăng dần. Bạn chú ý rằng khác với mảng trong C++, mảng trong C# đều phải được khởi tạo bằng toán tử new. Ngoài ra, bạn có thể dễ dàng lấy kích thước của mảng bằng thuộc tính Length (xem ví dụ). Đây là điều rất thuận lợi so với mảng trong C++ (mỗi mảng phải kèm theo một biến lưu chiều dài của mảng, dễ gây nhầm lẫn khi sử dụng quá nhiều mảng)
int i;
// Xin 100 phần tử cho mảng A
int[] A = new int[100];
// ran: Đối tượng sinh ngẫu nhin
Random ran = new Random();
// gn gi trị ngẫu nhin cho cc phần tử của mảng A
for (i = 0; i < A.Length; i++) A[i] = ran.Next(500);
for (i = 0; i < A.Length; i++) Console.Write("{0} ", A[i]);
Console.ReadLine();
Array.Sort(A);
for (i = 0; i < A.Length; i++) Console.Write("{0} ", A[i]);
Console.ReadLine();
Để khai báo mảng nhiều chiều, ta sử dụng cú pháp tương tự. Bạn có thể quan sát ví dụ sử dụng mảng 2 chiều dưới đây.
using System;
using System.Collections.Generic;
using System.Text;
namespace testHello {
class Program {
static void Main(string[] args) {
// M được khởi tạo l mảng 2 chiều, mỗi chiều 10 phần tử
int[,] M = new int[10, 10];
// Dng 2 vịng lặp để gn cc phần tử hng i, cột j
// Gi trị được gn l tích của i, j (gần giống bảng cửu chương)
for (int i = 0; i < 10; i++)
for (int j = 0; j < 10; j++) M[i, j] = i * j;
// Ghi gi trị của mảng 2 chiều ra mn hình
// Trong 2 vịng lặp lồng nhau ny, ta sử dụng cc hm
// - GetLowerBound(level) để xác định cận dưới của mảng
// - GetUpperBound(level) để xác định cận trn của mảng
// - level l lớp chỉ số, ví dụ M[i, j]
// - Chỉ số i tương ứng với level 0 (đầu tin)
// - Chỉ số j tương ứng với level 1
for (int i = M.GetLowerBound(0); i <= M.GetUpperBound(0); i++) {
for (int j = M.GetLowerBound(1); j <= M.GetUpperBound(1); j++)
Console.Write("{0, 3}", M[i, j]);
// Ghi M[i, j] theo quy cch (chiếm 3 ký tự)
Console.WriteLine();
}
Console.ReadLine();
}
}
}
Cc kiểu biến khc
Bạn có thể sử dụng các kiểu biến cơ sở của C#, có thể sử dụng mảng để lưu trữ nhiều giá trị. Tuy nhiên, chúng ta đ biết .NET framework được xây dựng lên từ một thư viện đồ sộ các đối tượng hỗ trợ cho công việc lập trình của bạn. Trong phần này, chúng tôi xin giới thiệu một số kiểu dữ liệu (các lớp) được cung cấp từ các thư viện này. Đây là các kiểu dữ liệu có thể hỗ trợ rất nhiều cho bạn trong quá trình pht triển cc ứng dụng, nhất l ứng dụng trong lĩnh vực Tin học hỗ trợ thiết kế Xy dựng.
Kiểu List
Mảng là một trong những kiểu dữ liệu được sử dụng phổ biến nhất, mảng dùng để lưu một danh sách các phần tử cùng kiểu. Tuy vậy, hạn chế của mảng là số lượng phần tử cố định (thực tế có thể thay đổi được nhưng phức tạp), việc thêm, xóa phần tử vào mảng tương đối khó khăn.
C# cung cấp kiểu dữ liệu List (trong đó hai dấu thể hiện đây là kiểu dữ liệu có tham số, trong đó tham số là kiểu phần tử của danh sách (giống với khái n._.
Các file đính kèm theo tài liệu này:
- 26471.doc