式でアナリティクスメソッドを取得する

  • リリースバージョン: Zurich
  • 更新日 2025年07月31日
  • 所要時間:5分
  • アナリティクスハブの計算値を式に挿入するには、式内のメソッドを使用します。

    始める前に

    必要なロール:pa_power_user、admin

    このタスクについて

    アナリティクスハブで計算された値を式の入力として使用できます。この値は、現在の式インジケーター自体を含む、任意のインジケーターから取得できます。

    アナリティクスハブから値を取得するには、PAFormulaUtils() のメソッドを式に挿入します。これらのメソッドのいずれかを呼び出すには、 パフォーマンスアナリティクス 変数 pa を使用します。たとえば、 PAFormulaUtils.getScore メソッドを使用するには、 pa.getScore を呼び出します。詳細については、「PAFormulaUtils API」を参照してください。

    手順

    1. 式インジケーター レコードを開きます。
    2. [数式] ボックスの下で、 メソッドの [参照] をクリックします。
      メソッドを選択できるダイアログボックスが開きます。
    3. ニーズに合ったメソッドを参照します。
      メソッドは、編集中の現在の式、または指定する必要がある別のインジケーターのいずれかを参照します。リストには、メソッド名の代わりに各メソッドを説明するラベルが表示されます。

      [メソッドを式に追加] ダイアログボックス内のメソッドの説明的なラベルのリスト。[指定されたインジケーターのグローバルターゲットギャップを取得] が強調表示されています。
    4. メソッドを選択します。
      メソッドを選択すると、メソッドの名前やパラメーターフィールドなどの説明が開きます。

      選択した指定されたインジケーターのグローバルターゲットギャップを取得し、最後に収集されたスコアとして指定された日付を取得する方法を表示する [メソッドを式に追加] ダイアログ
      日付フィールドには、次の値を指定できます。
      • YYYY-MM-DD 形式の絶対日付 (2018-12-21 など)。
      • 変数 score_start または score_end。これらの変数は、参照されるインジケーターに対して計算される収集期間の最初と最後の 1 秒を表します。時間は、ユーザのタイムゾーンとデータベースサーバのタイムゾーンの差 (GMT) から計算されます。詳細については、「ユーザーのタイムゾーンが異なるため、score_start/終了が変更されました」を参照してください。
      • GlideDate または GlideDateTime API を使用して自分でコーディングした日付パラメーター。
    5. パラメーターを入力し、[ 選択] をクリックします。
      ダイアログが閉じ、インジケーターフォームの [式] フィールドにメソッドが表示されます。
    6. メソッドでインジケーターを指定する必要がある場合は、カーソルで インジケーター パラメーターを選択し、[ インジケーターの参照] をクリックします。
      インジケーター選択ダイアログが開きます。
      式のメソッド内からインジケーター選択ダイアログを開く
    7. インジケーターを選択します。
    8. オプション: ブレークダウンまたは要素と時系列アグリゲーションを選択します。
    9. [ メソッドで使用] を選択し、[ 送信]をクリックします。
      インジケーターが選択された状態で、メソッドが完了しました。インジケーターの前にはドル記号 $ が付いていることに注意してください。このドル記号は、インジケータースコアではなくインジケーターの アナリティクスハブ 値が返されることを意味します。[メソッドで使用] チェックボックスをオンにすると、スコアの代わりにアナリティクスハブ値が選択されます。
      インジケーター、ブレークダウン、要素、およびメソッドで使用するチェックボックスが選択されています

    インデックスインジケーター

    インデックスインジケーターは、複数のインジケーターを表す単一のスコアを生成するための式インジケーターのユースケースです。次の例では、次のインジケーターのスコアとグローバルターゲットのギャップを集計する単一のインデックスが必要です。
    • 期限切れのインシデントの割合。
    • オープンインシデントの前回の更新の平均経過時間。
    • オープンインシデントの合計数。
    この単一のインデックスを取得するには、[ 方向][最大化] に設定して式インジケーターを作成します。すべてのインデックスインジケーターを最大化する必要があります。次に、[ メソッドの参照 (Browse for a method )] 関数と [ インジケーターの参照 (Browse for an indicator )] 関数を使用して、次の式を作成します。
    var a = pa.getGap($[[% of open overdue incidents]], score_start) / pa.getGlobalTarget($[[% of open overdue incidents]],score_start);
    var b = pa.getGap($[[Average age of last update of open incidents]], score_start) / pa.getGlobalTarget($[[Average age of last update of open incidents]], score_start);
    var c = pa.getGap($[[Number of open incidents]], score_start) / pa.getGlobalTarget($[[Number of open incidents]], score_start);
    var res = 100 - (100 * (a + b + c) / 3);
    res;

    変更自体にターゲットを設定する

    インシデントバックログを前月比で 10% 削減するというチームの目標を設定したいと考えています。次の式で式インジケーターを作成し、 アナリティクスハブのこのインジケーターのターゲットを -10% に設定します。

    var lastPeriod = new GlideDateTime(score_start.getYearUTC() + '-' + score_start.getMonthUTC() + '-01');
    lastPeriod.addDaysUTC(-1);
    pa.getChangePercentage($[[Number of open incidents]], lastPeriod.addDaysUTC(-1), score_start);

    ブレークダウンと要素に基づいてスコアを除外する

    優先度 = 1 - 重大のインシデントのスコアを除外する場合。
    1. 優先度ブレークダウンと [1 - 重大] 要素の一意のレコード識別子を取得します。ブレークダウンレコードはブレークダウンテーブルにあります。要素レコードの場所はさまざまですが、ブレークダウンのブレークダウンソースで識別されます。この場合、要素は選択肢 [sys_choice] レコードです。一意のレコード識別子を取得する方法については、「 一意のレコード識別子 (sys_id)」を参照してください。

      一意のレコード識別子は、優先度ブレークダウンの場合は baec0752bf130100b96dac808c0739ed、1 - 重大要素の場合は 8a4dde73c6112278017a6a4baf547aa7 です。

    2. 次の式を使用してインジケーターを作成します。
      var res = [[Number of open incidents]];
      if(pa.getCurrentBreakdownID() == 'baec0752bf130100b96dac808c0739ed' && pa.getCurrentElementID() == '8a4dde73c6112278017a6a4baf547aa7')
      {
      res = 0;
      }
      res;