intra-mart Accel Platform メッセージコードリファレンス 2020-04-01

E.IMBIS.COMMON.129

メッセージ

BAM案件終了処理でエラーが発生しました。エラーメッセージ:{0}、ロケールID:{1}、システム案件ID:{2}、タスク情報:{3}

引数

{0} : エラーメッセージ
{1} : ロケールID
{2} : システム案件ID
{3} : タスク情報

詳細

BAM案件終了処理でエラーが発生した場合のメッセージです。
発生したエラーの詳細については、ログに出力された「エラーメッセージ」の内容を確認してください。
「タスク情報」は以下の項目を持つオブジェクトの配列です。
  • actFlag:代理フラグ
  • authOrgzName:権限者組織名
  • authUserName:権限者名
  • endDate:終了日(年月日)
  • executeUserName:実行者名
  • nodeId:ノードID
  • nodeName:ノード名
  • processComment:処理コメント
  • processType:処理種別
  • status:ステータス
  • taskId:タスクID
  • dEndDate:終了日(UTC)

原因

ワークフローのタスク情報からBAM時間を登録するときにエラーが発生しています。
例えば、下記の場合に発生します。
  • ワークフローのタスク情報の取得に失敗した。
  • ワークフローのノード情報の取得に失敗した。
  • BAM時間の登録に失敗した。

対応方法

下記手順でリカバリを実施してください。
  1. ログの「タスク情報」にデータが出力されていない場合、下記のSQLを実行してタスク情報を取得してください。
    (SQLに記載されている<システム案件ID>と<ロケールID>にはログに出力された値を設定してください。)
    SQL取得項目とログの「タスク情報」の対応は以下の通りです。
    項目 SQL取得項目 ログの「タスク情報」
    ステータス status status
    タスクID taskId taskId
    終了日 endDate dEndDate
    • 終了日について
      ログの「タスク情報」を使用する場合は、「endDate」ではなく「dEndDate」を使用してください。
      「dEndDate」はUTCでログに出力されているため、利用環境の時刻に変換して使用してください。
    • 未完了案件の場合
     1
     2
     3
     4
     5
     6
     7
     8
     9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    SELECT
        task.status AS status
    ,   MAX(task.task_id) AS taskId
    ,   MAX(task.end_date) AS endDate
    FROM
        imw_t_cpl_task task
    ,   imw_t_cpl_user usr
    WHERE
        task.system_matter_id = '<システム案件ID>'
    AND task.system_matter_id = usr.system_matter_id
    AND task.task_id = usr.task_id
    AND task.status != 'cancel'
    AND task.status != 'applyrestore'
    AND task.status != 'reapplyrestore'
    AND task.status != 'approverestore'
    AND usr.locale_id = '<ロケールID>'
    GROUP BY
        task.action_id
    ,   task.node_name
    ,   task.status
    ,   usr.auth_user_name
    ,   usr.auth_user_code
    ,   usr.execute_user_name
    ,   usr.auth_orgz_name
    ,   task.process_comment
    ,   task.act_flag
    ORDER BY
        MAX(task.end_date) ASC
    ,   MAX(task.task_id) ASC
    
    • 完了案件の場合
     1
     2
     3
     4
     5
     6
     7
     8
     9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    SELECT
        task.status AS status
    ,   MAX(task.task_id) AS taskId
    ,   MAX(task.end_date) AS endDate
    FROM
        imw_t_cpl_matter_task task
    ,   imw_t_cpl_matter_user usr
    WHERE
        task.system_matter_id = '<システム案件ID>'
    AND task.system_matter_id = usr.system_matter_id
    AND task.task_id = usr.task_id
    AND task.status != 'cancel'
    AND task.status != 'applyrestore'
    AND task.status != 'reapplyrestore'
    AND task.status != 'approverestore'
    AND usr.locale_id = '<ロケールID>'
    GROUP BY
        task.action_id
    ,   task.node_name
    ,   task.status
    ,   usr.auth_user_name
    ,   usr.auth_user_code
    ,   usr.execute_user_name
    ,   usr.auth_orgz_name
    ,   task.process_comment
    ,   task.act_flag
    ORDER BY
        MAX(task.end_date) ASC
    ,   MAX(task.task_id) ASC
    
    • 過去案件の場合
      (テーブル名はアーカイブ先のテーブル名に変更してください。)
     1
     2
     3
     4
     5
     6
     7
     8
     9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    SELECT
        task.status AS status
    ,   MAX(task.task_id) AS taskId
    ,   MAX(task.end_date) AS endDate
    FROM
        -- アーカイブ先のテーブル名に変更
        imw_ayyyymm_matter_task task
    WHERE
        task.system_matter_id = '<システム案件ID>'
    AND task.status != 'cancel'
    AND task.status != 'applyrestore'
    AND task.status != 'reapplyrestore'
    AND task.status != 'approverestore'
    AND task.locale_id = '<ロケールID>'
    GROUP BY
        task.action_id
    ,   task.node_name
    ,   task.status
    ,   task.auth_user_name
    ,   task.auth_user_code
    ,   task.execute_user_name
    ,   task.auth_orgz_name
    ,   task.process_comment
    ,   task.act_flag
    ORDER BY
        MAX(task.end_date) ASC
    ,   MAX(task.task_id) ASC
    
  2. 下記のSQLを実行して「BAM時間」テーブルと「BAMサマリ」テーブルの内容を確認してください。
    (SQLに記載されている<システム案件ID>にはログに出力された値を設定してください。)
    • 「BAM時間」テーブル
     1
     2
     3
     4
     5
     6
     7
     8
     9
    10
    11
    12
    SELECT
        system_matter_id
    ,   task_id
    ,   process_start_time
    ,   task_start_time
    ,   process_end_time
    FROM
        imbis_t_bam_time
    WHERE
        system_matter_id = '<システム案件ID>'
    ORDER BY
        task_id ASC
    
    • 「BAMサマリ」テーブル
    1
    2
    3
    4
    5
    6
    7
    8
    9
    SELECT
        system_matter_id
    ,   task_id
    FROM
        imbis_t_bam_summary
    WHERE
        system_matter_id = '<システム案件ID>'
    ORDER BY
        task_id ASC
    
  3. 手順 2 で確認した「BAM時間」テーブルと「BAMサマリ」テーブルのタスクID(task_id)が「DUMMY_ID」であるレコードを更新してください。
    • 更新項目
      • タスクID(task_id)
        ログに出力された「タスク情報」、または、手順 1 で取得したタスク情報の申請レコードに設定されているタスクIDを設定してください。
    • 更新条件
      • タスクID(task_id)が「DUMMY_ID」であること。
    • 注意事項
      • 申請レコードについて
        タスク情報のステータスが「apply」であるレコードが申請レコードです。
  4. ログに出力された「タスク情報」、または、手順 1 で取得したタスク情報から「BAM時間」テーブルを更新してください。
    • 更新項目
      • 処理開始日時(process_start_time)
        作業開始日時(task_start_time)に値が設定されていない場合、タスク情報の終了日を設定してください。
      • 作業開始日時(task_start_time)
        作業開始日時(task_start_time)に値が設定されていない場合、タスク情報の終了日を設定してください。
      • 処理終了日時(process_end_time)
        タスク情報の終了日を設定してください。
    • 更新条件
      • ログに出力された「タスク情報」、または、手順 1 で取得したタスク情報のタスクIDと「BAM時間」テーブルのタスクIDが一致していること。

参考情報

なし