開始者による取り消しが可能なサンプル承認ワークフロー
原文の記事の投稿日: 2012 年 8 月 16 日 (木曜日)
こんにちは。SharePoint Designer 15 (SPD 15 または SPD) のプログラム マネージャー、JongHwa Lim です。今日は、現実のシナリオを反映した単純なワークフローを 1 つご紹介します。このワークフローは、WF4 プラットフォームに基づく新しい SPD ワークフロー デザイナーでどのようなことができるのかを知るための手がかりにもなります。
開始者が提出した項目や情報の間違いに気付いた場合にプロセスを取り消す必要があるプロセスの例は、現実にも数多くあります。そのため、ここでは、WF4 プラットフォームで使用できる並列ステップ コンストラクトと 2 つのタスク アクションを活用する単純なワークフローを構築してみたいと思います。
これは、基本的なワークフローの骨組みです。通常の承認プロセス (Normal Approval Process) と取り消しプロセス (Recall Process) の 2 つのサイロ (サブステップ) を並行して実行するために並列ステップが使用されていることに注目してください。
以降では、このサンプルがどのように機能するのかを説明し、実行時の動作を確認します。
WF4 では、並列ステップにオプションのショートカット機能が用意されています。並列ステップを右クリックして [詳細プロパティ] をクリックすると、次のようなダイアログが表示されます。ここで、ショートカット機能を使用するかどうかを選択できます。この機能を使用するにはブール値変数が必要です。上のロジックで "IsShortCut" 変数が使用されているのはそのためです。
いずれかのサイロの実行が終了すると、もう一方のサイロが自動的に取り消されて、並列ステップが終了します。ご覧のとおり、一方のサイロには通常の承認プロセス (Normal Approval Process) が含まれていて、もう一方のサイロには取り消しプロセス (Recall Process) が含まれています。ワークフローの実行が並列ステップに入ると、通常の承認プロセス (Normal Approval Process) のタスクと取り消しプロセス (Recall Process) のタスクが並行して作成されます (このサンプル ワークフローの申請者は "Anne Weiler" です)。
通常の承認プロセス (Normal Approval Process) が完了するとワークフローを取り消す必要はなくなるため、実行が最初のサイロの最後に到達すると取り消しプロセス (Recall Process) は自動的に取り消されます。取り消しプロセス (Recall Process) のために作成されたタスクもタスク リストから削除されます。同様に、取り消しタスクが実行されて取り消しプロセス (Recall Process) が完了すると、通常の承認プロセス (Normal Approval Process) は自動的に取り消されます。
先にも述べたように、このワークフローは骨組みだけの例です。より現実的なものにするには、タスクの結果に基づいて判断を下すロジックなどを追加する必要があります。"承認" (Approved) と "却下" (Rejected) 以外の結果を使用する場合は、カスタム タスク コンテンツ タイプを使用する必要もあります。
より完全なワークフローの例を以下に示します。
このワークフローの例は、とてもシンプルですが、非常に強力です。今回はこれで終わりです。楽しんでいただけたでしょうか。皆さんのお役に立つ情報が含まれていればさいわいです。
お読みいただき、ありがとうございました。
JongHwa
これはローカライズされたブログ投稿です。原文の記事は、「A Sample Approval Workflow Which can be Recalled by the Initiator」をご覧ください。