GlideSPScriptable - スコープ指定

  • リリースバージョン: Yokohama
  • 更新日 2025年01月30日
  • 所要時間:35分
  • GlideSPScriptable API は、サービスポータル ウィジェットでデータを操作し、レコード操作を実行するためのメソッドを提供します。

    グローバル $sp オブジェクトを使用して、GlideSPScriptable メソッドにアクセスします。

    GlideSPScriptable - canReadRecord(GlideRecord now_GR)

    ユーザーが指定された GlideRecord を読み取ることができる場合は true を返します。

    レコードタイプが kb_knowledgesc_cat_item、または sc_categoryの場合、メソッドはユーザーがアイテムを表示できるかどうかを確認します。

    表 : 1. パラメーター
    名前 タイプ 説明
    now_GR GlideRecord チェックする GlideRecord。
    表 : 2. 戻り値
    タイプ 説明
    ブール レコードが有効で読み取り可能な場合は True。

    サーバースクリプト

    //Server script
    data.items = [];
    data.userName = gs.getUserDisplayName();
    var now_GR = new GlideRecord("sc_cat_item");
    now_GR.query();
    while(now_GR.next() && data.items.length < 10) {
        if ($sp.canReadRecord(now_GR)) {
        data.items.push(now_GR.getDisplayValue("name"));
        }
    }
    
    //HTML template
    <div class="panel panel-default">
        <div class="panel-heading">Hi, {{c.data.userName}}!</div>
        <div class="panel-body">
            Here are some things you can order:
            <ul><li ng-repeat="item in c.data.items">{{item}}</li></ul>
        </div>
    </div>

    GlideSPScriptable - canReadRecord(文字列テーブル, 文字列 sysId)

    ユーザーが指定された GlideRecord を読み取ることができる場合は true を返します。

    レコードタイプが kb_knowledgesc_cat_item、または sc_categoryの場合、メソッドはユーザーがアイテムを表示できるかどうかを確認します。

    表 : 3. パラメーター
    名前 タイプ 説明
    テーブル 文字列 クエリするテーブルの名前。
    sysId 文字列 クエリするレコードのSys_id。
    表 : 4. 戻り値
    タイプ 説明
    ブール レコードが有効で読み取り可能な場合は True。

    GlideSPScriptable - canSeePage(文字列 pageID)

    現在ログインしているユーザーに指定されたページを表示する権限がある場合は true を返します。

    システムは、ロールとユーザー基準を使用して権限を決定します。詳細については、「 ロール別のページセキュリティの構成 」および 「サービスポータルのユーザー基準」を参照してください。

    表 : 5. パラメーター
    名前 タイプ 説明
    ページ ID 文字列 ページ [sp_page] テーブルのページ ID。
    表 : 6. 戻り値
    タイプ 説明
    ブール 現在ログインしているユーザーに、指定されたページを表示する権限があるかどうかを示すフラグ。次の値が含まれます。
    • true:ユーザーはページを表示できます。
    • false:ユーザーがページを表示できないか、指定された pageID が有効でないか、ユーザーがログインしていません。

    この例では、SP ヘッダーメニューの [ナレッジ] メニューアイテムに、kb_view2ページを表示する権限を持つユーザーにのみメニューアイテムを表示するという条件を追加します。

    GlideSPScriptable.canSeePage("kb_view2")

    GlideSPScriptable - getCatalogItem(String sysId)

    sc_cat_itemまたはsc_cat_item_guideのモデルとビューモデルを返します。

    このメソッドは廃止されました。代わりに getCatalogItem(String sysId, Boolean isOrdering) メソッドを使用してください。このメソッドは、isOrdering パラメーターを false に設定して getCatalogItem(String sysId, Boolean isOrdering) メソッドを呼び出します。これは、書き込みロールのセキュリティチェックが実行されていることを意味します。

    このメソッドは、 <sp-model /> を使用してカタログアイテムのレンダリングと順序付けに必要なデータを簡単に取得する方法です。カタログアイテムを取得してその画像または名前を表示するだけが必要な場合は、GlideRecord を使用して sc_cat_item テーブルをクエリします。

    表 : 7. パラメーター
    名前 タイプ 説明
    sysId 文字列 カタログアイテム (sc_cat_item) または注文ガイド (sc_cat_item_guide) のsys_id。
    表 : 8. 戻り値
    タイプ 説明
    オブジェクト カタログアイテム変数モデル、ビュー、セクション、価格設定、およびクライアントスクリプトを含むオブジェクト。
    // Server script
    (function() {
        var sys_id = $sp.getParameter("sys_id")
        data.catItem = $sp.getCatalogItem(sys_id);
    })();
    
    // Client script
    function($http, spUtil) {
        var c = this;
        var submitting = false;
        c.getIt = function() {
            if (submitting) return;
            $http.post(spUtil.getURL('sc_cat_item'), c.data.catItem).success(function(response) {
                if (response.answer) {
                    c.req = response.answer;
                    c.req.page = c.req.table == 'sc_request' ? 'sc_request' : 'ticket';
                }
            });
        }
    }
    
    //SCSS
    .img-bg {
        padding: 5px;
        background-color: $brand-primary;
    }
    
    .img-responsive {
        margin: 0 auto;
    }
    
    .cat-icon {
        display: block;
        margin: -40px auto 0;
    }
    
    // HTML template
    <div class="col-sm-4">
      <div class="panel panel-default">
        <div class="img-bg">
          <img ng-src="{{::data.catItem.picture}}" class="img-responsive" />
        </div>
        <span class="cat-icon fa fa-stack fa-lg fa-3x hidden-xs">
          <i class="fa fa-circle fa-stack-2x text-success"></i>
          <i class="fa fa-desktop fa-stack-1x fa-inverse"></i>
        </span>
        <div class="panel-body">
          <p class="lead text-center">{{::data.catItem.name}}</p>
          <ul class="list-unstyled">
            <li class="text-center" ng-if="::data.catItem.price">${Price}: {{::data.catItem.price}}</li>
          </ul>
          <sp-model form-model="::data.catItem" mandatory="mandatory"></sp-model>
          <p ng-if="c.req" class="text-center text-success">
            ${Request created!} <a href="?id={{c.req.page}}&table={{c.req.table}}&sys_id={{c.req.sys_id}}">{{c.req.number}}</a>
          </p>
          <button ng-if="!c.req" class="btn btn-default btn-block" ng-click="c.getIt()">${Get it}</button>
        </div>
      </div>
    </div>

    GlideSPScriptable - getCatalogItem(String sysId, Boolean isOrdering)

    sc_cat_itemまたはsc_cat_item_guideのモデルとビューモデルを返します。

    表 : 9. パラメーター
    名前 タイプ 説明
    sysId 文字列 カタログアイテム (sc_cat_item) または注文ガイド (sc_cat_item_guide) のsys_id。
    isOrdering ブール true の場合、ロールの作成セキュリティチェックを使用します。false の場合、書き込みロールのセキュリティチェックを使用します。

    ユーザーがアイテムを注文している場合、または買い物かごに入れている場合は、作成ロールを使用して確認します。

    ユーザーが注文を行っていない場合、たとえば誰かが要求されたアイテムを見て、そのアイテムに関連付けられた変数を確認している場合は、書き込みロールを使用して確認します。

    表 : 10. 戻り値
    タイプ 説明
    オブジェクト カタログアイテム変数モデル、ビュー、セクション、価格設定、およびクライアントスクリプトを含むオブジェクト。

    GlideSPScriptable - getDisplayValue(文字列 fieldName)

    ウィジェットの sp_instance または sp_portal レコードのいずれかから、指定されたフィールドの表示値を返します (存在し、値がある場合)。

    表 : 11. パラメーター
    名前 タイプ 説明
    fieldName 文字列 フィールドの名前
    表 : 12. 戻り値
    タイプ 説明
    文字列 sp_instanceレコードまたはsp_portalレコードからの表示値。
    //Server script
    (function() {
        data.title = $sp.getDisplayValue("title");
        data.catalog = $sp.getDisplayValue("sc_catalog");
    })();
    
    //HTML template
    <div>
        <h1>sp_instance.title: {{::data.title}}</h1>
        <h1>sp_portal.sc_catalog: {{::data.catalog}}</h1>
    </div>

    GlideSPScriptable - getField(GlideRecord now_GR, 文字列 fieldName)

    指定された GlideRecord の指定されたフィールドに関する情報を返します。

    表 : 13. パラメーター
    名前 タイプ 説明
    now_GR GlideRecord チェックする GlideRecord
    fieldName 文字列 情報を検索するフィールド
    表 : 14. 戻り値
    タイプ 説明
    オブジェクト フィールドのラベル、値、displayValue、およびタイプを含むオブジェクト。フィールド名の GlideRecord が有効でない場合、またはフィールドを読み取ることができない場合は、null を返します。

    GlideSPScriptable - getFields(GlideRecord now_GR, String fieldNames)

    指定されたフィールド名のリストをチェックし、有効なフィールド名のアレイを返します。

    表 : 15. パラメーター
    名前 タイプ 説明
    now_GR GlideRecord チェックする GlideRecord
    フィールド 名前 文字列 フィールド名のカンマ区切りリスト。
    表 : 16. 戻り値
    タイプ 説明
    アレイ 有効なフィールドのアレイ。

    GlideSPScriptable - getFieldsObject(GlideRecord now_GR, 文字列 fieldNames)

    指定されたフィールド名のリストをチェックし、有効なフィールド名のオブジェクトを返します。

    表 : 17. パラメーター
    名前 タイプ 説明
    now_GR GlideRecord チェックする GlideRecord
    フィールド 名前 文字列 フィールド名のカンマ区切りリスト。
    表 : 18. 戻り値
    タイプ 説明
    オブジェクト 有効なフィールド名を含むオブジェクト。

    GlideSPScriptable - getForm(String tableName, String sysId)

    渡されたテーブル名とレコードsys_idに関連付けられたフォームを返します。

    注:
    このメソッドは、指定されたテーブルと関連レコードへのクロススコープアクセス権限を適用します。
    表 : 19. パラメーター
    名前 タイプ 説明
    tableName 文字列 フォームが存在するテーブルの名前。
    sysId 文字列 フォームのSys_id。
    表 : 20. 戻り値
    タイプ 説明
    オブジェクト 要求されたフォーム。
    var sp = new GlideSPScriptable('');
    var res = sp.getForm('sys_user', '6816f79cc0a8016401c5a33be04be441');    // User sys ID information
    gs.info('Name: ' + res._fields.name.value);
    gs.info('E-mail: ' + res._fields.email.value);

    出力:

    Name: Harry Jones
     E-mail: harryjones@gmail.com

    GlideSPScriptable - getKBCategoryArticles(文字列 sys_id, 数制限)

    指定されたカテゴリとそのサブカテゴリの KB 記事を返します。

    パフォーマンスの問題を回避するため、大きなカテゴリの記事やインライン画像を含む記事を返すためにこのメソッドを使用しないでください。代わりに、 getKBArticleSummaries() を使用します。

    表 : 21. パラメーター
    名前 タイプ 説明
    sys_id 文字列 KB 記事カテゴリのSys_id。
    補償限度額 番号 返される KB 記事の最大数。
    表 : 22. 戻り値
    タイプ 説明
    アレイ カテゴリ内の記事とそのサブカテゴリに次を含む:
    • 公開済みworkflow_state
    • 現在の日付以降の valid_to 日。
    //Server script 
    (function() {
        data.kbs = $sp.getKBCategoryArticles("0ac1bf8bff0221009b20ffffffffffec", 5);
    })();
    
    //HTML template
    <div>
    articles: {{::data.kbs}}
    </div>
    

    GlideSPScriptable - getKBCategoryArticleSummaries(文字列 sys_id, 数値制限, 数値 maxChars)

    指定されたカテゴリとそのサブカテゴリのナレッジベース記事のサマリーを返します。

    表 : 23. パラメーター
    名前 タイプ 説明
    sys_id 文字列 KB 記事カテゴリのSys_id。
    補償限度額 番号 返される KB 記事の最大数。
    maxChar 番号 記事テキストから返す最大文字数。記事の全文については、値を -1 に設定します。
    表 : 24. 戻り値
    タイプ 説明
    アレイ カテゴリ内の記事とそのサブカテゴリに次を含む:
    • 公開済みworkflow_state
    • 現在の日付以降の valid_to 日。
    //Server script 
    (function() {
        data.summary = $sp.getKBCategoryArticleSummaries("0ac1bf8bff0221009b20ffffffffffec", 5, 200);
    })();
    
    //HTML template
    <div>
    articles: {{::data.summary}}
    </div>
    

    GlideSPScriptable - getKBCount(String sys_id)

    定義されたナレッジベースの記事数を返します。

    表 : 25. パラメーター
    名前 タイプ 説明
    sys_id 文字列 ナレッジベースレコードのSys_id。
    表 : 26. 戻り値
    タイプ 説明
    番号 定義されたナレッジベース内の次のナレッジ記事の数:
    • 公開済みworkflow_state
    • 現在の日付以降の valid_to 日。
    //Server script 
    (function() {
        data.count = $sp.getKBCount("a7e8a78bff0221009b20ffffffffff17");
    })();
    
    //HTML template
    <div>
    articles: {{::data.count}}
    </div>
    

    GlideSPScriptable - getListColumns(String tableName, String view)

    指定されたビュー内の指定されたテーブルの列のリストを返します。

    表 : 27. パラメーター
    名前 タイプ 説明
    tableName 文字列 テーブルの名前
    表示 文字列 列をフィルタリングするためのビュー
    表 : 28. 戻り値
    タイプ 説明
    オブジェクト 列名を含むオブジェクト。

    GlideSPScriptable - getMenuItems(文字列 sysId)

    指定されたインスタンスのメニュー項目のアレイを返します。

    表 : 29. パラメーター
    名前 タイプ 説明
    sysId 文字列 インスタンスの sysId
    表 : 30. 戻り値
    タイプ 説明
    アレイ 指定されたインスタンスのメニューアイテム

    GlideSPScriptable - getMenuHREF (GlideRecord ページ)

    sp_menuタイプに基づいて URL の (?id=) 部分を返します。

    表 : 31. パラメーター
    名前 タイプ 説明
    ページ GlideRecord ページ
    表 : 32. 戻り値
    タイプ 説明
    文字列 URL の href 部分。

    GlideSPScriptable - getParameter(文字列名)

    指定されたパラメーターの値を返します。

    表 : 33. パラメーター
    名前 タイプ 説明
    名前 文字列 クエリ文字列または投稿本文のキーの名前。
    表 : 34. 戻り値
    タイプ 説明
    オブジェクト 指定されたパラメーターをオブジェクトとして返します。要求、JSON 要求、またはウィジェットがない場合は null を返します。

    GlideSPScriptable - getPortalRecord()

    サービスポータル [sp_portal] テーブルからポータルレコードを返します。

    表 : 35. パラメーター
    名前 タイプ 説明
    なし
    表 : 36. 戻り値
    タイプ 説明
    GlideRecord サービスポータル [sp_portal] テーブルからの現在のポータルのポータルレコード。
    //Server script
    (function() {
        var portalGr = $sp.getPortalRecord();
        data.logo = portalGr.getDisplayValue("logo");
        data.homepage = portalGr.getDisplayValue("homepage.id");
    })();
    
    //HTML template
    <div>
        <img ng-src="{{::c.data.logo}}" />
        <a href="?id={{::c.data.homepage}}">Click here to go home</a>
    </div>

    GlideSPScriptable - getRecord(文字列テーブル, 文字列 sys_id)

    パラメーターが指定されている場合は、指定されたテーブルと Sys ID によって識別される GlideRecord を返します。パラメーターを指定しない場合は、現在の URL で識別されるレコードを返します。

    表 : 37. パラメーター
    名前 タイプ 説明
    テーブル 文字列 オプション。返されるレコードのテーブル。パラメーターが含まれていない場合は、現在の URL で識別されるテーブルとシステム ID を返します。
    sys_id 文字列 オプション。返されるレコードの Sys ID。パラメーターが含まれていない場合は、現在の URL で識別されるレコードを返します。
    表 : 38. 戻り値
    タイプ 説明
    GlideRecord パラメーターが指定されている場合は、指定されたテーブルと Sys ID によって識別されるレコードを返します。

    パラメーターを指定しない場合は、現在の URL で識別されるレコードを返します。

    ウィジェットが別のウィジェットに埋め込まれている場合、または指定されたパラメーターのレコードが見つからない場合は null を返します。

    //Server script 
    (function(){ 
    var now_GR = $sp.getRecord(); 
    data.tableLabel = now_GR.getLabel(); 
    })(); 
    
    //HTML template 
    <div class="panel-heading"> 
    <h4 class="panel-title">${{{data.tableLabel}} details}</h4> 
    </div>

    GlideSPScriptable - getRecordDisplayValues(Object data, GlideRecord from, String names)

    指定されたフィールドの表示値をデータパラメーターにコピーします。

    表 : 39. パラメーター
    名前 タイプ 説明
    データ オブジェクト 指定されたフィールドの表示値がこのオブジェクトにコピーされます。
    送信元 GlideRecord 処理する GlideRecord。
    names 文字列 フィールド名のカンマ区切りリスト。
    表 : 40. 戻り値
    タイプ 説明
    なし

    GlideSPScriptable - getRecordElements(オブジェクトデータ、GlideRecord 取得元、文字列名)

    指定したフィールドについて、要素の名前、表示値、および値をデータパラメーターにコピーします。

    表 : 41. パラメーター
    名前 タイプ 説明
    データ オブジェクト 指定されたフィールドの要素の名前、表示値、および値がこのオブジェクトにコピーされます。
    送信元 GlideRecord 処理する GlideRecord。
    names 文字列 フィールド名のカンマ区切りリスト。
    表 : 42. 戻り値
    タイプ 説明
    なし

    GlideSPScriptable - getRecordValues(オブジェクトデータ、GlideRecord 取得元、文字列名)

    指定されたフィールド名の値を GlideRecord からデータパラメーターにコピーします。

    表 : 43. パラメーター
    名前 タイプ 説明
    データ オブジェクト 指定したフィールドの値がこのオブジェクトにコピーされます。
    送信元 GlideRecord 処理する GlideRecord。
    names 文字列 フィールド名のカンマ区切りリスト。
    表 : 44. 戻り値
    タイプ 説明
    なし

    GlideSPScriptable - getRecordVariables(GlideRecord now_GR, ブール値 includeNilResponses)

    レコードに関連付けられた変数 サービスカタログ 文字列形式で返します。

    表 : 45. パラメーター
    名前 タイプ 説明
    now_GR GlideRecord サービスカタログ変数を取得するレコード。要求アイテム [sc_req_item] レコードやレコードプロデューサーを介して送信されたインシデントなど、 サービスカタログ 変数が定義されているレコードである必要があります。
    includeNilResponses ブール オプション。true の場合、API にはユーザー定義値のない変数が含まれます。
    表 : 46. 戻り値
    タイプ 説明
    文字列 サービスカタログ レコードに関連付けられた変数。
    //Server script 
    (function() {
    var itemsGR = new GlideRecord("sc_req_item");
    itemsGR.get('585d1bc44f4f13008a959a211310c77d');
    	
    data.scVars = $sp.getRecordVariables(itemsGR);
    
    })();
    
    //HTML template
    <div>
    Requested item variables: {{::data.scVars}}
    </div>

    出力:

    Requested item variables: [
      {
        "display_value":"MetroPCS",
        "name":"carrier",
        "visible_summary":true,
        "id":"585d1bc44f4f13008a959a211310c77c",
        "label":"Allocated carrier",
        "type":"5",
        "value":"metropcs",
        "visible_standalone":true,
        "visible_guide":true
      },
      {
        "display_value":"Unlimited",
        "name":"data_plan",
        "visible_summary":true,
        "id":"d05d1bc44f4f13008a959a211310c77c",
        "label":"Monthly data allowance",
        "type":"5",
        "value":"unlimited",
        "visible_standalone":true,
        "visible_guide":true
      },
      {
        "display_value":"12 Months",
        "name":"duration",
        "visible_summary":true,
        "id":"d85d1bc44f4f13008a959a211310c77c",
        "label":"Contract duration",
        "type":"5",
        "value":"twelve_months",
        "visible_standalone":true,
        "visible_guide":true
      },
      {
        "display_value":"Slate",
        "name":"color",
        "visible_summary":true,
        "id":"545d1bc44f4f13008a959a211310c77c",
        "label":"Color",
        "type":"5",
        "value":"slate",
        "visible_standalone":true,
        "visible_guide":true
      },
      {"display_value":"64GB",
        "name":"storage",
        "visible_summary":true,
        "id":"d45d1bc44f4f13008a959a211310c77c",
        "label":"Storage",
        "type":"5",
        "value":"sixtyfour",
        "visible_standalone":true,
        "visible_guide":true
      }
    ]

    GlideSPScriptable - getRecordVariablesArray(GlideRecord now_GR, ブール値 includeNilResponses)

    レコードに関連付けられた サービスカタログ 変数のアレイを返します。

    表 : 47. パラメーター
    名前 タイプ 説明
    now_GR GlideRecord サービスカタログ変数を取得するレコード。要求アイテム [sc_req_item] レコードやレコードプロデューサーを介して送信されたインシデントなど、 サービスカタログ 変数が定義されているレコードである必要があります。
    includeNilResponses ブール オプション。true の場合、API にはユーザー定義値のない変数が含まれます。
    表 : 48. 戻り値
    タイプ 説明
    オブジェクト レコードに関連付けられた サービスカタログ 変数のアレイ。
    //Server script 
    (function() {
    var itemsGR = new GlideRecord("sc_req_item");
    itemsGR.get('585d1bc44f4f13008a959a211310c77d');
    	
    data.scVars = $sp.getRecordVariablesArray(itemsGR);
    
    })();
    
    //HTML template
    <div>
    Requested item variables: {{::data.scVars}}
    </div>

    出力:

    Requested item variables: [
      {
        "display_value":"MetroPCS",
        "name":"carrier",
        "visible_summary":true,
        "id":"585d1bc44f4f13008a959a211310c77c",
        "label":"Allocated carrier",
        "type":"5",
        "value":"metropcs",
        "visible_standalone":true,
        "visible_guide":true
      },
      {
        "display_value":"Unlimited",
        "name":"data_plan",
        "visible_summary":true,
        "id":"d05d1bc44f4f13008a959a211310c77c",
        "label":"Monthly data allowance",
        "type":"5",
        "value":"unlimited",
        "visible_standalone":true,
        "visible_guide":true
      },
      {
        "display_value":"12 Months",
        "name":"duration",
        "visible_summary":true,
        "id":"d85d1bc44f4f13008a959a211310c77c",
        "label":"Contract duration",
        "type":"5",
        "value":"twelve_months",
        "visible_standalone":true,
        "visible_guide":true
      },
      {
        "display_value":"Slate",
        "name":"color",
        "visible_summary":true,
        "id":"545d1bc44f4f13008a959a211310c77c",
        "label":"Color",
        "type":"5",
        "value":"slate",
        "visible_standalone":true,
        "visible_guide":true
      },
      {"display_value":"64GB",
        "name":"storage",
        "visible_summary":true,
        "id":"d45d1bc44f4f13008a959a211310c77c",
        "label":"Storage",
        "type":"5",
        "value":"sixtyfour",
        "visible_standalone":true,
        "visible_guide":true
      }
    ]

    GlideSPScriptable - getStream(文字列テーブル, 文字列 sysId)

    指定されたレコードのアクティビティストリームを取得します。このメソッドは、タスクテーブルを拡張するテーブルで機能します。

    表 : 49. パラメーター
    名前 タイプ 説明
    テーブル 文字列 テーブル名
    sysID 文字列 レコードの sys_id
    表 : 50. 戻り値
    タイプ 説明
    オブジェクト タスクテーブルを拡張するテーブルが指定されている場合は、display_value、sys_id、short_description、number、entries、user_sys_id、user_full_name、user_login label、table、および journal_fields プロパティが含まれます。それ以外の場合は、テーブルとsys_idのプロパティが含まれます。
    注:
    user_login プロパティには、現在のユーザーのユーザー ID が含まれています。user_sys_idプロパティとiser_full_nameプロパティは、クエリされたレコードの作成者を参照します。

    GlideSPScriptable - getUserInitials()

    ユーザーのイニシャルを返します。

    表 : 51. パラメーター
    名前 タイプ 説明
    なし
    表 : 52. 戻り値
    タイプ 説明
    文字列 ユーザーのイニシャル

    GlideSPScriptable - getValue(文字列名)

    JSON 要求、インスタンス、またはポータルの名前付き値を返します。

    表 : 53. パラメーター
    名前 タイプ 説明
    名前 文字列 JSON 要求、インスタンス、またはポータルの名前。
    表 : 54. 戻り値
    タイプ 説明
    オブジェクト 指定されたパラメーターの値。指定したエンティティが存在しないか、そのようなパラメーターがない場合は null。
    //Server script
    (function() {
        data.title = $sp.getValue("title");
        data.catalog = $sp.getValue("sc_catalog");
    })();
    
    //HTML templage
    <div>
        <h1>sp_instance.title: {{::data.title}}</h1>
        <h1>sp_portal.sc_catalog: {{::data.catalog}}</h1>
    </div>

    GlideSPScriptable - getValues(オブジェクトデータ, 文字列名)

    要求またはインスタンスからデータパラメーターに値をコピーします。

    表 : 55. パラメーター
    名前 タイプ 説明
    データ オブジェクト パラメーター値を受け取ります。
    names 文字列 カンマ区切りのフィールド名文字列。
    表 : 56. 戻り値
    タイプ 説明
    なし

    GlideSPScriptable - getVariablesArray(ブール値 includeNilResponses)

    URL 内のレコードに関連付けられた サービスカタログ 変数のアレイを返します。

    たとえば、URL にパラメーター id=form&table=sc_req_item&sys_id=832e9620db4f330083766b984b9619cf が含まれている場合、API は要求アイテム [sc_req_item] テーブルの指定されたレコードに関連付けられた変数を返します。要求アイテム [sc_req_item] レコードやレコードプロデューサーを介して送信されたインシデントなど、 サービスカタログ 変数が定義されているレコードである必要があります。

    表 : 57. パラメーター
    名前 タイプ 説明
    includeNilResponses ブール オプション。true の場合、API にはユーザー定義値のない変数が含まれます。
    表 : 58. 戻り値
    タイプ 説明
    オブジェクト テーブルに関連付けられた変数のアレイ。
    //Server script 
    (function() {	
    data.scVars = $sp.getVariablesArray();
    })();
    
    //HTML template
    <div Current record variables: {{::data.scVars}} ></div>

    出力:

    Current record variables: [
      {
        "display_value":"unlimited",
        "name":"data","visible_summary":
        true,"id":"472e5620db4f330083766b984b96198a",
        "label":"Data",
        "type":"6",
        "value":"unlimited",
        "visible_standalone":true,
        "visible_guide":true
      },
      {
        "display_value":"Black",
        "name":"color",
        "visible_summary":true,
        "id":"c72e5620db4f330083766b984b96198a",
        "label":"Color",
        "type":"6",
        "value":"Black",
        "visible_standalone":true,
        "visible_guide":true
      }
    ] 

    GlideSPScriptable - getWidget(文字列 sysID, オブジェクトオプション)

    ID または sys_id でウィジェットを取得し、指定されたオプションを使用してそのウィジェットのサーバースクリプトを実行してから、ウィジェットモデルを返します。

    表 : 59. パラメーター
    名前 タイプ 説明
    sysID 文字列 ウィジェットsys_idまたはwidget_id
    オプション オブジェクト ウィジェットのサーバースクリプトに渡すオブジェクト。このオブジェクトをサーバースクリプトの オプション として参照します。
    注:
    この関数に渡されたオプションは、そのスクリプト の最初の実行 時に埋め込みウィジェットのサーバースクリプトでのみ使用できます。埋め込みウィジェットからサーバースクリプトへのその後の呼び出しには、渡されたオブジェクトプロパティは含まれません。
    表 : 60. 戻り値
    タイプ 説明
    オブジェクト sp-widget で使用するウィジェットモデル。
    //Server script
    data.myWidget = $sp.getWidget('widget_id', {p1: param1, p2: param2});
    
    //HTML
    <sp-widget widget="c.data.myWidget"></sp-widget>

    GlideSPScriptable - isRTLEnabled()

    関連付けられたポータルで右から左に記述する言語 (RTL) が有効になっているかどうか、および現在のユーザーの言語が方向的に RTL であるかどうかを確認します。

    この方法を使用して、ポータル UI に RTL 固有の CSS が必要かどうかを判断します。

    表 : 61. パラメーター
    名前 タイプ 説明
    なし
    表 : 62. 戻り値
    タイプ 説明
    ブール RTL フラグが有効になっていて、現在のユーザーのセッション言語が方向的に RTL であるかどうかを示すフラグ。

    可能な値:

    • true:RTL フラグが有効です。
    • false:RTL フラグが有効になっていません。

    データタイプ:ブール

    次のコード例は、このメソッドを使用してポータルページに表示するアイコンのタイプを決定する方法を示しています。

    // Server script  
    (function() {
      data.isRTLEnabled = $sp.isRTLEnabled();
     })(); 
    
    // HTML template 
    <div> <i ng-class="c.data.isRTLEnabled ? 'fa fa-arrow-right' : 'fa fa-arrow-left'"></i> </div> 

    GlideSPScriptable - isUserCriteriaEnabled()

    ユーザー基準が有効な場合は true を返します。

    このメソッドは、 サービスポータルユーザー基準サポート プラグイン (com.glide.service-portal.user-criteria) がアクティブで、[サービスポータルのエンタイトルメント (glide.service_portal.user_criteria_enabled) に対してロールフィールドではなくユーザー基準レコードの使用を有効にする (Enable of User Criteria records instead of Roles fields for Service Portal entitlements ) (.user_criteria_enabled) システムプロパティが true に設定されている場合に true を返します。

    表 : 63. パラメーター
    名前 タイプ 説明
    なし
    表 : 64. 戻り値
    タイプ 説明
    ブール ユーザー基準が有効になっている場合は True。

    GlideSPScriptable - log(オブジェクトメッセージ)

    サービスポータルのログエントリ [sp_log] テーブルへのログ出力。ログインユーザーには、sp_admin ロールまたは admin ロールが必要です。

    表 : 65. パラメーター
    名前 タイプ 説明
    メッセージ オブジェクト サービスポータルページの出力として送信するメッセージを表す JavaScript オブジェクトまたは文字列。
    表 : 66. 戻り値
    タイプ 説明
    なし

    次の例は、事前定義されたエラーが発生した場合にそれをログに記録する方法を示しています。

    var demo_data = null;
    var params = null;
    if (gr.getValue("demo_data")) {
       try {
    	demo_data = JSON.parse(gr.getValue("demo_data"));
    	params = (demo_data.options) ? demo_data.options : null;
    	} catch(e) {
    	$sp.log(e);
       }
    }

    GlideSPScriptable - mapUrlToSPUrl(文字列 URL)

    プラットフォーム UI でリストまたはフォームを要求する URL を、対応する id=list または id=form サービスポータルページの URL に変換します。

    このメソッドを使用して、ユーザーがプラットフォームの UI フォームまたはリスト URL を要求したときに、ログイン後に適切なサービスポータルページにリダイレクトするなどのタスクを実行します。id=list および id=form ページターゲットはカスタマイズできないことに注意してください。
    注:
    テーブル、sys_id、およびsysparm_queryの値は元の URL から保持されます。sysparm_viewはそうではありません。
    表 : 67. パラメーター
    名前 タイプ 説明
    URL 文字列 プラットフォーム UI URL
    表 : 68. 戻り値
    タイプ 説明
    文字列 変換されたサービスポータル URL。

    渡された URL がプラットフォーム UI でリストまたはフォームを要求しない場合は、null 値が返されます。

    リストの例

    GlideSPScriptable().mapUrlToSPUrl("http://demo.service-now.com/task_list.do?sysparm_userpref_module=1523b8d4c611227b00be8216ec331b9a&sysparm_query=assigned_to=javascript:getMyAssignments()&sysparm_clear_stack=true"))

    戻り値

    id=list&table=task&filter=assigned_to=javascript:getMyAssignments()&sys_id=&v=

    フォームの例

    GlideSPScriptable().mapUrlToSPUrl("incident.do?sys_id=12bc12bc12bc12bc12bc12bc12bc12bc")

    戻り値

    id=form&table=incident&filter=&sys_id=12bc12bc12bc12bc12bc12bc12bc12bc&v=

    GlideSPScriptable - userCanSeeSearchSourceByCriteria(String searchSourceID)

    現在のユーザーが searchSourceID で指定された検索ソースを表示できる場合は true を返します。

    ユーザーがユーザー基準によって制限されていない場合は true を返します。ユーザー基準がサービスポータル資産に与える影響の詳細については、「 サービスポータルのユーザー基準」を参照してください。
    注:
    このメソッドは検索ソースのロールベースの権限を評価しないため、[ユーザー基準] が有効な場合にのみ使用してください。
    表 : 69. パラメーター
    名前 タイプ 説明
    searchSourceID 文字列 検索ソースレコードのSys_id。
    表 : 70. 戻り値
    タイプ 説明
    ブール 現在のユーザーが検索ソースへの読み取りアクセス権を持っている場合は True。