hr_ActivitySet - スコープ対象
hr_ActivitySet API は、ライフサイクルイベントアクティビティセットのケースを処理します。
ライフサイクルイベントアクティビティセットは、ライフサイクルイベントプロセスのさまざまなステージを表します。アクティビティセットがトリガーされるタイミング (たとえば、ライフサイクルイベントケースの作成直後、別のアクティビティセットの完了後など) を定義する必要があります。各アクティビティセットは、単一のライフサイクルイベントに関連付けられます。
hr_ActivitySet API には HR ライフサイクルイベントプラグイン (com.sn_hr_lifecycle_events) が必要であり、sn_hr_le 名前空間で実行されます。
詳細については、「 Enterprise Onboarding and Transitions について」を参照してください。
hr_ActivitySet - hr_ActivitySet()
hr_ActivitySet クラスのインスタンスを作成します。
| 名前 | タイプ | 説明 |
|---|---|---|
| なし |
hr_ActivitySet - createLECaseByService(文字列 hrService, オブジェクト caseValues)
指定された人事サービスに基づいてライフサイクルイベントケースを作成します。
| 名前 | タイプ | 説明 |
|---|---|---|
| hrService | 文字列 | ライフサイクルイベントケースに割り当てられる、人事サービス [sn_hr_core_service] テーブル内の人事サービスのSys ID。 |
| caseValue | オブジェクト | 各ケースフィールドの値を含むキーと値のペア。 |
| caseValues.subject_person | 文字列 | ユーザー [sys_user] テーブル内の対象者の名前のSys ID。 |
| caseValues.opened_for | 文字列 | ユーザー [sys_user] テーブル内の対象者に対して開かれたケースのSys ID。 |
| caseValues.subject_person_job | 文字列 | ジョブ [sn_hr_core_job] テーブル内の対象者の役職のSys ID。 |
| caseValues.location | 文字列 | 場所 [cmn_location] テーブルの人事プロファイル内の対象者の場所のSys ID。 |
| caseValues.department | 文字列 | 部門 [cmn_department] テーブルの人事プロファイル内の対象者の部門のSys ID。 |
| caseValues.subject_person_hr_profile | 文字列 | 人事プロファイル [sn_hr_core_profile] テーブル内の対象者の人事プロファイルのSys ID。 |
| caseValues.short_description | 文字列 | ケースの説明。 |
| caseValues.state | 番号 | 一意に定義されたカスタムのケースステータスを表す番号。 |
| タイプ | 説明 |
|---|---|
| 文字列 | 人事ライフサイクルイベントケース [sn_hr_le_case] テーブル内の作成されたケースのSys ID。 |
出力には、[操作テーブル] 列と [行数] 列が含まれます。sn_hr_le_case テーブルに隣接する行数列のリンクをクリックすると新しいケースが表示されます。
var caseValues = {
'subject_person': '62826bf03710200044e0bfc8bcbe5df1',
'opened_for': '0e826bf03710200044e0bfc8bcbe5d7c',
'subject_person_job': 'f8d56900587d3700964f4efae452b3db',
'location': '25ab9d1d0a0a0bb300537fd25687439d',
'department': '93b25282c0a8000b0b55c8ab34e2f1e6',
'subject_person_hr_profile': '330370019f22120047a2d126c42e7012',
'short_description': 'Short description',
'state': 10
};
var activity = new sn_hr_le.hr_ActivitySet();
var createCase = new activity.createLECaseByService('4719647c67a60300132a6c3b5685ef16', caseValues);
出力:
...
insert sn_hr_le_case 1
...
hr_ActivitySet - hasActiveCaseByService(文字列 spUser, 文字列 hrService, 文字列 jobId)
対象者ユーザーと人事サービスとジョブの指定された組み合わせに一致するケースをチェックします。
| 名前 | タイプ | 説明 |
|---|---|---|
| spUser | 文字列 | ユーザー [sys_user] テーブル内の対象者ユーザーのSys ID。 |
| hrService | 文字列 | 人事サービス [sn_hr_core_service] テーブル内の人事サービスのSys ID。 |
| jobId | 文字列 | 人事サービス [sn_hr_core_service] テーブル内の対象ユーザーの役職のSys ID。 |
| タイプ | 説明 |
|---|---|
| ブーリアン | 一致するケースが存在する場合は true、存在しない場合は false。 |
var userId = '62826bf03710200044e0bfc8bcbe5df1'; //Abel Tuter
var hrServiceId = '64fa4c53534222003066a5f4a11c0875'; //Onboarding HR Service
var jobId = '3D62826bf03710200044e0bfc8bcbe5df1'; // Sample Job sys_id for the example
var activity = new sn_hr_le.hr_ActivitySet();
var hasActiveLECase = activity.hasActiveCaseByService(userId, hrServiceId, jobId);
gs.info('User has an active HR case: ' + hasActiveLECase);
出力:
sn_hr_le: User has an active HR case: false