TransferManagerオブジェクト
コンポーネント情報 | |
---|---|
version | 8.0.32 |
since | 7.2 |
振替マネージャオブジェクト。
未完了案件の処理待ちノードに対して、指定したユーザの振替処理を行います。
本オブジェクトでは、未完了案件の権限者情報を保存している下記のテーブルのデータとXMLファイルデータを入れ替える処理を行います。
・「imw_t_actv_executable_user」:未処理案件権限者情報。
・「imw_t_actv_user_orgz」:未処理案件権限者組織情報。
※各ファイルは、振替処理を行った時のトランザクションファイルレベル設定が「[2]:全てのファイル情報を作成」の場合に作成されます。
振替処理の履歴はXMLファイル「userTransfer.xml」に保存されます。
振替処理により、権限者情報が削除→再作成(=展開)された時には、権限者情報リスナーが動きます。
下記の拡張ポイントのプラグイン処理を拡張することで、処理を追加できます。
権限者情報削除リスナーの拡張ポイント:「jp.co.intra_mart.workflow.plugin.event.node.authority.delete.listener」
権限者情報作成リスナーの拡張ポイント:「jp.co.intra_mart.workflow.plugin.event.node.authority.expand.listener」
未完了案件の処理待ちノードに対して、指定したユーザの振替処理を行います。
本オブジェクトでは、未完了案件の権限者情報を保存している下記のテーブルのデータとXMLファイルデータを入れ替える処理を行います。
・「imw_t_actv_executable_user」:未処理案件権限者情報。
・「imw_t_actv_user_orgz」:未処理案件権限者組織情報。
※各ファイルは、振替処理を行った時のトランザクションファイルレベル設定が「[2]:全てのファイル情報を作成」の場合に作成されます。
振替処理の履歴はXMLファイル「userTransfer.xml」に保存されます。
振替処理により、権限者情報が削除→再作成(=展開)された時には、権限者情報リスナーが動きます。
下記の拡張ポイントのプラグイン処理を拡張することで、処理を追加できます。
権限者情報削除リスナーの拡張ポイント:「jp.co.intra_mart.workflow.plugin.event.node.authority.delete.listener」
権限者情報作成リスナーの拡張ポイント:「jp.co.intra_mart.workflow.plugin.event.node.authority.expand.listener」
コンストラクタの概要
TransferManager (String [localeId] , String systemMatterId , String nodeId ) コンストラクタ |
TransferManager (String loginGroupId , String localeId , String systemMatterId , String nodeId ) 非推奨コンストラクタ
TransferManager([String localeId], String systemMatterId, String nodeId) を使用してください。
|
メソッドの概要
返却値の型 | メソッド名 |
---|---|
WorkflowResultInfo | getTransferUserList (TransferParamInfo transferParam ) 振替により展開される予定の権限者一覧を取得します。 |
WorkflowResultInfo | transfer (TransferParamInfo transferParam , Boolean sendMailFlag , String noticeComment ) 振替処理を実行します。 |
コンストラクタの詳細
TransferManager (String [localeId] , String systemMatterId , String nodeId )
コンストラクタ
引数で指定したロケールID、システム案件ID、ノードIDで振替マネージャを 新しく生成します。
パラメータ
|
TransferManager (String loginGroupId , String localeId , String systemMatterId , String nodeId )
非推奨
TransferManager([String localeId], String systemMatterId, String nodeId) を使用してください。
コンストラクタ
引数で指定したログイングループID、ロケールID、システム案件ID、ノードIDで振替マネージャを 新しく生成します。
パラメータ
|
メソッドの詳細
WorkflowResultInfo getTransferUserList (TransferParamInfo transferParam )
振替により展開される予定の権限者一覧を取得します。
指定した「振替用パラメータ情報オブジェクト」で、未完了案件の処理権限者に対して振替処理を行う場合の処理対象者一覧を取得します。 指定したパラメータの「実行者コード」と「振替元権限者コード」が異なる場合は、代理での振替処理を行う場合の処理対象者一覧を取得します。 上記以外の場合は、「実行者コード」のユーザ本人での振替処理を行う場合の処理対象者一覧を取得します。 実行者コードの設定は必須です。 振替元権限者コードの設定は必須です。 振替先処理対象者情報(プラグイン情報)オブジェクトの設定は必須です。 振替処理は、本人から他人への処理依頼になります。振替先に本人が含まれる設定を行う場合でも、 振替先の展開情報からは振替元のユーザ情報は削除されます。 以下の場合は、処理に失敗し、エラー情報を格納した結果オブジェクトを返却します。
振替先ユーザ情報を格納しているパラメータの「振替先処理対象者情報(プラグイン情報)」の展開処理は該当案件のフロー定義「対象者を展開する日」に設定した「申請基準日」または「システム日」を基準に行います。
パラメータ
返却値
|
WorkflowResultInfo transfer (TransferParamInfo transferParam , Boolean sendMailFlag , String noticeComment )
振替処理を実行します。
このメソッドでは内部でトランザクションの制御処理を行なっています。 メソッドの実行前に、ユーザトランザクションを終了状態にして置く必要があります。 指定した「振替用パラメータ情報オブジェクト」で、未完了案件の処理権限者に対して振替処理を行います。 指定したパラメータの「実行者コード」と「振替元権限者コード」が異なる場合は、代理での振替処理を行います。 上記以外の場合は、「実行者コード」のユーザ本人での振替処理を行います。 実行者コードの設定は必須です。 振替元権限者コードの設定は必須です。 振替先処理対象者情報(プラグイン情報)オブジェクトの設定は必須です。 振替処理は、本人から他人への処理依頼になります。振替先に本人が含まれる設定を行った場合でも、 振替先の展開情報からは振替元のユーザ情報は削除されます。 以下の場合は、処理に失敗し、エラー情報を格納した結果オブジェクトを返却します。
振替処理を行う際に、そのノードの状態が「保留」の場合は、保留削除処理が自動で行われます。 保留処理によって処理できなくなった人も振替後には処理ができるようになります。 パラメータの「振替通知メール送信フラグ」が「TRUE」の場合は、パラメータで指定した「振替通知コメント」を本文にした振替通知メールを送信します。 振替先ユーザ情報を格納しているパラメータの「振替先処理対象者情報(プラグイン情報)」の展開処理は該当案件のフロー定義「対象者を展開する日」に設定した「申請基準日」または「システム日」を基準に行います。 展開された振替先ユーザ情報で、未完了案件の権限者情報のデータベースデータやXMLファイルデータを更新し、 振替ユーザの履歴ファイルを残します。 更新対象のテーブルは未完了案件の権限者情報を保存している「imw_t_actv_executable_user」、「imw_t_actv_user_orgz」です。 振替先処理対象者のプラグイン情報は「flow.xml」の対象ノードに追加されます。 トランザクションファイルレベルが「[2]:全てのファイル情報を作成」の場合は、権限者情報がXMLファイルで保存されています。そのファイルの更新処理も同じく行います。 振替処理処理によって権限者情報が変更したことを履歴情報として「userTransfer.xml」に記載します。 履歴ファイルも権限者情報と同じく、トランザクションファイルレベルが「[2]:全てのファイル情報を作成」の場合に作成されます。 振替処理により、データベースを更新する処理は、該当ノードの権限者情報を全て削除し、全データを再作成(=展開)する処理になります。 この削除、展開処理時にはリスナーを追加できます。(※拡張ポイントはクラスの説明を参照してください。) 振替処理内のトランザクション処理では、データベースへのデータ削除、登録や、XMLファイルへの書き込み処理が全て終了した後にコミット処理を行います。 データベースの権限者情報削除→権限者削除リスナー実行→データベースの権限者情報再展開→権限者展開リスナー実行→XMLファイルの入替→メール送信→保留ステータス削除の順で処理を行います。 データベースの処理の途中、もしくはファイルの処理でエラーが発生した場合には、データベースのデータは全てロールバックされますが、 場合によっては、XMLファイルのデータには処理時のデータが残る場合もあります。 権限者情報の変更処理は振替処理以外に、案件操作マネージャの処理対象者変更処理でも行えます 詳細は「ActvMatterHandleManager#createProcessTarget(String, Array)」を参照してください。
パラメータ
返却値
|