My Oracle Support Banner

プライマリからセカンダリ・アサイメントに変更された日と同日にAPIでセカンダリ・アサイメントを終了できない (Doc ID 2004070.1)

Last updated on FEBRUARY 03, 2019

適用範囲:

Oracle Human Resources - バージョン 12.1.3 から 12.1 HRMS RUP7 [リリース 12.1]
この文書の内容はすべてのプラットフォームに適用されます。
本文書では の概要を説明しています。

現象

事象:

API(hr_assignment_api.actual_termination_emp_asg)を使用してセカンダリ・アサイメント(サブ・アサイメント)を
プライマリからセカンダリに変更された日と同日に終了させることができません。

例:セカンダリ・アサイメントを01-JAN-2015に終了させる。

想定するレコード:

ASSIGNMENT_IDASSIGNMENT_NUMBEREFFECTIVE_START_DATEEFFECTIVE_END_DATEPRIMARY_FLAGASSIGNMENT_STATUS_TYPE_ID
36845 2285 01-JAN-2010 31-DEC-2014 Y 1 (Active Assignment)
36845 2285 01-JAN-2015 31-DEC-4712 N 3 (Terminated Assignment)
36846 2285-2 01-JAN-2015 31-DEC-4712 Y 1 (Active Assignment)

実際のレコード:
p_actual_termination_date にセカンダリ・アサイメント(primary_flag = 'N')の開始日(01-JAN-2015)を指定した場合、下記のデータ状態となります。

ASSIGNMENT_IDASSIGNMENT_NUMBEREFFECTIVE_START_DATEEFFECTIVE_END_DATEPRIMARY_FLAGASSIGNMENT_STATUS_TYPE_ID
36845 2285 01-JAN-2010 31-DEC-2014 Y 1 (Active Assignment)
36845 2285 01-JAN-2015 01-JAN-2015 N 1 (Active Assignment)
36846 2285-2 01-JAN-2015 31-DEC-4712 Y 1 (Active Assignment)
36845 2285 02-JAN-2015 31-DEC-4712 N 3 (Terminated Assignment)

p_actual_termination_date にセカンダリ・アサイメント(primary_flag = 'N')が開始した日の前日(31-DEC-2014)を指定した場合、下記のHR_7999_ASG_INV_PRIM_ASGエラーが発生します。

行1でエラーが発生しました。:
ORA-20001: このアサイメントをプライマリ・アサイメントにすることはできません。
ORA-06512: "APPS.HR_ASSIGNMENT_API", 行2983
ORA-06512: 行15

 

 

再現手順:

本事象は下記の手順で発生します。

  1. 01-JAN-2010に従業員を作成します。
  2. 01-JAN-2015にセカンダリ・アサイメントを作成し、保存します。
  3. 上記手順2で作成したセカンダリ・アサイメントの「プライマリ」フラグにチェックを付け、保存します。
    アサイメントのレコードは下記の状態となります。

    ASSIGNMENT_ID ASSIGNMENT_NUMBER EFFECTIVE_STAR EFFECTIVE_END_ PRIMARY_FLAG ASSIGNMENT_STATUS_TYPE_ID
    ------------- ----------------- -------------- -------------- ------------ -------------------------
            36845 2285              01-JAN-2010    31-DEC-2014    Y                                    1
            36845 2285              01-JAN-2015    31-DEC-4712    N                                    1
            36846 2285-2           01-JAN-2015    31-DEC-4712    Y                                    1

  4. APIでp_actual_termination_dateに01-JAN-2015を指定し、セカンダリ・アサイメントを終了させます。(Commitは発行しません。)

     
  5. エラー「ORA-20001: このアサイメントをプライマリ・アサイメントにすることはできません。」が発生します。

原因

To view full details, sign in with your My Oracle Support account.

Don't have a My Oracle Support account? Click to get started!


本書の内容
現象
原因
解決策
参照情報

My Oracle Support provides customers with access to over a million knowledge articles and a vibrant support community of peers and Oracle experts.