Visual Studio 2010 là một công cụ lập trình dành cho việc phát triển các ứng dụng và dịch vụ. Nó cung cấp các loại project khác nhau cho SharePoint cũng như các template dành cho workflow. Visual Studio 2010 sử dụng Windows Workflow Foundation (WF) để tạo ra các quy trình công việc theo từng giai đoạn và cuối cùng là thực thi công việc đó.
Trong phần 5 này, chúng ta sẽ cùng khám phá workflow trên Visual Studio 2010 ở cấp độ căn bản.
Các loại project Workflow trên Visual Studio
Các lập trình viên có thể tạo ra các workflow tuần tự hoặc theo từng giai đoạn trên Visual Studio 2010. Ngoài ra, có thể import SharePoint Designer – dựa trên Resuable workflow để tạo một giải pháp workflow. Visual Studio 2010 cung cấp một template như hình dưới dành cho tất cả các loại workflow.
Các hoạt động cơ bản trên workflow
Các hoạt động hiển thị trên Toolbox. Các lập trình viên có thể kéo thả các hoạt động này lên bản thiế kế workflow để xác định các bước trong workflow. Các thuộc tính của mỗi hoạt động được thiết lập tại cửa sổ Properties ngay góc dưới bên phải. Thư viện Base Activity Library của Windows Workflow Foundation cung cấp một nhóm gồm các hoạt động nền tảng và SharePoint 2010 cũng cung cấp các hoạt động dùng để thiết kế workflow.
Các hoạt động sau thường được sử dụng để thiết kế workflow trên SharePoint 2010:
Tạo workflow trên Visual Studio 2010
Việc tạo một workflow đơn giản trên Visual Studio 2010 bắt đầu với việc chọn template – sử dụng template Sequential hoặc State Machine. Sau khi chọn template thích hợp, bạn có thể chọn site để triển khai, kiểm nghiệm workflow đó. Bạn cũng có thể chọn các list trên site để áp dụng workflow. Cuối cùng thiết lập history và task list để sử dụng cho việc kiểm nghiệm workflow.
Một workflow đơn giản trên Visual Studio sẽ được bắt đầu với hoạt động OnWorkflowActivated, sau đó sử dụng hoạt động CreateTask để gán các công việc đến những người tham gia trong workflow. Chuẩn WhileActivity cũng có thể được sử dụng để chờ cho đến khi người dùng hoàn tất công việc và cung cấp dữ liệu cần thiết thông qua task form
OnTaskChanged thực thi trong WhileActivity, trích xuất bất cứ thông tin nào mà người dùng nhập trên form. Dựa trên các thông tin thu được, workflow có thể sử dụng hoạt động CodeActivity để thực hiện các xử lí phức tạp và cập nhật dữ liệu trên item hoặc tài liệu đã được thiết lập trên workflow.
SharePoint 2010 cung cấp tất cả các hoạt động có trên Visual Studio 2010 bên dưới SharePoint Workflow. Những hoạt động này được thiết kế để xử lí các hoạt động phổ biến trong môi trường SharePoint 2010. Tính logic khi thực thi workflow phụ thuộc vào người lập trình. Trên thực tế, người lập trình có thể lập trình ra các workflow tùy thích mà không bị hạn chế bởi các hoạt động được cung cấp trong SharePoint 2010 hoặc Windows Workflow Foundation.
Ngoài việc thiết kế tính logic cho workflow, các lập trình viên workflow cũng có nhiệm vụ tạo ra các form tương tác với người dùng. Có 4 loại form có thể tạo: Association, Initiation, Task và Modification. Để sử dụng form, bạn cần phải làm việc với InfoPath và ASPX. Namspace Microsoft.Windows.SharePoint.Workflow giúp bạn có thể phát triển workflow. Bằng cách sử dụng namespace này, người tạo workflow có thể làm tương tác giữa một form đến workflow và ngược lại.
Sau khi tạo workflow và form cho workflow, bạn có thể sử dụng các tính năng trên SharePoint để triển khai workflow. Một tập tin Element.xml sẽ liên kết form với workflow.
Các lâp trình workflow có thể debug workflow trên Visual Studio 2010 đơn giản chỉ bằng cách nhấn phím F5.
Các quản trị viên SharePoint phải cài đặt và triển khai giải pháp đến tất cả các Web application nơi mà workflow được sử dụng. Quản trị viên site collection có thể kích hoạt tính năng workflow trên site collection.
So sánh các chức năng về workflow giữa SharePoint Designer 2010 và Visual Studio 2010
Bảng dưới đây so sánh các chức năng về workflow giữa SharePoint Designer 2010 và Visual Studio 2010.
Hết phần 5 …Đón đọc phần 6 – Hoạch định triển khai Workflow.
Hẹn gặp lại…
SharePoint Sharing Central in Vietnam - http://sharepointvn.net/allSharePoint Stories: http://thuansoldier.net