Đối với các công ty sản xuất kinh doanh thì việc quản lý nguyên vật liệu chính là một khâu rất quan trọng bởi có quản lý tốt nguyên vật liệu mới có thể đảm bảo được các khâu tiếp theo củ
Trang 1DANH MỤC TỪ NGỮ VIẾT TẮT vii
LỜI NÓI ĐẦU viii
Chương 1 TỔNG QUAN VỀ QUẢN LÝ NGUYÊN VẬT LIỆU 1
1.1 Khái quát về nguyên vật liệu 1
1.1.1 Khái niệm nguyên vật liệu 1
1.1.2 Đặc điểm của nguyên vật liệu trong quá trình sản xuất 1
1.1.3 Các phương pháp phân loại nguyên vật liệu 1
1.1.4 Vai trò của nguyên vật liệu và yêu cầu quản lý nguyên vật liệu 31.1.5 Các phương pháp tính giá xuất kho (giá vốn) 4
1.1.6 Nhiệm vụ của quản lý nguyên vật liệu 7
Trang 2Công 27
2.2.4 Một số biểu mẫu quản lý nguyên vật liệu tại công ty 30
2.2 Phân tích thiết kế hệ thống 32
2.2.1 Biểu đồ phân cấp chức năng 32
2.2.2 Biểu đồ luồng dữ liệu mức ngữ cảnh 33
2.2.3 Biểu đồ luồng dữ liệu mức đỉnh 34
2.2.4 Biểu đồ luồng dữ liệu mức dưới đỉnh chức năng cập nhật 35
2.2.5 Biểu đồ luồng dữ liệu mức dưới đỉnh chức năng tìm kiếm 36
2.2.6 Biểu đồ luồng dữ liệu mức dưới đỉnh chức năng quản lý nhập- xuất- tồn36
2.2.7 Biểu đồ luồng dữ liệu mức dưới đỉnh chức năng thống kê 37
2.2.8 Biểu đồ luồng dữ liệu mức dưới đỉnh chức năng báo cáo 38
2.3 Thiết kế cơ sở dữ liệu 38
Chương 3 XÂY DỰNG CHƯƠNG TRÌNH QUẢN LÝ NGUYÊN VẬT LIỆU
42
3.1 Mô tả bài toán 42
3.2 Một số giao diện của chương trình 43
3.2.1 Giao diện đăng nhập chương trình 43
3.2.2 Giao diện chính của chương trình 44
3.2.3 Một số giao diện chính của chương trình 45
KẾT LUẬN 56
TÀI LIỆU THAM KHẢO 57
2
Trang 3Hình 2.4: Phiếu xuất kho 31
Hình 2.5: Biểu đồ phân cấp chức năng 32
Hình 2.6: Biểu đồ luồng dữ liệu mức ngữ cảnh 33
Hình 2.7: Biểu đồ luồng dữ liệu mức đỉnh 34
Hình 2.8: Biều đồ luồng dữ liệu mức dưới đỉnh chức năng cập nhật 35
Hình 2.9: Biều đồ luồng dữ liệu mức dưới đỉnh chức năng tìm kiếm 36
Hình 2.10: Biểu đồ luồng dữ liệu mức dưới đỉnh chức năng quản lý nhập- xuất –tồn 36
Hình 2.11: Biểu đồ luồng dữ liệu mức dưới đỉnh chức năng thống kê 37
Hình 2.12: Biểu đồ luồng dữ liệu mức dưới đỉnh chức năng báo cáo 38
Hình 2.13: Lược đồ quan hệ dữ liệu 41
Hình 3.1: Giao diện đăng nhập 43
Hình 3.2: Giao diện chính của chương trình 44
Hình 3.3: Giao diện danh mục nguyên vật liệu 45
Hình 3.4: Giao diện danh mục nhân viên 46
Hình 3.5: Giao diện danh mục nhà cung cấp 47
Hình 3.6: Giao diện chi tiết phiếu xuất 48
Hình 3.7: Giao diện chi tiết phiếu nhập 49
Hình 3.8: Giao diện phiếu xuất 50
Hình 3.9: Giao diện phiếu nhập 51
Hình 3.10: Giao diện tìm kiếm nguyên vật liệu 52
Hình 3.12: Giao diện thống kê nhập 53
Trang 4Hình 3.13: Giao diện thống kê xuất 54Hình 3.14: Giao diện báo cáo nhập kho 55
4
Trang 5DANH MỤC BẢNG BIỂU
Bảng 1.1: Bảng trình bày các thuộc tính (Properties) giống nhau 16Bảng 1.2: Bảng trình bày các phương thức (Method) xử lý trên chuỗi 18Bảng 1.3: Bảng trình bày các sự kiện (Events) của control 18
Bảng 1.4: Bảng mô tả các thuộc tính của label 19
Bảng 1.5: Bảng mô tả thuộc tính của TextBox 20
Bảng 1.6: Bảng mô tả thuộc tính của Button 20
Bảng 1.7: Bảng mô tả thuộc tính của CheckBox 21
Bảng 2.1: Bảng giải thích quy trình quản lý nguyên vật liệu 28
Trang 6LỜI CAM ĐOAN
Em xin cam đoan đồ khóa luận là do tự bản thân thực hiện và không sao chép các công trình nghiên cứu của người khác để làm sản phẩm của riêng mình Các thông tin thứ cấp sử dụng trong khóa luận là có nguồn gốc và được trích dẫn rõ ràng Em đã tham khảo một số tài liệu được nêu trong phần “ Tài liệu tham khảo” và các tài liệu được cho phép sử dụng cùng các diễn đàn mạng
uy tín trên Internet Em xin cam đoan những lời trên là đúng, nếu có thông tin sai lệch em xin hoàn toàn chịu trách nhiệm trước Hội đồng
Thái nguyên, ngày 02 tháng 06 năm
2016
Sinh viên thực hiện
Nguyễn Thị Hằng
6
Trang 7LỜI CẢM ƠN
Để hoàn thành bài thực tập tốt nghiệp “Xây dựng chương trình quản lý
nguyên vật liệu cho công ty Cổ phần Đầu tư và Thương mại TNG – chi nhánh Sông Công, Thái Nguyên ” Em xin bày tỏ lòng biết ơn sâu sắc đến ThS
Nguyễn Thị Hằng và TS.Vũ Thị Minh Luận, người đã hướng dẫn và tận tình chỉ bảo em trong suốt quá trình thực hiện khóa luận này, ngoài ra còn các thầy cô trong khoa Hệ thống thông tin Kinh tế của trường Đại học Công nghệ thông tin và Truyền thông
Đồng thời em xin chân thành cám ơn anh chị tại công ty Cổ phần Đầu tư
và Thương mại TNG – chi nhánh Sông Công, Thái Nguyên đã giúp đỡ em trong suốt thời gian vừa qua
Cuối cùng em xin cảm ơn sự quan tâm, chia sẻ, ủng hộ của gia đình và bạn bè
Trong quá trình thực hiện đề tài, mặc dù em đã có nhiều cố gắng nhưng do hạn chế về thời gian cũng như kinh nghiệm nên đề tài này chắc chắn còn mắc phải những thiếu sót, rất mong được sự góp ý kiến của các thầy cô và các bạn
để bài khóa luận của em được hoàn thiện hơn
Em xin chân thành cảm ơn!
Thái Nguyên, ngày 02 tháng 06 năm 2016
Sinh viên thực hiện
Trang 88
Trang 10LỜI NÓI ĐẦU
1 Lý do chọn đề tài
Cùng với sự phát triển của thế giới và xu hướng hội nhập kinh tế quốc
tế, đất nước ta dần đổi mới và bước vào thời kì công nghiệp hoá, hiện đại hoá, vừa xây dựng cơ sở vật chất, kĩ thuật vừa phát triển nền kinh tế đất nước Ngành công nghệ thông tin không thể thiếu và có vai trò rất quan trọng trong quá trình xây dựng và phát triển đất nước
Xã hội đã bước sang một giai đoạn mới, các phương pháp tính toán hỗ trợ truyền thống không còn đáp ứng được các nhu cầu thực tiễn,vì vậy mà ngành công nghệ thông tin đã cho ra đời những phần mềm quản lý trên máy tính Đầu tiên là các phần mềm quản lý trên hệ điều hành MS-Dos như Foxpro,tiếp sau đó là các phần mềm chạy trên nền Windows như visual basic, SQL, access…Với Visual Studio 2008 là sự lựa chọn thích hợp nhất , Dùng C#
là cách nhanh và tốt nhất để lập trình cho Microsoft Windows C# sẽ cung cấp một bộ công cụ hoàn chỉnh để đơn giản hóa việc triển khai lập trình ứng dụng cho MSWindows
Đối với các công ty sản xuất kinh doanh thì việc quản lý nguyên vật liệu chính là một khâu rất quan trọng bởi có quản lý tốt nguyên vật liệu mới có thể đảm bảo được các khâu tiếp theo của quá trình sản xuất
Xuất phát từ những lý do trên nên đã chọn đề tài: Xây dựng chương trình
quản lý Nguyên vật liệu cho công ty Cổ phần Đầu tư và Thương mại TNG – chi nhánh Sông Công, Thái Nguyên làm đề tài khóa luận của mình.
2 Mục tiêu nghiên cứu
Trong phần báo cáo này, em xin trình bày nội dung về thực trạng quản
lý nguyên vật liệu của công ty Cổ phần đầu tư và thương mại TNG chi nhánh Sông Công và những kiến thức cơ bản về công cụ hỗ trợ ngôn ngữ lập trình C#
10
Trang 11và hệ quản trị cơ sở dữ liệu sql sever 2008.
Phân tích, đánh giá được những ưu, nhược điểm và những ứng dụng của ngôn ngữ lập trình C# vào lĩnh vực kinh tế - xã hội, khoa học – kĩ thuật, giáo dục
Qua đó, xây dựng được một chương trình quản lý nguyên vật liệu cho công ty Cổ phần đầu tư và thương mại TNG chi nhánh Sông Công
3 Đối tượng và phạm vi nghiên cứu
Về đối tượng nghiêm cứu: Quản lý Nguyên vật liệu trong doanh nghiệp
và ứng dụng công nghệ thông tin trong công tác quản lý Nguyên vật liệu
Về phạm vi nghiên cứu: đề tài tập trung nghiên cứu về quy trình quản lý nguyên vật liệu trong doanh nghiệp, tiến hành khảo sát và mô tả bài toán, tiến hành phân tích và thiết kế hệ thống chương trình quản lý nguyên vật liệu cho Công ty Cổ phần Đầu tư và Thương mại TNG – chi nhánh Sông Công, Thái Nguyên, tiến hành triển khai thử nghiệm cho một số module
4 Phương pháp nghiên cứu
- Khảo sát hiện trạng
- Tìm hiểu trực tiếp và trao đổi với lãnh đạo, cán bộ quản lý của công ty
- Khái quát và đi đến phân tích chi tiết bài toán
- Xây dựng, cài đặt và chạy thử nghiệm chương trình
5 Ý nghĩa thực tiễn của đề tài
Đề tài có tính ứng dụng cao, phù hợp với thực tế Đánh giá được thực trạng quản lý nguyên vật liệu tại công ty cổ phần đầu tư và thương mại TNG trên cơ sở
đó đưa ra một số giải pháp nhằm tăng cường công tác quản trị chi phí tại công ty
6 Ý nghĩa khoa học của đề tài
Đối với một đề tài nghiên cứu trong phạm vi nhỏ thì nó có ý nghĩa như một kiến thức trong kế toán nguyên vật liệu Nó là một ví dụ thực tế về quản lý nguyên vật liệu trong lĩnh vực thương mại điện tử hiện nay
Trang 127 Bố cục đề tài
Đề tài ngoài lời mở đầu, kết luận, tài liệu tham khảo, khóa luận gồm có 3 chương:
Chương 1: Tổng quan về đề tài quản lý nguyên vật liệu
Chương 2: Khảo sát và phân tích thiết kế hệ thống cho chương trình quản lý nguyên vật liệu
Chương 3: Xây dựng chương trình quản lý nguyên vật liệu
Chương 1.
TỔNG QUAN VỀ QUẢN LÝ NGUYÊN VẬT LIỆU 1.1 Khái quát về nguyên vật liệu
1.1.1 Khái niệm nguyên vật liệu
Quản lý (thuật ngữ tiếng Anh là Management tiếng lat manum agere điều khiển bằng tay) đặc trưng cho quá trình điều khiển và dẫn hướng tất cả các bộ phận của một tổ chức, thường là tổ chức kinh tế, thông qua việc thành lập và thay đổi các nguồn tài nguyên (nhân lực, tài chính, vật tư, trí thực và giá trị vô hình)
-Nguyên vật liệu là những đối tượng lao động mua ngoài hoặc tự chế biến cần thiết trong quá trình sản xuất của doanh nghiệp và được tể hiện dướ dạng vật hóa: sợi trong doanh nghiệp dệt, da trong doanh nghiệp đóng giầy, vải trong doanh nghiệp may mặc Nguyên vật liệu chỉ tham gia vào một chu kỳ sản xuất kinh doanh nhất định và toàn bộ giá trị được chuyển hết một lần vào chi phí kinh doanh trong kỳ
Nguyên vật liệu là đối tượng lao động đã được thay đổi do lao động có ích tác động vào nó Nguyên vật liệu là đối tượng lao động nhưng không phải bất cứ một đối tượng lao động nào cũng là nguyên vật liệu mà chỉ trong điều kiện đối tượng lao động mà do lao động làm ra thì mới hình thành nguyên vật
12
Trang 131.1.2 Đặc điểm của nguyên vật liệu trong quá trình sản xuất
* Đặc điểm của nguyên vật liệu:
Nguyên vật liệu chỉ tham gia vào một chu kỳ sản xuất nhất định và khi tham gia vào quá trình sản xuất, dưới tác động của lao động, chúng bị tiêu hao toàn bộ hoặc thay dổi hình thái vật chất ban đầu để tạo ra hình thái vật chất của sản phẩm
Về mặt giá trị, do chỉ tham gia vào một chu kỳ sản xuất nên giá trị của vật liệu
sẽ được tính hết một lần vào chi phí sản xuất kinh doanh trong kỳ Do đặc điểm này mà nguyên vật liệu được xếp vào loại tài sản lưu động trong doanh nghiệp
1.1.3 Các phương pháp phân loại nguyên vật liệu
Trong các doanh nghiệp sản xuất, nguyên vật liệu gồm nhiều loại, rất phong phú, đa dạng có tính năng lý, hóa khác nhau, có công dụng và mục đích sủa dụng khác nhau, đồng thời chúng cũng được sử dụng ở các bộ phận khác nhau, đồng thời chúng cũng được bảo quản ở nhiều kho bãi và được sử dụng
ở các bộ phận khác nhau Do vậy, yêu cầu đặt ra với người quản lý là phải bắm bắt được tình hình biến động từng loại nguyên vật liệu trong đơn vị Muốn vậy người quản lý phải tiến hành phân loại nguyên vật liệu
Trong thực tế công tác quản lý và hạch toán ở các doanh nghiệp, tiêu thức dùng để phân loại nguyên vật liệu thông dụng nhất là theo vai trò và tác dụng của nguyên vật liệu trong quá trình sản xuất kinh doanh Theo tiêu thức này, nguyên vật liệu ở các doanh nghiệp được phân loại như sau:
* Nguyên liệu, vật liệu chính: là đối tượng lao động chủ yếu của Công ty
và là cơ sở vật chất chủ yếu cấu thành nên thực thể vật chất chủ yếu của sản phẩm như: xi măng, sắt thép trong xây dựng cơ bản, vải trong may mặc NVL chính dùng vào sản xuất sản phẩm hình thành nên chi phí NVL trực tiếp
Trang 14* Vật liệu phụ: cũng là đối tượng lao động, chỉ có tác dụng phụ trợ trong sản xuất được dùng với vật liệu chính làm tăng chất lượng sản phẩm, như hình dáng màu sắc hoàn chỉnh sản phẩm hoặc phục vụ cho công việc quản lý sản xuất Vật liệu phụ bao gồm: thuốc nhuộm, thuốc tẩy, sơn các loại, phụ gia bêtông, dầu mỡ bôi trơn, xăng chạy máy, và các loại khác.
* Bán thành phẩm mua ngoài: là những chi tiết, bộ phận sản phẩm do đơn vị khác sản xuất ra doanh nghiệp mua về để lắp ráp hoặc gia công tạo ra sản phẩm
* Nhiên liệu: là những vật liệu được sử dụng để phục vụ cho công nghệ sản xuất sản phẩm, kinh doanh như phương tiện vận tải, máy móc thiết bị hoạt động trong quá trình sản xuất Nhiên liệu bao gồm các loại như: xăng dầu chạy máy, than củi, khí ga
* Phụ tùng thay thế: là các chi tiết phụ tùng, sử dụng để thay thế sửa chữa các loại máy móc thiết bị sản xuất, phương tiện vận tải
* Vật liệu và thiết bị xây dựng cơ bản: bao gồm các loại vật liệu và thiết
bị, phương tiện lắp đặt vào các công trình xây dựng cơ bản của Doanh nghiệp xây lắp
* Phế liệu: là những loại vật liệu thu được trong quá trình sản xuất, thanh
lý tài sản có thể sử dụng hay bán ra ngoài.( phôi bào, vải vụn…) Tuỳ thuộc vào yêu cầu quản lý và hạch toán chi tiết của từng Doanh nghiệp mà trong từng loại vật liệu nêu trên lại được chia thành từng nhóm, từng quy cách từng loại một cách chi tiết hơn
* Vật liệu khác: Bao gồm các loại vật liệu như vật liệu đặc chủng, các loại vật liệu loại ra trong quá trình sản xuất chế tạo sản phẩm, vật liệu thu nhặt được, phế liệu thu hồi trong quá trình thanh lý tài sản cố định
1.1.4 Vai trò của nguyên vật liệu và yêu cầu quản lý nguyên vật liệu
Vai trò
14
Trang 15Trong các doanh nghiệp sản xuất nguyên vật liệu thường chiếm tỷ trọng lớn trong chi phí sản xuất và giá thành sản phẩm cho nên việ quản lý quá trình thu mua, vận chuyển bảo quản dự trữ và sủa dụng nguyên vật liệu có ý nghĩa rất lớn trong việc tiết kiệm chi phí, hạ thấp giá thành sản pẩm sản xuất.
Các doanh nghiệp thường xuyên theo dõi tìn hìn biến động của nguyên vật liệu để từ đó có kế hoạch bổ sung, dự trữ kịp thời cho quá trình sản xuất, chế tọa sản phẩm cũng như các nhu cầu khác của doan nghiệp Nguồn nguyên liệu dự trữ cho quá trình sản xuất đòi hỏi phải đảm bảo đủ về số lượng, đúng
về chất lượng, quy cách, chủng lợi, đáp ứng kịp thời cho quá trìn sản xuất được liên tục và ngăn ngừa các hiện tượng hao hụt, mất mát, lãng phí vật liệu
ở tất cả các khâu của quá trình sản xuất Qua đó, giảm được mức tiêu hao vật liệu, giảm chi phí cho nguyên vật liệu thì sản phẩm sản xuất ra không những
có chất lượng cao mà còn làm giảm giá thành sản phâm nâng cao hiệu quả kinh doanh
Chi phí về các loại vật liệu thường chiếm một tỉ trọng lớn trong toàn bộ chi phí sản xuất và giá thành sản phẩm trong các Doanh nghiệp sản xuất Do
đó vật liệu không chỉ quyết định đến mặt số lượng của sản phẩm, mà nó còn ảnh hưởng trực tiếp đến chất lượng sản phẩm tạo ra NVL có đảm bảo đúng quy cách, chủng loại, sự đa dạng thì sản phẩm sản xuất mới đạt được yêu cầu
và phục vụ cho nhu cầu tiêu dùng ngày càng cao của xã hội
Như ta đã biết, trong quá trình sản xuất vật liệu bị tiêu hao toàn bộ không giữ nguyên được hình thái vật chất ban đầu, giá trị của nó chuyển một lần toàn bộ vào giá trị sản phẩm mới tạo ra Do đó, tăng cường quản lý công tác kế toán NVL đảm bảo việc sử dụng tiết kiệm và hiệu quả nhằm hạ thấp chi phí sản xuất, hạ giá thành sản phẩm, tăng thu nhập cho Doanh nghiệp có ý nghĩa rất quan trọng Việc quản lý vật liệu phải bao gồm các mặt như: số lượng cung cấp, chất lượng chủng loại và giá trị Bởi vậy, công tác kế toán NVL
Trang 16là điều kiện không thể thiếu được trong toàn bộ công tác quản lý kinh tế tài chính của Nhà nước nhằm cung cấp kịp thời đầy đủ và đồng bộ những vật liệu cần thiết cho sản xuất, kiểm tra được các định mức dự trữ, tiết kiệm vật liệu trong sản xuất, ngăn ngừa và hạn chế mất mát, hư hỏng, lãng phí trong tất cả các khâu của quá trình sản xuất Đặc biệt là cung cấp thông tin cho các bộ phận kế toán nhằm hoàn thành tốt nhiệm vụ kế toán quản trị.
Yêu cầu quản lý nguyên vật liệu
Trong nền kinh tế thị trường, kinh doanh có lãi là mục tiêu mà các doanh nghiệp đều hướng tới Nguyên vật liệu là một yếu tố không thể thiếu trong quá trình sản xuất kinh doanh của doanh nghiệp Giá trị vật liệu thường chiếm một tỷ lệ lớn trong tổng chi phí sản xuất Vì vậy, quản lý tốt khâu thu mua, dự trữ và sử dụng nguyên vật liệu là điều kiện cần thiết để đảm bảo chất lượng sản phẩm, tiết kiệm chi phí, giảm giá thành, tăng lợi nhuận cho doanh nghiệp.Nguyên vật liệu là tài sản dự trữ thường xuyên biến động Do vậy các doanh nghiệp phải giám sát chặt chẽ quá trình thu mua, dự trữ và sử dụng nguên vật liệu một cách hiệu quả, ở khâu thu mua đồi hỏi phải quản lý về khối lượng, chất lượng quy cách, chủng loại, giá mua và chi phí thu mua cũng như việc thực hiện kế hoạch thu mua theo đúng tiến độ thời gian phù hợp với tình hình sản xuất kinh doanh của doanh nghiệp
Việc tổ chức kho tàng, bến bãi, trang bị đầy đủ các phương tiện cân đo, thực hiện đúng chế độ bảo quản đối với từng loại vật liệu, tránh hư hỏng mất mát, hao hụt, đảm bảo an toàn là một trong các yếu tố quản lý nguyên vật liệu.Trong khâu sử dụng, đòi hỏi phải thực hiện sử dụng hợp lý, tiết kiệm trên cơ sở các định mức, dự toán chi phí nhằm hạ thấp chi phí vật liệu trong giá thành sản phẩm Ở khâu dự trữ, doanh nghiệp phải xác định được định mức dự trữu tối đa, tối thiểu cho từng loại vật liệu để đảm bảo cho quá trình sản xuất kinh doanh được bình thường không ngưng trệ, gián đoạn do việc
16
Trang 17cung ứng nguyên vật liệu gây ra hoặc gây tình trạng ứ đọng nguyên vật liệu quá nhiều.
Để thuận tiện cho công tác quản lý nguyên vật liệu thì trước hết các doanh nghiệp phải xây dựng được hệ thống đánh điểm và đánh mã số cho nguyên vật liệu Hệ thống này phải rõ ràng, chính xác tương ứng với quy cách, chủng loại của nguyên vật liệu
1.1.5 Các phương pháp tính giá xuất kho (giá vốn)
Hàng tồn kho trong các doanh nghiệp tăng từ nhiều nguồn khác nhau với các đơn giá khác nhau, vì vậy doanh nghiệp cần lựa chọn phương pháp tính giá thực tế hàng xuất kho Việc lựa chọn phương pháp nào còn tuỳ thuộc vào đặc điểm của hàng tồn kho, yêu cầu và trình độ quản lý của doanh nghiệp.Song doanh nghiệp áp dụng phương pháp nào đòi hỏi phải nhất quán trong suốt niên độ kế toán Nếu có sự thay đổi phải giải trình và thuyết minh, nêu rõ những tác động của sự thay đổi tới các báo cáo tài chính của doanh nghiệp Để tính giá hàng tồn kho xuất, doanh nghiệp có thể áp dụng một trong các phương pháp sau đây:
Phương pháp giá thực tế đích danh
Theo phương pháp này sản phẩm, vật tư, hàng hoá xuất kho thuộc lô hàng nhập nào thì lấy đơn giá nhập kho của lô hàng đó để tính Đây là phương
án tốt nhất, nó tuân thủ nguyên tắc phù hợp của kế toán; chi phí thực tế phù hợp với doanh thu thực tế Giá trị của hàng xuất kho đem bán phù hợp với doanh thu mà nó tạo ra Hơn nữa, giá trị hàng tồn kho được phản ánh đúng theo giá trị thực tế của nó
Tuy nhiên, việc áp dụng phương pháp này đòi hỏi những điều kiện khắt khe, chỉ những doanh nghiệp kinh doanh có ít loại mặt hàng, hàng tồn kho có giá trị lớn, mặt hàng ổn định và loại hàng tồn kho nhận diện được thì mới có thể áp dụng được phương pháp này Còn đối với những doanh nghiệp có
Trang 18nhiều loại hàng thì không thể áp dụng được phương pháp này.
Phương pháp giá bình quân
Theo phương pháp này giá trị của từng loại hàng tồn kho được tính theo giá trị trung bình của từng loại hàng tồn kho đầu kỳ và giá trị từng loại hàng tồn kho được mua hoặc sản xuất trong kỳ Phương pháp bình quân có thể được tính theo thời kỳ hoặc vào mỗi khi nhập một lô hàng, phụ thuộc vào tình hình của doanh nghiệp
* Theo giá bình quân gia quyền cuối kỳ (tháng)
Theo phương pháp này, đến cuối kỳ mới tính trị giá vốn của hàng xuất kho trong kỳ Tuỳ theo kỳ dự trữ của doanh nghiệp áp dụng mà kế toán hàng tồn kho căn cứ vào giá nhập, lượng hàng tồn kho đầu kỳ và nhập trong kỳ để tính giá đơn vị bình quân:
Đơn giá xuất kho bình quân trong kỳ của một loại sản phẩm = (Giá trị hàng tồn đầu kỳ + Giá trị hàng nhập trong kỳ) / (Số lượng hàng tồn đầu kỳ +
Số lượng hàng nhập trong kỳ)
Ưu điểm: Đơn giản, dễ làm, chỉ cần tính toán một lần vào cuối kỳ
Nhược điểm: Độ chính xác không cao, hơn nữa, công việc tính toán dồn vào cuối tháng gây ảnh hưởng đến tiến độ của các phần hành khác Ngoài ra, phương pháp này chưa đáp ứng yêu cầu kịp thời của thông tin kế toán ngay tại thời điểm phát sinh nghiệp vụ
* Theo giá bình quân gia quyền sau mỗi lần nhập (bình quân thời điểm)Sau mỗi lần nhập sản phẩm, vật tư, hàng hoá, kế toán phải xác định lại giá trị thực của hàng tồn kho và giá đơn vị bình quân Giá đơn vị bình quân được tính theo công thức sau:
Đơn giá xuất kho lần thứ i = (Trị giá vật tư hàng hóa tồn đầu kỳ + Trị giá vật tư hàng hóa nhập trước lần xuất thứ i)/(Số lượng vật tư hàng hóa tồn đầu
kỳ + Số lượng vật tư hàng hóa nhập trước lần xuất thứ i)
18
Trang 19Phương pháp này có ưu điểm là khắc phục được những hạn chế của phương pháp trên nhưng việc tính toán phức tạp, nhiều lần, tốn nhiều công sức Do đặc điểm trên mà phương pháp này được áp dụng ở các doanh nghiệp
có ít chủng loại hàng tồn kho, có lưu lượng nhập xuất ít
Phương pháp FIFO (nhập trước xuất trước)
Phương pháp này áp dụng dựa trên giả định là hàng được mua trước hoặc sản xuất trước thì được xuất trước và giá trị hàng xuất kho được tính theo giá của
lô hàng nhập trước hoặc sản xuất trước và thực hiện tuần tự cho đến khi chúng được xuất ra hết
Phương pháp này giúp cho chúng ta có thể tính được ngay trị giá vốn hàng xuất kho từng lần xuất hàng, do vậy đảm bảo cung cấp số liệu kịp thời cho kế toán ghi chép các khâu tiếp theo cũng như cho quản lý Trị giá vốn của hàng tồn kho sẽ tương đối sát với giá thị trường của mặt hàng đó Vì vậy chỉ tiêu hàng tồn kho trên báo cáo kế toán có ý nghĩa thực tế hơn
Tuy nhiên, phương pháp này có nhược điểm là làm cho doanh thu hiện tại không phù hợp với những khoản chi phí hiện tại Theo phương pháp này, doanh thu hiện tại được tạo ra bởi giá trị sản phẩm, vật tư, hàng hoá đã có được từ cách đó rất lâu Đồng thời nếu số lượng chủng loại mặt hàng nhiều, phát sinh nhập xuất liên tục dẫn đến những chi phí cho việc hạch toán cũng như khối lượng công việc sẽ tăng lên rất nhiều
Phương pháp LIFO (nhập sau xuất trước)
Ngược lại với phương pháp FIFO
Phương pháp này hầu như không được dùng trong thực tế
1.1.6 Nhiệm vụ của quản lý nguyên vật liệu
* Yêu cầu quản lý nguyên vật liệu
Vật liệu là tài sản dự trữ sản xuất kinh doanh thuộc tài sản lưu động, thường xuyên biến động Để hoạt động sản xuất kinh doanh diễn ra bình
Trang 20thường, các Doanh nghiệp sản xuất phải thường xuyên mua NVL và xuất dùng cho sản xuất Mỗi loại sản phẩm sản xuất được sử dụng từ nhiều thứ, nhiều loại vật liệu khác nhau, được nhập về từ nhiều nguồn và giá cả của vật liệu thường xuyên biến động trên thị trường Bởi vậy để tăng cường công tác quản
lý, vật liệu phải được theo dõi chặt chẽ tất cả các khâu từ khâu thu mua bảo quản, sử dụng tới khâu dự trữ Trong quá trình này nếu quản lý không tốt sẽ ảnh hưởng đến chất lượng, giá trị sản phẩm sản xuất ra Do đó yêu cầu quản lý công tác NVL được thể hiện ở một số điểm sau:
Trong khâu thu mua: Đòi hỏi phải quản lý về khối lượng, chất lượng, quy cách, chủng loại, giá mua và chi phí thu mua cũng như kế hoạch mua theo đúng tiến độ, thời gian phù hợp với kế hoạch sản xuất kinh doanh của Doanh nghiệp
Trong khâu bảo quản: Để tránh mất mát, hư hỏng, hao hụt, đảm bảo an toàn vật liệu, thì việc tổ chức tốt kho tàng, bến bãi, thực hiện đúng chế độ quản lý đối với từng loại nguyên vật liệu cũng ảnh hưởng không nhỏ tới quá trình sản xuất và kết quả sản xuất kinh doanh
Trong khâu sử dụng: Đòi hỏi phải thực hiện sử dụng hợp lý, tiết kiệm trên cở sở các định mức, dự toán chi phí nhằm hạ thấp mức tiêu hao vật liệu trong giá thành sản phẩm, tăng thu nhập, tích luỹ cho Doanh nghiệp Vì vậy, trong khâu này cần tổ chức tốt việc ghi chép, phản ánh tình hình xuất dùng và
sử dụng vật liệu trong quá trình hoạt động sản xuất kinh doanh
Trong khâu dự trữ: Doanh nghiệp phải xác định được mức dự trữ tối đa, tối thiểu cho từng loại vật liệu để đảm bảo quá trình sản xuất kinh doanh được bình thường, không bị ngưng trệ, gián đoạn do việc cung ứng không kịp thời hoặc gây tình trạng ứ đọng vốn do dự trữ quá nhiều
Tóm lại, nguyên vật liệu là yếu tố đầu tiên trong quá trình tạo ra sản phẩm và cũng là yếu tố chủ yếu tạo nên sản phẩm Vì vậy muốn sản phẩm đạt
20
Trang 21tiêu chuẩn, chất lượng cao và đạt được uy tín trên thị trường nhất thiết phải
tổ chức việc quản lý vật liệu Đây là một trong những nội dung quan trọng của công tác quản lý nguyên vật liệu ở Doanh nghiệp
1.2 Công cụ lập trình
1.2.1 Hệ quản trị cơ sở dữ liệu SQL
SQL, viết tắt của Structured Query Language (ngôn ngữ hỏi có cấu trúc),
là công cụ sử dụng để tổ chức, quản lý và truy xuất dữ liệu đuợc lưu trữ trong các cơ sở dữ liệu SQL là một hệ thống ngôn ngữ bao gồm tập các câu lệnh sử dụng để tương tác với cơ sở dữ liệu quan hệ
Khả năng của SQL vượt xa so với một công cụ truy xuất dữ liệu, mặc dù đây là mục đích ban đầu khi SQL được xây dựng nên và truy xuất dữ liệu vẫn còn là một trong những chức năng quan trọng của nó 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: SQL cung cấp khả năng định nghĩa các cơ sở dữ liệu, các cấu trúc lưu trữ và tổ chức dữ liệu cũng như mối quan hệ giữa các thành phần dữ liệu
+ Truy xuất và thao tác dữ liệu: Với SQL, người dùng có thể dễ dàng thực hiện các thao tác truy xuất, bổ sung, cập nhật và loại bỏ dữ liệu trong các cơ sở dữ liệu
+ Điều khiển truy cập: SQL có thể được sử dụng để cấp phát và kiểm soát các thao tác của người sử dụng trên dữ liệu, đảm bảo sự an toàn cho cơ sở dữ liệu
+ Đảm bảo toàn vẹn dữ liệu: SQL định nghĩa các ràng buộc toàn vẹn trong cơ sở dữ liệu nhờ đó đảm bảo tính hợp lệ và chính xác của dữ liệu trước các thao tác cập nhật cũng như các lỗi của hệ thống
Bản thân SQL không phải là một hệ quản trị cơ sở dữ liệu, nó không thể
Trang 22tồn tại độc lập SQL thực sự 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ản trị 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 là ngôn ngữ hỏi có tính tương tác: Người sử dụng có thể dễ dàng
thông qua 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ác câ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 ứng dụ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ều khiển truy cập cơ sở dữ liệu,
SQL là ngôn ngữ cho các hệ thống khách/chủ (client/server) : Trong
các hệ thống cơ sở dữ liệu khách/chủ, SQL được sử dụng như là công cụ để giao tiếp giữa các trình ứng dụng phía máy khách với máy chủ cơ sở dữ liệu
SQL là ngôn ngữ truy cập dữ liệu trên Internet: Cho đến nay, hầu hết
các máy chủ Web cũng như các máy chủ trên Internet sử dụng 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
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ệu phân tán,mỗi một 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: Trong
một hệ thống mạng máy tính với nhiều hệ quản trị cơ sở dữ liệu khác nhau, SQL th ường được sử 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ệu
SQL Server 2005: là một hệ thống quản lý cơ sở dữ liệu (Relational
Database Management System (RDBMS)) sử dụng Transact-SQL để trao đổi
22
Trang 23dữ liệu giữa Client computer và SQL Server computer Một RDBMS bao gồm databases, database engine và các ứng dụng dùng để quản lý dữ liệu và các
bộ phận khác nhau trong RDBMS SQL Server 2005 được tối ưu để có thể chạy trên môi trường cơ sở dữ liệu rất lớn (Very Large Database Environment) lên đến Tera-Byte và có thể phục vụ cùng lúc cho hàng ngàn user SQL Server
2005 có thể kết hợp “ăn ý” với các server khác như Microsoft InternetInformation Server (IIS), E-Commerce Server, Proxy Server
Các phiên bản của SQL Server 2005:
+ Enterprise: Hỗ trợ không giới hạn số l ượng CPU và kích thước Database Hỗ trợ không giới hạn RAM (nhưng tùy thuộc vào kích thước RAM tối đa mà HĐH hỗ trợ) và các hệ thống 64bit
+ Standard: Tương tự như bản Enterprise nhưng chỉ hỗ trợ 4 CPU Ngoài
ra phiên bản này cũng không được trang bị một số tính năng cao cấp khác.+ Workgroup: Tương tự bản Standard nhưng chỉ hỗ
+ RAM và kích thước Database giới hạn trong 4GB
Các đối tượng của SQL ServerTable
* Bảng
Là thành phần chính trong cơ sở dữ liệu Bảng là đối tượng lưu trữ dữ liệu thực, khi cần giao tiếpvới cơ sở dữ liệu khác, bảng là đối tượng căn bản nhất trong bất kỳ loại cơ sở dữ liệu nào, chúngđược coi là một miền dữ liệu.Mỗi bảng được định nghı̃a nhiều trường, mỗi trường (field còn gọi là column name) ứng với mộtloại kiểu dữ liệu Dữ liệu nhập vào có thể chấp nhận hoặc từ chối tuỳ thuộc vào nguyên tắc ràng buộc dữ liệu tương thích do
hệ thống hay người dùng định nghĩa
* Datagram – Lược đồ quan hệ
Khi xây dựng cơ sở dữ liệu ứng dụng hay thương mại điện tử, đều phải dựa trên trình phân tích thiết kế hệ thống Sau những bước phân tích và thiết
Trang 24kế, bạn sẽ thiết lập quan hệ dữ liệu giữa các thực thể ERD Diagram là công cụ duy nhất giúp bạn thực hiện công việc kết nối trên
* Chỉ mục Indexs
Đối tượng này chỉ tồn tại trong bảng hay khung nhìn, chỉ mục có ảnh hưởng đến tốc độ truy cậpdữ liệu, khi tìm kiếm thông tin trên bảng chỉ mục giúp tăng tốc độ cho việc tìm kiếm
* View
Bảng View trong SQL Server:View là đối tượng cơ sở dữ liệu Chúng được biết đến như một bảng ảo (Virtual table) Bản thânView không chứa dữ liệu mà chỉ truy vấn, kết hợp những dữ liệu từ một hay nhiều bảng có quan hệ lại với nhau
Sử dụng View nhằm cải thiện quá trình truy cập, bằng cách định nghĩa trước phát biểu SQL dạng Select với các điều kiện cố định như phép kết nối, tiêu chuẩn so sánh cố định, không thay đổi,…
Để thiết kế View trước tiên cần xác định những cột dữ liệu nào cần kết xuất, sau đó xem xét những cột dữ liệu này thuộc về bảng dữ liệu nào Từ đó bạn có thể tạo ra một View từ những bảng dữ liệu có quan hệ với nhau
Views có thể thêm trường mới dựa vào những phép toán, biểu thức của SQL Server Views có thể kết nối nhiều bảng dữ liệu lại với nhau theo quan hệ nhất định cùng với những tiêu chuẩn, nhằm tạo ra một bảng dữ liệu theo nhu cầu của người dùng mong muốn
1.2.2 Ngôn ngữ lập trình C#
C# là gì?
24
Trang 25C# là một ngôn ngữ lập trình được phát triển bởi Microsoft, là phần khởi đầu cho kế hoạch NET của họ Tên của ngôn ngữ bao gồm ký tự thăng theo Microsoft nhưng được đọc là C sharp Microsoft phát triển C# dựa trên C++ và Java C# được miêu tả là ngôn ngữ có được sự cân bằng giữa C++, Visual Basic, Delphi và Java.
C# là ngôn ngữ lập trình đơn giản
C# là ngôn ngữ lập trình hướng đối tượng
C# là ngôn ngữ lập trình mạnh mẽ và mềm dẻo
C# là ngôn ngữ lập trình hiện đại
C# là ngôn ngữ hướng module
C# sẽ trở nên phổ biến
C# là ngôn ngữ đơn giản
- C# đã loại bỏ được một vài phức tạp rắc rối của ngôn ngữ C++ và Java
- C# giống C và C++ về diện mạo, cú pháp, biểu thức và toán tử
- Chức năng của C# được lấy trực tiếp từ ngôn ngữ C và C++ nhưng được cải tiến để làm cho ngôn ngữ đơn giản hơn
C# là ngôn ngữ hướng đối tượng
C# đã hướng tất cả những đặc tính của ngôn ngữ hướng đối tượng:
+ Sự đóng gói( encapsulation)
+ Sự kế thừa( inheritance)
+ Đa hình(polymorphism)
C# là ngôn ngữ hiện đại
C# có những đặc tính của ngôn ngữ hiện đại như:
+ Xử lý ngoại lệ
+ Thu gom bộ nhớ tự động
+ Có những kiểu dữ liệu mở rộng
+ Bảo mật mã nguồn
Trang 27 C# là ngôn ngữ hướng module.
Mã nguồn C# có thể được viết trong những phần được 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à những phương thức có thể được sử dụng lại trong ứng dụng hay các chương tŕ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 những mã nguồn dùng lại có hiệu quả Khi biên dịch, các class cùng gốc namespace sẽ lưu trong một assembly (File dll – dynamic link library) có thể dễ dàng tái sử dụng lại trong các project khác (Bạn có thể add dll vào bằng right click => Add reference => Browse đến file dll
* Các tính năng cơ bản của ngôn ngữ lập trình C#:
- C# là một ngôn ngữ lập trình hướng đối tượng thuần túy (pure object oriented programming)
- Kiểm tra an toàn kiểu
- Thu gom rác tự động: giảm bớt gánh nặng cho người lập trình viên trong việc phải viết các đoạn code thực hiện cấp phát và giải phóng bộ nhớ
- Hỗ trợ các chuẩn hóa được ra bởi tổ chức ECMA (European Computer Manufactures Association)
- Hỗ trợ các phương thức và các kiểu phổ quát (chung)
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
Trang 28- Các ứng dụ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: ứng dụng quản lý Nguyên vật liệu, quản
lý thông tin cá nhâ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
Một trong những chức năng quan trọng nhất của một ngôn ngữ lập trình
là việc cung cấp cơ sở cho việc quản lý bộ nhớ và các đối tượng được chứa trong bộ nhớ C cung ứng 3 phương cách để cấp phát bộ nhớ cho các đối tượng:
+ Sự cấp phát vùng nhớ tĩnh: khoảng trống dành cho đối tượng thì được cung cấp trong phần mã nhị phân ở thời gian dịch; những đối tượng này có một thời gian sống lâu dài theo sự tồn tại của phần mã nhị phân chứa chúng (các đối tượng)
+ Sự cấp phát vùng nhớ tự động: Các đối tượng tạm thời có thể được chứa trong một chồng (stack), và khoảng trống này thì được trả về một cách
tự động và có thể được dùng lại sau khi khối mã mà chúng (tức các đối tượng tạm thời) được khai báo đã thực thi xong
+ Sự cấp phát vùng nhớ động: Các khối của bộ nhớ với bất kì cỡ lớn mong muốn nào đều có thể được yêu cầu (hay xin) trong thời gian thi hành bằng cách dùng các hàm thư viện như là malloc(), realloc() và free() từ một khu vực của bộ nhớ có tên là heap; các khối này có thể được tái dụng sau khi gọi hàm free() để hoàn trả chúng lại cho bộ nhớ của máy
Ba phương án này thích hợp cho các tình huống khác nhau và có những hậu quả khác nhau Thí dụ, kiểu cấp phát tĩnh sẽ không cần thời gian (để tính
28
Trang 29toán) cho sự cấp phát, kiểu cấp phát tự động sẽ cần một khoảng thời gian nào
đó cho dự tính, và kiểu cấp phát động có thể đòi hỏi một lượng lớn thời gian dùng dễ tính toán cho việc cấp phát và hoàn trả (các vùng nhớ đã được yêu cầu trước đó) Mặt khác, khoảng trống của chồng thường giới hạn cho vùng nhớ tĩnh hay cho khoảng trống của heap, và chỉ kiểu cấp phát vùng nhớ động
là cho phép sự cấp phát cho các đối tượng mà kích thước của nó chỉ có thể biết được trong lúc thi hành Hầu hết các chương trình C đều dùng nhiều cả ba phương cách này
Khi có thể thì sự cấp phát tự động hay sự cấp phát tĩnh thường được dề nghị dùng vì kho nhớ được quản lý bởi trình dịch, giải phóng cho người lập trình những lồi lầm phiền hà khi phải xin cấp phát và hoàn trả các vùng nhớ bằng tay Rất tiếc nhiều cấu trúc dữ liệu có thể trương nở trong thời gian thực thi và vì kiểu cấp phát tĩnh và kiểu tự động phải có một độ lớn cố định ở thời gian dịch nên trong nhiều tình huống mà buộc phải dùng kiểu cấp phát động Các dãy thay đổi về độ lớn là một thí dụ điển hình của trường hợp này (Xem thí dụ từ bài malloc về các dãy được cấp phát vùng nhớ động.)
* Quan hệ với C++:
C++ nguyên là sự kết thừa từ C Mặc dù vậy, không phải mọi chương trình trong C đều hợp lệ trong C++ Vì là hai ngôn ngữ độc lập, số lượng không tương thích giữa hai ngôn ngữ này đã tăng lên [2] Phiên bản cuối cùng C99
đã tạo ra thêm nhiều tính năng xung đột (giữa C và C++) Các sự khác nhau này tạo ra khó khăn để viết các chương trình và thư viện đẻ có thể được dịch
và hoạt động chính xác trong cả hai loại mã C hay C++, đồng thời gây nhầm lẫn cho những người lập trình dùng cả hai ngôn ngữ này Sự chênh lệch này cũng gây khó khăn cho ngôn ngữ này có thể tiếp thu các tính năng của ngôn ngữ kia
Bjarne Stroustrup, cha đẻ của C++ đã lập đi lập lại rằng [3]: Các tính chất
Trang 30không tương thích giữa C và C++ nên được hạ thấp càng nhiều càng tốt để mở rộng tối đa khả năng hoạt động thông suốt của hai ngôn ngữ này Một số người tranh biện rằng vì C và C++ là hai ngôn ngữ khác nhau, sự tương thích giữ chúng thì hữu ích nhưng không phải có tính sống còn, theo lập trường này, nỗ lực để giảm sự không tương thích không được phá hủy cố gắng để nâng cao mỗi ngôn ngữ đứng riêng.
Ngày nay, những khác nhau căn bản, không kể các mở rộng thêm vào của C++ như là các lớp, các tiêu bản, các không gian tên, và quá tải, giữa hai ngôn ngữ là:
inline — các hàm inline có giá trị toàn cục trong C++ và chỉ có giá trị trong phạm vi tập tin trong C#
Từ khóa bool trong C99 thì có riêng tập tin tiêu dề của nó là <stdbool.h> Các chuẩn C trước đây đã không định nghĩa kiểu boolean và nhiều phương pháp không tương thích đã được dùng để mô phỏng kiểu boolean
Các hằng kí tự (được đặt trong dấu ') có độ lớn của một int trong C# và
có độ lớn của một char trong C++ Mặc dù vậy, ngay cả trong C các hàng này sẽ không bao giờ vượt quá giá trị của một char, cho nên việc chuyển đổi kiểu (char) 'a' thì hoàn toàn an toàn Nhừng từ khóa mới thêm vào trong C++ sẽ không thể dược dùng làm các tên trong C như trước đây nữa (Thí dụ: try, catch, template, new, delete, )
Trong C++, trình dịch tự dộng tạo một "thẻ" cho mỗi struct, union hay enum, do vậy, struct S {}; trong C++ tương đương với typedef struct S {} S; trong C#
C99 tiếp thu một số tính năng mà xuất hiện đầu tiên trong C++ Trong số
đó là:
Bắt cuộc khai báo nguyên mẫu của hàm
Thêm từ khóa inline
30
Trang 31Hủy bỏ "hiểu ngầm" của sự trả về sẽ có kiểu int.
* 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ôn ngữ khác nhau
- 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ập trình viên khi sử dụng biết được ý nghĩa của các đoạn code đã viết
* Môi trường phát triển tích hợp Visusal Studio.Net 2005, 2008
VS là một tập hợp các công cụ phát triển cho việc xây dựng các ứng dụng desktop với hiệu năng cao, các ứng dụng cho thiết bị di động, các dịch vụ Web, các ứng dụng Web Ngoài ra VS 2005 cũng được sử dụng để làm đơn giản hóa quá trình phát triển nhóm, triển khai cài đặt các ứng dụng enterprise
VS cung cấp các lợi ích mở rộng cho việc phát triển các ứng dụng:
+ Nâng cao tính sản phẩm
+ Phát triển các ứng dụng cho NET Framework 2.0
+ Phát triển các ứng dụng cho các thiết bị cầm tay với NET Framework Compact
* Các thao tác với Form
Thêm một Form mới vào Project:
Bước 1 C1 Vào menu Project | Add New Item …
C2 Chọn công cụ Add New Item trên thanh
+Categories: chọnWindowForms
+ Templates: chọn Windows Form
+ Name: đặt tên Form b3 Nhắp Add
Trang 32c Xóa bỏ một Form đang có trong Project:
Bước Chọn Form cần gỡ bỏ (ở cửa sổ Solution Explorer)Bước 2 Vào menu Edit | Delete
32
Trang 33- Khi thay đổi nội dung của Label, TextBox, Button, … ta thay đổi vàoText Text được gọi là Property của control.
Các khái niệm cơ sở
Control là gì?
- Control là lớp (class) các thành phần được thêm vào Windows Forms
để tương tác giữa người sử dụng với Windows
- Có rất nhiều loại control trong Windows Forms như: Label, TextBox, ListBox,
ComboBox, Button, …
- Các control sử dụng trên Windows Forms dùng namespace
System.Windows.Forms.
Properties (thuộc tính) của control
- Properties là những thông tin mà ta có thể thay đổi nội dung, cáchtrình bày … của người thiết kế để ứng dụng vào control
- Mỗi lớp (class) có nhiều property khác nhau Tuy nhiên, vẫn có một
số property giống nhau được xây dựng từ lớp ban đầu
Bảng 1.1: Bảng trình bày các thuộc tính (Properties) giống nhau
Thuộc
tính
Mô tả
Trang 34Anchor Có 4 hướng được định nghĩa là: top, bottom, left, right để cố định
(neo)
Khi control chứa nó thay đổi kích thước thì nó sẽ bị thay đổi kích thước nếu nếu các hướng left / right / top / bottom bị cố định (neo).BackColor Màu nền của control
Bottom Là khoảng cách theo chiều dọc từ cạnh đáy của control đến cạnh trên
của control chứa nó
Dock Giống như Anchor nhưng việc cố định (neo) này theo một cạnh nào
đócủa control (hoặc cả 4 cạnh) với control chứa nó
Enabled Control được phép tương tác (True) hay không được phép tương tác
(False)) với người dùng
ForeColor Màu chữ của control
Height Là chiều cao của control tính từ cạnh trên của control đến cạnh dưới
củacontrol
Left Là khoảng cách theo chiều ngang từ cạnh trái của control đến cạnh
tráicủa control chứa nó
Name Tên của control
Parent Chỉ đến control chứa control hiện hành
Right Là khoảng cách theo chiều ngang từ cạnh phải của control đến cạnh
tráicủa control chứa nó
TabIndex Thứ tự focus khi nhấn phím Tab (trên bàn phím) của control so với
cáccontrol khác cùng nằm trong control chứa nó
34
Trang 35TabStop Chỉ định control có được phép “bắt” (True) / không được phép “bắt”
(False) phím Tab Nếu không được phép thì TabIndex cũng không dùng được
Tag Là nhãn phân biệt giữa các control giống nhau trong cùng form
Text Nội dung hiện trong control
Top Là khoàng cách theo chiều dọc từ cạnh trên của control đến cạnh trên
của control chứa nó
Visible Cho phép control hiện (True) / không hiện (False) khi chạy ứng dụng.Width Là chiều rộng của control tính từ cạnh trái của control đến cạnh phải
củacontrol
Trang 36Bảng 1.2: Bảng trình bày các phương thức (Method) xử lý trên chuỗi
Clear() Xóa nội dung
ResetText() Xóa nội dung Text
Trim() Cắt bỏ khoảng trắng thừa hai bên chuỗi
Bảng 1.3: Bảng trình bày các sự kiện (Events) của control
Click Gọi đến khi control bị Click
Double Click Gọi đến khi control bị Double-Click Trong một vài control, event
này không báo giờ được gọi Ví dụ: control Button
DragDrop Gọi đến khi việc “Drag and Drop” được hoàn tất
DragEnter Gọi đến khi đối tượng vừa được “Drag” đến biên của control
DragLeaveGọi đến khi đối tượng vừa được “Drag” ra ngoài biên của control
DrgOver Gọi đến khi đối tượng được “Drag” bên trong control
KeyDown Gọi đến khi vừa bấm một phím bất kỳ từ 1 control đang focus
Sự kiện này luôn được gọi trước sự kiện KeyUp
KeyPress Gọi đến khi vừa bấm một phím bất kỳ từ 1 control được focus.Sự kiện
này được gọi sau sự kiện KeyUp
36
Trang 37KeyUp Gọi đến khi vừa bấm một phím bất kỳ rồi thả ra từ 1 contro focus
Sự kiện này luôn được gọi sau sự kiện KeyDown
GotFocus Gọi đến khi control được focus
LostFocus Gọi đến khi control bị mất focus
MouseDown Gọi đến khi con trỏ chuột nằm trên 1 control và nút chuột nhắp
nhưng chưa thả ra
MouseMove
Gọi đến khi con trỏ chuột đi qua 1 control
MouseUp Gọi đến khi con trỏ chuột nằm trên 1 control và nút chuột vừa
được thả
Paint Gọi đến khi control được vẽ
Validated Gọi đến khi control focus, property CaucesValidation được đặt là
true và sau khi gọi việc kiểm tra bằng Validating
Validating Gọi đến khi control mất focus, property CaucesValidation được đặt là true
Trang 38Thuộc tính
Mô tả
Font Quy định kiểu chữ, cỡ chữ trong văn bản
Name Quy định font chữ cho văn bản
Bold True: đậm / False: bỏ đậm
Italic True: nghiêng / False: bỏ nghiêng
Size Quy định cỡ chữ cho văn bản
PasswordChar Quy định ký tự hiển thị cho ô mật khẩu
Multiline True: hiện thanh cuộn / False: không hiện thanh cuộn ScrollBars Thanh cuộn (None / Horizontal / Vertical / Both)
38