遷移は、ワークフロー内のあるノードから別のノードへの移動を表します。
このページ上
遷移とは、あるワークフローから別のワークフローへの移動を指します。ノードをクリックしてからドラッグし、ノードから別のノードに遷移を描画します。
ノードは、ワークフロー内の単一ステップです。たとえば、ノードは、ユーザーに割り当てられたタスク、または通知の送信や値の設定などのアクションを表すことができます。ノードは、ワークフローの「基礎的な要素」と考えることができます。
遷移は、ノードを接続することにより、ワークフローのステップのシーケンスを定義します。各ノードは、ノードから発生する、またはノードに向かう無制限の数の遷移を持つことができます。あるノードから別のノードに移動する前に満たす必要のある条件を定義する、遷移プロパティを設定できます。
遷移プロパティは、あるノードから次のノードに移動する前に満たす必要のある条件を定義できるようにします。たとえば、Priority や Amount などの列の値に基づいて、または Approved や Rejected などの現在のワークフローの状態に基づいて条件を設定できます。(条件でフォーム フィールドを使用する前に、フィールドを最初に昇格する必要があります。)
遷移条件では、次の演算子は機能しません。Like、Begin with、End with、Not begin、Not like、Not endwith。
ワークフローの任意の場所を右クリックすると、読みやすさを向上させるために遷移テキストを表示/非表示にできるコンテキスト メニューが開きます。
遷移プロパティとそれらを設定するときに使用できるショートカットの詳細については、すぐ下の「遷移プロパティの設定」を参照してください。
遷移の追加
- 遷移を作成するノードの中心をクリックします。
- マウスをドラッグして、ワークフローの次のノードに遷移を描画します。
遷移の削除
- 遷移をクリックします。
- キーボードの Delete キーを押すか、リボンの [削除] をクリックします。
遷移プロパティの設定
- キャンバスで、遷移をクリックします。
- [プロパティ] ペインに、選択した遷移のプロパティが表示されます。
- [遷移] で、[条件] の横にあるオプション ボタン […] をクリックします
- [条件の編集] ダイアログ ボックスに式/条件を入力し、[OK] をクリックします。式の作成と使用に関する追加のヘルプについては、「式」を参照してください。
遷移の関係演算子のリストについては以下の表を参照し、遷移プロパティの使用の詳細については、「遷移プロパティ」を参照してください。
遷移関数
関数を使用すると、リストおよびワークフロー データの処理が可能になります。特に、条件を使用してノードからノードに分岐できます。関数の引数は、リテラル値にすることも、列名として指定することもできます。後者の場合、引数値はリスト列から取得されます。次の表に、遷移関数の一覧と説明を示します。
一部の関数では、引数としてノード名が必要です。ノード名を指定するには、[条件の編集] ダイアログ ボックスにノード名を入力するか、[条件の編集] ダイアログ ボックスを右クリックし、[ノード] ポップアップ メニューから選択します。
機能 | 説明 |
---|---|
承認済み |
引数として指定されたノードが割り当てられたユーザーによって承認された場合は、true を返します。たとえば、Approved ("Manager Approval") は、Manager Approval ノードに割り当てられたユーザーが割り当て完了時に Approve を選択した場合に true を返します。 |
AutoApproved |
指定されたノードがタスクに関連付けられたデフォルトの承認期間に承認された場合は、true を返します。ノードの名前を引数として取得します。Approved は、AutoApproved と ExplicitlyApproved のスーパーセットであるため、AutoApproved も Approved をトリガーします。 |
ExplicitlyApproved |
指定されたノードが承認され、ユーザーがUI にある [Approve] ボタンをクリックするか、電子メールで承認した場合は、true を返します。ノードの名前を引数として取得します。 |
InSiteGroup |
指定されたスイム レーンに割り当てられた人が指定されたグループに存在する場合は、true を返します。2 つの引数を取得します。最初の引数はスイム レーンの名前で、2 番目の引数は検討対象のグループの名前です。例: InSiteGroup ("Approvers", "Managers") は、Approvers スイム レーンに割り当てられた個人が Managers グループに属している場合に true を返します。 |
IsAssignmentValid |
単一の引数に誰かが割り当てられているために渡されたスイム レーンの場合は、true を返します。この関数は、すべてのスイム レーンが割り当てられていない可能性のあるプロセスがある場合に役立ちます。 例: IsAssignmentValid("Optional Approvers") は、誰かが Optional Approvers スイム レーンに割り当てられている場合に true を返し、そうでない場合は false を返します。 |
一致 |
最初の引数が 2 番目の引数として渡された正規表現と一致する場合は、true を返します。 例: Match("Invoice Line Items",".*Drill Bits.*") は、列 Invoice Line Items の値のどこかに Drill Bits が含まれている場合に true を返します。 |
それ以外の場合 |
これは、その他すべての条件のキャッチオールです。ワークフロー エンジンが、処理する次のノードを評価しているときに、発生する他の遷移が一致しない場合、Otherwise のマークが付いた遷移はすべてトラバースされます。Otherwise は引数を取得しません。 |
ProcessInfo |
Name、Description、StartDate、DueDate、CompletionDate、Status、または Originator のいずれかを引数として取得し、それぞれのプロセス情報を返します。 |
拒否済み |
引数として指定されたノードが割り当てられたユーザーによって却下された場合は、true を返します。例: Rejected("Manager Approval") は、Manager Approval ノードに割り当てられたユーザーが割り当て完了時に Reject を選択した場合に true を返します。 |
Swim LaneParticipants |
指定されたスイム レーンに割り当てられたユーザーのコンマ区切りリストを返します。例: Swim LaneParticipants("Managers") は、Managers スイム レーンに割り当てられたすべてのユーザーを返します。 |
Task Info |
最初の引数としてタスク名を取得し、次に Name、Description、StartDate、DueDate、CompleteDate、Status、Note、Participant、または Swim Lane のいずれかを取得し、指定されたタスクのそれぞれの割り当て情報を返します。 |
遷移条件の例
次の表は、遷移で頻繁に使用される条件の例を示しています。ワークフローの必要に応じて変更できます。
この条件の場合: | 使用する式: |
---|---|
ドル金額が $2,500 未満 |
[Amount] < 2500 |
マネージャーが承認し、優先順位が急務 |
Approved ("Manager Approval") & [Priority] = "Urgent" |
フォームの再送信 |
Resubmit = ‘true’ |
遷移の関係演算子表
次の表に、ワークフローの遷移と式で使用できる操作演算子を示します。
有理演算子 | 説明 | 論理演算子 | 説明 |
---|---|---|---|
== | 等しい | && | また、 |
!= | 等しくない | || | または |
> | より大きい | ! | Not |
>= | より大きいか等しい | ||
< | 戻す | ||
<= | より小さいか等しい | ||
= | 割り当て |