AssessmentCreation - グローバル

  • リリースバージョン: Xanadu
  • 更新日 2024年08月01日
  • 所要時間:6分
  • AssessmentCreation API は、アドミニストレーターがアセスメントとサーベイを生成するために使用できるメソッドを提供します。

    createAssessments() メソッドを呼び出す方法は複数あります。測定基準タイプまたはサーベイ定義を特定するには、すべてのケースで typeID パラメーターを設定する必要があります。

    メソッドの動作方法に影響を及ぼす一部の要因は次のとおりです。
    • ターゲットがアセスメントかサーベイか
    • アセスメント スケジュールのタイプがオンデマンドかスケジュール済みか
    • サーベイスケジュールの期間
    • 提供されたパラメーター

    例えば、typeID パラメーターのみを設定してこのメソッドを呼び出すと、招待状の送信先のステークホルダーまたはサーベイユーザーが検索されます。一方、typeID および userID パラメーターを設定してこのメソッドを呼び出すと、指定されたユーザーへの招待状の送信が試みられます。

    AssessmentCreation - createAssessments (文字列 typeID, 文字列 sourceRecordID, 文字列 userID)

    指定した測定基準タイプまたはサーベイ定義の 1 つ以上のアセスメントまたはサーベイを作成します。

    表 : 1. パラメーター
    名前 タイプ 説明
    typeID 文字列 評価やサーベイを生成するための測定基準タイプやサーベイ定義のsys_id
    sourceRecordID 文字列 生成されるアセスメントに含める 1 つ以上のサーベイ定義 sys_id のカンマ区切りリスト。各ソース レコードの指定された測定基準タイプに関連付けられた評価可能なレコードが存在する必要があります。このパラメーターを空白のままにすると、生成されるアセスメントには、指定されたタイプのアセスメント可能なレコードがすべて含まれます。このパラメーターは、アセスメントにのみ使用します。
    userID 文字列 評価インスタンスまたはサーベイ インスタンスを送信するユーザーの、カンマで区切られた1つ以上の sys_id。このパラメーターを空白のままにすると、アセスメントのステークホルダーまたはサーベイ ユーザーはインスタンスを受け取ります。このパラメーターは、オンデマンドアセスメントのために必要です。
    表 : 2. 返される内容
    タイプ 説明
    文字列 メソッドが成功した場合は、次の値を持つ7a2ad2253784200044e0bfc8bcbe5de1, 10, b7e8b5d4c0a80169008b49e468920048 (インスタンス ID, インスタンス数, グループ ID) などのカンマで区切られた文字列を返します。
    • instanceID:作成されたアセスメントまたはサーベイ インスタンスの sys_id (インスタンスが 1 つのみある場合)。いずれかのインスタンスの (複数のインスタンスがある場合)。複数のインスタンスがある場合は、グループ ID を使用してデータを取得します。
    • #instances:作成したアセスメントインスタンスまたはサーベイ インスタンスの数
    • groupID:作成されたアセスメントインスタンスまたはサーベイ インスタンスを含むアセスメントグループの sys_id

    メソッドでアセスメントまたはサーベイを生成することができない場合は、エラー コードのいずれかを返します。

    エラーコード
    • isscheduled:userID または sourceRecordID パラメーターを使用すべきでなかったことを示します。typeID 値が、[スケジュールタイプ] フィールドが [スケジュール済み] に設定された測定基準タイプを表す場合、使用できるパラメーターは typeID パラメーターのみです。
    • draft_state:typeID 値が、公開されていない測定基準タイプまたはサーベイ定義であることを示します。測定基準タイプまたはサーベイ定義を公開します。
    • invalidtype:typeID 値と一致する既存の測定基準タイプはないことを示します。
    • inactive:typeID 値が、アクティブでない測定基準タイプまたはサーベイ定義であることを示します。測定基準タイプまたはサーベイ定義に移動し、 チェック ボックスをオンにします。
    • not_available:typeID 値が、測定基準がない測定基準タイプ、またはサーベイの質問がないサーベイ定義であることを示します。少なくとも 1 つの測定基準またはサーベイの質問を追加します。
    • notyet:userID 値の少なくとも 1 人のユーザーに、指定されたサーベイ定義のサーベイインスタンスが割り当てられており、まだ期限切れになっていないことを示します。エラー コードは有効期限を返します。
    • wip:userID 値の少なくとも 1 人のユーザーにサーベイのサーベイインスタンスが既に割り当てられていることを示します。
    • not_authorized:userID 値の少なくとも 1 人のユーザーはサーベイへの回答を許可されていないことを示します。次のいずれかが true であることを確認します。
      • 指定されたサーベイ定義のためのサーベイ ユーザーは存在しません。
      • userID 値のすべてのユーザーは、指定されたサーベイ定義のサーベイ ユーザーとして保存されます。
    • completed:typeID 値が、[繰り返し期間] フィールドが [1 回のみ] に設定されたサーベイ定義であること、および userID 値の少なくとも 1 人のユーザーがそのサーベイ定義のサーベイインスタンスを既に完了したことを示します。
    • nousers:userID パラメーターが使用されておらず、次のいずれか 1 つが当てはまることを示します。
      • 指定された測定基準タイプに関連するステークホルダーは存在しません。userID パラメーターを設定するか、少なくとも 1 人のステークホルダーを作成します。
      • 指定されたサーベイ定義に関連するサーベイ ユーザーは存在しません。userID パラメーターを設定するか、少なくとも 1 人のサーベイユーザーを作成します。
    • nosources: typeID 値が、[スケジュールタイプ] フィールドが [オンデマンド] に設定された測定基準タイプであること、および userID パラメーターも sourceRecordID パラメーターも使用されていないことを示します。これらのパラメーターの少なくとも 1 つを設定します。

    このコード例は、サービスポータルウィジェットでアセスメントインスタンスを生成する方法を示しています。この例は、 [スケジュールタイプ] が [オンデマンド] に設定されている場合には機能しません。

    (function() {
      var gdtSurvey = new GlideDateTime();
      if (gdtSurvey.getDayOfMonthUTC() == 23) {
        (new SNC.AssessmentCreation()).createAssessments('d902e09a075730101263f19d7c1ed03a', // Assessment metric type sys_id
          '4baec2fe07d3f0101263f19d7c1ed0a6', // Assessable record which is the source of the assessment
          gs.getUserID()); // Users ID to send the assessment instances to
      }
    })();

    返される結果:

    bbf0b9b8072330101263f19d7c1ed00b,1,33f0f978072330101263f19d7c1ed05f