GlideSPUtil - グローバル

  • リリースバージョン: Xanadu
  • 更新日 2024年08月01日
  • 所要時間:6分
  • GlideSPUtil API は、サービスポータルをサポートする一般的なバックエンド関数を実行するユーティリティメソッドを提供します。

    利用可能なユーティリティメソッド:
    • ページ [sp_page] テーブルにある指定された サービスポータル ページに関連付けられた動的ページ変数 [sp_page_title_variable] テーブルで指定された変数を解決します。
    • その他の方法

    詳細については、「サービスポータルページサービスポータルページ」を参照してください。

    GlideSPUtil - GlideSPUtil()

    GlideSPUtil オブジェクトをインスタンス化します。

    表 : 1. パラメーター
    名前 タイプ 説明
    なし

    次のコード例は、関連するメソッドを呼び出す前に GlideSPUtil オブジェクトをインスタンス化する方法を示しています。

    function() {
      var spUtil = new GlideSPUtil();
      var pageGR = spUtil.getPageRecordWithPageRoute('kb_article', '81b75d3147032100ba13a5554ee4902b', false);
      var queryParams = RP.getParameters();
      var hrUrl = spUtil.getHumanReadableUrl(pageGR, queryParams);
    }

    GlideSPUtil - getHumanReadableUrl()

    'id' クエリパラメーターを考慮してポータルページ (pageGR) を識別し、現在のトランザクションのクエリ文字列を使用して getHumanReadableUrl(GlideRecord、pageGR, String queryString) を呼び出し、人間が判読できる最終的な判読可能を返します。

    表 : 2. パラメーター
    名前 タイプ 説明
    なし
    表 : 3. 返される内容
    タイプ 説明
    文字列 指定された サービスポータル レコードの人間が判読できる URL。変数は queryParams 文字列マップの内容に置き換えられます。

    次のコード例 方法を示します。

    function() {
      var spUtil = new GlideSPUtil();
      var hrUrl = spUtil.getHumanReadableUrl();
    }

    出力:

    GlideSPUtil - getHumanReadableUrl(GlideRecord pageGR, String queryParams)

    渡された queryParms 文字列パラメーターを文字列マップに変換し、sp_pageレコードで指定された 「人間が判読できる URL 構造」文字列 の変数を解決し、URL の 最終的な人間が判読できる部分を返します。

    表 : 4. パラメーター
    名前 タイプ 説明
    ページGR GlideRecord URL 変数を解決するページ [sp_page] テーブル内のレコードの GlideRecord オブジェクト。
    querystring 文字列 クエリ文字列。
    表 : 5. 返される内容
    タイプ 説明
    文字列 指定された サービスポータル レコードの人間が判読できる URL。変数は queryParams 文字列マップの内容に置き換えられます。

    次のコード例 方法を示します。

    function() {
      var spUtil = new GlideSPUtil();
      var pageGR = spUtil.getPageRecordWithPageRoute('kb_article', '81b75d3147032100ba13a5554ee4902b', false);
      var queryString = GlideTransaction.get().getRequest().getQueryString();
      var hrUrl = spUtil.getHumanReadableUrl(pageGR, queryParams);
    }

    出力:

    GlideSPUtil - getHumanReadableUrl(GlideRecord pageGR, StringMap queryParams)

    渡されたサービスポータルテンプレートページオブジェクトの [人間が判読できる URL 構造] フィールドの変数を解決し、指定されたクエリパラメーターと解決された人間が判読できるパラメーターを含む URL を返します。

    URL で人間が判読できるキーワードを使用して、次のことを行います。
    • URL が関連ページのコンテキストにない場合に、顧客がその URL の目的をよりよく理解できるようにします。
    • 検索エンジンにキーワードを提供して、ページを見つけやすくします。

    たとえば、次のような認識できないキーと値のペアを含む URL を使用するのではなく、

    https://instance_name.servicenow.com/sp/en?id=sc_cat_item&sys_id=ec80c13297968d1021983d1e6253af32&sysparm_catgory=1e80c15697969f1032083d1e6253be15

    URL の目的を理解しやすくするために、URL にアイテム名を追加できます。

    https://instance_name.servicenow.com/sp/en/apple-iphone-13?id=sc_cat_item&sys_id=ec80c13297968d1021983d1e6253af32&sysparm_catgory=1e80c15697969f1032083d1e6253be15

    このメソッドを使用する前に、URL に動的コンテンツを含める各 サービスポータル テンプレートで使用できる動的ページ変数を定義する必要があります。これらの変数の追加の詳細については、「 Add human readable keywords to page URLs」を参照してください。

    表 : 6. パラメーター
    名前 タイプ 説明
    ページGR GlideRecord 動的 URL 変数を解決するサービスポータル テンプレートページの GlideRecord オブジェクト。ページ [sp_page] テーブルにあります。
    queryParams スティングマップ 目的の サービスポータル ページを取得するために使用する URL クエリパラメーター。
    例:
    {
      "id": "sc_cat_item",
      "sys_id": "ec80c13297968d1021983d1e6253af32",
      "sysparm_catgory": "1e80c15697969f1032083d1e6253be15"
    }
    表 : 7. 返される内容
    タイプ 説明
    文字列 サービスポータルテンプレートページで指定された動的変数の解決済みの人間が判読できる要素を含む URL。

    たとえば、定義された動的変数が %item_name の場合、URL には、ユーザーが選択したアイテムの名前 (「apple-iphone-13」など) と、指定されたすべてのクエリパラメーターが含まれます。

    https://instance_name.servicenow.com/sp/en/apple-iphone-13?id=sc_cat_item&sys_id=ec80c13297968d1021983d1e6253af32&sysparm_catgory=1e80c15697969f1032083d1e6253be15.

    次のコード例は、特定の KB 記事を取得し、 getHumanReaadableUrl() を呼び出して関連する動的変数を適用する方法を示しています。

    function() {
      var spUtil = new GlideSPUtil();
      var pageGR = spUtil.getPageRecordWithPageRoute('kb_article', '81b75d3147032100ba13a5554ee4902b', false);
      var queryParams = RP.getParameters();
      var hrUrl = spUtil.getHumanReadableUrl(pageGR, queryParams);
    }

    出力: