[6]ワークフローにDeleteTaskアクティビティを追加する
ワークフローにDeleteTaskアクティビティを追加します。DeleteTaskアクティビティは、タスクの削除を実行します。
ツールボックスから、[SharePointワークフロー]内の[DeleteTask]を選択し、デザイン画面上の[whileActivity1]の下にドロップします(図19)。
次に手順[5]のonTaskChanged1アクティビティと同様に、追加したdeleteTask1のCorrelationTokenプロパティに「taskToken」を、CorrelationTokenプロパティを展開したOwnerActivityNameに「Workflow1」を、TaskIdプロパティに「createTask1_TaskId1」を設定します。
これで、サンプルのワークフローが完成しました。
サンプルの実行
それでは、作成したシーケンシャルワークフローを開発用のSharePointサイトで実行してみましょう。
デバック開始を実行します。ビルドが成功すると配置が開始されます。IISアプリケーションプールのリサイクル、ソリューションの取り消しと追加、フィーチャーのアクティブ化が順次実行され、最後に開発用SharePointサイトが起動し、作成したワークフローに関連付られている[お知らせ]リストのページが表示されます(図20)。
ページ内の[新しいお知らせの追加]リンクをクリックします。表示された[お知らせ - 新しいアイテム]ウィンドウで、タイトルや本文を入力し、[保存]ボタンをクリックします(図21)。
[お知らせ]リストにページが戻ります。新しく追加されたアイテムの右側のリストから[ワークフロー]を選択します(図22)。
表示が変わったページ内で、[新しいワークフローの開始]の下に表示されている[WorkflowProjectSample - Workflow1]のリンクをクリックします(図23)。
作成したワークフローが開始され、ワークフロー開始フォームが表示されます。任意の文字列を入力し、[チェックを依頼する]ボタンをクリックします(図24)。ここで入力された文字列が、新規タスクのタイトルとして設定されます。
[お知らせ]リストに表示が戻ります。先ほど追加したアイテムのワークフローが進行中であることが分かります。この[進行中]のリンクをクリックします(図25)。
ワークフローの情報が表示されます。[タスク]の部分を見ると、ワークフロー開始フォームで入力した文字列をタイトルに持つタスクが新たに作成されていることが分かります。さらに、[ワークフローの履歴]の部分を見ると、ログが追加されていることが分かります(図26)。ここで、タスクのタイトル部分のリンクをクリックします。
作成したタスクの内容が表示されます。[管理]タブ内の[アイテムの編集]をクリックします(図27)。
タスクの編集画面が表示されます。[達成率(%)]に「100」と入力し、[更新]タブ内の[保存]をクリックします(図28)。
ワークフローの情報ページに表示が戻ります。達成率を100%に変更したタスクがワークフローにより削除されたことが確認できます。同時に、ワークフローの状態が[完了]になっていることも確認できます(図29)。
[お知らせ]リストに戻っても、追加したアイテムのワークフローの表示が[完了]になっていることが確認できます(図30)。
まとめ
今回は、Visual Studio 2010を使用してSharePoint 2010のワークフローを作成する方法について解説しました。Visual Studio 2010とWFとSharePoint 2010用に用意されている機能の組み合わせにより、最小限のコードでビジュアルにワークフローを作成できることがお分かりいただけたことと思います。
次回は、Visual Studio 2010を使用してSharePoint 2010のイベントレシーバーを作成する方法について解説する予定です。