- リリース ノート
- 基本情報
- セットアップと構成
- オートメーション プロジェクト
- 依存関係
- ワークフローの種類
- 制御フロー
- ファイルの比較
- オートメーションのベスト プラクティス
- ソース管理との連携
- デバッグ
- ログ
- 診断ツール
- ワークフロー アナライザー
- ワークフロー アナライザーについて
- ST-DBP-002 - 多数の引数
- ST-DBP-003 - 空の catch ブロック
- ST-DBP-007 - 複数のフローチャートレイヤー
- ST-DPB-010 - [ワークフロー] または [テスト ケース] の複数のインスタンス
- ST-DBP-020 - 未定義の出力プロパティ
- ST-DBP-021 - ハードコードされたタイムアウト
- ST-DBP-023 - 空のワークフロー
- ST-DBP-024 - 永続性アクティビティの確認
- ST-DBP-025 - 変数のシリアル化の前提条件
- ST-DBP-026 - [待機] アクティビティの使用
- ST-DBP-027 - Persistence のベスト プラクティス
- ST-DBP-028 - 引数のシリアル化の前提条件
- ST-USG-005 - ハードコードされたアクティビティ引数
- ST-USG-009 - 未使用の変数
- ST-USG-010 - 未使用の依存関係
- ST-USG-014 - パッケージの制限
- ST-USG-017 - パラメーターの修飾子が無効
- ST-USG-020 - 最小ログ メッセージ
- ST-USG-024 - 未使用で保存されたままの値
- ST-USG-025 - 保存した値の誤用
- ST-USG-026 - アクティビティの制限
- ST-USG-027 - 必要なパッケージ
- ST-USG-028 - ファイル テンプレートの呼び出しの制限
- ST-USG-027 - 必須のタグ
- ST-USG-034 - Automation Hub URL
- 変数
- 引数
- インポートされた名前空間
- コード化されたオートメーション
- トリガーベースの有人オートメーション
- オブジェクト リポジトリ
- ScreenScrapeJavaSupport ツール
- 拡張機能
- Studio でのテスト
- トラブルシューティング

Studio ガイド
コード ソース ファイルを呼び出す
ローコード ワークフロー内でコード化されたソース ファイルを呼び出すには、このワークフローを使用します。この例では、コード化されたソース ファイル TimeSpanHelper.cs 内に TimeSpanHelper というクラスを作成します。このクラスは、指定した範囲に基づいてランダムな期間を生成します。ローコード ワークフロー内でこのクラスを使用するには、[ワークフロー ファイルを呼び出し] アクティビティを使用します。ユース ケースによっては、その後に続けて他のローコード アクティビティを使用します。
- コード化されたソース ファイルを作成します。この例では、
TimeSpanHelper.csという名前を付けます。 - コード化されたソース ファイルで、TimeSpanHelper という名前のパブリック クラスを作成します。
-
TimeSpanHelper クラス内で、ランダムな値を生成するために
_randomという名前のプライベートな静的ランダム オブジェクトを宣言します。private static Random _random = new Random();private static Random _random = new Random(); -
Declare a private static object named
_lockObjto secure the thread, while working with multiple threads at the same time.private static object _lockObj = new object();private static object _lockObj = new object(); -
lowerBoundMsとupperBoundMsという 2 つの整数パラメーターを受け取るGetRandomTimeSpanBetweenというパブリックな静的メソッドを実装します。public static TimeSpan GetRandomTimeSpanBetween(int lowerBoundMs, int upperBoundMs) {public static TimeSpan GetRandomTimeSpanBetween(int lowerBoundMs, int upperBoundMs) { -
lock ステートメントを
_lockObjとともに使用してこのスレッドを保護しながら、複数のスレッドが同時に処理されるようにします。lock (_lockObj) {lock (_lockObj) { -
ロック ブロック内で、
_random.Nextを使用してランダムな整数値を生成し、引数としてlowerBoundMsとupperBoundMsを渡します。var ms = _random.Next(lowerBoundMs, upperBoundMs);var ms = _random.Next(lowerBoundMs, upperBoundMs); -
TimeSpan.FromMillisecondsを使用して、生成されたランダム値をTimeSpanオブジェクトに変換し、次のコマンドを使用して、この値をメソッドから直接返します。return TimeSpan.FromMilliseconds(ms);return TimeSpan.FromMilliseconds(ms);
-
これらの手順を実行すると、最終的なコードは次のようになります。
public class TimeSpanHelper
{
private static Random _random = new Random();
private static object _lockObj = new object();
public static TimeSpan GetRandomTimeSpanBetween(int lowerBoundMs, int upperBoundMs)
{
lock (_lockObj)
{
var ms = _random.Next(lowerBoundMs, upperBoundMs);
return TimeSpan.FromMilliseconds(ms);
}
}
}
public class TimeSpanHelper
{
private static Random _random = new Random();
private static object _lockObj = new object();
public static TimeSpan GetRandomTimeSpanBetween(int lowerBoundMs, int upperBoundMs)
{
lock (_lockObj)
{
var ms = _random.Next(lowerBoundMs, upperBoundMs);
return TimeSpan.FromMilliseconds(ms);
}
}
}
- ローコード ワークフローを作成します。この例では、
WorkflowUsingCodeSourceFileという名前を付けます。 - 2 ~ 4 秒までのランダムな期間を出力する [メッセージをログ] アクティビティを追加します。
- [メッセージ] フィールドにプロジェクトの名前を入力し、コード化されたソース ファイルを呼び出してから、
GetRandomTimeSpanBetweenメソッドを呼び出します。
以下の例では、CodedWorkflowInteroperability がプロジェクトの名前です。
CodedWorkflowInteroperability.TimeSpanHelper.GetRandomTimeSpanBetween(2000, 4000)
CodedWorkflowInteroperability.TimeSpanHelper.GetRandomTimeSpanBetween(2000, 4000)