SkillDeterminationUtils :スコープ対象
SkillDeterminationUtils スクリプトインクルードは、作業アイテムスキルデータを取得または設定するためのユーティリティメソッドを提供します。
このスクリプトインクルードには Skill Determination (com.snc.skill_determination) プラグインが必要であり、 sn_skill_rule 名前空間内で提供されます。
SkillDeterminationUtils - SkillDeterminationUtils()
SkillDeterminationUtils のインスタンスを作成するコンストラクター。
| 名前 | タイプ | 説明 |
|---|---|---|
| なし |
var util = new sn_skill_rule.SkillDeterminationUtils();
SkillDeterminationUtils - assignSkillsToWorkItem(アレイ skills, GlideRecord now_GR)
アクティブなスキルオブジェクトのアレイを作業アイテムに割り当てます。
| 名前 | タイプ | 説明 |
|---|---|---|
| skills | アレイ | アサインされるアクティブなスキルオブジェクトのアレイ。 |
| skill.skillName | 文字列 | スキルの名前。 |
| skill.skillSysId | 文字列 | スキルのSys ID。 |
| skill.mandatory | ブーリアン | スキルが必須の場合は true、そうでない場合は false。 |
| skill.skillLevelName | 文字列 | オプションのスキルレベル名。 |
| skill.skillLevelSysId | 文字列 | オプションのスキルレベルのSys ID。 |
| now_GR | GlideRecord | スキルをアサインする作業アイテムの GlideRecord。 |
| タイプ | 説明 |
|---|---|
| なし |
以下の例では、テーブル名 (interaction) を使用してインタラクションレコードを作成し、インタラクション作業アイテムにスキルを割り当て、インタラクションスキル [interaction_m2m_skill] テーブルにレコードを作成する方法を示します。
ユースケース 1:determineWorkItemSkills() から返された結果を使用して、インタラクションテーブルから作業アイテムにスキルを割り当てます。
// Create an interaction record
var now_GR = new GlideRecord('interaction');
now_GR.insert();
var util = new sn_skill_rule.SkillDeterminationUtils();
// Get interaction skills interaction
// and specify if any are mandatory
var result = util.determineWorkItemSkills(now_GR);
// Assign skills determined by result and
// assign them to the interaction work item
util.assignSkillsToWorkItem(result, now_GR);
ユースケース 2:スキルのアレイを手動で挿入します。このケースでは、IT スキルをインタラクション作業アイテムに割り当てます。
var now_GR = new GlideRecord('interaction');
now_GR.insert();
var util = new sn_skill_rule.SkillDeterminationUtils();
var skills = [{"skillSysId":"2eb1c2029f100200a3bc1471367fcfe4", "skillName":"IT", "mandatory":true, "skillLevelName":"", "skillLevelSysId":null}];
util.assignSkillsToWorkItem(skills, now_GR);
SkillDeterminationUtils - determineWorkItemSkills(GlideRecord now_GR)
指定された作業アイテムのスキルを取得し、スキルが必須かどうかを示して、スキルレベルを一覧表示します。
| 名前 | タイプ | 説明 |
|---|---|---|
| now_GR | GlideRecord | インタラクションまたはタスクテーブルの拡張から取得した作業アイテムの GlideRecord。 |
| タイプ | 説明 |
|---|---|
| アレイ | 1 つ以上のスキルオブジェクト。
|
次のスクリプトでは、インタラクションレコードを作成して、インタラクション作業アイテムのスキルを取得し、そのスキルが必須かどうかを示します。
// Create an interaction record
var now_GR = new GlideRecord('interaction');
now_GR.insert();
var util = new sn_skill_rule.SkillDeterminationUtils();
var result = util.determineWorkItemSkills(now_GR);
gs.info(JSON.stringify(result));
出力:
[{"skillSysId":"6c0f025c7f672300a8b1bdc8adfa917f",
"skillName":"Premier Support Certified",
"mandatory":false,"skillLevelName":"",
"skillLevelSysId":null}]