Đề tài Phân tích thiết kế hệ thống thông tin quản lý thiết bị và lập lịch bảo trì

Tài liệu Đề tài Phân tích thiết kế hệ thống thông tin quản lý thiết bị và lập lịch bảo trì: 6 LỜI CẢM ƠN X W Chúng em xin chân thành cảm ơn Khoa Công Nghệ Thông Tin, trường Đại Học Kỹ Thuật Công Nghệ TP HCM đã tạo điều kiện cho chúng em thực hiện đề tài tốt nghiệp này. Chúng em xin chân thành cảm ơn Thầy Văn Như Bích đã tận tình hướng dẫn, chỉ dẫn chúng em trong suốt thời gian thực hiện đề tài này. Chúng em cũng xin chân thành cảm ơn quý Thầy Cô trong Khoa CNTT đã tận tình giảng dạy, trang bị cho chúng em những kiến thức cần thiết trong suốt quá trình học tập tại khoa. Chúng con lúc nào cũng luôn ghi nhớ công sinh thành dưỡng dục của Cha, Mẹ. Cha mẹ luôn là nguồn động viện to lớn đối với chúng con trong những lúc khó khăn nhất, luôn tiếp thêm nghị lực giúp chúng con vượt qua những thử thách trong cuộc sống. Trong suốt quá trình thực hiện đề tài, mặc dù đã cố gắng hết sức để hoàn thành nhưng chắc chắn luận văn không tránh khỏi những thiếu sót , kính mong Thầy Cô tận tình chỉ bảo. Một lần nữa, chúng em xin gởi lời cảm ơn chân thành đến tất cả...

pdf85 trang | Chia sẻ: haohao | Lượt xem: 1435 | Lượt tải: 0download
Bạn đang xem trước 20 trang mẫu tài liệu Đề tài Phân tích thiết kế hệ thống thông tin quản lý thiết bị và lập lịch bảo trì, để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên
6 LỜI CẢM ƠN X W Chúng em xin chân thành cảm ơn Khoa Công Nghệ Thông Tin, trường Đại Học Kỹ Thuật Công Nghệ TP HCM đã tạo điều kiện cho chúng em thực hiện đề tài tốt nghiệp này. Chúng em xin chân thành cảm ơn Thầy Văn Như Bích đã tận tình hướng dẫn, chỉ dẫn chúng em trong suốt thời gian thực hiện đề tài này. Chúng em cũng xin chân thành cảm ơn quý Thầy Cô trong Khoa CNTT đã tận tình giảng dạy, trang bị cho chúng em những kiến thức cần thiết trong suốt quá trình học tập tại khoa. Chúng con lúc nào cũng luôn ghi nhớ công sinh thành dưỡng dục của Cha, Mẹ. Cha mẹ luôn là nguồn động viện to lớn đối với chúng con trong những lúc khó khăn nhất, luôn tiếp thêm nghị lực giúp chúng con vượt qua những thử thách trong cuộc sống. Trong suốt quá trình thực hiện đề tài, mặc dù đã cố gắng hết sức để hoàn thành nhưng chắc chắn luận văn không tránh khỏi những thiếu sót , kính mong Thầy Cô tận tình chỉ bảo. Một lần nữa, chúng em xin gởi lời cảm ơn chân thành đến tất cả mọi người, những ai đã quan tâm, giúp đỡ và ủng hộ chúng em trong suốt thời gian qua. SVTH : Châu Minh Danh Lê Việt Đức 7 LỜI MỞ ĐẦU Ngày nay, khi xã hội không ngừng phát triển một cách chóng mặt cũng là lúc công nghệ thông tin ngày càng trở nên phổ biến và thật sự cần thiết. Nó đã tạo ra một diện mạo mới cho toàn xã hội và nhờ nó mà nền văn minh của nhân loại đã được đưa lên một tầm cao mới. Hiện nay, hầu hết các lĩnh vực đều có áp dụng công nghệ thông tin để có thể đạt được hiệu quả và năng suất cao nhất. Quản lý trang thiết bị và lập lịch bảo trì là một vấn đề tối quan trọng đối với các xí nghiệp, nhà máy vận hành sản xuất. Trong điều kiện kinh tế thị trường cạnh tranh đòi hỏi các nhà quản lý phải có thông tin chính xác, nhanh chóng, nắm bắt kịp thời tình trạng hoạt động của toàn bộ hệ thống trong nhà máy để có thể đưa ra những giải pháp hợp lý. Áp dụng công nghệ thông tin vào việc quản lý trang thiết bị và lập lịch bảo trì hợp lý sẽ góp phần tăng 20% năng suất và doanh thu của nhà máy, giảm 20% thời gian ngừng máy, tăng 10% tuổi thọ máy, giảm 5-15% tổng chi phí bảo trì. Điều tra tại nhiều nước trên thế giới cho thấy: Cứ 1 USD chi cho chương trình bảo trì giám sát sẽ tiết kiệm trung bình được 5 USD và từ 10 đến 20 USD nói riêng cho ngành nhựa. Những thiệt hại do ngừng máy vì hư hỏng trong quá trình sản xuất cũng không nhỏ. Tại Việt Nam, một giờ ngừng máy làm thiệt hại cho nhà máy điện, nhà máy cán thép, nhà máy làm lon nước giải khát, nhà máy xi măng, nhà máy giấy khoảng 8.000 - 10.000 USD; ở công ty Fujitsu Việt Nam, máy nén khí bị hỏng gây thiệt hại 82.000 USD, còn cánh khuấy máy trộn trong bể lắng hư gây thiệt hại đến 1.000.000 USD; tại một công ty sản xuất nguyên liệu nhựa, một giờ ngừng máy làm thiệt hại 75.000 USD và có lần công ty này phải ngừng hoạt động trong 14 ngày vào tháng 11 năm 2001. Tại Mỹ, vào năm 1999, những trục trặc về máy tính và phần mềm đã gây thiệt hại khoảng 100 tỉ USD cho các doanh nghiệp và một ngày bị mất điện ở vùng đông bắc trong tháng 8/2003 gây thiệt hại 30 tỉ USD. 8 Do những thiệt hại to lớn có thể xảy ra nếu hệ thống sản xuất của nhà máy bị ngưng trệ nên công tác bảo trì luôn được coi trọng. Nếu trước kia, bảo trì thường được hiểu chỉ là các công việc phục hồi, sửa chữa máy móc đã bị hư hỏng thì ngày nay, nhiệm vụ hàng đầu của bảo trì còn là cảnh báo và phòng tránh để máy móc không bị hư hỏng. Bảo trì tốt giúp doanh nghiệp nâng cao năng suất, tuổi thọ, khả năng sẵn sàng của máy móc; giảm chi phí sản xuất; đảm bảo chất lượng và uy tín với khách hàng. Trong nội dung nghiên cứu của luận văn này chỉ thu hẹp ở chức năng quản lý trang thiết bị và lên lịch bảo trì với các công việc kèm theo trong một bản báo cáo bảo trì định kỳ, không mở rộng ở tầm quản lý bảo trì. 9 MỤC LỤC Lời cảm ơn ................................................................................................6 Lời mở đầu................................................................................................7 CHƯƠNG I : TỔNG QUAN ...................................................................10 I. Đặt vấn đề ......................................................................................10 II. Nhiệm vụ của đồ án.......................................................................11 III. Cấu trúc của đồ án ........................................................................23 CHƯƠNG II : LÝ THUYẾT ..................................................................24 PHÂN TÍCH THIẾT KẾ HỆ THỐNG ..................................................24 I. Mô hình dữ liệu ở mức quan niệm ..............................................24 1. Mô hình quan niệm dữ liệu ERD ..............................................24 2. Mô tả các thực thể .....................................................................25 3. Mô tả các mối kết hợp ...............................................................30 4. Chuyển các thực thể kết hợp sang quan hệ ...............................31 II. Ràng buộc toàn vẹn và bảng tầm ảnh hưởng .............................33 1. Ràng buộc toàn vẹn trên một quan hệ........................................33 2. Ràng buộc liên bộ trên một lược đồ quan hệ .............................36 3. Ràng buộc liên thuộc tính, liên quan hệ.....................................39 III. Mô hình dòng dữ liệu (DFD) .......................................................44 CHƯƠNG III : GIẢI QUYẾT BÀI TOÁN ...........................................48 I. Bài toán lập lịch bảo trì ...............................................................48 II. Hướng giải quyết...........................................................................49 CHƯƠNG IV : KẾT QUẢ THỰC NGHIỆM .......................................50 I. Giao diện và chức năng của chương trình..................................50 II. Giới thiệu về công cụ thực hiện. ..................................................70 KẾT LUẬN ..............................................................................................89 TÀI LIỆU THAM KHẢO .......................................................................90 10 CHƯƠNG I : TỔNG QUAN I. Đặt vấn đề : Ngày nay, khi xã hội không ngừng phát triển một cách chóng mặt cũng là lúc công nghệ thông tin ngày càng trở nên phổ biến và thật sự cần thiết. Nó đã tạo ra một diện mạo mới cho toàn xã hội và nhờ nó mà nền văn minh của nhân loại đã được đưa lên một tầm cao mới. Hiện nay, hầu hết các lĩnh vực đều có áp dụng công nghệ thông tin để có thể đạt được hiệu quả và năng suất cao nhất. Quản lý trang thiết bị và lập lịch bảo trì là một vấn đề tối quan trọng đối với các xí nghiệp, nhà máy vận hành sản xuất. Trong điều kiện kinh tế thị trường cạnh tranh đòi hỏi các nhà quản lý phải có thông tin chính xác, nhanh chóng, nắm bắt kịp thời tình trạng hoạt động của toàn bộ hệ thống trong nhà máy để có thể đưa ra những giải pháp hợp lý. Áp dụng công nghệ thông tin vào việc quản lý trang thiết bị và lập lịch bảo trì hợp lý sẽ góp phần tăng 20% năng suất và doanh thu của nhà máy, giảm 20% thời gian ngừng máy, tăng 10% tuổi thọ máy, giảm 5-15% tổng chi phí bảo trì. Điều tra tại nhiều nước trên thế giới cho thấy: Cứ 1 USD chi cho chương trình bảo trì giám sát sẽ tiết kiệm trung bình được 5 USD và từ 10 đến 20 USD nói riêng cho ngành nhựa. Những thiệt hại do ngừng máy vì hư hỏng trong quá trình sản xuất cũng không nhỏ. Tại Việt Nam, một giờ ngừng máy làm thiệt hại cho nhà máy điện, nhà máy cán thép, nhà máy làm lon nước giải khát, nhà máy xi măng, nhà máy giấy khoảng 8.000 - 10.000 USD; ở công ty Fujitsu Việt Nam, máy nén khí bị hỏng gây thiệt hại 82.000 USD, còn cánh khuấy máy trộn trong bể lắng hư gây thiệt hại đến 1.000.000 USD; tại một công ty sản xuất nguyên liệu nhựa, một giờ ngừng máy làm thiệt hại 75.000 USD và có lần công ty này phải ngừng hoạt động trong 14 ngày vào tháng 11 năm 2001. Tại Mỹ, vào năm 1999, những trục trặc về máy tính và phần mềm đã gây thiệt hại khoảng 100 tỉ USD cho các doanh nghiệp và một ngày bị mất điện ở vùng đông bắc trong tháng 8/2003 gây thiệt hại 30 tỉ USD. 11 Do những thiệt hại to lớn có thể xảy ra nếu hệ thống sản xuất của nhà máy bị ngưng trệ nên công tác bảo trì luôn được coi trọng. Nếu trước kia, bảo trì thường được hiểu chỉ là các công việc phục hồi, sửa chữa máy móc đã bị hư hỏng thì ngày nay, nhiệm vụ hàng đầu của bảo trì còn là cảnh báo và phòng tránh để máy móc không bị hư hỏng. Bảo trì tốt giúp doanh nghiệp nâng cao năng suất, tuổi thọ, khả năng sẵn sàng của máy móc; giảm chi phí sản xuất; đảm bảo chất lượng và uy tín với khách hàng. Trong nội dung nghiên cứu của luận văn này chỉ thu hẹp ở chức năng quản lý trang thiết bị và lập lịch bảo trì , không mở rộng ở tầm quản lý bảo trì. II. Nhiệm vụ của đồ án : 1. Tổng quát về mô hình quản lý : Một nhà máy sản xuất có nhiều thiết bị hoạt động độc lập và không đồng đều nhau. Hàng tháng, Nhân viên nhà máy phải đi kiểm tra hoạt động cho từng máy để ghi nhận thời gian và lên lịch bảo trì cho từng thiết bị. Công việc này mất rất nhiều thời gian, công sức và nhân công. Vì thế nhà máy muốn tin học hóa lên lịch bảo trì hàng tháng cho các thiết bị, máy móc của nhà máy. Nhà máy có nhiều khu vực mỗi khu vực trong nhà máy có mã khu vực, tên khu vực. Theo từng khu vực trong nhà máy có các dây chuyền sản xuất, và tại một thời điểm một dây chuyền sản xuất của một khu vực không thể có mặt ở hai khu vực. Mỗi dây chuyền sản xuất sẽ có mã dây chuyền, tên dây chuyền và dây chuyền phải thuộc một khu vực nào đó. Chức năng ở mỗi dây chuyền đảm nhận một nhiệm vụ sản xuất đặt trưng nào đó. Tại một dây chuyền sản xuất sẽ gồm nhều thiết bị được kết hợp với nhau để sản xuất ra một mặt hang nào đó tùy theo nhiệm vụ của dây chuyền. Trong một chu kỳ sản xuất của công ty, một thiết bị của một dây chuyền không thể ở một dây chuyền khác. Mỗi thiết bị có một mã thiết bị, tên thiết bị, và dây chuyền chứa thiết bị đó. Thiết bị có thể được mua ở nhiều nhà cung cấp khác nhau và thông tin cho thiết bị lúc mua sẽ được nhà cung cấp cung cấp thông tin cho thiết bị như thời 12 gian tối đa hoạt động để cho ngừng máy và làm công tác bảo trì. Dựa vào những do thông tin nhà cung cấp, cấp cho thiết bị cần phải biết để kiểm tra thời gian chạy máy. Mỗi thiết bị sẽ có một thời gian chạy máy theo quy định của công tác bảo trì cho thiết bị. Thiết bi sẽ có một kiểu bảo trì (theo Giờ hay , tháng, năm tùy theo hoạt động ở mỗi công ty) . Cuối tuần nhân viên sẽ xem chỉ số đồng hồ và kiểm tra xem đã hoạt động đủ giờ chưa để lập lịch bảo trì( bảo trì theo giờ). Còn công việc bảo trì cho hàng tháng thì do những quy định chung trong công ty. Một thiết bị có thể có một hay nhiều cụm chi tiết cho thiết bị đó. Mỗi cụm chi tiết có mã cụm chi tiết, tên cụm chi tiết, và thuộc thiết bị nào. Một cụm chi tiết chỉ thuộc một thiết bị và không thể ở thiết bị khác cùng lúc. Các cụm chi tiết này tương ứng sẽ có các công việc theo quy định chung trong một chu kỳ sản xuất của công ty. Khi thay đổi quy định lịch bảo trì cần phải biết ngày áp dụng , để áp dụng lịch bảo trì mới cho thiết bị cũng như cụm chi tiết. Công việc cho từng cụm sẽ do người có kiệm nghiệm chuyên môn bảo trì cho thiết bị trong công ty chọn, cho phù hợp với công việc cho từng cụm chi tiết của thiết bị. Danh sách công việc sẽ được thêm công việc nếu như cần thêm cho công việc bảo trì của cụm chi tiết thiết bị. Mỗi công việc sẽ được thực hiện do một tổ nào đó trong công ty đảm nhiệm hay thuê ngoài. Mỗi tháng nhận viên sẽ in ra lên lịch bảo trì cho từng thiết bị, danh sách thiết bị cần bảo trì trong tháng, hay công việc sẽ làm trong tháng và giao cho các tổ thực để thực hiện công việc trong phiếu bảo trì. Ngoài ra công ty còn lưu thông tin của nhà cung cấp như tên nhà cung cấp, địa chỉ, điện thoại để liên lạc nếu cần mua thêm thiết bị… 2. Tìm hiểu về kế hoạch bảo trì : Một số loại bảo trì đang được sử dụng hiện nay : -Bảo trì định kỳ : Được hình thành theo những quy định về sự thống nhất của việc lập kế hoạch bảo trì và thực thi công việc bảo trì thường xuyên. Công việc bảo trì định kỳ thường có khuyết điểm về thời gian cho phép có thể bị trì hoãn hay thay đổi so lịch bảo trì. 13 -Bảo trì nâng cao : nhằm cải thiện, nâng cấp công việc lại cho quá trình hoạt động sao cho phù hợp sao cho hợp với nhu cầu sản xuất hay nâng cao sản xuất của công ty, tùy theo quyết định của ban quản lý. Ban quản lý sẽ dựa trên yếu tố đầu vào để dự đoán xác định mức độ ưu tiên các yêu cầu về bảo trì cho thiết bị cũng như nguồn nhân lực để thực hiện. -Bảo trì phục hồi : được tiến hành thường xuyên trong công việc kiểm tra hằng ngày. Nếu có phát hiện những nguy cơ hay sự cố trong hoạt động sản xuất cho nhà máy để kịp thời khắc phục tình trạng hay giảm bớt rủi ro trong quá trình hoạt động sản xuất của công ty. Các công việc thực hiện theo bảo trì phục hồi cần được sự thống của ban quản lý theo độ ưu tiên của công việc, để không làm ảnh hưởng tới hoạt động sản xuất sẽ gây nhiều sự cố trong công việc sản xuất. Hình 1. Truyền thống giữa ban quản lý Và các bộ phận khác trong công ty 14 Để thực hiện tốt công tác bảo trì thì thông tin là rất quan trọng. Do đó cần thực hiện tốt việc truyền thông tin giữa phòng kế hoạch, các kho, dịch vụ vận chuyển, giám sát sản xuất, các kỹ sư và người giám sát bảo trì để việc lên kế hoach bảo trì cho hiệu quả và chính xác. Đối với các công việc ngắn hạn sẽ được thảo luận hàng tuần của phòng lên kế hoạch, giám sát và quản lý kho … các thông tin sẽ được truyền thông qua lại , đây là lúc thông tin cần phải chính xác, đúng đắn, nếu không sẽ gây ảnh hưởng nghiêm trọng và hậu quả có thể xảy ra cho công việc cũng như hoat động sản xuất thường ngày. Phòng kế hoạch bảo trì còn có nhiệm vụ là phải đảm bảo cơ sở thông tin, các bản vẽ cấu trúc thiết bị, danh sách phụ tùng, nguồn lực, tài liệu về bảo trì cho thiết bị…. Cũng như các thông tin của phòng thiết kế và kiểm soát tồn kho sẽ được cập nhật khi có điều chỉnh hay cải tiến. Hình 1 thể hiện việc lập truyền thông giữa người lập kế hoạch bảo trì và các bộ phận khác trong công ty. Tổng quan về lập kế hoạch bảo trì được thể hiện trong bảng sau: Kế hoạch bảo trì chiến lược Tất cả các hoạt động bảo trì khác nhau phát sinh từ việc phân tích chiến lược, thiết bị phù hợp với mục tiêu kinh doanh của mỗi công ty Phiếu yêu cầu công việc Tất cả phiếu yêu cầu phát sinh từ quá trình vận hành thiết bị Hệ thống xử lý công việc Hệ thống dựa trên giấy tờ hay hệ thống CMMS Lập kế hoạch Tất cả các phiếu bảo trì được hoạch định và sẳn sàng đưa vào sử dụng Điều độ Tất cả các phiếu bảo trì kế hoạch điều được lên chương trình hoạt động một cách có hệ thống để điều độ công việc hằng ngày/tuần hay lập chương trình ngưng máy Công việc hoãn lại Hồ sơ này lưu trữ tất cả các phiếu bảo trì có kế hoạch đang chờ cửa sổ bảo trì hoặc điều độ công việc 15 Cửa sổ bảo trì Khoảng thời gian thực hiện công việc bảo trì mà không làm ảnh hưởng tới quá trình sản xuất Thực hiện công việc bảo trì Công việc trong phiếu công việc được một hay nhiều kỹ sư thực hiện. Công việc này bao gồm việc xác nhận vào phiếu công việc( Ví dụ: thời gian, và phụ tùng thay thế yêu cầu cho công việc và kiểm tra) Phiếu bảo trì đã hoàn thành cho lịch sử, phân tích hiệu năng Tất cả các công việc đã làm được xem xét lại để báo cáo, phân tích bằng thống kê và xem xét cải tiến trước khi chuyển vào hồ sơ về lịch sử bảo trì trong hệ thống công việc 16 Hình 2. Tổng quan và lập kế hoạch điều độ 2.1 Lập kế hoạch bảo trì : Bảo trì có kế hoạch là công việc bảo trì được tổ chức và thực hiện có mục đích. Lập công việc cho phiếu bảo trì là xác định có cần đến phiếu bảo trì kế tiếp gồm nhiều công việc như : 17 -Các giai đoạn sữa chữa khác nhau (ví dụ : vệ sinh làm sạch, tháo ráp, sữa chữa, thay thế, kiểm tra, khởi động máy …) -Cần có các yêu cầu khác nhau về kỹ năng chuyên môn của từng cá nhân tùy theo công việc yêu cầu (ví dụ :cơ khí, cơ điện) -Yêu cầu bảo trì phục hồi cho thiết bị -Yêu cầu cụm chi tiết lắp ráp sẳn hoặc các phụ tùng thay thế phức tạp. có sẳn để phục vụ nhu cầu bảo trì cho thiết bị. Tất cả phiếu bảo trì kế tiếp được lập kế hoạch riêng rẻ và được tính chi phí, tất cả thông tin, chi phí được xem như là một phần của phiếu bảo trì để thể hiện tổng chi phí cần thiết để hoành thành công việc. Đa số các công ty nhỏ hiện nay đều lập kế hoạch bằng tay, sử dụng các công cụ đơn giản như biểu đồ dạng thanh, các phần mềm tin học văn phòng đơn giản Word, Excel,… Các công ty lớn sử dụng hệ thống quản lý bảo trì bằng máy tính (CMMS) để thực hiện việc lập kế hoạch bảo trì. 2.2 Những yếu tố và giới hạn ảnh hưởng đến việc lập kế hoạch bảo trì : Tùy theo chiến lược bảo trì hay kế hoạch bảo trì chiến lược ở mỗi công ty đều khác nhau nhằm phục vụ cho sản xuất. Bảng sau giới thiệu những công việc và cơ chế cho việc lập kế hoạch bảo trì cần chú ý trong việc lên kế hoạch. Những yếu tố tác động đến việc lập kế hoạch Những yếu tố tác động ảnh hưởng đến công việc có thể xuất phát từ bên trong hay bên ngoài giúp xác định tần số thực hiện công việc bảo trì hay thời gian bắt đầu thực hiện công việc Ví dụ: -Ngừng máy thực tế -Lập kế hoạch dài hạn cho quản lý tài của công ty. Ảnh hưởng thời vụ (ngừng máy để thực hiện sửa chửa, thay thế, kiểm tra …) 18 Những giới hạn của công việc lập kế hoạch Công ty luôn gặp những khó khăn, giới hạn và những khó khăn tìm ẩn trong việc lập kế hoạch Ví dụ: - Khả năng sẳn sàng của phụ tùng và thời gian nhận hàng. - Khả năng sẳn sàng của công cụ. - Nguồn nhân lực sẳn có trong công ty. - Kiến thức, kinh nghiệm về các thiết bị cụ thể. - Quy định về những an toàn khi thực hiện công việc bảo trì. Bảng sau đây trình bày những kỹ thuật, nhiệm vụ kế hoạch bảo trì mà cần phải đưa vào bảng kê khai. Người điều khiển Người triển khai kế hoạch có thể là người bên trong hay bên ngoài của tổ chức. Sẽ xác định thời điểm bắt đầu và thứ tự cho quy trình lập kế hoạch công việc kế tiếp. Ví dụ: - Ngừng máy thực tế. - Kế hoạch dài hạn cho quản lý tài chính cho công ty. - Tác động thời vụ ( ngừng hoạt động sau khi kết thúc mùa vụ ). Giới hạn lập kế hoạch Giới hạn là biến số để xác định ranh giới kết quả đạt được bởi quá trình lập kế hoạch. Ví dụ: - Phụ tùng sẳn có và thời gian chờ nhập phụ tùng nếu không có sẳn - Các dụng cụ , công cụ cần thiết phục vụ cho từng loại công việc. - Số lượng nguồn nhân lực bảo trì hiện có trong công ty - Kiến thức chuyên môn, kinh nghiệm cụ thể về một số máy chuyên dung. 19 Những liên kết chính với việc lập kế hoạch bảo trì sẽ được mô tả trong hình 3 Hình 3. Những liên kết chính với lập kế hoạch bảo trì 2.3 Quá trình lập kế hoạch bảo trì : Quá trình lập kế hoạch bảo trì đều khác nhau. Điều này phụ thuộc vào tình hình hoạt động ở mỗi công ty, phụ thuộc vào sự khác nhau về mặt lý do và thời gian thực hiện. Các lý do có thể là : -Tái lập ngày lập kế hoạch ( thời giant hay thế định kỳ, kiểm tra, hay tình trạng mòn của chi tiết ) -Các sự kiện không có kế hoạch ( do nhân viên vận hành sai, ngừng máy do các sự cố như cúp điện , thiên tai,.. hay do hư hỏng ) -Các cửa sổ bảo trì được điều độ nhờ phối hợp với sản xuất (đại tu, thay đổi sản phẩm, các cơ hội khác ) -Quy định của pháp luật (kiểm tra về chế độ an toàn, bảo vệ môi trường xung quanh ) 20 -Kế hoạch bảo trì cho công ty ( đại tu, ngừng máy, kiểm toán về an toàn theo kế hoạch ) -Lập kế hoạch chu kỳ sống của thiết bị (tuổi thọ tối đa mà thiết bị có thể đạt được ) Để thực hiện việc lập kế hoạch cần có những yếu tố, và nhiêm vụ sau đây : -Xác định nguồn nhân lực (phụ tùng, nhân lực ) cần thiết cho công việc bảo trì. -Cân đối khối lượng công việc bảo trì trong khoảng thời gian xác định. -Phối hợp với bên sản xuất để giảm thời gian, và chi phí việc ngừng máy sao cho là thấp nhất. -Phân bổ ưu tiên. -Điều độ thời gian chờ. -Xác định các nguồn lực sẳn có ( nhân lực, vật tư ). -Tính toán các nguồn lực yêu cầu. -Phối hợp các nguồn lực -Lập kế hoạch theo trình tự Việc lên kế hoạch cho các công việc chung cho các thiết bị, cụm chi thiết , phụ tùng .. sẽ được biểu diễn theo lưu đồ dưới đây : 21 Ngoài ra, cần phải liên tục cải tiến một cách liên tục (CIP). Khi áp dụng kế hoạch cho các công việc trong giai đoạn thực tế. Đây là công việc cần thiết để có thể đánh giá hiệu quả của kế hoạch đã vạch ra. Trong giai đoạn thực tế, hệ thống sẽ kiểm soát công việc một cách chính xác, thông qua đó sẽ có những thông tin chính xác cho việc cải tiến thiết bị kế hoạch sao cho hợp lý. 22 Quá trình cải tiến liên tục (CIP) cho việc lập kế hoạch, điều độ và thực hiện công việc bảo trì được biểu diễn trong hình 5. Hình 5. CIP trong quá trình lập kế hoạch, điều độ và thực hiện công việc bảo trì 2.4 Giới hạn yêu cầu nhiệm vụ đồ án : Xây dựng thực hiện hệ thống quản lý thiết bị và lên lịch bảo trì là rất cần thiết cho nhu cầu hiện nay. Để thực hiện hoàn chỉnh một chương trình phần mềm phục vụ cho nghiệp vụ bảo trì cần rất nhiều thời gian và nguồn nhân lực thực hiện. Qua tìm hiểu những thông tin cần thiết về bảo trì, thì có thể thấy để hoàn thành một phần mềm có thể đáp ứng gần như đầy đủ cho nhu cầu công việc thực tế cho từng công ty thì phải có các chức năng cần thiết về nghiệp vụ bảo trì như : Bảo trì định kỳ, Giám sát tình trạng, yêu cầu phiếu bảo trì, thông tin thiết bị, … Do đó với đồ án quản lý thiết bị và bảo trì sẽ có những giới hạn như sau : -Cơ sở dữ liệu và thông tin dữ liệu cho thiết bị, cụm chi tiết, công việc được thực hiện và thiết kế trên cơ sở lý thuyết sẽ còn nhiều sai sót. Có rất nhiều sự khác biệt so với sự đòi hỏi và nhu cầu thực tế của một công ty. -Kế hoạch bảo trì cho thiết bị sẽ sai số nhiều do bỏ qua những ràng buộc, những khả năng tiềm ẩn có thể xảy ra, khi lên lịch bảo trì cho thiết bị như lịch bảo trì có thể rơi vào ngày lễ, ngày chủ nhật, tết … -Công việc sau khi được lên lịch sẽ in ra nội dung bảo trì các công việc cần làm cho từng thiết bị trong tháng. Nhưng phiếu bảo trì sẽ không đươc nghiệm thu và xử lý. 23 -Không có tính toán chi phí tổng hợp cho việc bảo trì các công việc. -Đồ án này áp dụng kế hoạch bảo trì định kỳ để xây dựng chương trình và lập kế hoạch công việc bảo trì cho các thiết bị. Có thể cấp thêm thiết bị từ các nhà cung cấp, nhập thông tin những cụm chi tiết của những thiết bị này. Với những công việc nhập cho kế hoạch bảo trì cho những thiết bị này luôn được xem là đúng và nghiệp vụ của chương trình sẽ in ra danh sách công việc bảo trì định kỳ trong tháng cho người lập kế hoạch biết thông tin. Thông tin chương trình quản lý: Quản lý trang thiết bị : -Quản lý dữ liệu cho các bảng khu vực, dây chuyền sản xuất , thiết bị, cụm chi tiết , công việc, tổ thực hiện , phiếu theo dõi , phiếu bảo trì. Thông tin chương trình có thể cung cấp : -Xuất danh sách các dây chuyền sản xuất theo từng khu vực riêng biệt. -Xuất danh sách các thiết bị của từng dây chuyền sản xuất. -Xuất danh sách các thiết bị của từng nhà cung cấp. -Xuất danh sách các công việc của từng tổ phụ trách -Xuất danh sách các công việc cho từng cụm chi tiết thuộc một thiết bị và tên tổ phụ trách. -Xuất danh sách lịch bảo trì thiết bị theo tháng. III. Cấu trúc của đồ án : Đồ án bao gồm 4 chương. Chương I : Giới thiệu mục đích của đồ án , khái quát hoạt động của nhà máy cần xây dựng chương trình quản lý và những yêu cầu đặt ra cho đồ án. Chương II : Những cơ sở lý thuyết được sử dụng trong việc phân tích thiết kế hệ thống và xây dựng chương trình ứng dụng. Chương III : Trình bày về bài toán bảo trì đang được áp dụng cho nhà máy và hướng giải quyết. Chương IV : Giới thiệu công cụ thực hiện , xây dựng chương trình ứng dụng và các chức năng của chương trình . 24 CHƯƠNG II : LÝ THUYẾT PHÂN TÍCH THIẾT KẾ HỆ THỐNG I . Mô hình dữ liệu ở mức quan niệm 1. Mô hình quan niệm dữ liệu ERD : 25 2. Mô tả các thực thể : -Tên thực thể : KHU_VUC (Khu vực) -Tân từ : Mỗi khu vực có một mã số riêng biệt để phân biệt khu vực này với khu vực khác trong nhà máy. Ngoài ra mỗi khu vực còn có tên khu vực. STT Tên thuộc tính Tên đầy đủ Kiểu dữ liệu Ràng buộc Độ dài 1 MA_KV Mã khu vực Nvarchar Primary key 5 2 TEN_KV Tên khu vực Nvarchar Not null 100 -Tên thực thể : DAY_CHUYEN ( Dây chuyền sản xuất) -Tân từ : Mỗi dây chuyền sản xuất có một mã số riêng biệt để phân biệt giữa các dây chuyền , có một mã khu vực để biết dây chuyền này thuộc khu vực nào của nhà máy, ngoài ra mỗi dây chuyền có một tên riêng. Một khu vực có thể có một hoặc nhiều dây chuyền sản xuất , mỗi dây chuyền sản xuất chỉ thuộc duy nhất một khu vực. STT Tên thuộc tính Tên đầy đủ Kiểu dữ liệu Ràng buộc Độ dài 1 MA_DAY_CHUYEN Mã dây chuyền Nvarchar Primary key 5 2 TEN_DAY_CHUYEN Tên dây chuyền Nvarchar Not null 100 3 MA_KV Mã khu vực Nvarchar References key 5 26 -Tên thực thể : NHA_CUNG_CAP (Nhà cung cấp) -Tân từ : Mỗi nhà cung cấp có một mã số riêng biệt để phân biệt giữa các nhà cung cấp, ngoài ra còn có tên và địa chỉ nhà cung cấp. STT Tên thuộc tính Tên đầy đủ Kiểu dữ liệu Ràng buộc Độ dài 1 MA_NCC Mã nhà cung cấp Nvarchar Primary key 5 2 TEN_NCC Tên nhà cung cấp Nvarchar Not null 100 3 DIA_CHI_NCC Địa chỉ nhà cung cấp Nvarchar Null 150 -Tên thực thể : THIET_BI ( Thiết bị ) -Tân từ : Mỗi thiết bị có một mã số riêng biệt để phân biệt thiết bị này với thiết bị khác. Một mã dây chuyền để biết thiết bị này thuộc dây chuyền sản xuất nào. Một mã nhà cung cấp để biết nhà sản xuất của thiết bị. Ngoài ra còn phải biết thiết bị này thuộc kiểu bảo trì nào (theo giờ hoặc theo tháng), tần suất bảo trì là bao lâu. Một dây chuyền sản xuất có thể có một hoặc nhiều thiết bị, mỗi thiết bị chỉ thuộc một dây chuyền sản xuất. STT Tên thuộc tính Tên đầy đủ Kiểu dữ liệu Ràng buộc Độ dài 1 MA_THIET_BI Mã thiết bị Nvarchar Primary key 5 2 TEN_THIET_BI Tên thiết bị Nvarchar Not null 100 3 MA_NCC Mã nhà cung cấp Nvarchar References key 5 4 MA_DAY_CHU YEN Mã dây chuyền Nvarchar References key 5 5 KIEU_BAO_TRI Kiểu bảo trì Nvarchar Not null 10 6 DINH_KY Định kỳ Integer Not null 27 -Tên thực thể : CUM_CHI_TIET ( cụm chi tiết) -Tân từ : Mỗi cụm chi tiết có một mã số riêng biệt để phân biệt giữa các cụm chi tiết. Một mã thiết bị để biết cụm chi tiết này thuộc thiết bị nào, ngoài ra còn phải biết tên của cụm chi tiết. Một thiết bị có thể có một hoặc nhiều cụm chi tiết, mỗi cụm chi tiết chỉ thuộc một thiết bị. STT Tên thuộc tính Tên đầy đủ Kiểu dữ liệu Ràng buộc Độ dài 1 MA_CCT Mã cụm chi tiết Nvarchar Primary key 5 2 TEN_CCT Tên cụm chi tiết Nvarchar Not null 100 3 MA_THIET_B I Mã thiết bị Nvarchar References key 5 -Tên thực thể : TO_THUC_HIEN ( Tổ thực hiện) -Tân từ : Mỗi tổ thực hiện bao gồm một mã tổ riêng biệt để phân biệt giữa tổ này với tổ khác, ngoài ra còn phải biết tên tổ là gì. STT Tên thuộc tính Tên đầy đủ Kiểu dữ liệu Ràng buộc Độ dài 1 MA_TO Mã tổ thực hiện Nvarchar Primary key 5 2 TEN_TO Tên tổ thực hiện Nvarchar Not null 30 28 -Tên thực thể : CONG_VIEC ( Công việc) -Tân từ : Mỗi công việc có một mã công việc riêng biệt để phân biệt giữa các công việc, một mã tổ để biết công việc này do tổ nào phụ trách thực hiện. Ngoài ra còn phải mô tả cụ thể cho từng công việc. Một tổ có thể phụ trách thực hiện một hay nhiều công việc , mỗi công việc chỉ do duy nhất một tổ phụ trách. STT Tên thuộc tính Tên đầy đủ Kiểu dữ liệu Ràng buộc Độ dài 1 MA_CV Mã công việc Nvarchar Primary key 5 2 MO_TA_CV Mô tả công việc Nvarchar Not null 100 3 MA_TO Mã tổ thực hiện Nvarchar References key 5 -Tên thực thể : PHIEU_THEO_DOI ( Phiếu theo dõi) -Tân từ : Đối với loại thiết bị bảo trì theo giờ cần phải có phiếu theo dõi để lưu chỉ số đồng hồ và kiểm tra định kỳ bảo trì của mỗi máy. Mỗi phiếu theo dõi có một mã riêng để phân biệt với các phiếu theo dõi khác. Một mã thiết bị để biết phiếu theo dõi này đang ghi chỉ số đồng hồ của thiết bị nào. Ngoài ra còn các thông số : Lần hiện tại để ghi lại chỉ số đồng hồ của máy tại một thời điểm cần kiểm tra. Lần trước để lưu lại chỉ số đồng hồ của máy đó lần gần đây nhất. Mốc định kỳ ghi mức chỉ số đồng hồ dự tính bảo trì. Trạng thái để biết thiết bị này đã tới lúc cần bảo trì hay chưa. Ngày ghi để lưu lại ngày ghi chỉ số đồng hồ của thiết bị. Mỗi phiếu theo dõi tại một thời điểm ghi chỉ giành cho một thiết bị. Một thiết bị có thể có một hoặc nhiều phiếu theo dõi tùy theo số lần ghi. 29 STT Tên thuộc tính Tên đầy đủ Kiểu dữ liệu Ràng buộc Độ dài 1 MA_PHIEU_TD Mã phiếu theo dõi Nvarchar Primary key 5 2 MA_THIET_BI Mã thiết bị Nvarchar References key 5 3 LAN_HIEN_TAI Lần hiện tại Integer Not null 4 LAN_TRUOC Lần trước Integer Not null 5 MOC_DINH_KY Mốc định kỳ Integer Not null 6 NGAY_GHI Ngày ghi Datetime Not null 7 TRANG THAI Trạng thái Nvarchar Not null 5 -Tên thực thể : PHIEU_BAO_TRI ( Phiếu bảo trì) -Tân từ : Mỗi phiếu bảo trì có một mã riêng để phân biệt với các phiếu bảo trì khác, một mã thiết bị để biết phiếu bảo trì này của thiết bị nào. Ngoài ra còn có các thông tin tên phiếu bảo trì , ngày lập. Mỗi thiết bị có một hay nhiều phiếu bảo trì , mỗi phiếu bảo trì tại một thời điểm chỉ giành cho một thiết bị. STT Tên thuộc tính Tên đầy đủ Kiểu dữ liệu Ràng buộc Độ dài 1 MA_PHIEU_BT Mã phiếu bảo trì Nvarchar Primary key 5 2 TEN_PHIEU_BT Tên phiếu bảo trì Nvarchar Null 100 3 MA_THIET_BI Mã thiết bị Nvarchar References key 5 4 NGAY_LAP Ngày lập Datetime Not null 30 3. Mô tả các mối kết hợp: -Mỗi cụm chi tiết có thể có nhiều công việc bảo trì và một công việc bảo trì có thể áp dụng cho nhiều cụm chi tiết. CUM_CHI_TIET CONG_VIEC (1,n) (1,n) Mô tả mối kết hợp CUM_CHI_TIET_CONG_VIEC STT Tên thuộc tính Tên đầy đủ Kiểu dữ liệu Ràng buộc Độ dài 1 MA_CUM_CHI_TIET Mã cụm chi tiết Nvarchar Primary key 5 2 MA_CONG_VIEC Mã công việc Nvarchar Primary key 5 3 CHU_KY_BT Chu kỳ bảo trì Integer Not null 4 NGAY_LAP Ngày lập Datetime Not null -Một CUM_CHI_TIET_CONG_VIEC có thể có nhiều PHIEU_BAO_TRI , một PHIEU_BAO_TRI có thể có nhiều CUM_CHI_TIET_CONG_VIEC. Mô tả mối kết hợp PHIEU_BAO_TRI_CCT_CV 31 STT Tên thuộc tính Tên đầy đủ Kiểu dữ liệu Ràng buộc Độ dài 1 MA_CV Mã công việc Nvarchar Primary key 5 2 MA_CUM_CHI_TIET Mã cụm chi tiết Nvarchar Primary key 100 3 MA_PHIEU_BAO_TRI Mã phiếu bảo trì Nvarchar Primary key 5 4 NGAY_BAT_DAU Ngày bắt đầu Datetime Not null 5 NGAY_KET_THUC Ngày kết thúc Datetime Not null 4. Chuyển các thực thể kết hợp sang quan hệ : - Từ mô hình thực thể kết hợp ở trên ta chuyển sang mô hình quan hệ sau đây. Với từng thực thể trong mô hình kết hợp ta tạo thành quan hệ Q tương ứng theo nguyên tắc: + Tên thực thể chuyển thành tên quan hệ. + Thuộc tính của thực thể chuyển thành thuộc tính của quan hệ. + Khóa của thực thể chuyển thành khóa của quan hệ. KHU_VUC ( MA_KV,TEN_KV) DAY_CHUYEN ( MA_DAY_CHUYEN,TEN_DAY_CHUYEN) THIET_BI ( MA_THIET_BI,TEN_THIET_BI,KIEU_BAO_TRI,DINH_KY) CUM_CHI_TIET (MA_CCT,TEN_CCT) NHA_CUNG_CAP ( MA_NCC, TEN_NCC,DIA_CHI) TO_THUC_HIEN ( MA_TO, TEN_TO) CONG_VIEC ( MA_CV, MO_TA_CV) PHIEU_THEO_DOI ( MA_PHIEU_TD,LAN_HIEN_TAI, LAN_TRUOC, MOC_DINH_KY, TRANG_THAI, NGAY_GHI) PHIEU_BAO_TRI ( MA_PHIEU_BT, TEN_PHIEU_BT, NGAY_LAP) 32 * Đối với mối kết hợp( n, n), giữa các thực thể tạo nên mối quan hệ Q. Quan hệ Q này chứa các thuộc tính hiện có của mối kết hợp, đồng thời bổ sung các thuộc tính khoá chính của hai hay nhiều của mối kết hợp trong quan hệ Q. Các thuộc tính này là khoá chính của mối quan hệ. * Đối với mối kết hợp( 1, n) bổ sung các thuộc tính khoá chính của thực thể phía n vào thực thể phía 1, thuộc tính mới bổ sung này là khoá ngoại của thực thể phía 1. * Đối với mối kết hợp( 1, 1) bổ sung các thuộc tính khoá chính của thực thể phía 1 vào thực thể phía 1, thuộc tính mới bổ sung này là khoá ngoại của thực thể phía 1. KHU_VUC ( MA_KV,TEN_KV) DAY_CHUYEN ( MA_DAY_CHUYEN,TEN_DAY_CHUYEN, MA_KV) THIET_BI ( MA_THIET_BI,TEN_THIET_BI,KIEU_BAO_TRI,DINH_KY, MA_DAY_CHUYEN, MA_NCC) CUM_CHI_TIET (MA_CCT,TEN_CCT, MA_THIET_BI) NHA_CUNG_CAP ( MA_NCC, TEN_NCC,DIA_CHI) TO_THUC_HIEN ( MA_TO, TEN_TO) CONG_VIEC ( MA_CV, MO_TA_CV, MA_TO) PHIEU_THEO_DOI ( MA_PHIEU_TD,LAN_HIEN_TAI, LAN_TRUOC, MOC_DINH_KY, TRANG_THAI, NGAY_GHI, MA_THIET_BI) PHIEU_BAO_TRI ( MA_PHIEU_BT, TEN_PHIEU_BT, NGAY_LAP, MA_THIET_BI) CUM_CHI_TIET_CONG_VIEC ( MA_CCT, MA_CV , CHU_KY_BT, NGAY_AP_DUNG) PHIEU_BAO_TRI_CCT_CONG_VIEC ( MA_CCT, MA_CV, MA_PHIEU_BT, NGAY_BAT_DAU, NGAY_KET_THUC) Các phụ thuộc hàm : F1 = { MA_KV Î TEN_KV) F2 = { MA_DAY_CHUYEN Î TEN_DAY_CHUYEN, MA_KV) F3 = { MA_THIET_BI Î TEN_THIET_BI, MA_DAY_CHUYEN, KIEU_BAO_TRI, DINH_KY, MA_NCC) 33 F4 = { MA_CCT Î TEN_CCT, MA_THIET_BI) F5 = { MA_NCC Î TEN_NCC, DIA_CHI) F6 = { MA_CV Î TEN_CV, MA_TO) F7 = { MA_PHIEU_TD Î MA_THIET_BI, LAN_HIEN_TAI, LAN_TRUOC, MOC_DINH_KY, TRANG_THAI, NGAY_GHI) F8 = { MA_PHIEU_BT Î TEN_PHIEU_BT, NGAY_LAP, MA_THIET_BI) F9 = { MA_CCT,MA_CV Î CHU_KY_BT, NGAY_AP_DUNG) F10={MA_CCT,MA_CV,MA_PHIEU_BT Î NGAY_BAT_DAU, NGAY_KET_THUC) II. CÁC RÀNG BUỘC TOÀN VẸN VÀ TẦM ẢNH HƯỞNG : 1 Ràng buộc toàn vẹn trên một quan hệ: -R1 : “DINH_KY phải lớn hơn 0” Điều kiện : ∀q ∈ TTHIET_BI : (q.DINH_KY > 0) Tầm ảnh hưởng : R1 Thêm Xóa Sửa THIET_BI +[DINH_KY] - + -R2 : “KIEU_BAO_TRI phải là THANG hoặc là GIO Điều kiện : : ∀q ∈ TTHIET_BI : (q.KIEU_BAO_TRI = THANG) or (q.KIEU_BAO_TRI = GIO) Tầm ảnh hưởng : R2 Thêm Xóa Sửa THIET_BI +[KIEU_BAO_TRI] - + 34 -R3 : “LAN_HIEN_TAI phải lớn hơn LAN_TRUOC” Điều kiện : ∀q ∈ TPHIEU_THEO_DOI : (q.LAN_HIEN_TAI > q.LAN_TRUOC) Tầm ảnh hưởng R3 Thêm Xóa Sửa PHIEU_THEO_DO I +[LAN_HIEN_TAI] - + -R4 : “MOC_DINH_KY phải lớn hơn LAN_HIEN_TAI” Điều kiện : ∀q ∈ TPHIEU_THEO_DOI : (q.MOC_DINH_KY > q.LAN_HIEN_TAI) Tầm ảnh hưởng : R4 Thêm Xóa Sửa PHIEU_THEO_DO I +[MOC_DINH_KY] - + -R5 : “TRANG_THAI phải là TRUE hoặc là FALSE Điều kiện : ∀q ∈ TPHIEU_THEO_DOI : (q.TRANG_THAI = TRUE) or (q.TRANG_THAI = FALSE) Tầm ảnh hưởng : R5 Thêm Xóa Sửa PHIEU_THEO_DO I +[TRANG_THAI] - + 35 -R6 : “NGAY_AP_DUNG phải nhỏ hơn 1/1/2011” Điều kiện : ∀q ∈ TCUM_CHI_TIET_CONG_VIEC : (q.NGAY_AP_DUNG < 1/1/2011) Tầm ảnh hưởng : R6 Thêm Xóa Sửa CUM_CHI_TIET_CONG_VIE C +[NGAY_AP_DUNG] - +[NGAY_AP_DUN G] -R7 : “NGAY_LAP phải nhỏ hơn 1/1/2011” Điều kiện : ∀q ∈ TPHIEU_BAO_TRI : (q.NGAY_LAP < 1/1/2011) Tầm ảnh hưởng : R7 Thêm Xóa Sửa PHIEU_BAO_TRI +[NGAY_LAP] - +[NGAY_LAP] -R8 : “NGAY_BAT_DAU phải nhỏ hơn NGAY_KET_THUC Điều kiện : ∀q ∈ TPHIEU_BAO_TRI_CCT_CV : (q.NGAY_BAT_DAU < q.NGAY_KET_THUC) Tầm ảnh hưởng : R8 Thêm Xóa Sửa PHIEU_BAO_TRI_CCT_C V +[NGAY_BAT_DAU, NGAY_KET_THUC] - +[NGAY_BAT_DA U,NGAY_KET_THU C] 36 2. Ràng buộc liên bộ trên một lược đồ quan hệ( ràng buộc về khóa chính): -R9 : KHU_VUC ( MA_KV,TEN_KV) Bối cảnh : KHU_VUC Điều kiện : q1∈ KHU_VUC , q2∈ KHU_VUC : q1.MA_KV q2.MA_KV Tầm ảnh hưởng : R9 Thêm Xóa Sửa KHU_VUC +[MA_KV] - + R10: DAY_CHUYEN (MA_DAY_CHUYEN, TEN_DAY_CHUYEN, MA_KV) Bối cảnh : KHU_VUC Điều kiện : q1∈ DAY_CHUYEN , q2∈ DAY_CHUYEN : q1.MA_DAY_CHUYEN q2.MA_DAY_CHUYEN Tầm ảnh hưởng : R10 Thêm Xóa Sửa DAY_CHUYEN +[MA_DAY_CHUYEN] - + -R11 : THIET_BI ( MA_THIET_BI, TEN_THIET_BI, KIEU_BAO_TRI, DINH_KY, MA_DAY_CHUYEN, MA_NCC) Điều kiện : q1∈ THIET_BI , q2∈ THIET_BI : q1.MA_THIET_BI q2.MA_THIET_BI Tầm ảnh hưởng : R11 Thêm Xóa Sửa THIET_BI +[MA_THIET_BI] - + 37 -R12 : CUM_CHI_TIET (MA_CCT,TEN_CCT, MA_THIET_BI) Điều kiện : q1∈ CUM_CHI_TIET , q2∈ CUM_CHI_TIET : q1.MA_CCT q2.MA_CCT Tầm ảnh hưởng : R12 Thêm Xóa Sửa CUM_CHI_TIET +[MA_CCT] - + -R13 : NHA_CUNG_CAP ( MA_NCC, TEN_NCC,DIA_CHI) Điều kiện : q1∈ CUM_CHI_TIET , q2∈ CUM_CHI_TIET : q1.MA_NCC q2.MA_NCC Tầm ảnh hưởng : R13 Thêm Xóa Sửa NHA_CUNG_CAP +[MA_NCC] - + -R14 : TO_THUC_HIEN ( MA_TO, TEN_TO) Điều kiện : q1∈ TO_THUC_HIEN , q2∈ TO_THUC_HIEN : q1.MA_TO q2.MA_TO Tầm ảnh hưởng : R14 Thêm Xóa Sửa TO_THUC_HIEN +[MA_TO] - + -R15: CONG_VIEC ( MA_CV, MO_TA_CV, MA_TO) Điều kiện : q1∈ CONG_VIEC , q2∈ CONG_VIEC : q1.MA_CV q2.MA_CV Tầm ảnh hưởng : R15 Thêm Xóa Sửa CONG_VIEC +[MA_CV] - + 38 R16 : PHIEU_THEO_DOI ( MA_PHIEU_TD,LAN_HIEN_TAI, LAN_TRUOC, MOC_DINH_KY, TRANG_THAI, NGAY_GHI, MA_THIET_BI) Điều kiện : q1∈ PHIEU_THEO_DOI , q2∈ PHIEU_THEO_DOI : q1.MA_PHIEU_TD q2.MA_PHIEU_TD Tầm ảnh hưởng : R16 Thêm Xóa Sửa PHIEU_THEO_DO I +[MA_PHIEU_TD] - + R17 : PHIEU_BAO_TRI ( MA_PHIEU_BT, TEN_PHIEU_BT, NGAY_LAP, MA_THIET_BI) Điều kiện : q1∈ PHIEU_BAO_TRI , q2∈ PHIEU_BAO_TRI : q1.MA_PHIEU_BT q2.MA_PHIEU_BT Tầm ảnh hưởng : R17 Thêm Xóa Sửa PHIEU_BAO_TRI +[MA_PHIEU_BT] - + R18 : CUM_CHI_TIET_CONG_VIEC ( MA_CCT, MA_CV , CHU_KY_BT, NGAY_AP_DUNG) Điều kiện : q1∈ CUM_CHI_TIET_CONG_VIEC, q2∈ CUM_CHI_TIET_CONG_VIEC : q1.MA_CCT q2.MA_CCT OR q1.MA_CV q2.MA_CV Tầm ảnh hưởng : R18 Thêm Xóa Sửa CUM_CHI_TIET_CONG_VIEC +[MA_CCT,MA_CV] - + 39 R19 : PHIEU_BAO_TRI_CCT_CONG_VIEC ( MA_CCT, MA_CV, MA_PHIEU_BT, NGAY_BAT_DAU, NGAY_KET_THUC) Điều kiện : q1∈ PHIEU_BT_CCT_CONG_VIEC, q2∈ PHIEU_BT_CCT_CONG_VIEC : q1.MA_CCT q2.MA_CCT OR q1.MA_CV q2.MA_CV OR q1.MA_PHIEU_BT q2.MA_PHIEU_BT Tầm ảnh hưởng : R19 Thêm Xóa Sửa PHIEU_BT_CCT_ CONG_VIEC +[MA_PHIEU_BT, MA_CCT,MA_CV] - + 3. Ràng buộc liên thuộc tính, liên quan hệ: Ràng buộc toàn vẹn phụ thuộc tồn tại : R20 : MA_KV trong thực thể DAY_CHUYEN là khóa ngoại tham chiếu từ bảng KHU_VUC. Bối cảnh : KHU_VUC, DAY_CHUYEN Điều kiện : KHU_VUC[MA_KV], DAY_CHUYEN[MA_DAY_CHUYEN] : DAY_CHUYEN [MA_KV] ⊆ KHU_VUC[MA_KV]. Tầm ảnh hưởng : R20 Thêm Xóa Sửa DAY_CHUYEN +[MA_KV] - + KHU_VUC - + + 40 R21 : MA_DAY_CHUYEN trong thực thể THIET_BI là khóa ngoại tham chiếu từ bảng DAY_CHUYEN. Bối cảnh : DAY_CHUYEN, THIET_BI Điều kiện : DAY_CHUYEN[MA_DAY_CHUYEN], THIET_BI[MA_DAY_CHUYEN] : THIET_BI[MA_DAY_CHUYEN] ⊆ DAY_CHUYEN[MA_DAY_CHUYEN] Tầm ảnh hưởng : R21 Thêm Xóa Sửa THIET_BI +[MA_DAY_ CHUYEN] - + DAY_CHUYEN - + + R22 : MA_THIET_BI trong thực thể CUM_CHI_TIET là khóa ngoại tham chiếu từ bảng THIET_BI. Bối cảnh : THIET_BI, CUM_CHI_TIET Điều kiện : THIET_BI[MA_THIET_BI], CUM_CHI_TIET[MA_THIET_BI] : CUM_CHI_TIET[MA_THIET_BI] ⊆ THIET_BI[MA_THIET_BI] Tầm ảnh hưởng : R22 Thêm Xóa Sửa CUM_CHI_TIET +[MA_THIET_BI] - + THIET_BI - + + 41 R23 : MA_NCC trong thực thể THIET_BI là khóa ngoại tham chiếu từ bảng NHA_CUNG_CAP. Bối cảnh : NHA_CUNG_CAP,THIET_BI Điều kiện : NHA_CUNG_CAP[MA_NCC], THIET_BI[MA_NCC] : THIET_BI[MA_NCC] ⊆ NHA_CUNG_CAP[MA_NCC] Tầm ảnh hưởng : R23 Thêm Xóa Sửa THIET_BI +[MA_NCC] - + NHA_CUNG_CAP - + + R24 : MA_TO trong thực thể CONG_VIEC là khóa ngoại tham chiếu từ bảng TO_THUC_HIEN. Bối cảnh : TO_THUC_HIEN, CONG_VIEC Điều kiện : TO_THUC_HIEN[MA_TO], CONG_VIEC[MA_TO] : CONG_VIEC[MA_TO] ⊆ TO_THUC_HIEN[MA_TO] Tầm ảnh hưởng : R24 Thêm Xóa Sửa CONG_VIEC +[MA_TO] - + TO_THUC_HIEN - + + 42 R25 : MA_THIET_BI trong PHIEU_THEO_DOI là khóa ngoại tham chiếu từ bảng THIET_BI. Bối cảnh : THIET_BI, PHIEU_THEO_DOI Điều kiện : THIET_BI[MA_THIET_BI], PHIEU_THEO_DOI[MA_THIET_BI] : PHIEU_THEO_DOI[MA_THIET_BI] ⊆ THIET_BI[MA_THIET_BI] Tầm ảnh hưởng : R25 Thêm Xóa Sửa PHIEU_THEO_DO I +[MA_THIET_B I] - + THIET_BI - + + R26 : : MA_THIET_BI trong PHIEU_BAO_TRI là khóa ngoại tham chiếu từ bảng THIET_BI. Bối cảnh : THIET_BI, PHIEU_BAO_TRI Điều kiện : THIET_BI[MA_THIET_BI], PHIEU_BAO_TRI[MA_THIET_BI] : PHIEU_BAO_TRI[MA_THIET_BI] ⊆ THIET_BI[MA_THIET_BI] Tầm ảnh hưởng : R26 Thêm Xóa Sửa PHIEU_BAO_TRI +[MA_THIET_B I] - + THIET_BI - + + 43 R27 : MA_CCT, MA_CV trong thực thể CCT_CONG_VIEC là khóa chính tham chiếu từ bảng CUM_CHI_TIET và bảng CONG_VIEC. Bối cảnh : CCT_CONG_VIEC, CUM_CHI_TIET, CONG_VIEC Điều kiện : CCT_CONG_VIEC [MA_CCT,MA_CV] , CUM_CHI_TIET [MA_CCT], CONG_VIEC [MA_CV] CCT_CONG_VIEC[MA_CCT] ⊆ CUM_CHI_TIET[MA_CCT] OR CCT_CONG_VIEC[MA_CV] ⊆ CONG_VIEC [MA_CV] Tầm ảnh hưởng : R27 Thêm Xóa Sửa CCT_CONG_VIEC +[MA_CCT,MA_CV] - + CUM_CHI_TIET - + + CONG_VIEC - + + R28: MA_PHIEU_TD, MA_CCT, MA_CV trong thực thể PHIEU_BT_CCT_CV là khóa chính tham chiếu từ các bảng PHIEU_BAO_TRI, CUM_CHI_TIET, CONG_VIEC. Bối cảnh : PHIEU_BT_CCT_CV, PHIEU_BAO_TRI, CUM_CHI_TIET, CONG_VIEC. Điều kiện : PHIEU_BT_CCT_CV[MA_PHIEU_BT, MA_CCT, MA_CV] , CUM_CHI_TIET[ MA_CCT], CONG_VIEC[MA_CV], PHIEU_BT[MA_PHIEU_BT] : PHIEU_BT_CCT_CV[MA_PHIEU_BT] ⊆ PHIEU_BAO_TRI[MA_PHIEU_BT] OR 44 PHIEU_BT_CCT_CV[MA_CCT] ⊆ CUM_CHI_TIET[MA_CCT] OR PHIEU_BT_CCT_CV[MA_CV] ⊆ CONG_VIEC[MA_CV] . R28 Thêm Xóa Sửa PHIEU_BT_CCT_ CV +[MA_PHIEU_BT, MA_CCT, MA_CV] - + CUM_CHI_TIET - + + CONG_VIEC - + + PHIEU_BAO_TRI - + + III. Mô hình dòng dữ liệu( DFD) : Mức 0 : : 45 Mức 1 : 46 47 48 CHƯƠNG III : GIẢI QUYẾT BÀI TOÁN 1. Bài toán lập lịch bảo trì : Các loại thiết bị bảo trì theo giờ đều được gắn đồng hồ để đo chỉ số , từ đó xác định được tần suất hoạt động. Công thức tính toán để xác định trạng thái bảo trì TRUE hoặc FALSE đối với một thiết bị bao gồm các thống số sau : -Chỉ số đồng hồ hiện tại : Chính là số giờ chạy của máy được ghi tại một thời điểm cần kiểm tra trạng thái bảo trì. -Chỉ số đồng hồ lần trước : Lưu lại chỉ số giờ chạy của máy lần gần đây nhất. - Mốc định kỳ : Là chỉ số giờ chạy được dự tính sẽ bảo trì cho máy. Đối với một thiết bị khi mua về sẽ được các kỹ sư phụ trách bảo trì thiết lập cho một mốc định kỳ đầu tiền, gọi là số giờ dự tính sẽ bảo trì. -Định kỳ : Là số giờ mà máy cần phải ngưng để tiến hành công tác bảo trì. Mỗi máy được thiết lập một định kỳ sẵn, có thể do nhà sản xuất hoặc do kỹ sư phụ trách bảo trì thiết lập. Sau đây là ví dụ minh họa đối với một máy bảo trì theo công thức trên : Giả sử có một thiết bị A được mua về, chỉ số đồng hồ hiện tại của máy 0032. Định kỳ của máy là 1000 giờ. Kỹ sư sẽ thiết lập mốc định kỳ đầu tiên, tức thiết lập chỉ số đạt được cần phải ngưng để bảo trì là 1000 giờ. Chỉ số nhập để kiểm tra tại một thời điểm : 0573 Chỉ số lần trước : 0032 Mốc định kỳ : 1000 49 Ta sẽ công thức tính như sau : Gọi P là chỉ số kết quả kiểm tra, M là mốc định kỳ , DK là định kỳ của máy, L là chỉ số nhập tại một thời điểm cần kiểm tra, T là trạng thái bảo trì. P = ( M – L ) Nếu P > DK/2 thì T = FALSE ( Chưa cần bảo trì ) Nếu P <= DK/2 thì T = TRUE ( Đã đến lúc cần bảo trì) Nếu T = TRUE thì M = M + DK Áp dụng cho các thông số ở ví dụ ta có : P = ( M – L) = ( 1000 – 573) = 427 DK/2 = 1000/2 = 500 P = 427 T = TRUE , thiết bị này đã đến lúc cần bảo trì. M = M + DK = 1000 + 1000 = 2000 Như vậy mốc định kỳ dự tính bảo trì ở lần kế tiếp là 2000. Đối với thiết bị bảo trì theo tháng, cần lập ra danh sách công việc cho từng cụm chi tiết của thiết bị theo các định kỳ định sẵn. 2. Hướng giải quyết : Lập lịch bảo trì theo từng tháng cho các thiết bị. Hướng giải quyết cho các thiết bị bảo trì theo giờ như sau : - Xuất ra những thiết bị có trạng thái cần bảo trì và có thời gian lập phiếu nằm trong tháng bảo trì.. - Xuất ra tất cả các công việc bảo trì của tất cả các cụm chi tiết thuộc thiết bị đó. - Xuất ra các công việc theo từng định kỳ đối với mỗi cụm chi tiết thuộc một thiết bị. 50 CHƯƠNG IV : KẾT QUẢ THỰC NGHIỆM I. Giao diện và chức năng của chương trình. -Chương trình được xây dựng dựa trên công cụ Microsoft Visual C# và Microsoft SQL. -Thích ứng với các hệ điều hành : Win2000/XP/Vista. Giao diện các Form trong chương trình : Form Đăng nhập : -Chức năng : Đăng nhập vào form chính của chương trình. Hệ thống sẽ kiểm tra bảng tài khoản, nếu người dùng không có tài khoản thì sẽ không sử dụng được chương trình. 51 Form Chức năng : -Đây là form giao diện chính của toàn bộ chương trình. Danh mục bao gồm việc Quản lý dữ liệu cho các bảng : Quản lý thông tin khu vực , thông tin dây chuyền sản xuất , thông tin thiết bị , thông tin chi tiết các công việc. Bảo trì bao gồm các chức năng bảo trì theo giờ , quản lý thiết bị , lập phiếu bảo trì. Khu vực ngoài quản lý thông tin của tổ thực hiện bảo trì và thông tin của nhà cung cấp thiết bị. Tài khoản có chức năng quản lý thông tin tài khoản của người dùng. Báo cáo bao gồm các danh sách cung cấp thông tin cho việc lập kế hoạch các công việc bảo trì cho máy móc thiết bị nhà máy. Thoát : Thoát khỏi chương trình quản lý. 52 Form Khu Vực : Các thông tin cho người dung biết trong form bao gồm : Tên các khu vực trong nhà máy. Chức năng : -Thêm một khu vực mới. -Chỉnh sửa tên khu vực. -Xóa bỏ một khu vực. -Thoát : thoát khỏi form đang sử dụng. 53 Form Dây chuyền sản xuất : Các thông tin cho người dung biết trong form bao gồm : Tên dây chuyền và khu vực dây chuyền đang hoạt động. Chức năng : - Thêm một dây chuyền mới. -Chỉnh sửa tên dây chuyền, thay đổi khu vực hoạt động của dây chuyền. -Xóa bỏ một dây chuyền. -Thoát : thoát khỏi form đang sử dụng. 54 Form Thiết bị : Các thông tin trong form bao gồm : Tên thiết bị , tên nhà cung cấp , tên dây chuyền mà thiết bị hiện đang hoạt động tại đó , kiểu bảo trì cho thiết bị , định kỳ bảo trì. Chức năng : -Thêm một thiết bị mới vào một dây chuyền sản xuất. -Xóa thiết bị ra khỏi dây chuyền sản xuất. -Sửa thông tin của thiết bị như : nhà cung cấp thiết bị , kiểu bảo trì , định kỳ bảo trì. -Xem : in ra nội dung danh sách thiết bị theo từng dây chuyền sản xuất. -Thoát : thoát khỏi form đang sử dụng. 55 Form Công Việc : Các thông tin trong form bao gồm : Tên công việc bảo trì cho thiết bị và cụm chi tiết của thiết bị, tên tổ phụ trách công việc đó. Chức năng : -Thêm một công việc mới cho một tổ phụ trách. -Xóa bỏ công việc khi không còn phù hợp trong công tác lên kế hoạch bảo trì cho thiết bị của nhà máy. -Chỉnh sửa thông tin công việc cho phù hợp với từng cụm chi tiết hoặc cho phù hợp với chuyên môn của từng tổ phụ trách. -Thoát : thoát khỏi form đang sử dụng. 56 Form Bảo trì thiết bị theo giờ : Các thông tin trong form bao gồm : Tên thiết bị, chỉ số đồng hồ lần gần nhất (lần trước) , chỉ số đồng hồ cần nhập để kiểm tra (lần hiện tại), tuần suất bảo trì (định kỳ bảo trì của thiết bị) , ngày ghi lưu thời điểm lập phiếu theo dõi, mốc định kỳ dự định bảo trì lần kế tiếp. Chức năng : -Kiểm tra : Dữ liệu nhập vào sẽ được tính toán và xuất ra thông tin cho người dùng biết thiết bị đó đã đến thời hạn bảo trì hay chưa ( dựa vào trạng thái true hay false), đồng thời lưu thông tin vào phiếu theo dõi tại thời điểm đó. Nếu thông tin của thiết bị trả ra giá trị true, tức là thiết bị đã đến thời hạn cần bảo trì, trên giao diện sẽ xuất hiện nút chức năng lập bảo trì. Khi người dùng muốn lập phiếu bảo trì thì phải bấm vào nút này để thông báo cho hệ thống biết và tự động lưu thông tin vào phiếu bảo trì. -Xóa : xóa một dòng dữ liệu khi người dùng vô tình nhập sai chỉ số đồng hồ. Khi đó chương trình sẽ xóa bỏ dòng dữ liệu vừa nhập và cho phép người dùng nhập lại chỉ số đồng hồ. -Thoát : thoát khỏi form đang sử dụng. 57 Form Quản lý thiết bị theo tháng : Form cung cấp những thông tin cho người dùng biết bao gồm : Tên thiết bị, tên cụm chi tiết của thiết bị đó, và một danh sách công việc kèm theo cho các cụm chi tiết theo từng thiết bị. Các chức năng của from : -Cho phép người dùng chọn thiết bị bằng cách click chọn tên thiết bị trên danh sách thiết bị nằm phía bên trái của form. Mỗi khi form được kích hoạt, hệ thống sẽ tự động xuất dữ liệu danh sách thiết bị theo kiểu bảo trì ứng với nút chọn ở phía bên trái gần danh sách thiết bị. -Khi người dùng đã chọn một thiết bị, hệ thống sẽ tự động load lên danh sách cụm chi tiết của thiết bị đó đang có, đồng thời sẽ load danh sách các công việc ứng với một cụm chi tiết của thiết bi. -Người dùng có thể thay đổi danh sách các cụm chi tiết ứng với thiết bị được chọn bằng cách click vào nút thêm/sửa/xóa cụm chi tiết. Khi đó hệ thống sẽ kích hoạt form cụm chi tiết cho người dùng chọn. 58 Form Cụm Chi Tiết : Form cung cấp thông tin cho người dùng biết bao gồm : Tên cụm chi tiết của thiết bị nào đó. Tên thiết bị được chọn để thực hiện thay đổi danh sách cụm chi tiết cho thiết bị đó. Chức năng của form: -Thêm danh sách một cụm chi tiết cho thiết bị -Xóa : cụm chi tiết ra khỏi thiết bị, khi cụm chi tiết không còn sử dụng hiệu quả hay bị hư hao trong quá trình hoạt động. -Sửa : thay đổi thông tin của cụm chi tiết -Thoát : khi người dùng click nút thoát hệ thống sẽ tự động kích hoạt form quản lý thiết bị và cập nhật thông tin mà người dùng đã thay đổi. đồng thời thoát khỏi form cụm chi tiết. 59 Quay trở lại với form quản lý thiết bị: Người dùng có thể xem danh sách thiết bị theo giờ bằng cách kích hoạt hệ thống khi nhấn thay đổi nút chọn ở phía danh sách thiết bị. -Các chức năng khi thêm công việc cho từng cụm chi tiết hay thêm cụm chi tiết cho thiết bị đều được hệ thống xử lý giống như trên. -Để thay đổi công việc cho từng cụm chi tiết người dùng có thể chọn một cụm chi tiết nào đó và click nút thêm/xóa công việc. Khi đó hệ thống sẽ tự động kích hoạt form Chọn công việc cho cụm chi tiết. -Đối với danh sách thiết bị bảo trì theo giờ hệ thống sẽ tự động lấy chu kỳ thời gian cho phép của thiết bị mà thiết lập định kỳ bảo trì cho các công việc được thêm vào từng cụm chi tiết. 60 Form chọn công việc : Form cung cấp thông tin cho người dùng biết bao gồm : danh sách các công việc hiện có, thông tin của cụm chi tiết được chọn để thêm công việc, định kỳ của công việc, và ngày áp dụng để thực hiện. Chức năng của form : -Xóa CV Cụm chi tiết : khi click nút này hệ thống sẽ tải danh sách công việc hiện có của cụm chi tiết này. Người dùng có thể chọn tên từng công việc và thay đổi nó như : người dùng có thể xóa, Thay đổi định kỳ công việc cho phù hợp với kế hoạch bảo trì ( chỉ áp dụng cho những thiết bị bảo trì theo tháng). -Tạo mới : Khi click nút tạo mới hệ thống sẽ kích hoạt form công việc cho người dùng thực hiện thay đổi công việc hay xóa….. 61 -Chọn: khi muốn áp dụng một công việc trên danh sách hiện có người dùng chỉ cần click nút chọn. -Không chọn : khi được click sẽ tự động trở về form quản lý thiết bị, đồng thời cập nhật lại thông tin công việc cho cụm chi tiết. Form Tổ Thực Hiện : Form cung cấp thông tin danh sách các tổ phụ trách bảo trì. Chức năng : -Thêm một tổ mới để phụ trách các công việc tùy theo chức năng của tổ. -Xóa bỏ một tổ phụ trách công việc không cần thiết nữa. -Chỉnh sửa tên tổ phụ trách nếu có sai sót về chức năng của tổ. -Thoát : thoát khỏi form đang sử dụng 62 Form Nhà Cung Cấp : Form cung cấp thông tin cho người dùng bao gồm : tên các nhà cung cấp, sản xuất thiết bị cho nhà máy, địa chỉ cụ thể của từng nhà cung cấp để có thể thuận tiện liên lạc khi cần thiết. Chức năng : -Thêm một nhà cung cấp mới vào hệ thống danh sách các nhà cung cấp thiết bị của nhà máy. -Xóa bỏ nhà cung cấp khi không còn sử dụng thiết bị của nhà cung cấp đó nữa. -Chỉnh sửa thông tin nhà cung cấp khi có sai sót về tên hoặc địa chỉ của nhà cung cấp, cập nhật chỉnh sửa số điện thoại, mail, … -Xem : In ra danh sách các nhà cung cấp thiết bị cho nhà máy. -Thoát : thoát khỏi form đang sử dụng. 63 Form Phiếu Bảo Trì : Form phiếu bảo trì có hai tùy chọn : Xuất ra danh sách thiết bị bảo trì trong tháng và xuất ra danh sách chi tiết công việc cho thiết bị. Khi người dùng chọn mục “Danh sách thiết bị bảo trì trong tháng” , combobox lựa chọn thiết bị cụ thể sẽ bị bôi mờ. Người dụng chọn tháng/năm để hệ thống tìm kiếm và xuất ra danh sách các thiết bị đã được lập lịch bảo trì trong tháng/năm đó. Khi người dụng chọn mục “Chi tiết công việc cho thiết bị”, combobox chọn thiết bị sẽ hiện ra cho người dùng chọn thiết bị cần xem chi tiết công việc. Người dùng cũng cần phải chọn tháng/năm để hệ thống tìm kiếm và xuất ra danh sách công việc bảo trì cụ thể cho thiết bị đó nếu tìm thấy dữ liệu phù hợp trong phiếu bảo trì. -Chức năng xem để người dùng có thể xem thông tin trực tiếp ngay bên khung bên dưới của giao diện form. 64 -Chức năng in để hệ thống xuất ra file dạng báo cáo khi người dùng cần thiết phải lập hồ sơ báo cáo lên cấp trên hoặc đưa xuống cho tổ phụ trách bảo trì. Form Tài Khoản : . Form quản lý thông tin tài khoản của người sử dụng chương trình quản lý. Phần danh sách tài khoản chỉ hiện tên tài khoản và ẩn đi phần mật khẩu để bảo mật thông tin tài khoản cho người dùng. Chức năng : -Thêm một tài khoản mới. -Sửa lại tên hoặc mật khẩu của tài khoản. Khi làm việc này sẽ cần thao tác nhập lại mật khẩu. -Xóa một tài khoản sử dụng khỏi hệ thống. -Thoát : thoát khỏi form đang sử dụng. 65 Một số mẫu báo cáo trong chương trình : -Danh sách các nhà cung cấp thiết bị cho nhà máy : 66 -Danh sách các thiết bị được sắp xếp theo từng dây chuyền sản xuất riêng biệt , bao gồm các thông tin như tên thiết bị, kiểu bảo trì, định kỳ , nhà cung cấp. 67 -Danh sách nội dung chi tiết công việc bảo trì cho từng thiết bị, bao gồm tên của từng thiết bị, kiểu bảo trì của thiết bị, định kỳ cụ thể của từng công việc bảo trì , tổ phụ trách bảo trì. -Dựa vào nội dung chi tiết này , hệ thống sẽ xuất lịch bảo trì cho từng thiết bị cũng như cho toàn bộ các thiết bị khi cần lập lịch bảo trì trong tháng/năm. 68 Danh sách các thiết bị được bảo trì trong tháng/năm : Khi người dùng chọn tháng/năm và bấm nút in ở phiếu bảo trì, danh sách các thiết bị được bảo trì trong tháng sẽ được xuất ra dưới dạng báo cáo : Phiếu này sẽ được có tác dụng bàn giao danh sách các thiết bị cần bảo trì trong tháng. Phiếu sẽ được ký giữa hai bên giao và nhận. Bên giao là ban kỹ thuật nhà máy, bên nhận là tổ phụ trách bảo trì. Trong phiếu còn có hai cột ngày giao và ngày trả để xác định rõ thời gian bàn giao. 69 Danh sách công việc cụ thể cho từng thiết bị cần bảo trì trong tháng/năm. Nội dung phiếu bao gồm : mô tả chi tiết công việc cho từng cụm chi tiết của một thiết bị cụ thể theo lịch bảo trì. Trong phiếu có ghi rõ ngày bắt đầu và ngày kết thúc bảo trì. Đơn vị thực hiện, kết quả thực hiện, công việc phát sinh (nếu có) , ký tên. Dựa vào thông tin chi tiết của phiếu cho từng thiết bị , hệ thống sẽ lập ra một lịch bảo trì cho toàn bộ các thiết bị của nhà máy theo tháng/năm. 70 II. Giới thiệu công cụ thực hiện : 1. Giới thiệu sơ lược VISUAL STUDIO.NET : 1.1 Tổng quan về ASP.NET : Hệ điều hành được Microsoft xem là tập hợp bao gồm nhiều đối tượng hoạt động tương tác lẫn nhau.Chương trình của bạn là một đối tượng .Microsoft gọi mô hình này với tên gọi khá phổ biến là COM (Component Object Model).Tất cả mọi thứ đều quy về đối tượng với phương thức ,thuộc tính và dịch vụ mà đối tượng có thể cung cấp.Phát triển hơn nữa gicrosoft mở rông COM thành kiến trúc COM+ cho phép các đối tượng COM mở rộng giao tiếp với nhau trên mọi nền Windows ,máy chủ(server),máy khách (client) đâu đâu cũng là các thành phần đối tượng có thể giao tiếp và triệu gọi xuyên suốt. Với sự bùng nổ Internet,Microsoft một lần nữa lại đưa mô hình kiến trúc COM+ thành mô hình đối tượng cao hơn ảnh hưởng đến toàn bộ hệ điều hành.Kiến trúc này mang khung dịch vụ web kế tiếp-Next Generation Web Service Framwork hay NGWSG.Tuy mang tên Web nhưng thực tế kiến trúc này đã ăn sâu vào hệ điều hành.NGWSF bổ sung các dịch vụ mới cho các đối tượng ứng dụng phân tán COM+ bao gồm : -Một tập các thư viện lập trình phong phú và thống nhất. -Bộ thực thi chương trình đa ngôn ngữ. -Đơn giản hóa quá trình tạo lập,phân phối và bảo trì ứng dụng. -Tăng tính mềm dẻo và khả chuyển cho các ứng dụng phân tán. -Bảo vệ các phầm mềm hiện có và giảm đầu tư về đào tạo. Kiến trúc NGWSF hoàn chỉnh mọi kiểu ứng dụng từ đóng gói,phát triển bảo trì,kiểm tra các ứng dụng trên trình khác (client) cho đến các ứng dụng phân tán phức tạp trên trình chủ(server).Toàn bộ khái niệm NGWSF là một phần dực trên ý tưởng và nền tảng của kiến trúc “Ứng dụng Internet phân tán” (DNA-Distributed Internet Application) 71 Bộ khung NGWSF không đơn thuần chỉ dành riêng cho ASP.NET mà nó ảnh hưởng đến tất cả các ứng dụng chạy trên Windows trong tương lai.Bộ khung thực thi(runtime framework) được Windows kiểm soát trên toàn bộ hệ điều hành đối với mọi ứng dụng trong đó ASP.NET chỉ là một bộ phận. Khung làm việc NGWSF cung cấp bộ máy thực thi mã lệnh (execute engine) cùng với tập hợp các lớp hay thành phần hướng đối tượng có thể sử dụng để tạo nên ứng dụng.Bộ khung này làm việc như là lớp giao tiếp giữa ứng dụng và hạt nhân của hệ điều hành.Tầng trung gian này sẽ cho phép các ứng dụng sử dụng tốt hơn các ưu điểm của hệ điều hành,đơn giản hóa quá trình phát triển và phân phối ứng dụng trong môi trường thương mại đầy cạnh tranh hiện nay. Để đạt mục đích này,bộ khung thực thi runtime của NGWSF đã cài đặt rất nhiều đặc điểm mà lập trình viên hay một môi trường lập trình cụ thể nào đó phải tự cài đặt trước đây.Bộ khung này cung cấp các cơ chế như:Tự động thu gom rác bộ nhớ (garbage collector),tập các đối tượng đầy đủ những chức năng phục vụ cho những công việc lập trình thông thường nhất.Tăng khả năng bảo mật và an toàn cho ứng dụng.Chức năng bảo mật sau cùng rất quan trọng ,nhất là đối với các chương trình mở rộng triệu gọi thông qua mạng Internet như ngày nay Một trong những ưu điểm nổi bật của bộ khung thực thi cung cấp cho bạn môi trường thực thi trung lập về ngôn ngữ.Tất cả mã lệnh viết bằng ngôn ngữ lập trình nào điều được biên dịch thành ngôn ngữ trung gian gọi là IL(Intermediate Language).Bộ khung thực thi sẽ tạo ra mã nhị phân cuối cùng hình thành nên ứng dụng và điều khiển mã.Đối với trang ASP.NET mã nguồn sẽ được dịch ra mã IL và chỉ có mã IL được gọi thực thi.Khi mã nguổn thay đổi thì mã IL của trang ASP.NET sẽ được biên dịch lại.Các trang ASP.NET còn giữ trong vùng đệm cache sẽ bị hủy bỏ và được thay bằng các trang biên dịch ASP.NET với mã IL mới.Cho dù bạn sử dụng Visual Basic ,C#,Jscript ,Perl hay bất kỳ ngôn ngữ hỗ trợ nào khác ,mã IL được biên dịch cũng sẽ như nhau.Chúng là mã thực thi trong bộ khung NGWSF. 72 Một ưu điểm nữa là bạn có thể gọi mã lệnh của một ngôn ngữ lập trình hoàn toàn khác với ngôn ngữ lập trình đang được dùng để viết ứng dụng.Nghĩa là bạn có thể tạo ra đối tượng từ một ngôn ngữ,sau đó có thể triệu gọi hay thay đổi nội dung đối tượng từ một ngôn ngữ khác.Ví dụ như bạn có thể tạo ra một đối tượng từ ngôn ngữ C# sau đó kế thừa và tạo ra một đối tượng mới từ ngôn ngữ Visual Basic(VB) như thêm vào phương thức ,thuộc tính ,thay đổi hay đè chồng lên các phương thức thay đổi trước đó…Thực tế một phần của bộ khung NGWSF và toàn bộ mô hình ASP.NET được cài đặt bên trong bằng C# thay vì C++. Cơ sở hạ tầng của ứng dụng web : Hạ tầng của các ứng dụng Web nằm trong một phần của kiến trúc .NET NGWSF.Chúng bao gồm các dịch vụ Web và trang ASP ,ASP.NET.Cùng với bộ khung mới của môi trường thực thực thi ứng dụng .NET,các ứng dụng và dịch vụ web đưa ra những đặc điểm nổi bật sau đây:Hỗ trợ giao diện người dùng. Các thành phẩn điều khiển đa năng (rich control) là một phần trong cài đặt của ASP.NET.Những điều khiển này giúp bạn tạo ra giao diện web nhanh chóng và đơn giản.Thành phần rich control chạy trên Server và có khả năng tạo ra mã HTML tương thích với hầu hết các trình duyệt cũ.Đồng thời bạn cũng có thể yêu cầu sinh mã tận dụng các tính năng nâng cao hỗ trợ bởi trình duyệt phía máy khách như HTML 4.0 ,các dịch vụ và hỗ trợ bởi Internet explore 4,5,6...Bạn có thể mở rộng ,kế thừa và tạo ra các thành phần điều khiển đa năng khác dựa trên các thành phần chuẩn của thư viện sẵn có. Hỗ trợ truy xuất dữ liệu : Môi trường NGWSF cung cấp phiên bản mới của ADO gọi là ADO+ cho phép truy xuất dữ liệu bất kể khuôn dạng hoặc vị trí của dữ liệu.ADO+ thiết kế theo mô hình hướng đối tượng trên dữ liệu quan hệ,chúng cho phép các nhà phát triển có khả năng trích rút dữ liệu từ các nguồn phân tán khác nhau. ADO+ cũng tăng cường khả năng hỗ trợ dữ liệu XML .Bạn có thể tạo ra tập dữ liệu các recordset từ XML ( còn gọi là dataset trong XML) lưu trữ ,đóng gói và truyền đi trên mạng.Dữ liệu XML có thể đọc và hiểu bởi rất nhiều ứng dụng Internet 73 Khả năng mở rộng dành cho các ứng dụng phân tán : Hai yêu cầu thiết yếu đối với tất cả các ứng dụng dựa trên nền web đó là hệ điều hành nền(platform) phải vững chắc và khả năng mở rộng trên môi trường truy xuất lớn cho phép đồng thời xử lý nhiều kết nối.Môi trường thực thi NGWSF cung cấp các chức năng tự động kiểm tra lỗi và phát hiện những trường hợp quá tải.NGWSF sẽ tìm cách khởi động và tái tạo lại các ứng dụng cũng như các thành phần đối tượng để khả năng phục vụ của chúng cho kết nối tốt hơn.Điều này sẽ giảm thiểu những lỗi như tài nguyên hệ thống cạn kiệt ,kết nối tắc nghẽn… 1.2 ASP.NET(ACTIVE SERVER PAGE.NET) ASP.NET là một công nghệ có tính cách mạng dùng để phát triển các ứng dụng mạng hiện nay cũng như trong tương lai. ASP.NET là một platform phát triển các ứng dụng web hợp nhất cung cấp các dịch vụ cần thiết cho việc xây dựng các ứng dụng Enterprise – class Web.ASP.NET được thiết kế tương thích với các ứng dụng ASP trước đó. ASP .NET được biên dịch, dựa trên môi trường .NET cho phép tạo ra các ứng dụng trong bất cứ ngôn ngữ lập trình nào tương thích .NET chẳng hạn như C#, Visual Basic.NET, Jscrip.NET. Ngoài ra, toàn bộ .NET Framework sẵn sàng cho các ứng dụng ASP.NET, các nhà phát triển có thể có lợi ích từ những kỹ thuật sau bao gồm : managed common langguage runtime environment, an toàn kiểu… ASP.NET được sử dụng chung với các lớp lập trình mà nó có thể tạo các ứng dụng Web một cách dễ dàng cho người lập trình. ASP.NET cung cấp cách truy cập giao diện HTML chung và nó chạy trên chương trình máy phục vụ nhưng thể hiện kết quả thông qua HTML (ví dụ như text box chẳng hạn). Giao diện ASP.NET làm cho việc phát triển các ứng dụng Web trở nên nhanh hơn do bởi các đối tượng điều khiển chung này. Như một kết quả (của) các lớp lập trình chung và những đặc tính chuẩn của ASP.NET, các nhà phát triển tiêu tốn ít thời gian hơn khi viết các mã mới và cần nhiều thời gian hơn khi sử dụng các mã đã có. ASP.NET được sử dụng ở phần trên của hai thành phần thực thi ngôn ngữ chung CLR và các ngôn ngữ lập trình hợp nhất để tạo ra các dịch vụ Web. 74 ASP.NET giúp ta phát triển và triển khai các ứng dụng về mạng trong một thời gian kỷ lục vì nó cung cấp cho ta một kiểu mẫu lập trình dễ dàng và gọn gàng nhất.Ngoài ra các trang ASP.NET có thể làm việc với mọi browser hiện nay như Internet Explorer(IE),Netscape,Opera,AOL...mà không cần phải thay đổi mã nguồn vất vả như trước. ASP.NET có khả năng lưu trữ một kết quả chung trong bộ phận memory của trang để gởi giải đáp cho cùng môt yêu cầu từ nhiều khách hàng khác nhau và nhờ đó không chỉ tiết kiệm được sự lập đi lập lại công tác thi hành của một trang web mà còn gia tăng hiệu suất một cách ngoạn mục do hạn chế tối đa việc truy xuất các cơ sở dữ liệu vốn tốn rất nhiều thời gian. ASP.NET tự động dò tìm và phục hồi (detect and recovers) những trở ngại nghiêm trọng như deadlocks hay bộ nhớ (memory) bị rỉ để đảm bảo ứng dụng của bản luôn luôn sẵn sàng mà không làm cản trở việc cung ứng các dịch vụ cần thiết thường lệ. Một số đặc tính nổi bật của ASP.NET Pages(trang ứng dụng) :Sử dụng các thành phần điều khiển có khả năng hoạt động và tương tác với nhau ngay trên trình chủ web server.Đặc điểm này giảm thiểu quá trình viết mã tương tác giữa các trang.Lập trình trong môi trường ASP.NET tuơng tự như lập trình thiết kế trong VB Form và do đó các ứng dụng ASP.NET còn gọi là Web Forms. HTML server Side Controls :Các thành phần điều khiển HTML có khả năng xử lý ngay trên trình chủ dựa vào thuộc tính và phương thức tương tự các họat động của chúng phía trình khách.Những thành phần điểu khiển này còn cho phép kết hợp mã xử lý của trang ASP.NET với một sự kiện nào đó phát sinh phía trình khách được xem như đang diễn ra trên trình chủ(mô hình chuyển giao-deligated). Rich Control : Tập các thành phần điều khiển đa năng .Các Rich Control chạy trên server và có thể tạo ra các phần tử cũng như đối tuợng HTML thích hợp cho trình khách. Ví dụ :(grid),lich(calendar),bảng(table),khung nhìn(list view)..Rich Control còn cho phép bạn ràng buộc dữ liệu và xử lý dữ liệu tương tự như đang viết ứng dụng destop thật sự.Xóa đi biên giới của mô hình khách chủ client/server. 75 Web service : Các dịch vụ web,trang ASP.NET của bạn có thể không cần hiển thị kết xuất cho trình khách.Chúng hoạt động như các chương trình xử lý yêu cầu ở hậu cảnh.Ví dụ trang ASP.NET có thể là một lớp đối tượng cung cấp các phương thức trả về giá trị nào đó khi nhận được yêu cầu từ trình khách. Cấu hình và phân phối : Đơn giản ,dễ dàng với các file cấu hình theo định dạng XML .Các thành phần đối tượng không cần phải đăng ký với hệ thống trước khi sử dụng nữa(không còn dùng đến regsvr32.exe).Bạn chỉ cần copy các trang ASP.NET hay các đối tượng lên máy chủ,chỉ ra vị trí của chúng và thế là chương trình hay dịch vụ của bạn đã có thể sẵn sàng sử dụng. Tự động quản lý trạng thái Session và Application :Bạn có thể lưu nội dung của Session hay Application của một ứng dụng đặc thù xuống các file trên đĩa để sử dụng lại. Một tập các đối tượng phong phú :ASP.NET hỗ trợ một tập phong phú các thư viện lớp và đối tượng phục vụ cho hầu hết những gì các nhà phát triển cần đến.Bằng những thư viện này công việc viết ứng dụng cho web trở nên đơn giản và dễ dàng hơn bao giờ hết.Ví dụ như bạn có thể sử dụng các thành phần đối tượng « Send Mail« để gửi nhận nhận ,đối tượng mã hóa và giải mã thông tin ,đối tượng đếm số người truy cập Web (counter),đối tượng truy xuất dữ liệu ADO ,đối tượng truy cập các dịch vụ mạng,đối tượng đọc ghi hệ thống file NT,đối tượng ghi ra logfile của hệ điều hành... Các đối tượng nội tại khác như Request ,Respone ,Form ,Cookies ,Servervariables đều được giữ lại và hoàn toàn tương thích với ASP. Độc lâp ngôn ngữ : ASP cho phép bạn biên dịch không phụ thuộc ngôn ngữ, thực hiên tối ưu việc kết hợp các ngôn ngữ khác nhau. Chúng ta có thể sử dụng C#, VB.NET hay kể cả C++ để xây dựng trang ASP.NET. Dễ phát triển : ASP.NET cho phép khai báo và viết mã đơn giản. Tách mã và nội dung hai thành phần khác nhau : sử dụng trang Code Behide (.vb, .cs) chứa mã và trang asp chứa giao diện người dùng. Tính mềm dẻo à khả năng cung cấp. Hỗ trợ nhiều trình khách 76 Các Web form Controls ngoài việc có thể xuất mã trên trình duyệt còn cho phép xuất ra tất cả các điều khiển của Platform khác như wireless phone, palm, pager… Xử lý trình chủ dùng phát biểu Runat = server . Thay vì sử dụng mô hình tích hợp DLL, COM, DCOM trước đây, với công nghệ ASP.NET ta có thể sử dụng dịch vụ đơn giả hơn đó là Web Services. ASP.NET và ASP 3.0. Mặc dù ASP 3.0 ra đời chưa lâu, Microsoft đã và đang nỗ lực cho một công nghệ web xử lý phía máy chủ hoàn toàn mới đó là ASP.NET (còn được biết đến với một tên khác là ASP+ ở bản beta) .Microsoft gọi công nghệ này với môt tên hấp dẫn hơn là” Dịch vụ web thế hệ kế tiếp” ( Next Generation Web Service) ASP.NET được thiết kế tương thích với các phiên bản ASP trước đó.Chỉ cần thay đổi rất ít khi chuyển ứng dụng sẵn có từ ASP sang ASP.NET. Hiện tại ASP chỉ là ngôn ngữ kịch bản phi định kiểu(none type) dựa trên VBScript hay Jscript.ASP không tận dụng được các ngôn ngữ ràng buộc kiểu mạnh như C++ hay Visual Basic.ASP.NET cho phép sử dụng ngôn ngữ trung lập.Trang ASP.NET có thể viết bằng rất nhiều ngôn ngữ như VBScript ,Jscript ,Visual Basic ,C++,C#,Perl… Một bất tiện của các trang ASP đó là mã lệnh và giao diện(định dạng bằng HTML) trộn lẫn với nhau.Khi phát triển các ứng dụng Web lớn thường các dự án tách ra làm hai nhóm.Một nhóm thiết kế giao diên và một nhóm viết lập trình.Kết quả cuối cùng thường là sự trộn lẫn giữa phần thiết kế giao diện và mã lệnh ASP để tạo ra một file chương trình duy nhất.Các trang ASP của ứng dụng do đó rất khó bảo trì khi muốn them vào các mã lập trình mới hay thay đổi giao diện.ASP.NET cho phép tách rời giữa mã lập trình và nội dung tài liệu. Trong các phiên bản ASP trước ,hầu như phải viết mã chương trình để quản lý mọi chuyện.Bạn muốn quản lý trạng thái của các trường nhập liệu trong FORM ,cần phải viết mã.Bạn muốn kiểm tra tính hợp lệ của dữ liệu(validate)do người dùng nhập vào cần phải viết mã.ASP.NET thật sự là mô hình đối tượng thành phần loại bỏ rất nhiều công đọan viết mã chương trình cho lập trình viên Web thường phải làm.ASP.NET cung cấp các thành phần điều khiển họat động phía máy chủ(server side control) họat động theo hướng xử lý sự kiện(tương tự các sự kiện xử lý trên Form của chương trình 77 Visual Basic).Bạn chỉ cần khai báo các thành phần điều khiển cần sử dụng và trong hầu hết các trường hợp bạn không cần phải viết thêm mã lệnh.Mọi việc kiểm soát trạng thái và tuơng tác với thành phần điều khiển đều được trình chủ Web Server với kiến trúc ASP.NET lo liệu. Ngày nay thế giới đã thay đổi nhanh chóng với các thiết bị cầm tay như điện thoại di động ,máy Palm ,TV có thể kết nối Internet.Những thiết bị này đều chuẩn bị khả năng kết nối Internet và máy chủ phục vụ Web.Công việc xử lý trên máy chủ là rất nhiều.Chẳng hạn ngoài việc xử lý trang HTML bạn còn phải có khả năng tạo các trang WML phục vụ cho điện thoại di động,xử lý và trao đổi dữ liệu XML…Những công việc này có thể xử lý bằng ASP nhưng cũng cần them các thư viện phụ và đòi hỏi quá trình viết mã rất công phu.ASP.NET sẵn có các dịch vụ này cho để bạn sử dụng. Bên cạnh đó chúng ta cần phải có khả năng xây dựng các đối tượng phân tán có thể triệu gọi từ xa và sử dụng lại trên nhiều hệ điều hành.Các đối tượng phải dễ thiết kế và cài đặt khi đưa vào sử dụng.ASP.NET cung cấp kiến trúc hạ tầng để xây dựng các ứng dụng phân tán trên Web theo phương thức triệu gọi SOAP (Simple Object Access Protocol-Giao thức truy xuất đối tuợng giản đơn) cho phép thực hiện chuyển đổi dữ liệu XML phục vụ cho môi trường thương mại điện tử B2B(Business to Business).ASP.NET cung ấp đầy đủ các dịch vụ từ bảo mật đến cấp phát bộ nhớ ,thu gom rác ,theo dõi sự quá tải của các thành phần đối tượng,cân bằng tải(load balane)giảm thiểu tối đa các kết nối tốn tài nguyên… Để đạt được những mục tiêu này ASP đã thay đồi toàn bộ thành môi trường lập trình mới .Visual Studio.NET của Microsoft là công cụ tuyệt vời nhất để bạn xây dựng các ứng dụng Web,đặc biệt là ASP.NET.Môi trường lập trình mới cùa Microsoft trên nền Windows không phân biệt ngôn ngữ.ASP.NET có thể viết bằng bất kỳ ngôn ngữ nào của Visual Studio.NET như C#,VB,C++. Tập tin của ASP.NET(ASP.NET file) có extension là .ASPX ,còn tập tin của ASP là .ASP Tập tin của ASP.NET(ASP.NET file) được phân tích ngữ pháp(parsed) XSPISAPI.DLL ,còn tập tin của ASP được phân tích bởi ASP.DLL. 78 ASP.NET là kiểu mẫu lập trình phát động bằng sự kiện(event driven),còn trang ASP được thực thi theo thứ tự tuần tự từ trên xuống. ASP.NET sử dụng trình biên dịch (compiled code) nên rất nhanh ,còn ASP sử dụng trình thông dịch(interpreted code) do đó hiệu suất và tốc độ phát triển cũng thua sút hẳn. Cơ cấu hoạt động của trang ASP.NET. Khi trình khách lần đầu tiên yêu cầu trang ASP.NET ,trình chủ Web Server sẽ kiểm tra xem trang ASP.NET đã được biên dịch và lưu trong bộ đệm(cache) chưa .Nếu chưa môi trường thực thi .NET sẽ biên dịch trang ASP.NET mà trình khách yêu cầu và đưa mã trang đã biên dịch vào vùng đêm cache.Trang ASP.NET sẽ được biên dịch ra mã thực thi trung gian IL(khác với mã nhị phân của các trình ứng dụng.exe)Vì lý do này mọi ngôn ngữ lập trình có khả năng tạo ra mã IL đều có thể được dùng để viết trang ASP.NET.Do được biên dịch và lưu trong vùng đệm nên ứng dụng xây dựng dựa trên trang ASP.NET chạy nhanh hơn các trang ASP. Web Clients ASP.NET Applications IIS .NET Framework Win NT/2000 Operating System 79 Như mô tả ở hình trên, ta thấy tất cả các web clients truyền thông với các ứng dụng ASP.NET thông qua các IIS. IIS giải mã và xác nhận tuỳ ý các request. Nếu Allow Anonymous được đặt là true thì sẽ không có việc chứng thực. IIS cũng tìm kiếm các tài nguyên được yêu cầu và nếu client được cấp quyền thì sẽ trả về các tài nguyên tương ứng. 1.3 Data Access Application Block : ASP.NET còn là một ngôn ngữ lập trình cở sở dữ liệu khá phổ biến ngày nay. Trong hệ thống quản lý thiết bị và bảo trì hệ thống còn sử dụng bộ thư viện applicationBlock.trong enterprise Library. Enterprise Library - Data Access Application Block (DAAB) cung cấp một số chức năng hết sức đơn giản để truy xuất, thực thi dữ liệu. Các ứng dụng có thể vận dụng DAAB dễ dàng và linh hoạt trong nhiều trường hợp như truy xuất dữ liệu để hiển thị (Select), các thao tác (Insert, Delete, Update, ...) trên cơ sở dữ liệu. DAAB hỗ trợ nhiều cách liên kết đến dữ liệu như sử dụng (thủ tục trữ sẵn) stored procedure hoặc viết lệnh trực tiếp từ mã lệnh (in-line SQL). Ngoài ra, DAAB còn cung cấp một số kỹ thuật như tạo tham số (parameters), lưu đệm (caching) tham số và cung cấp nhiều phương thức (methods). Tóm lại, DAAB là một giải pháp tiện ích giúp các lập trình viên tiết kiệm nhiều thời gian và công sức. Xem hai đoạn cose sau: Code1: string conString = "server=sqlserver;uid=sa;pwd=tc0ffsh0re;database=Northwind"; SqlConnection conn = new qlConnection(conString); string sqlQuery = "select top 10 FirstName, LastName from Employees"; conn.Open(); SqlCommand cmd = new SqlCommand(); cmd.CommandType = CommandType.Text; cmd.Connection = conn; cmd.CommandText = sqlQuery; SqlDataAdapter da = new SqlDataAdapter(cmd); 80 da.Fill(ds); conn.Close(); Code2: string conString = "server=sqlserver;uid=sa;pwd=password;database=Northwind"; SqlConnection conn = new SqlConnection(conString); string sqlQuery = "select top 10 FirstName, LastName from Employees"; DataSet ds = SqlHelper.ExecuteDataset(conn, CommandType.Text, sqlQuery); Hai đoạn code này chỉ nhằm mục đích lấy dữ liệu từ câu truy vấn đổ vào dataset vào có kết quả giống hệt nhau. Đoạn code dưới dùng một lớp SqlHelper để "help" get data còn đoạn code trên là code chuẩn mà tất cả chúng ta phải làm khi muốn connect đên database. Lớp SqlHelper này là một tool do Microsoft cung cấp free giúp chúng ta thao tác với SQL Server. Sử dụng bộ thư viện này sẽ giúp ta lập trình trên cơ sở dữ liệu nhanh hơn, giảm thời gian hoàn thanh và tiện lợi và cấu trúc viết không còn phức tạp nhiều. 1.3.1Cấu trúc một số lệnh được dùng : Câu lệnh để tạo một đối tượng lệnh sql để thực thi một stored procedure và thêm các tham số lựa chọn được cung cấp. Lệnh : CreateCommand SqlCommand command = CreateCommand(conn, "AddCustomer", "CustomerID", "CustomerName") Lệnh : ExecuteNonQueryTypedParams int result = ExecuteNonQuery(connString, CommandType.StoredProcedure, "PublishOrders") Lệnh : ExecuteReader ExecuteReader(connectionString, CommandType.StoredProcedure, spName, commandParameters) 81 Lệnh : ExecuteNonQuery int result = ExecuteNonQuery(connString, CommandType.StoredProcedure, "PublishOrders") Lệnh : ExecuteNonQuery có tham số int result =ExecuteNonQuery(connString, "PublishOrder",24,36) Lệnh : UpdateDataset UpdateDataset(conn,insertCommand, deleteCommand, updateCommand, dataset,"Order") Lệnh : ExecuteScalar. int orderCount = CInt(ExecuteScalar(connString, CommandType.StoredProcedure, "GetOrderCount")) Lệnh : ExecuteScalar có tham số. int orderCount = Cint(ExecuteScalar(connString, CommandType.StoredProcedure, "GetOrderCount", new SqlParameter ("@prodid", 24))). 2. Giới thiệu hệ quản trị cơ sở dữ liệu SQL SERVER : 2.1 Tổng quan về SQL SERVER : Để lập trình trên cơ sở dữ liệu phục vụ nhu cầu của công ty, có thể là người lên kế hoạch, thiết kế, và cài đặt các cơ sở dữ liệu... Có thể phải lập trình dựa trên một cơ sở dữ liệu đang tồn tại mà trước đó do một chuyên viên phát triển cơ sở dữ liệu khác đã tạo. Bởi vì cơ sở dữ liệu tạo thành là một phần then chốt của nhiều ứng dụng doanh nghiệp, việc hiểu cách mà các cơ sở dữ liệu được tạo và các tùy chọn nào thông thường được sử dụng là điều quan trọng. Microsoft SQL Server 2005 là một công cụ cho phép thiết kế cơ sở dữ liệu, các cách tính toán trên dữ liệu, và các hàm có sẳn để hổ việc lập trình trên các công cụ lập trình như Asp.net, Foxpro, java, … một cách nhanh chóng và thuận tiện. SQL Server 2005 có thể cho thấy các cách thiết lập, các tùy chọn cơ sở dữ liệu, và cách xem cấu trúc dữ liệu (metadata) của một cơ sở dữ liệu và các đối tượng. 82 Có thể sử dụng SQL Server thực hiện việc xử lý giao dịch, lưu trữ và phân tích dữ liệu. Các tính năng của SQL SEVER để thực hiện , xử lý giao dịch, lưu trữ và phân tích dữ liệu : ữ liệu cho các giao dịch (transactions) và phân tích (analysis). -Quản lý kho d -Khả năng lưu trữ dữ liệu với các kiểu dữ liệu có miền giá trị rộng, bao gồm text, numeric, Extensible Markup Language (XML), và các đối tượng lớn. -Đáp trả các yêu cầu từ các ứng dụng client. -Sử dụng Transact-SQL, XML, hay các câu lệnh SQL Server khác để gởi các yêu cầu giữa ứng dụng client và SQL Server. Hệ quản trị cơ sở dữ liệu SQL Server là đáng tin cậy đối với: ·Việc duy trì các mối quan hệ giữa các đối tượng dữ liệu trong một cơ sở dữ liệu. ·Việc bảo đảm rằng dữ liệu được lưu trữ đúng đắn và đứng đắn và các quy tắc định nghĩa các quan hệ giữa các đối tương dữ liệu là không bị xâm phạm. ·Việc khôi phục tất cả dữ liệu tới một điểm “point of known consistency”, trong sự kiện lỗi hệ thống. 2.2 Các lưu ý khi hoạt định một cơ sở dữ liệu : Mục tiêu của kho dữ liệu (Purpose of data storage): các cơ sở dữ liệu OLTP và OLAP có các mục tiêu khác nhau và vì vậy các yêu cầu thiết kế cũng sẽ khác nhau. Tần suất giao dịch (Transaction throughput) : các cơ sở dữ liệu OLTP thường có nhu cầu cao đối với số lượng các giao dịch có thể được xử lý mỗi phút, giờ, hay mỗi ngày. Một thiết kế đạt hiệu suất cao liên quan đến một mức độ thích hợp của sự chuẩn hóa (normalization), các chỉ mục (indexes), và sự phân chia dữ liệu có thể đạt được một mức độ rất cao của tần suất giao dịch. Khả năng tăng trưởng về khía cạnh vật lý của kho lưu trữ (Potential growth of physical dataưữ storage) Số lượng dữ liệu lớn đòi hỏi phần cứng phù hợp đối với bộ nhớ (memory), dung lượng đĩa cứng (hard disk), và khả năng của đơn vị xử lý trung tâm (central processing unit - CPU). Việc ước lượng số lượng dữ liệu mà cơ sở dữ liệu của bạn sẽ phải lưu trữ trong nhiều tháng và nhiều năm tiếp theo sau sẽ bảo đảm rằng cơ sở dữ liệu của bạn sẽ duy trì làm việc hiệu quả. Bạn có thể định cấu hình các cơ sở dữ liệu 83 sao cho các tập tin tăng trưởng một cách tự động với bước tăng theo thông số xác định nào đó đến một kích thước tối đa đã được chỉ định. Tuy nhiên, việc tăng trưởng tự động tập tin có thể ảnh hưởng đến hiệu suất hoạt động. Trong hầu hết các giải pháp cơ sở dữ liệu server-based, bạn nên tạo cơ sở dữ liệu với kích thước các tập tin phù hợp, theo dõi giám sát không gian thường sử dụng, và chỉ cấp phát thêm không gian cho tập tin chỉ khi thấy cần thiết. File location: nơi mà bạn đặt các tập tin có thể có tác động ảnh hưởng về hiệu suất thực thi. Nếu có thể, bạn nên sử dụng nhiều ổ đĩa, bạn có thể dàn trải các tập tin cơ sở dữ liệu của bạn trên nhiều hơn một đĩa. Điều này cho phép SQL Server nhận được sự thuận lợi của việc có nhiều kết nối và nhiều đầu đọc đĩa cho việc đọc và ghi dữ liệu hiệu quả. Để tạo một cơ sở dữ liệu có thể sử dụng các công cụ trực quan trong SQL Server Management Studio hoặc sử dụng câu lệnh CREATE DATABASE của Transact- SQL. Ví dụ sau đây trình bày cách tạo một cơ sở dữ liệu bằng cách sử dụng Transact- SQL : CREATE DATABASE TestDB ON (NAME = 'TestDB_Data', FILENAME = 'D:\DATA_ViDu\TestDB_Data.mdf', SIZE = 20 MB, FILEGROWTH = 0) LOG ON (NAME = 'TestDB_Log', FILENAME = 'D:\DATA_ViDu\TestDB_Log.ldf', SIZE = 5 MB, FILEGROWTH = 0) Nếu muốn, thay vì sử dụng câu lệnh Transact – SQL có thể dùng công cụ trực quan SQL Server Management Studio để tạo một cơ sở dữ liệu 84 (Hình I.1) Hình I.1 trình bày cách thực thi câu lệnh trên bằng cách sử dụng trình soạn thảo Query trong SQL Server Management Studio 2.3 Các đặt trưng trong một giao dịch của SQL SERVER : Atomicity (Tính nguyên tử): Một giao dịch là một đơn thể nguyên tử (atomic unit), có nghĩa là nó không thể được chia nhỏ, tất cả các các hành động đã được định nghĩa trong giao dịch được hoặc hoàn hoàn tất hoặc chẳng có hành động nào trong chúng được hoàn tất. Consistency (Tính nhất quán): Kết quả tác động của một giao dịch đối với dữ liệu luôn bảo đảm tính nhất quán của chúng. Isolation (Tính cô lập): Một giao dịch hành động trong sự cô lập tách rời khỏi các hoạt động cơ sở dữ liệu khác. Các hoạt động cơ sở dữ liệu khác không có hiệu lực với giao dịch. Durability (Tính bền vững): Bảo đảm rằng một khi giao dịch ủy thác kết quả của nó được duy trì cố định không bị xóa khỏi CSDL dù giao dịch có thành công hay không.Tính bền vững dẫn đến khái niệm phục hồi CSDL(database recovery). SQL Server hỗ trợ không tường minh (implicit) các giao dịch đối với các lệnh riêng lẻ sửa đổi dữ liệu và tường minh các giao dịch đối với các lệnh phức tạp mà chúng phải được thực thi như là một đơn thể. 85 Phân Loại Loại View Diển Giải Databases and files sys.database_files Trả về một dòng đối với mỗi tập tin database Objects sys.columns Trả về một dòng đối với mỗi cột (columns) của một đối tượng chứa các cột trong database Objects sys.events Trả về một dòng đối với mỗi sự kiện và một trigger hay một hành động nào đó kích hoạt Objects sys.indexes Trả về một dòng của mỗi index hay heap, danh sách của mỗi đối tượng Objects sys.tables Trả về một dòng đối với mỗi table trong database Objects sys.views Trả về một dòng đối với mỗi view trong database Schemas sys.schemas Trả về một dòng đối với mỗi schemas đã định nghĩa trong database Security sys.database_permissions Trả về một dòng đối với mỗi permission đã định nghĩa trong database Security sys.database_principals Trả về một dòng đối với mỗi Sercurity principal trong database Security sys.database_role_members Trả về một dòng đối với mỗi thành viên của một database role 86 2.4 Thao tác trên dữ liệu SQL : SQL là một cú pháp để thực hiện các truy vấn. Nhưng ngôn ngữ SQL cũng chứa các cú pháp cập nhật các mẩu tin (record), chèn các mẩu tin mới và xóa các mẩu tin đang tồn tại. Các lệnh truy vấn và cập nhật này thuộc dạng Ngôn ngữ Thao tác Dữ liệu (Data Manipulation Language - DML) một phần của SQL : -Lệnh SELECT – trích dữ liệu từ một cơ sở dữ liệu Phát biểu SELECT chọn các cột dữ liệu từ một cơ sở dữ liệu. Dùng phát biểu này để chọn (SELECT) thông tin từ (FROM) một bảng như sau: Cú pháp : SELECT column_name(s) FROM table_name -Lệnh WHERE dùng để chỉ định một tiêu chuẩn (criteria) chọn. Cú pháp : SELECT column FROM table WHERE column condition value = Bằng Không bằng > Lớn hơn < Nhỏ hơn >= Lớn hơn hay bằng <= Nhỏ hơn hay bằng LIKE Giống như Chú ý: Vài phiên bản SQL toán tử có thể được viết thành != -Toán tử AND & OR AND và OR kết nối hai hay nhiều điều kiện trong một mệnh đề WHERE. Toán tử AND hiển thị một cột nếu TẤT CẢ các điều kiện liệt kê đều đúng. Toán tử OR hiển thị một cột nếu MỘT TRONG các điều kiện liệt kê là đúng. -Toán tử BETWEEN ... AND Toán tử BETWEEN ... AND chọn tất cả các trị trong khoảng giới hạn giữa hai trị. Các trị này có thể là các số, văn bản, hay ngày tháng. -Từ khóa DISTINCT dùng trả về chỉ các trị khác biệt (distinct). 87 Cú pháp : SELECT DISTINCT column-name(s) FROM table-name -Từ khóa ORDER BY dùng sắp xếp kết quả thứ tự kết quả. Cú pháp : SELECT Company, OrderNumber FROM Orders ORDER BY Company -Lệnh INSERT INTO : chèn các dòng mới vào trong một bảng: Cú pháp : INSERT INTO table_nameVALUES (value1, value2,....) -Lệnh UPDATE : cập nhật hoặc thay đổi các dòng Cú pháp : UPDATE table_name SET column_name = new_value WHERE column_name = some_value -Lệnh DELETE dùng xóa một hay nhiều dòng trong một bảng. Cú pháp : DELETE FROM table_name WHERE column_name = some_value -Lệnh COUNT đếm số giá trị một cột nào đó. Cú pháp : SELECT COUNT(column) FROM table -Lệnh AVG trị trung bình của dữ liệu trong một cột có đu7ọc nhờ phép chọn. Các trị NULL sẽ không được tính toán. Cú pháp : SELECT AVG(Age) FROM Persons -Lệnh MAX trả về trị lớn nhất trong một cột. Các trị NULL sẽ không được tính toán. Cú pháp : SELECT MAX(Age) FROM Persons -Lệnh MIN trả về trị lớn nhất trong một cột. Các trị NULL sẽ không được tính toán. Cú pháp : SELECT MIN(Age) FROM Persons. -Lệnh GROUP BY được thêm vào SQL vì các hàm tổng (như SUM) trả về tổng của tất cả các trị trong cột mỗi khi chúng ta gọi đến. Thiếu chức năng GROUP BY, không thể tìm tổng của mỗi nhóm trị riêng trong cột. Cú pháp GROUP BY: SELECT column,SUM(column) FROM table GROUP BY column -Lệnh HAVING được thêm vào SQL vì từ khóa WHERE không thể dùng với các hàm tổng (như hàm SUM). Thiếu từ khóa HAVING sẽ không thể kiểm tra các điều kiện dùng hàm tổng. Cú pháp HAVING : SELECT column,SUM(column) FROM table GROUP BY column 88 -Lệnh HAVING SUM(column) condition value Từ khóa HAVING được thêm vào SQL vì từ khóa WHERE không thể dùng với các hàm tổng (như hàm SUM). Thiếu từ khóa HAVING sẽ không thể kiểm tra các điều kiện dùng hàm tổng. Cú pháp của HAVING : SELECT column,SUM(column) FROM table GROUP BY column HAVING SUM(column) condition value -Lệnh Alter Table phát biểu ALTER TABLE dùng để thêm hay loại bỏ các cột trong một bảng cho trước. ALTER TABLE table_name ADD column_name datatype ALTER TABLE table_name DROP column_name 89 KẾT LUẬN Qua thời gian nghiên cứu và thực hiện đề tài : “Phân tích thiết kế hệ thống thông tin và xây dựng chương trình Quản lý thiết bị - Lập lịch bảo trì” chúng em tới nay đã hoàn thành nhiệm vụ mà yêu cầu đề tài đặt ra. Qua quá trình thực hiện đồ án chúng em đã được trang bị thêm kiến thức về công tác bảo trì đối với các nhà máy sản xuất sản phẩm ở trong nước. Hạn chế của đề tài là việc phải nắm bắt về một lĩnh vực khá mới mẻ đối với những người chuyên về công nghệ thông tin như chúng em. Xây dựng chương trình quản lý trang thiết bị và lập lịch bảo trì cho các nhà máy hiện đang là một vấn đề rất khó khăn và được rất nhiều doanh nghiệp quan tâm. Do thời gian làm đề tài có hạn nên chúng em chỉ giới hạn đề tài ở mức độ Quản lý trang thiết bị và lập lịch bảo trì chứ chưa đủ sức mở rộng ra phạm vi chương trình Quản lý bảo trì. Hướng nghiên cứu tiếp của đề tài này là mở rộng giới hạn quản lý để đạt được tầm chương trình Quản lý bảo trì hoàn thiện hơn, ứng dụng cho các xí nghiệp, nhà máy. Mặc dù đã nỗ lực hết khả năng nhưng chắc chắn luận văn không tránh khỏi những thiếu sót do độ phức tạp của vấn đề, chúng em kính mong được sự chỉ dẫn tận tình của quý thầy cô giáo. SVTH : Châu Minh Danh Lê Việt Đức 90 TÀI LIỆU THAM KHẢO : -Microsoft SQL Server 2005 Implementation and Maintenance - Joseph L. Jorden, Dandy Weyn. -.NET Toàn Tập - Tập 2: C# Và.NET Framework - Lập Trình Visual C# Thế Nào? (Sách Tự Học) -Professional Crystal Reports for Visual Studio .NET by David McAmis. -Lập kế hoạch, điều độ và kiểm soát công tác bảo trì – Khoa Cơ Khí Đại Học Bách Khoa, Biên soạn : PGS.TS. Phạm Ngọc Tuấn. -Phân tích và thiết kế hệ thống thông tin quản lý – Biên soạn : PGS.TS Trần Thành Trai. -SQL Server 2005 – Lập trình nâng cao , tác giả : Phạm Hữu Khang.

Các file đính kèm theo tài liệu này:

  • pdfBáo cáo đề tài- Phân tích thiết kế hệ thống thông tin quản lý thiết bị và lập lịch bảo trì.pdf
Tài liệu liên quan