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

Xây dựng phần mềm quản lý kho gỗ của chi nhánh công ty ván gỗ ép mdf gia lai

80 2 0

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

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

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Xây Dựng Phần Mềm Quản Lý Kho Gỗ Của Chi Nhánh Công Ty Ván Gỗ Ép MDF Gia Lai
Trường học Công Ty Ván Gỗ Ép MDF Gia Lai
Chuyên ngành Tin Học Kinh Tế
Thể loại Đồ Án Tốt Nghiệp
Thành phố Gia Lai
Định dạng
Số trang 80
Dung lượng 2,7 MB

Cấu trúc

  • 1.1 Giới thiệu về chi nhánh công ty ván gỗ ép MDF Gia Lai (5)
  • 1.2 Giới thiệu nhóm 3 - Tin học kinh tế 48 (6)
  • 1.3 Bảng phân công công việc (7)
  • 1.4 Kế hoạch triển khai (8)
  • 2. Quy trình xây dựng hợp đồng phần mềm (9)
  • 3. Quy trình xác định yêu cầu (13)
    • 3.1 Lập kế hoạch (13)
    • 3.2 Khảo sát và xác định yêu cầu người sử dụng (13)
      • 3.2.1 Sơ đồ tổ chức của chi nhánh công ty ván gỗ ép MDF Gia Lai (13)
      • 3.2.2 Yêu cầu chức năng nghiệp vụ (14)
      • 3.2.3 Yêu cầu chức năng hệ thống (14)
      • 3.2.4 Yêu cầu phi chức năng (14)
    • 3.3 Phân tích nghiệp vụ chuyên sâu (14)
    • 3.4 Mô tả hoạt động hệ thống (15)
      • 3.4.1 Sơ đồ BFD (15)
      • 3.4.2 Sơ đồ DFD (16)
    • 3.5 Báo cáo quy trình xác định yêu cầu (19)
  • 4. Quy trình phân tích thiết kế (20)
    • 4.1 Lập kế hoạch thiết kế (20)
    • 4.2 Thiết kế kiến trúc (20)
    • 4.3 Thiết kế dữ liệu (20)
      • 4.3.1 Sơ đồ cấu trúc dữ liệu DSD (20)
      • 4.3.2 Thiết kế các bảng CSDL (21)
    • 4.4 Thiết kế giải thuật (24)
      • 4.4.1 Giải thuật đăng nhập (24)
      • 4.4.2 Giải thuật cập nhật dữ liệu (25)
      • 4.4.3 Giải thuật xuất báo cáo (26)
    • 4.5 Thiết kế giao diện (27)
  • 5. Quy trình lập trình (40)
    • 5.1 Lập kế hoạch lập trình (40)
    • 5.2 Lập trình cập nhật danh mục (40)
    • 5.4 Lập trình xuất báo cáo (60)
  • 6. Quy trình Test (65)
    • 6.1 Lập kế hoạch Test (65)
    • 6.2 Lập kịch bản Test (65)
    • 6.3 Nội dung Test (65)
      • 6.3.1 Test - case 1 Kiểm tra tính bảo mật hệ thống (66)
      • 6.3.2 Test - case 2 Kiểm tra chức năng Quản lý User (67)
      • 6.3.3 Test - case 3 Kiểm tra chức năng cập nhật danh mục (69)
      • 6.3.4 Test - case 4 Kiểm tra danh sách phiếu nhập (74)
      • 6.3.5 Test - case 5 Kiểm tra danh sách phiếu xuất (75)
      • 6.3.6 Test - case 6 Kiểm tra tạo báo cáo (75)
      • 6.3.7 Test - case 7 Kiểm tra trợ giúp (76)
    • 6.4 Tổng kết quy trình Test (77)
    • 7.1 Lập kế hoạch (77)
    • 7.2 Lập giải pháp (77)
    • 7.3 Cài đặt và vận hành (77)
    • 7.4 Đào tạo sử dụng (77)
      • 7.4.1 Cung cấp sách hướng dẫn sử dụng (78)
      • 7.4.2 Đào tạo người sử dụng (78)
    • 7.5 Báo cáo triển khai (78)

Nội dung

Giới thiệu về chi nhánh công ty ván gỗ ép MDF Gia Lai

TỔNG CÔNG TY LÂM NGHIỆP VIỆT NAM - VINAFOR

Chi nhánh công ty ván gỗ ép MDF Gia Lai

-Địa chỉ:32 – Đại Từ - Đại Kim – Hà Nội

-Email: vinafor_kt@fpt.vn

-Website: www.vinafor.com.vn Đôi nét về công ty:

Ván Sợi (MDF) là ván nhân tạo có đặc tính cơ lý cao, kích thước lớn, phù hợp với công nghệ sản xuất đồ mộc nội thất trong vùng khí hậu nhiệt đới.

Nhà máy MDF Gia Lai của VINAFOR có công suất 54.000 m3 SP/năm sử dụng dây chuyền công nghệ hiện đại châu Âu và được quản lý theo hệ thống quản lý chất lượng ISO 9001-2000 Quy cách sản phẩm 1.830 mm x 2.440mm dầy từ 6- 30mm.

Sản phẩm ván MDF được sử dụng rộng rãi trong các lĩnh vực sản xuất đồ mộc, trang trí nội thất, xây dựng…

Giới thiệu nhóm 3 - Tin học kinh tế 48

Nhóm 3 - Tin học kinh tế 48 được thành lập 15 - 09 - 2009

Trong bối cảnh tin học hóa là một bước tiến bắt buộc đối với các doanh nghiệp Nhóm 3 được thành lập với mục tiêu mang lại sự tin học hóa đến với doanh nghiệp.Được thành lập với các thành viên năng động có kiến thức chuyên môn sâu Nhóm chúng tôi có quyết tâm biến kiến thức học được trên giảng đường thành các ứng dụng cho doanh nghiệp hiện đại

Danh sách các thành viên

Bảng phân công công việc

Nhiệm vụ Cán bộ phụ trách chính Thời gian thực hiện

Xác định đề tài Cả nhóm 1 ngày Đi thực tế Cả nhóm 2 ngày

Xây dựng hợp đồng Đào Tuấn Cường 4 ngày

Xác định nhu cầu người sử dụng Nguyễn Thị Ngọc Bích

Xây dựng HĐPM Đào Tuấn Cường

Xác định yêu cầu Nguyễn Thị Thanh

Lập kế hoạch xác định yêu cầu Nguyễn Thị Thanh

Xác định yêu cầu người sử dụng Nguyễn Thị Thanh

Phân tích nghiệp vụ chuyên sâu Nguyễn Thị Thanh

Mô hình hoạt động của hệ thống Hồ Hoàng Huệ

Báo cáo quy trình 2 Nguyễn Thị Thanh

Phân tích thiết kế Đào Tuấn Cường 2 tuần

Lập kế hoạch thiết kế Vũ Danh Mạnh

Thiết kế kiến trúc Đào Tuấn Cường

Thiết kế dữ liệu Thiều Quang Huy

Thiết kế thủ tục Nguyễn Tuấn Anh

Thiết kế giao diện Đinh Gia Cương

Lập trình Thiều Quang Huy 2 tuần

Lập trình hệ thống Nguyễn Tuấn Anh

Lập trình cập nhật danh mục Thiều Quang Huy

Lập trình xử lý nghiệp vụ Thiều Quang Huy

Nguyễn Tuấn Anh Lập trình tìm kiếm báo cáo Nguyễn Tuấn Anh

Lập kế hoạch Test Lò Đức Khoa

Lập kịch bản Test Lò Đức Khoa

Thực hiện Test Lò Đức Khoa

Báo cáo quy trình Test Vũ Danh Mạnh

Triển khai Đinh Gia Cương 1 tuần

Lập kế hoạch Đinh Gia Cương

Lập giải pháp Đinh Gia Cương

Cài đặt và vận hành Đinh Gia Cương Đào tạo sử dụng Đinh Gia Cương

Báo cáo triển khai Đinh Gia Cương

Kế hoạch triển khai

Quy trình xây dựng hợp đồng phần mềm

CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM Độc lập - Tự do – Hạnh phúc

Số 14/HĐPM -Căn cứ vào Bộ luật dân sự của nước Cộng Hòa Xã Hội Chủ Nghĩa Việt Nam được Quốc Hội khóa 11 thông qua ngày 14/6/2005

-Căn cứ vào luât thương mại số 36/2005/QH11 của nước Cộng Hòa Xã Hội Chủ Nghĩa Việt Nam được Quốc Hội khóa 11 thông qua ngày 14/6/2005

- Căn cứ vào nghị định Nghị định 47/NĐ-CP có hiệu lực từ 30/6/2009 về bảo vệ phần mềm máy tính

- Căn cứ vào Pháp lệnh 04/2008/UBTVQH12 về sở hữu trí tuệ có hiệu lực từ ngày 1/8/2008

- Căn cứ Luật Công nghệ thông tin ngày 29 tháng 6 năm 2006

-Căn cứ Quyết định số 246/2005/QĐ-TTg ngày 06 tháng 10 năm 2005 của Thủ tướng Chính phủ về việc phê duyệt Chiến lược phát triển công nghệ thông tin và truyền thông đến năm 2010 và định hướng đến năm 2020

-Sau khi xem xét yêu cầu của Công ty kho gỗ ván ép của chi nhánh công ty MDF Gia Lai và khả năng cung cấp dịch vụ của Nhóm xây dựng phần mềm Quản lý kho.

Hôm nay Ngày 27 Tháng 10 Năm 2009, chúng tôi gồm

BÊN A: Công ty kho gỗ ván ép của chi nhánh công ty MDF Gia Lai Địa chỉ: Số 32-Đại Từ-Đại Kim-Hà Nội Điện thoại: 04.35400826 Fax : 04.6283690 Đại diện: Đinh Ngọc Xuân Chức vụ: Giám đốc

Mở tại: Ngân hàng NN&PTNT Nam – Hà Nội

BÊN B: NHÓM XÂY DỰNG PHẦM MỀM QUẢN LÝ KHO Địa chỉ: Số 207 - Giải Phóng- Hai Bà Trưng – Hà Nội Điện thoại: 0986148893 Fax……… Đại diện: Thiều Quang Huy Chức vụ :Quản trị viên dự án

Hai bên thỏa thuận ký kết hợp đồng với những nội dung như sau: Điều 1 : Nội dung hợp đồng

Bên B cung cấp cho bên A những dịch vụ như sau:

Số TT Tên dịch vụ Ghi chú

2 Tạo tài khoản cập nhật dữ liệu

3 Duy trì tài khoản cập nhật dữ liệu

4 Giới thiệu phần mềm Miễn phí

5 Hướng dẫn sử dụng Miễn phí

6 Tư vấn miễn phí về phần mềm Miễn phí

9 Ngôn ngữ Tiếng Việt Miễn phí

10 Cài đặt triển khai hoàn chỉnh Điều 2: Giá trị hợp đồng và thanh toán (chưa bao gồm thuế VAT)

2.1 Chi phí toàn bộ phần mềm: 5.600.000 VND

(Bằng chữ: Năm triệu sáu trăm đồng chẵn)

2.2 Phương thức thanh toán: Thanh toán bằng tiền đồng Việt Nam(thanh toán bằng tiền mặt,ngân phiếu sec hoặc chuyển khoản)

Chi phí xây dựng phần mềm sẽ thanh toan 60% ngay sau khi ký kết hợp đồng,còn lại 40% thanh toán ngay sau khi các bên ký vào Biên bản thanh lý hợp đồng phân mềm. Điều 3: Trách nhiệm và quyền hạn của môĩ bên

3.1 Trách nhiệm quyền hạn của bên A:

-Cung cấp thông tin đảm bảo chính xác ,trung thực trong khuôn khổ pháp luật quy định

-Có trách nhiệm thanh toán các khoản chi phí theo như quy định tại điều 2 nói trên.

-Có quyền khiếu nại về chất lượng thông tin,chất lượng dịch vụ do bên B cung cấp.Mọi khiếu nại phải được gửi cho Bên B dưới dạng văn bản trong vòng 5 ngày kể từ ngày phát sinh vấn đề và Bên B trả lời khiếu nại cho bên A trong vòng 5 ngày kể từ ngày Bên B nhận được công văn của bên A

3.2 Trách nhiệm quyền hạn của Bên B

-Cung cấp các dịch vụ theo Điều 1 của Hợp đồng này

-Có quyền tạm ngưng phục vụ nếu Bên A thanh toán chậm quá 10 ngày kể từ ngày bàn giao kỹ thuật ch bên B

-Trong vòng 30 ngày kể từ ngày ký bên B sẽ cung cấp sản phẩm hoàn thiện cho bên A Điều 4: Bảo hành

4.1 Bên B có trách nhiệm bảo hành về các lỗi kỹ thuật và tư vấn trực tiếp,qua điện thoại hoặc qua fax cho Bên A trong thời gian 12 tháng kể từ ngày bàn giao phần mềm hoàn chỉnh

4.2 Sau khi hết hạn bảo hành Bên B tư vấn miễm phí cho Bên A qua điện thoại, Mail hoặc fax nếu có vưỡng mắc về kỹ thuật. Điều 5: Điều khoản chung

5.1 Hai bên cam kết thực hiện đúng nghiac vụ của mình theo các điều khoản dã ghi trong hợp đồng

5.2 Trong quá trình thực hiện hợp đồng, nếu có bất kỳ vấn đề nào phát sinh hai bên cùng trao đổi, giả quyết trrn tinh thần hợp tác giúp đỡ lẫn nhau

5.3 Nêu có tranh chấp xảy ra thì mọi vấn đề không thống nhất sẽ được giải quýêt theo quy định của pháp luật

5.5 Hợp đồng này gồm 5 trang ,được lập thành 2 bản có giá trị pháp lý như nhau Mỗi bên giữ 1 bản và có hiệu lực từ ngày ký.

Hà Nội,Ngày 27 Tháng 10 Năm 2009 ĐẠI DIỆN BÊN A ĐẠI DIỆN BÊN B

(Ký tên, đóng dấu) (Ký tên, đóng dấu)

PHỤ LỤC 1: CÁC MODULE TÍNH NĂNG VÀ YÊU CẦU KỸ THUẬT

PHẦN MỀM QUẢN LÝ KHO HÀNG

1 Thiết kế giao diện chính

3 Module cập nhật danh mục

- Cập nhật danh mục 01 module 500.000 500.000 0%

- Báo cáo xuất nhập tồn

Bằng chữ: Năm triệu đồng ã Miễn phớ bảo trỡ vĩnh viễn ã Miễn phớ đào tạo, hướng dẫn vận hành, quản lý phần mềm

Thanh toán hoá đơn Kiểm tra hàng hóa

Xác định kết quả kinh doanh

Quy trình xác định yêu cầu

Lập kế hoạch

STT Công Việc Nhân lực

1 Xác định yêu cầu người sử dụng 2 2 4

3 Lập mô hình hệ thống 2 2 4

Khảo sát và xác định yêu cầu người sử dụng

3.2.1 Sơ đồ tổ chức của chi nhánh công ty ván gỗ ép MDF Gia Lai

3.2.2 Yêu cầu chức năng nghiệp vụ a Kho

 Quản lý hàng tồn b Phòng kế toán

Yêu cầu các báo cáo thường kì về hàng hóa trong kho.

3.2.3 Yêu cầu chức năng hệ thống

- Phân quyền: Với mỗi chức danh khác nhau thì các chức năng của phần mềm có giới hạn khác nhau Quyền admin thì lớn hơn quyền user

- Cấu hình thiết bị: Máy cá nhân phải được trang bị cấu hình phần cứng mạnh, chạy hệ điều hành Windows XP trở lên.

3.2.4 Yêu cầu phi chức năng

- Giao diện trực quan, thân thiện, dễ sử dụng.

- Khả năng quản lý linh hoạt: Cho phép thêm mới, sửa chữa, cập nhật nhanh chóng, chính xác.

- Khả năng tìm kiếm đa khoá: Sử dụng nhiều khoá để có thể tìm kiếm chính xác nhất.

- Khả năng báo cáo tuỳ biến: Cho phép người dùng lựa chọn các tiêu thức theo ý mình để in báo cáo

- Tự động hoá các công việc diễn ra hàng ngày: như phân bổ chuyến đi, cập nhật xe về bến, nhắc nhở bảo dưỡng, sửa chữa.

Phân tích nghiệp vụ chuyên sâu

• Bước 1 : Phòng kế toán chuyển đơn đặt hàng và bảng kê xuống kho ( đây là đơn đặt hàng của chi nhánh gửi vào trong tổng công ty MDF Gia Lai có ghi rõ chủng loại và khối lượng gỗ cần đặt )

QUẢN LÝ KHO GỖ CHI NHÁNH CÔNG TY MDF GIA LAI

Quản lý hàng nhập Quản lý hàng xuất Lập báo cáo

Nhận bảng kê từ P.KT

Nhận bảng kê từ P.KT

Gửi phiếu nhập kho lên P.KT

Viết phiếu xuất kho Lưu phiếu xuất kho Gửi phiếu xuất kho lên Khách hàng

Giao hàng Gửi phiếu xuất kho lên P.KT

Lập báo cáo định kỳ

Lập báo cáo theo yêu cầu

• Bước 2 : Kho kiểm kê hàng theo bảng kê, kiểm tra số lượng và chất lượng của ván sau đó ghi xác nhận giao nhận hàng vào phần dưới của bảng kê

• Bước 3 : Viết phiếu nhập kho

• Bước 1 : Kho nhận hóa đơn và bảng kê từ phòng kế toán

• Bước 2 : Kho viết phiếu xuất kho : phiếu này gồm có 3 liên : 1 gửi lên phòng kế toán, 1 do kho giữ, 1 đưa cho khách hàng

• Bước 3 : Khách hàng kiểm tra hàng theo đúng bảng kê sau đó ghi xác nhận giao nhận hàng vào phần dưới bảng kê

• Bước 4 : Kho chuyển phiếu xuất kho lên cho phòng kế toán

Mô tả hoạt động hệ thống

Quản Lý Kho Gỗ Chi Nhánh Công Ty MDF GIA LAI

Khách Hàng Tổng Công Ty MDF GIA LAI

Công Nhân Viên Trong Kho Giám Đốc Chi Nhánh

CSDL Công Ty Chi Nhánh

3.4.2.1 Sơ đồ mức ngữ cảnh

3.4.3.1 Sơ đồ DFD mức 1 Quản lý phiếu nhập.

3.4.3.2 Sơ đồ DFD mức 1 Quản lý phiếu xuất.

3.4.3.3 Sơ đồ DFD mức 1 Báo cáo

Báo cáo quy trình xác định yêu cầu

Ta thu được các bản phân tích nghiệp vụ, phân tích yêu cầu của người sử dụng và tổng quan về hoạt động của hệ thống cũng như các sơ đồ BFD, DFD là đầu vào của quy trình phân tích thiết kế.

Quy trình phân tích thiết kế

Lập kế hoạch thiết kế

STT Công việc Nhân lực

Thiết kế dữ liệu

4.3.1 Sơ đồ cấu trúc dữ liệu DSD

4.3.2 Thiết kế các bảng CSDL

Kiểu Dữ LiệuĐộ Rộng Diễn Giải

1 User Text 24 Người Đăng Nhập

4 Quyen Text 30 Quyền Hạn Người Đăng nhập

STT Tên Trường Kiểu Dữ Liệu Độ Rộng Diễn Giải

1 MaNV Text 10 Mã Nhân Viên

2 TenNV Text 25 Tên Nhân Viên

4 CMTND Number 12 Chứng minh thư nhân dân

7 SDT Number 20 Số Điện Thoại

STT Tên Trường Kiểu Dữ Liệu Độ Rộng Diễn Giải

1 MaKH Text 10 Mã Khách Hàng

2 TenKH Text 25 Tên Khách Hàng

4 SDT Number 20 Số điện thoại

7 MaSoThue Number 10 Mã số thuế

STT Tên Trường Kiểu Dữ Liệu Độ Rộng Diễn Giải

1 MaMH Text 10 Mã Mặt Hàng

2 TenMH Text 25 Tên Mặt Hàng

3 DVT Text 10 Đơn vị tính

STT Tên Trường Kiểu Dữ Liệu Độ Rộng Diễn Giải

1 MaPNK Text 10 Mã Phiếu Nhập

2 LyDoNhap Text 5 Lý Do Nhập

3 MaNV Text 7 Mã Nhân Viên

4.3.2.7 Bảng phiếu nhập kho chi tiết

STT Tên Trường Kiểu Dữ Liệu Độ RộngDiễn Giải

1 MaPNKCT Text 10 Mã Phiếu Nhập Kho

2 MaPNK Text 10 Mã Phiếu Nhập Kho

3 MaMH Text 10 Mã Mặt Hàng

4 TenMH Text 50 Tên Mặt Hàng

5 DVT Text 10 Đơn Vị Tính

6 SLNhapYC Number 4 Số Lượng Nhập Theo

STT Tên Trường Kiểu Dữ

Liệu Độ Rộng Diễn Giải

1 MaPXK Text 10 Mã Phiếu Nhập

2 MaKH Text 10 Mã Khách Hàng

3 LiDoXuat Text 50 Lý Do Xuất

4 MaNV Text 10 Mã Nhân Viên

6 NgayThang Date dd/mm/yyyy Ngày Tháng

7 SLNhapTT Number 4 Số Lượng Nhập Thực

4.3.2.8 Bảng phiếu xuất kho chi tiết

STT Tên Trường Kiểu Dữ Liệu Độ RộngDiễn Giải

1 MaPXKCT Text 10 Mã Phiếu Xuất Kho

2 MaPXK Text 10 Mã Phiếu Xuất Kho

3 MaMH Text 10 Mã Mặt Hàng

4 TenMH Text 50 Tên Mặt Hàng

5 DVT Text 10 Đơn Vị Tính

6 SLXuatYC Number 4 Số Lượng Xuất Theo

7 SLXuatTT Number 4 Số Lượng Xuất Thực

Thiết kế giải thuật

4.4.2 Giải thuật cập nhật dữ liệu

4.4.3 Giải thuật xuất báo cáo

Thiết kế giao diện

4.5.1 Giao diện của chương trình

4.5.3 Các menu của chương trình

- Menu cập nhật danh mục

- Menu Quản lý báo cáo

4.5.4 Form quản lý người dùng mới

4.5.6 Form danh mục khách hàng

4.5.6 Form danh mục mặt hàng

4.5.7 Form danh mục nhân viên

4.5.8 Form quản lý danh sách phiếu nhập

4.5.9 Form quản lý danh sách phiếu xuất

4.5.12 Form báo cáo nhập kho

4.5.13 Form báo cáo xuất kho

4.5.14 Form báo cáo xuất nhập tồn

Quy trình lập trình

Lập kế hoạch lập trình

STT Công việc Nhân lực

- Sử dụng ngôn ngữ Visual Basic 6.0 và hệ quản trị cơ sở dữ liệu Microsoft Access 2003.

- Sử dụng phần mềm Crystal Report 8.5 để thiết kế báo cáo.

- Sử dụng phần mềm Help and Menual 11 để tạo Help File.

- Sử dụng phần mềm InstallShield 12 để tạo bộ cài đặt.

Lập trình cập nhật danh mục

Đoạn code cho phép cập nhật danh mục chính xác Có bẫy nhiều lỗi và đảm bảo độ an toàn của thông tin nhập liệu.

- Với giao diện như sau

- Code của form mặt hàng

Dim bStatus As Boolean, bAdd As Boolean Dim sFilter As String

Private Sub cmdCancel_Click() bStatus = False

Grid.Enabled = True cmdFilter.Default = True cmdThoat.Cancel = True

Private Sub cmdFilter_Click() sFilter = ""

Case 1: sFilter = " WHERE MaMH LIKE '%" & txtFilter.Text & "%'" Case 2: sFilter = " WHERE TenMH LIKE '" & txtFilter.Text & "%'" Case 3: sFilter = " WHERE DVT LIKE '%" & txtFilter.Text & "%'" Case 4: sFilter = " WHERE GhiChu LIKE '%" & txtFilter.Text & "%'" End Select

MsgBox "Hay nhap ten mat hang", vbOKOnly, "Chu y"

MsgBox "Hay nhap don vi tinh", vbOKOnly, "Chu y"

MsgBox "Hay nhap ghi chu", vbOKOnly, "Chu y"

If bAdd Then Them Else: Sua bStatus = False

Private Sub cmdSua_Click() bAdd = False bStatus = True

Grid.Enabled = True cmdSave.Default = True cmdCancel.Cancel = True txtTen.SetFocus

Private Sub cmdThem_Click() bAdd = True bStatus = True

Grid.Enabled = False cmdSave.Default = True cmdCancel.Cancel = True txtTen.SetFocus

CenterMDI frmmain, Me cboFilter.AddItem "Tất cả", 0 cboFilter.AddItem "Mã mặt hàng", 1 cboFilter.AddItem "Tên mặt hàng", 2 cboFilter.AddItem "Đơn vị tính", 3 cboFilter.AddItem "Ghi chó", 4 cboFilter.ListIndex = 0 txtID.Locked = True bStatus = False

Private Sub loadGrid(Optional sFil As String = "")

Grid.FormatString = "STT" & "|Mã mặt hàng " & Space(0) & "|Tên mặt hàng" & Space(26) & "|Đơn vị tính" & Space(0) & "|Ghi chú" & Space(40)

Do While Not rs.EOF

Grid.AddItem Grid.Rows & vbTab & rs!MaMH & vbTab & rs!TenMH & vbTab & rs!DVT & vbTab & rs!GhiChu, Grid.Rows rs.MoveNext

If sFil = "" Then cboFilter.ListIndex = 0

Private Sub Reset_Form(clear As Boolean)

If clear Then txtID.Text = "" txtTen.Text = "" txtDVT.Text = "" txtGhiChu.Text = ""

End If txtTen.Locked = Not bStatus txtDVT.Locked = Not bStatus txtGhiChu.Locked = Not bStatus cmdThem.Enabled = Not bStatus cmdSua.Enabled = Not bStatus cmdXoa.Enabled = Not bStatus cmdSave.Enabled = bStatus cmdCancel.Enabled = bStatus

Private Sub Grid_SelChange() txtID.Text = Grid.TextMatrix(Grid.Row, 1) txtTen.Text = Grid.TextMatrix(Grid.Row, 2) txtDVT.Text = Grid.TextMatrix(Grid.Row, 3) txtGhiChu.Text = Grid.TextMatrix(Grid.Row, 4)

OpenDB "select * from MatHang" txtID.Text = CreateID("MaMH", rs, "MH0001") rs.AddNew rs!MaMH = txtID.Text rs!TenMH = txtTen.Text rs!GhiChu = txtGhiChu.Text rs!DVT = txtDVT.Text rs.Update

If txtID.Text = "" Then Exit Sub

OpenDB "select * from MatHang where MaMH='" & txtID.Text & "'" 'Update rs!TenMH = txtTen.Text rs!GhiChu = txtGhiChu.Text rs!DVT = txtDVT.Text rs.Update

Reset_Form True loadGrid sFilter

If txtID.Text = "" Then Exit Sub

If MsgBox("Bạn có muốn xóa mặt hàng có MaMH = " & txtID.Text & " không?.", vbYesNo + vbCritical, "Thông báo!") = vbYes Then

OpenDB "select * from MatHang where MaMH='" & txtID.Text & "'"

5.3 Lập trình form phiếu nhập Đoạn code cho phép cập nhật phiếu nhập Đáp ứng được yêu cầu cập nhật một phiếu nhập mới hoặc sửa phiếu đã nhập

- Với giao diện như sau

- Code của form phiếu nhập.

Dim bStatus As Boolean, bAdd As Boolean

Dim rsnv As New ADODB.Recordset

Dim rshang As New ADODB.Recordset

Dim rs1 As New ADODB.Recordset

OpenDB "select * from MatHang where MaMH='" & cbo1.Text & "'" txttenMH.Text = rs.Fields("TenMH") txtdvt.Text = rs.Fields("DVT")

OpenDB "select * from MatHang where MaMH='" & cbo1.Text & "'" txttenMH.Text = rs.Fields("TenMH") txtdvt.Text = rs.Fields("DVT")

If cbo2.Text "" Then rs1.Open " SELECT * FROM NhanVien WHERE MaNV='" & cbo2.Text & "' ", cn, adOpenDynamic, adLockOptimistic txttennv.Text = rs1.Fields("TenNV") rs1.Close

If cbo2.Text "" Then rs1.Open " SELECT * FROM NhanVien WHERE MaNV='" & cbo2.Text & "' ", cn, adOpenDynamic, adLockOptimistic txttennv.Text = rs1.Fields("TenNV") rs1.Close

Private Sub cmdCancel_Click() bStatus = False

' cmdFilter.Default = True cmdThoat.Cancel = True

MsgBox " Bạn cần nhập S/L yêu cầu", vbExclamation, "Chú ý"

MsgBox " Bạn cần nhập S/L thực tế", vbExclamation, "Chú ý"

MsgBox " Bạn cần nhập đơn giá", vbExclamation, "Chú ý"

MsgBox " Bạn cần nhập ngày tháng", vbExclamation, "Chú ý"

MsgBox " Bạn cần chọn nhân viên ", vbExclamation, "Chú ý"

If bAdd Then Them Else: Sua bStatus = False

OpenDB "Select sum(ThanhTien) from PNKchitiet where MaPNK='" & txtID.Text & "'" txttongtien.Text = rs.Fields(0)

OpenDB "select * from PhieuNhap where MaPNK='" & txtID.Text & "'" rs!tongtien = txttongtien.Text rs.Update

Private Sub cmdSua_Click() bAdd = False bStatus = True cbo2.Locked = True cbo1.Locked = True txtngaythang.Locked = True txtlido.Locked = True

Grid.Enabled = True cmdSave.Default = True cmdCancel.Cancel = True

Private Sub cmdThem_Click() bAdd = True bStatus = True

Reset_Form True cbo1.Locked = False

Grid.Enabled = False cmdSave.Default = True cmdCancel.Cancel = True

Private Sub cmdThoat_Click() frmlistphieunhap.Show

Unload Me rsnv.Close rshang.Close

If cbo1.Text = "" Then Exit Sub

If MsgBox("Xoa mat hang co MaMH = " & cbo1.Text & " khong?.", vbYesNo + vbCritical, "Xac nhan xoa!") = vbYes Then

OpenDB "select * from PNKchitiet where MaMH='" & cbo1.Text & "' and MaPNK='" & txtID.Text & "'"

OpenDB "select * from BieuGhi where MaMH='" & cbo1.Text & "' and MaPNK='" & txtID.Text & "'" rs.Delete

End If tongtien sFilter = " WHERE MaPNK = '" & txtID.Text & "'" loadGrid sFilter

Private Sub Form_Activate() sFilter = " WHERE MaPNK = '" & txtID.Text & "'" loadGrid sFilter

OpenDB "select * from PNKchitiet" txtID.Text = CreateID("MaPNK", rs, "PNK0001")

Reset_Form True rsnv.CursorLocation = adUseClient rsnv.Open "Select * from NhanVien", cn, adOpenDynamic, adLockOptimistic rshang.CursorLocation = adUseClient rshang.Open "select * from MatHang", cn, adOpenDynamic, adLockOptimistic gandulieu txttongtien.Locked = True txtthanhtien.Locked = True txtID.Locked = True txttennv.Locked = True txtdvt.Locked = True

Private Sub loadGrid(Optional sFil As String = "")

Grid.FormatString = "STT" & "|Mã mặt hàng " & Space(0) & "|Tên mặt hàng" & Space(9) & "|DVT" & Space(2) & "|SL yêu cầu" & Space(1) & "|SL thực tế" & Space(2) & "|Đơn giá" & Space(7) & "|Thành tiền" & Space(15)

Do While Not rs.EOF

Grid.AddItem Grid.Rows & vbTab & rs!MaMH & vbTab & rs!TenMH & vbTab & rs!DVT & vbTab & rs!SLnhapYC & vbTab & rs!SLnhapTT & vbTab & rs!DonGia & vbTab & rs!ThanhTien, Grid.Rows rs.MoveNext

Private Sub Reset_Form(clear As Boolean)

If clear Then cbo1.Text = "" txttenMH.Text = "" txtdvt.Text = "" txtnhapyc.Text = "" txtnhaptt.Text = "" txtdongia.Text = "" txtthanhtien.Text = ""

End If txttenMH.Locked = Not bStatus txtdvt.Locked = Not bStatus txtnhapyc.Locked = Not bStatus txtnhaptt.Locked = Not bStatus txtdongia.Locked = Not bStatus txtthanhtien.Locked = Not bStatus cmdThem.Enabled = Not bStatus cmdSua.Enabled = Not bStatus cmdXoa.Enabled = Not bStatus cmdSave.Enabled = bStatus cmdCancel.Enabled = bStatus

Private Sub Grid_SelChange() cbo1.Text = Grid.TextMatrix(Grid.Row, 1) txttenMH.Text = Grid.TextMatrix(Grid.Row, 2) txtdvt.Text = Grid.TextMatrix(Grid.Row, 3) txtnhapyc.Text = Grid.TextMatrix(Grid.Row, 4) txtnhaptt.Text = Grid.TextMatrix(Grid.Row, 5) txtdongia.Text = Grid.TextMatrix(Grid.Row, 6) txtthanhtien.Text = Grid.TextMatrix(Grid.Row, 7)

Do While Not rs.EOF

If rs!MaPNK = txtID.Text Then

Loop rs.AddNew rs!MaPNK = txtID.Text rs!Ngaythang = txtngaythang.Text rs!LiDoNhap = txtlido.Text rs!MaNV = cbo2.Text

' rs!TongTien = txttongtien.Text rs.Update

OpenDB "select * from PNKchitiet where MaPNK='" & txtID.Text & "'"

Do While Not rs.EOF

If rs!MaMH = cbo1.Text Then rs!SLnhapYC = rs.Fields(4).Value + txtnhapyc.Text rs!SLnhapTT = rs.Fields(5).Value + txtnhaptt.Text rs!ThanhTien = rs.Fields(7).Value + txtthanhtien.Text rs.Update

' Cap nhat vao bieu ghi

OpenDB "select * from BieuGhi where MaPNK='" & txtID.Text & "' and MaMH='" & cbo1.Text & "'" rs!SLnhapTT = rs.Fields(7).Value + txtnhaptt.Text rs!ThanhTien = rs.Fields(9).Value + txtthanhtien.Text rs.Update

Reset_Form True sFilter = " WHERE MaPNK = '" & txtID.Text & "'" loadGrid sFilter

Loop rs.AddNew rs!MaPNK = txtID.Text rs!MaMH = cbo1.Text rs!TenMH = txttenMH.Text rs!DVT = txtdvt.Text rs!SLnhapYC = txtnhapyc.Text rs!SLnhapTT = txtnhaptt.Text rs!DonGia = txtdongia.Text rs!ThanhTien = txtthanhtien.Text rs.Update

' update vao truong ban ghi

OpenDB " select * from BieuGhi " rs.AddNew rs!Nghiepvu = "NK" rs!MaPNK = txtID.Text

'rs!MaPXK = "0" rs!Ngaythang = txtngaythang.Text rs!MaMH = cbo1.Text rs!TenMH = txttenMH.Text rs!SLnhapTT = txtnhaptt.Text rs!ThanhTien = txtthanhtien.Text rs.Update

Reset_Form True sFilter = " WHERE MaPNK = '" & txtID.Text & "'" loadGrid sFilter

If cbo1.Text = "" Then Exit Sub

OpenDB "select * from PNKchitiet where MaMH='" & cbo1.Text & "'" 'Update rs!MaMH = cbo1.Text rs!TenMH = txttenMH.Text rs!DVT = txtdvt.Text rs!SLnhapYC = txtnhapyc.Text rs!SLnhapTT = txtnhaptt.Text rs!DonGia = txtdongia.Text rs!ThanhTien = txtthanhtien.Text rs.Update

OpenDB "select * from BieuGhi where MaPNK='" & txtID.Text & "' and MaMH='" & cbo1.Text & "'" rs!SLnhapTT = txtnhaptt.Text rs!ThanhTien = txtthanhtien.Text rs.Update

Reset_Form True sFilter = " WHERE MaPNK = '" & txtID.Text & "'" loadGrid sFilter

OpenDB "Select sum(ThanhTien) from PNKchitiet where MaPNK = '" & txtID.Text & "' "

'If rs.EOF = rs.BOF Then

'Else txttongtien.Text = rs.Fields(0)

OpenDB "select * from PhieuNhap where MaPNK='" & txtID.Text & "'" rs!tongtien = txttongtien.Text rs.Update

'Gan du lieu cho dcbMahang

Do While Not (.EOF Or BOF) cbo1.AddItem (.Fields(0).Value)

' Gan du lieu cho dcbManv

Do While Not (.EOF Or BOF) cbo2.AddItem (.Fields(0).Value)

If txtdongia.Text = "" Or txtnhaptt.Text = "" Then txtthanhtien.Text = ""

Else txtthanhtien.Text = txtdongia.Text * txtnhaptt.Text

Private Sub txtdongia_KeyPress(KeyAscii As Integer)

If txtdongia.Text = "" Or txtnhaptt.Text = "" Then txtthanhtien.Text = ""

Else txtthanhtien.Text = txtdongia.Text * txtnhaptt.Text

Private Sub txtnhaptt_KeyPress(KeyAscii As Integer)

Private Sub txtnhapyc_KeyPress(KeyAscii As Integer)

Private Sub txtngaythang_Validate(Cancel As Boolean)

Dim d As Variant d = txtngaythang.Text

MsgBox "Bạn phải nhập vào ngày hợp lệ" & _

" (vd: 05/06/2009) ", vbCritical, " Nhập ngày hoá đơn"

Lập trình xuất báo cáo

- Giao diện form báo cáo.

Dim rsmpnk As New ADODB.Recordset

Dim rsmh As New ADODB.Recordset

Dim rs1 As New ADODB.Recordset

'Dim rs2 As New ADODB.Recordset

OpenDB "select * from MatHang where MaMH='" & cbo1.Text & "'" txttenmh.Text = rs.Fields("TenMH")

OpenDB "select * from MatHang where MaMH='" & cbo1.Text & "'" txttenmh.Text = rs.Fields("TenMH")

Text11.Text = rs.Fields("MaMH")

OpenDB "select * from PhieuNhap where MaPNK='" & cbo2.Text & "'" Text12.Text = rs.Fields("MaPNK")

OpenDB "select * from PhieuNhap where MaPNK='" & cbo2.Text & "'" Text12.Text = rs.Fields("MaPNK")

Dim rs2 As New ADODB.Recordset

If (opt1.Value = False) And (opt2.Value = False) Then

MsgBox "Hãy chọn kiểu báo cao", vbOKOnly, "Chu Y"

If (opt2.Value = True) And (opt1.Value = False) Then

If (txttungay.Text = "") Or (txtdenngay.Text = "") Then

MsgBox "Hay chon ngay thang", vbOKOnly, "Chu y"

MsgBox "Hay chon mat hang", vbOKOnly, "Chu y"

If (DateValue(txttungay.Text) > DateValue(txtdenngay.Text)) Then

MsgBox "Bạn chọn khoảng thời gian không chính xác ", vbOKOnly, "Thông báo!"

End If rs2.Open "select Ngaythang,MaPNK,SLNhapTT,MaMH From BieuGhi where Nghiepvu = 'NK' and MaMH= '" & Text11.Text & "' and Ngaythang between Datevalue('" & txttungay.Text & "') and Datevalue('" & txtdenngay.Text & "')", cn, adOpenDynamic, adLockOptimistic cr.ReportFileName = App.Path & "\Report\rp_bcnk1.rpt" cr.SetTablePrivateData 0, 3, rs2 cr.Formulas(1) = "txttungay= '" & txttungay.Text & "'" cr.Formulas(2) = "txtdenngay= '" & txtdenngay.Text & "'" cr.Formulas(3) = "mamh= '" & cbo1.Text & "'" cr.Formulas(4) = "tenmh= '" & txttenmh.Text & "'" cr.WindowState = crptMaximized cr.PrintReport rs2.Close cbo1.Text = "" txttenmh.Text = ""

If (opt1.Value = True) And (opt2.Value = False) Then

If (DateValue(txttungay.Text) > DateValue(txtdenngay.Text)) Then

MsgBox "Bạn chọn khoảng thời gian không chính xác ", vbOKOnly, "Thông báo!"

If (txttungay.Text = "") Or (txtdenngay.Text = "") Then

MsgBox "Hay chon ngay thang", vbOKOnly, "Chu y"

'Dim rs1 As New ADODB.Recordset strSQL = " select Ngaythang,MaPNK,MaMH,TenMH,SLNhapTT From BieuGhi where Nghiepvu = 'NK' and Ngaythang between Datevalue('" & txttungay.Text &

"') and Datevalue('" & txtdenngay.Text & "')" rs1.Open strSQL, cn, adOpenDynamic, adLockOptimistic cr1.ReportFileName = App.Path & "\Report\rp_bcnk.rpt" cr1.SetTablePrivateData 0, 3, rs1 cr1.Formulas(1) = "txttungay= '" & txttungay.Text & "'" cr1.Formulas(2) = "txtdenngay= '" & txtdenngay.Text & "'" cr1.WindowState = crptMaximized cr1.PrintReport rs1.Close

Calendar2.Value = Date rsmh.CursorLocation = adUseClient rsmh.Open "select * from MatHang", cn, adOpenDynamic, adLockOptimistic gandulieu

Label2.Visible = False cbo1.Visible = False txttenmh.Visible = False

'Gan du lieu cho dcbMahang

Do While Not (.EOF Or BOF) cbo1.AddItem (.Fields(0).Value)

Private Sub Form_Unload(Cancel As Integer)

Private Sub Image1_Click(Index As Integer)

If Not IsNull(cboOriginator) Then

Private Sub Image2_Click(Index As Integer)

If Not IsNull(cboOriginator) Then

Private Sub Calendar1_Click() txttungay.Text = Format(Calendar1.Value, "dd/mm/yyyy") Calendar1.Visible = False

Private Sub Calendar2_Click() txtdenngay.Text = Format(Calendar2.Value, "dd/mm/yyyy") Calendar2.Visible = False

If opt2.Value = True Then

Label2.Visible = True cbo1.Visible = True txttenmh.Visible = True

If opt1.Value = True Then

Label2.Visible = False cbo1.Visible = False txttenmh.Visible = False

Quy trình Test

Lập kế hoạch Test

STT Công việc Nhân lực

Lập kịch bản Test

Test - case 1 Kiểm tra tính bảo mật của hệ thống

Test - case 2 Kiểm tra chức năng Quản lý User

Tạo User mới Thay đổi tài khoản Test - case 3 Kiểm tra chức năng cập nhật danh mục

Thêm, sửa, xoá, duyệt các bản ghi Chức năng tìm kiếm để sửa chữa Chức năng hiện dữ liệu trên đường lưới Test - case 4 Kiểm tra chức năng Danh sách phiếu nhập

Test - case 5 Kiểm tra chức năng Danh sách phiếu xuất

Test - case 6 Kiểm tra chức năng tạo báo cáo đa năng

Tạo báo cáo theo ý người dùng - Lựa chọn trường lọc báo cáoTest - case 7 Kiểm tra chức năng trợ giúp – hướng dẫn sử dụng

Nội dung Test

6.3.1 Test - case 1 Kiểm tra tính bảo mật hệ thống

Mục đích: Kiểm tra tính bảo mật hệ thống

Bước 1: Khởi động chương trình và màn hình hỏi mật khẩu hiện ra

Bước 2: Nhập không chính xác tên đăng nhập và mật khẩu.

Bước 3: Dữ liệu Demo có tên đăng nhập tuananh pass 1 Quyền admin

Bước 4: Đăng nhập lại với tên đăng nhập tuananh pass 123 Quyền admin Kết quả dự kiến : Tính bảo mật tốt

Kết quả thực tế: Tính bảo mật tốt

Bước 1: Khởi động chương trình và màn hình hỏi mật khẩu hiện ra.Nhập mật khảu sai và hiện ra thông báo

Bước2: Đăng nhập với user và mật khẩu chính xác

6.3.2 Test - case 2 Kiểm tra chức năng Quản lý User

Mục đích: Kiểm tra chức năng Quản lý User

- Bước 2: Thay đổi mật khẩu

- Bước 3: Xem danh mục User

Kết quả dự kiến : Các chức năng hoạt động tốt

Kết quả thực tế: Các chức năng hoạt động tốt

Bước 1 tạo tài khoản mới “NEU” với quyền quản trị.

Bước 2: Thay đổi mật khẩu cho tài khoản NEU

Xác nhận thay đổi mật khẩu:

6.3.3 Test - case 3 Kiểm tra chức năng cập nhật danh mục

Mục đích : Kiểm tra chức năng cập nhật danh mục

Bước 1: Thêm mới một danh mục

Bước 2: Sửa một danh mục

Bước 3: Xoá một danh mục

Bước 4: Tìm kiếm để sửa một danh mục

Kết quả dự kiến : Các chức năng hoạt động tốt

Kết quả thực tế: Các chức năng hoạt động tố

Bước 1: Thêm mới một danh mục

Bước 2: Sửa một danh mục

Cập nhất thông tin mặt hàng

Cập nhật xong ấn nút lưu

Bước 3: Xoá một danh mục

- Hiện thị thông báo có xóa mặt hàng không

Bước 4: Tìm kiếm một danh mục

-Gõ kí tự cần tìm:

6.3.4 Test - case 4 Kiểm tra danh sách phiếu nhập

6.3.5 Test - case 5 Kiểm tra danh sách phiếu xuất

6.3.6 Test - case 6 Kiểm tra tạo báo cáo

Bước 1: Chọn các tham số báo cáo

Kết quả in báo cáo:

6.3.7 Test - case 7 Kiểm tra trợ giúp

Tổng kết quy trình Test

Sau khi hoàn thành các kịch bản Test, chương trình đã chạy theo đúng yêu cầu đặt ra Có thể chuyển sang công đoạn tiếp theo

Lập kế hoạch

STT Công việc Nhân lực

2 Cài đặt và vận hành 1 1 1

Lập giải pháp

Phần mềm được viết bằng ngôn ngữ Visual Basic sẽ được đóng gói ra file

*.exe để chạy Phần mềm được đóng gói sẽ gồm 1 đĩa CD bao gồm code và các file để chạy chương trình.

Công ty MDF Gia Lai sẽ cho người hướng dẫn nhân viên phòng quản lý kho cài đặt phần mềm cũng như đào tạo người sử dụng.

Sau khi cài đặt, phần mềm sẽ được bảo trì miễn phí cũng như sửa chữa phần mềm nếu có sự cố xảy ra cho công ty trong vòng 6 tháng tiếp theo.

Cài đặt và vận hành

+ Địa điểm: Phòng Quản lý kho công ty MDF Gia Lai

+ Thời gian cài đặt: 9h ngày 15/11/2009

+ Số máy được cài: 1 máy.

Đào tạo sử dụng

7.4.1 Cung cấp sách hướng dẫn sử dụng:

Hướng dẫn sử dụng: Phần mềm bao gồm các chức năng:

+ Đăng nhập hệ thống: Để vào được phần mềm, người dung cần đăng ký tài khoản và mật khẩu.

+ Chỉ người quản lý mới có quyền tạo thay đổi lưu xoá danh mục tài khoản và mật khẩu của người dùng.

+ Sau khi đăng nhập, nhân viên kho có thể cập nhật, sửa, lưu, thay đổi, và xoá các danh mục trong các phân hệ của chương trình.

+ Nhân viên quản lý kho có thể lên báo cáo nhờ sự hỗ trợ của phần mềm để báo cáo với cấp trên.

7.4.2 Đào tạo người sử dụng:

+ Sáng 20/11/2009 đào tạo cán bộ kỹ thuật cách cài đặt và xử lý những lỗi nhỏ có thể phát sinh Sau đó sẽ đào tạo cán bộ quản lý về cách kiểm soát, quản trị và sử dụng phần mềm.

+ Chiều 20/11/2009 sẽ đào tạo nhân viên phòng quản lý kho với các chức năng.

Báo cáo triển khai

Phần mềm được cài đặt tại công ty đã chạy tốt Người sử dụng đã nắm được cách sử dụng phần mềm Cán bộ triển khai và đại diện công ty ký kết biên bản triển khai với các nội dung sau đây:

CỘNG HOÀ XÃ HỘI CHỦ NGHĨA VIỆT NAM Độc lập - Tự do - Hạnh phúc

Chi nhánh công ty ván gỗ ép MDF Gia Lai (gọi tắt là “Bên A”) Địa chỉ : 32 – Đại Từ - Đại Kim – Hà Nội Điện thoại : 04.35400826

Người đại diện : Đinh Ngọc Xuân

Chức vụ : Giám đốc chi nhánh

Nhóm 3 Tin học 48 ( gọi tắt là “Bên B” ) Địa chỉ : 207 Giải Phóng - Hai Bà Trưng - Hà Nội

Người đại diện : Đinh Gia Cương

Chức vụ : Cán bộ triển khai

Trong ngày15/11/2009, tôi (Bên B ) là cán bộ triển khai của nhóm 3 lớp tin học kinh tế 48, được cử xuống chi nhánh công ty ván gỗ MDF Gia Lai tiến hành cài đặt và chạy thử phần mềm Sau khi phần mềm đã chạy ổn định, chúng tôi tiến hành bàn giao phần mềm cho công ty (Bên A ) bao gồm 01 đĩa CD Ngày 15/11/2009, chúng tôi tiến hành đào tạo cho nhân viên của công ty về cách cài đặt cũng như cách sử dụng phần mềm Cả 2 bên đều đồng ý đã hoàn thành quá trình triển khai đúng tiến độ của dự án như đã thoả thuận trong hợp đồng. Đại diện bên A Đại diện bên B

Ngày đăng: 20/06/2023, 21:24

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

TÀI LIỆU LIÊN QUAN

w