プロセス定義の[プロパティー]ビューの[一般]タブの[担当者]領域、またはJava Actionを使用して、ユーザにタスクを割り当てることができます。プロセス定義を作成した後でユーザへタスクを割当てる場合は、Java Actionを使用します。
ビジネス要件によって、アクティビティは既に完了したアクティビティの実行者と関連するユーザへ割り当てる必要があります。
この関係は管理者、同僚、チームリーダーなどが考えられます。例えば、"User1"が"Activity1"の実行者であるとします。"Activity2"は"User1"の管理者のユーザ("User2")によって完了する必要があります。この機能を使用すると、"User1"と"User2"の関連を設定して、"Activity2"を"User2"に割り当てることができます。
同様に、ユーザ定義属性(UDA)に関連したユーザ名にタスクを割り当てることができます。例えば"Variable1"は"User1"に関連するSTRINGタイプのユーザ定義属性です。この機能を使用すると、"Activity2"は"User1"の管理者の"User2"に割り当てられます。Java Actionでこの関連性を設定することで、"User2"に"Activity2"を割り当てることができます。
注意
「関連から担当者を設定」Java ActionはSTRINGタイプのユーザ定義属性のみ定義することができます。
「関連から担当者を設定」を設定する方法について説明します。
ユーザを割り当てるアクティビティをプロセス定義から選択します。
注意
「関連から担当者を設定」Java Actionは、Activityノード、Voting ActivityノードまたはCompound Activityノードのみに定義できます。
[プロパティー]ビューの[アクションセット]タブをクリックします。
[アクションセット]タブに[Java Actionセット]領域が表示されます。デフォルトで、[ロールアクション]タブが表示されます。
[ロールアクション]を選択し、[追加]をクリックします。
[アクションタイプリスト]ダイアログが表示されます。
[サーバアクション]をダブルクリックします。
「関連から担当者を設定」を選択し、[作成]をクリックします。
図12.13 関連から担当者を選択
以下のセクションでは、アクティビティの実行者やユーザ定義属性(UDA)との関連を使用して、ユーザにアクティビティを割り当てる方法について説明します。
注意
[関連名]は必須のフィールドです。
完了したアクティビティの実行者と関連するユーザにアクティビティを割り当てる方法について説明します。
オプション: [アクション名]にアクションの名前を入力します。
オプション: [ノート]を編集します。
[データソースの選択]にある[完了したアクティビティ]のラジオボタン(デフォルトとして選択されています)を選択します。
このラジオボタンを選択すると、コンボボックスに、ユーザに割り当てられる必要があるアクティビティを除いた全てのアクティビティを表示します。
コンボボックスから関連付けたい完了したアクティビティを選択します。
[関連名]フィールドに関連名を入力します。例えば、"User1"が"Activity1"を完了しており、"User2"が"User1"の管理者とします。もし"User2"を"Activity2"に割り当てたいなら、[完了したアクティビティ]ドロップダウンリストで"Activity1"を選択して、[関連名]フィールドで管理者を指定します。
[OK]をクリックします。上の例の場合、"Activity2"は"User1"の管理者("User2")へ割り当てられます。
UDAに関連するユーザにアクティビティを割り当てる
オプション: [アクション名]と[ノート]フィールドそれぞれを編集します。
[データソースの選択]にある[UDAの値]のラジオボタンを選択します。このラジオボタンを選択すると、プロセス定義の全てのSTRING型のUDAがコンボボックスに表示されます。
[UDAの値]コンボボックスからUDAを選択します。例えば、"User2"を"Activity2"に割り当てたいなら、[UDAの値]で"Variable1"を選択します。"User1"は"Variable1"に関係しており、"User2"は"User1"の管理者です。
[関連名]フィールドに関連名を入力します。[関連名]フィールドで管理者を指定してください。
[OK]をクリックします。上の例の場合、"Activity2"は"User1"の管理者("User2")へ割り当てられます。
注意
このアクティビティに割当てられているロール内のユーザのみにタスクを割当てることができます。別のロールのユーザにタスクを割当てたい場合は、現在のロールにこのユーザを追加する必要があります。
注意
ロールアクションの定義によって、このアクティビティは特定のユーザに割当てられます。この場合、アクティビティの担当者の定義は必要ありません。同じ方法でVoting ActivityやCompound Activityを割当てることができます。
注意
関連名については「Interstage BPM 開発者ガイド」を参照してください。
注意
補償アクションを使用してこのアクションを補償する必要はありません。このアクションによって実行された変更は、Interstage BPM内に限定されており、プロセスインスタンスがエラー状態になった後ロールバックされるからです。補償アクションの詳細については「12.1.7 Java Actionのエラー処理」を参照してください。