UiPath Documentation
maestro
latest
false
重要 :
このコンテンツの一部は機械翻訳によって処理されており、完全な翻訳を保証するものではありません。 新しいコンテンツの翻訳は、およそ 1 ~ 2 週間で公開されます。
UiPath logo, featuring letters U and I in white

Maestro ユーザー ガイド

最終更新日時 2026年4月6日

サブプロセスとモジュール性

サブプロセスは、関連するアクティビティを再利用可能な 1 つの構造にグループ化することで、モデルをわかりやすくするのに役立ちます。ダイアグラムの複雑さを軽減し、ビジネス ロジックを分離して、再利用を促進します。

BPMN では、サブプロセスはインラインで (同じダイアグラム内の折りたたみまたは展開)、または再利用可能なコール アクティビティとしてモデリングできます。

Maestro では、サブプロセスについて以下の点に留意してください。

  • インラインのサブプロセス (折りたたみまたは展開) は、同じダイアグラム内でロジックをグループ化および構造化する場合にサポートされます。
  • コール アクティビティは、別個のエージェンティック プロセス (プロジェクト) を呼び出す場合にサポートされます。
  • 同じプロジェクトからの別の BPMN ファイルの呼び出しはサポートされません。複数のプロセスにわたる再利用可能なロジックの場合は、別個のエージェンティック プロセスを作成し、コール アクティビティを使用してそのプロセスを呼び出します。
  • コール アクティビティを使用する場合、呼び出し元のプロセスは、明示的に定義されたパラメーターを介して入力を渡し、出力を受け取ります。

コール アクティビティを使用する理由

コール アクティビティは、プロジェクトまたは環境内の別の場所で定義されたサブプロセスを参照します。このアクティビティは再利用可能な関数のように動作し、以下の方法でプロセス モデリングを改善します。

  • ダイアグラム間の重複の削減
  • 再利用可能なロジックの分離 (承認、検証、送信など)
  • 主要なダイアグラムの簡潔さの維持
  • プロセス バリアント間で一貫した動作をサポート

サブプロセスのモデル化方法

Maestro では、次の 2 つの方法でサブプロセスをモデリングできます。

  • インラインのサブプロセス (同じダイアグラム内の折りたたみまたは展開)
  • 再利用可能なサブプロセス (コール アクティビティを使用)

インラインのサブプロセスをモデリングする

インラインのサブプロセスは、同じプロセス インスタンス内の関連するステップをグループ化する場合に使用します。

  1. BPMN ダイアグラムにサブプロセス要素を挿入します。
  2. 折りたたみビューまたは展開ビューのどちらでプロセスを表示するかを選択します。
  3. 内部ロジックをサブプロセス内に直接モデリングします。
  4. サブプロセスを使用して、関連するステップをグループ化しながら、メイン ダイアグラムの可読性を維持します。

インラインのサブプロセスは、同じプロセス インスタンス内で実行され、同じ実行コンテキストを共有します。

サブプロセス内の変数

サブプロセスを使用する場合、サブプロセスが折りたたまれているか展開されているかによって変数の動作が異なります。

折りたたまれたサブプロセスの場合: 内部の要素は非表示になっていますが、親スコープの変数ピッカーでその出力変数にアクセスできます。これにより、サブプロセスを展開することなく、下流のタスクでサブプロセスの出力を参照できます。

展開されたサブプロセスの場合: すべての要素と変数が表示されます。変数のスコープはサブプロセス レベルのままですが、親および兄弟のスコープで利用可能です。

スコープ間でノードを移動する場合: 出力を含むノードをサブプロセスの内または外に移動する場合、変数 ID は Maestro によって保持され、スコープの遷移は自動的に管理されます。変数参照はスコープの境界を越えて有効なままであり、孤立したエントリは自動的に削除されます。

ノードをスコープ間で移動した後に検証エラーが発生する場合は、[変数を修正] ダイアログを使用し、破損した参照を特定して更新します。

コール アクティビティを使用して再利用可能なサブプロセスをモデリングする

コール アクティビティは、複数のプロセスでロジックを再利用する場合に使用します。

  1. 再利用可能なロジックを含む別個のエージェンティック プロセス (プロジェクト) を作成します。
  2. 親ダイアグラムで、コール アクティビティを挿入します。
  3. 呼び出す対象のエージェンティック プロセスを選択します。
  4. 親プロセスと呼び出されるプロセスとの間でデータを交換するための入力変数と出力変数を設定します。

コール アクティビティは、別のエージェンティック プロセス インスタンスを呼び出します。親プロセスと呼び出されるプロセスとの間で明示的にデータをマッピングする必要があります。

モデリングの例

ユース ケース: オンボーディング ワークフローでは、従業員とベンダーの両方のオンボーディング プロセスで同じ Collect Documents サブプロセスを使用します。ステップを複製する代わりに、同じサブプロセスを参照する各親プロセスにコール アクティビティが追加されます。

サブプロセスの例

ユース ケース: このサブプロセスの例は、Maestro での条件付きファイルのダウンロードとアップロードのワークフローを示しています。プロセスはメッセージ開始イベントで始まり、排他的ゲートウェイを使用して分岐します。条件に応じて、メールの添付ファイルまたはレコード フィールドのファイルをダウンロードします。両方のパスが「ファイルをアップロード」タスクで合流し、その後に「Sub-Process1」という名前のサブプロセス要素が続きます。このサブプロセスは、終了イベントでワークフローを完了する前に、アップロード後のアクションに関連する追加ステップをカプセル化します。

サブプロセス

命名規則

サブプロセスとコール アクティビティの名前を付ける際は、以下の点に留意してください。

  • 専門用語ではなく、ビジネス用語を使用する
  • 結果を説明する (例: 「Form Step 2」ではなく「Collect Customer Data」)
  • サブプロセスがタスクを実行する方法ではなく、実行する対象を反映する。
  • 参加者レーンはサブプロセス内ではサポートされない

サポート対象外

  • 同じプロジェクト内での別個の BPMN ファイルの呼び出しはサポートされません。
  • 複数のプロセスにわたる再利用可能なロジックの場合は、別個のエージェンティック プロセス (プロジェクト) を作成し、コール アクティビティを使用してそのプロセスを呼び出します。
  • アドホックなサブプロセスはサポートされていません。
  • プロセスの境界を越える暗黙的な変数の共有はサポートされていません。データは、入力/出力バインディングを使用して明示的にマッピングする必要があります。
  • 参加者レーンはサブプロセス内ではサポートされない

マルチインスタンス マーカー

インラインのサブプロセスはマルチインスタンス実行をサポートします。

コール アクティビティも、別個のエージェンティック プロセスを呼び出す場合にマルチインスタンス実行をサポートします。

アドホックなサブプロセスとイベント サブプロセスはサポートされていません。

Maestro でサポートされる BPMN 要素について詳しくは、「BPMN でサポートされている要素」をご覧ください。

このページは役に立ちましたか?

接続

ヘルプ リソース サポート

学習する UiPath アカデミー

質問する UiPath フォーラム

最新情報を取得