SharePoint 2010のシーケンシャルワークフローのサンプル作成
それでは、Visual Studio 2010を使用してSharePoint 2010のワークフローを作成してみましょう。
サンプルの概要
サンプルとして、SharePoint 2010のシーケンシャルワークフローを作成してみます。
「お知らせ」リストの新規追加アイテムに対してワークフローを実行すると、ログを追加し、チェックを依頼する担当者を指定したタスクを新規作成します。ワークフローの開始フォームを使用して、タスクのタイトルを任意に指定できるようにします(図1)。タスクの担当者がチェック業務を行いタスクの達成率を100%に変更すると、自動的にタスクが削除され、ワークフローが完了します。
サンプルの作成
それでは、実際にサンプルを作成してみましょう。以下の手順で作成します。
[1]新しいプロジェクトを作成する
SharePoint 2010のシーケンシャルワークフロー用の新しいプロジェクトを作成します。
まず、管理者権限でVisual Studio 2010を起動します。これは、配置の際などにVisual StudioからSharePointサーバーにアクセスするためです。
次に、[ファイル]メニューの[新しいプロジェクト]をクリックします。表示された[新しいプロジェクト]ダイアログボックスで、[インストールされたテンプレート]から[Visual C#]-[SharePoint]-[2010]を選択し、プロジェクトテンプレートの一覧から[シーケンシャルワークフロー]を選択します。[名前]には「WorkflowProjectSample」と入力し、[OK]ボタンをクリックします(図2)。
[SharePointカスタマイズウィザード]が実行されます。最初に表示される[デバッグのサイトとセキュリティレベルの指定]ダイアログボックスで、[デバッグに使用するローカルサイト]には、使用するSharePointサイトのURLを入力します。信頼レベルとして、ファームソリューションが選択されていることを確認し、[次へ]ボタンをクリックします(図3)。なお、ファームソリューションとサンドボックスソリューションの違いについては、前回の記事を参照してください。
[デバッグのワークフロー名の設定]ダイアログボックスが表示されます。[ワークフローの名前]は既定のままとします。作成するワークフローは「お知らせ」リストと関連付けたいため、テンプレートの種類として[リストワークフロー]が選択されていることを確認し、[次へ]ボタンをクリックします(図4)。
[デバッグ時に使用するリストの選択]ダイアログボックスが表示されます。[デバッグセッション中に…]チェックボックスをチェック状態のままにしておきます。これによりデバッグ実行時に、作成するワークフローが「お知らせ」リストに自動的に関連付けられるようになり便利です。
[ワークフローを関連付けるライブラリまたはリスト]リストでは、[お知らせ]を選択します。後は既定の状態のまま、[次へ]ボタンをクリックします(図5)。
[ワークフローの開始に関する条件の指定]ダイアログボックスが表示されます。ここでワークフローの開始方法を指定します。最初の[ユーザーが手動でワークフローを開始]チェックボックスはチェック状態のままにしておきます。2番目の[項目が作成されたときにワークフローを自動的に開始]チェックボックスのチェックは外してきます。これは、ワークフロー実行時に開始フォームを表示してユーザー入力をさせる必要があるためです。最後に、[完了]ボタンをクリックします(図6)。なお、サイトワークフローの場合は、最初の手動による開始のみがチェック可能となります。
これで、シーケンシャルワークフローのプロジェクトが作成されました。図7は、プロジェクト作成直後の状態です。