「最終ステート」アクティビティのご紹介をします。
1.アクティビティのプログラム名
System.Activities.Statements.State
2.説明
Studio バージョン 2.0.2.0まで
クイックアクセス: 「ツールボックス」 > 「ステートマシン」 > 「最終ステート」
Studio バージョン 2.0.3.0から
クイックアクセス: 「ツールボックス」 > 「システム」 > 「ステートマシン」 > 「最終ステート」
ステートマシンのワークフローを終了させたい場合に使用します。
※動作を確認したコボットStudioのバージョン:2.1.1.2
※バージョンによって文言などが一部異なる場合がございます
3.プロパティ
プロパティ項目 | プロパティ名 | 入力欄 | 説明 |
---|---|---|---|
その他 | 表示名 | 任意の文字列 | デザイナーパネルのアクティビティ名に反映される。 |
4.使い方
「最終ステート」を使用して、曜日によりレポート作成日かそうでないかを判断する例をご紹介します。「最終ステート」を使用するためには、「ステートマシン」および「ステート」を配置する必要があります。
まずは「システム」>「ステートマシン」>「ステートマシン」をドラッグ&ドロップし、配置します。
※「ステートマシン」の配置方法は、こちらをご覧ください
次に「システム」>「ステートマシン」>「ステート」をドラッグ&ドロップし、配置します。
「ステート」をダブルクリックした後、「Entry」セクションに「システム」>「オリジナル」>「代入」をドラッグ&ドロップし、配置します。
プロパティにある「その他」>「代入先」にString型の変数( この例の場合では「 day 」)を入力し、さらに「値」にも入力(この例の場合では「 DateTime.Now.ToString("ddd") 」)します。
※ 変数の作成については「変数の作成」をご参照ください。
「ステートマシン」に戻り、さらに「システム」>「ステートマシン」>「最終ステート」をドラッグ&ドロップし、配置します。
「ステート」と「最終ステート」をつないだ遷移線にある「T1」と表示された部分をダブルクリックします。
プロパティにある「その他」>「Condition」に式( この例の場合では「 day = "月" 」)を入力します。
「ステートマシン」に戻り、配置済の「最終ステート」をダブルクリックします。
実行結果を確認するため、「システム」>「オリジナル」>「1行を書き込む」を配置し、必要な変数等を設定します。
※この例では「 "レポート作成日です" 」と入力しています。
「ステートマシン」に戻り、再び「システム」>「ステートマシン」>「最終ステート」をドラッグ&ドロップし配置した後、「ステート」と遷移線でつなげます。
2つ目の「ステート」と「最終ステート」をつなげた遷移線にある「T1」と表示された部分をダブルクリックします。
プロパティにある「その他」>「Condition」に式( この例の場合では「 day <> "月" 」)を入力し、さらに「DisplayName」の「 T1 」を「 T2 」に変更します。
※「DisplayName」の文字は任意の文字列に変更できます。
「ステートマシン」に戻り、2つ目の「最終ステート」をダブルクリックします。
こちらも実行結果を確認するため、「システム」>「オリジナル」>「1行を書き込む」を配置し、必要な変数等を設定します。
※この例では「 "レポートは作成不要です" 」と入力しています。
「ホーム > スタート」をクリック、または「F5キー」押下でワークフローを実行し、出力パネルを開きます。
月曜日に実行すると「 レポート作成日です 」と表示されている事を確認してください。
月曜日以外に実行すると「 レポートは作成不要です 」と表示されている事を確認してください。