activitiのサブプロセスを開始する方法は何ですか?
「Activiti」でサブプロセスを開始するには、「callActivity」タイプのアクティビティ要素を使用する必要があります。以下は「Activiti」でサブプロセスを開始する方法です:
- Activitiで新しいサブプロセス定義を作成します。サブプロセスは個別に定義されたプロセスであり、メインプロセスで繰り返し使用できます。Activitiのデザイナーまたはプログラミング方法を使用して、サブプロセス定義を作成してください。
- 主プロセスに”callActivity”アクティビティ要素を追加します:BPMN図の主プロセスに、サブプロセスを開始するための”callActivity”アクティビティ要素を追加します。プロパティパネルで、サブプロセスの定義名を指定するか、サブプロセスの定義キーを参照します。
- “callActivity”の入力パラメータを設定します:プロパティーパネルで、”callActivity”の入力パラメータを設定し、メインプロセスから変数をサブプロセスに渡します。
- 属性パネルで「callActivity」の出力パラメータを設定し、サブプロセスの変数をメインプロセスに渡す。
- 部署と実行プロセス:メインフローとサブフローをActivitiエンジンに一緒にデプロイし、その後メインフローのインスタンスを起動します。メインフローが”callActivity”に到達すると、自動的にサブフローのインスタンスが作成され、起動されます。
- 子プロセスが終了すると、メインプロセスに戻る。子プロセスが終了すると、出力パラメータがメインプロセスに渡されます。その後、メインプロセスは次のアクティビティを続行することができます。
注意事項:
- 子プロセスとメインプロセスの間では、入力と出力のパラメータを渡すことができ、子プロセス内でメインプロセスの変数を使用することもでき、また、子プロセスの結果をメインプロセスに渡すこともできます。
- 子プロセスとメインプロセスの実行は独立しており、それぞれが独自のプロセスインスタンスと実行環境を持っています。
- サブプロセスには、ユーザータスクやサービスタスクなどの他のアクティビティ要素を含めることができます。
- 子プロセスの定義は、同じBPMNファイル内にある場合もありますし、別のファイル内にある場合もあります。別のファイル内にある場合は、親プロセスで子プロセスのキーを参照する必要があります。
- Activitiはネストされたサブプロセスをサポートしており、つまりサブプロセス内でさらにサブプロセスをネストすることができます。
希望この情報がお役に立ちます!