---
sourceDocument: オーストラリア API リファレンス
sourceDocumentLink: https://servicenow-prod.fluidtopics.net/r/ja-JP/api-reference

 Release :

    - australia

ft:locale :

    - ja-JP

ft:publication_title :

    - オーストラリア API リファレンス

ft:clusterId :

    - crapiref

bundleId :

    - crapiref

workflow :

    - Creator


---

# GlideRecord - クライアント

# GlideRecord - クライアント {#ariaid-title1}

* リリースバージョン: Australia
* 
* 更新日 2026年03月12日
* 
* ![](https://www.servicenow.com/docs/portal-asset/ico-clock) 所要時間：16分

GlideRecord API は、データベース操作を実行するメソッドを提供します。この API を使用すると、クライアントスクリプトや UI ポリシースクリプトなど、クライアント側スクリプトで一部の GlideRecord 機能を使用できるようになります。

GlideRecord にはレコードとフィールドの両方が含まれています。クライアント側の GlideRecord メソッドで作成されたクエリは、サーバー上で実行されます。したがって、クライアントブラウザーからレコードデータを取得する要求が行われます。

クライアント側の GlideRecord API は、スコープ対象のアプリケーションではサポートされていません。代わりに、スクリプトインクルードを作成して [GlideAJAX](https://servicenow-prod.fluidtopics.net/_H_u5hWyVPIsn1UCNOf2yA#c_GlideAjaxAPI "GlideAjax クラスを使用すると、クライアントスクリプトがスクリプトインクルード内のサーバーサイドコードを呼び出すことができます。") API を使用するか、REST API を使用します。さらに、この API は、スクリプトを実行するユーザーの認証情報に基づいてアクセス制御リスト (ACL) を適用します。ACL なしでサーバー上でコードを実行するには、 [GlideAjax](https://servicenow-prod.fluidtopics.net/_H_u5hWyVPIsn1UCNOf2yA#c_GlideAjaxAPI "GlideAjax クラスを使用すると、クライアントスクリプトがスクリプトインクルード内のサーバーサイドコードを呼び出すことができます。") API を使用します。

## クライアント側 GlideRecord:GlideRecord(文字列 tableName) {#ariaid-title2}

指定されたテーブルの GlideRecord クラスのインスタンスを作成します。
{#r_GRCS-GlideRecord_S__table_c1c_25j_3v__entry__3}

| 名前 | タイプ | 説明 |
|-|-|-|
| tableName | 文字列 | 使用するテーブル。 |
[表 : 1. パラメーター]

{#r_GRCS-GlideRecord_S__table_c1c_25j_3v}  

    var now_GR = new GlideRecord('incident');

## クライアント側 GlideRecord - addOrderBy(String column) {#ariaid-title3}

クエリで順番に列を追加します。
{#r_GRCS-addOrderBy_S__table_zrw_wjw_hv__entry__3}

| 名前 | タイプ | 説明 |
|-|-|-|
| column | 文字列 | 結果セットを並べ替える列。 |
[表 : 2. パラメーター]

{#r_GRCS-addOrderBy_S__table_zrw_wjw_hv} {#r_GRCS-addOrderBy_S__table_asw_wjw_hv__entry__2}

| タイプ | 説明 |
|-|-|
| なし |   |
[表 : 3. 返される内容]

{#r_GRCS-addOrderBy_S__table_asw_wjw_hv}

## クライアント側 GlideRecord - addQuery(文字列名, オブジェクト値) {#ariaid-title4}

指定されたフィールド名が指定された値と等しい (または値のリストにある) レコードを返すクエリを追加します。
SQL に精通している場合、このメソッドは「where」句に似ています。このメソッドを複数回呼び出すことで、1 つのフィルターに対して 1 つ以上のクエリを作成できます。このメソッドでは、クエリは AND です。目的のクエリをすべて定義したら、 [クライアント側 GlideRecord - query(文字列名, 関数 responseFunction, 文字列値)](https://servicenow-prod.fluidtopics.net/~J5NhLV~KWxo9aUN1dEPlw#r_GRCS-query_Function "addQuery() フィルターに基づいて、テーブルに対してサーバーへのクエリを実行します。このメソッドは、GlideRecord テーブルとテーブルの参照を照会します。") を呼び出して指定されたクエリ句 (フィルター) を実行します。

AND 以外の操作を実行するには、 [addQuery(文字列名、オブジェクト演算子、オブジェクト値)](https://servicenow-prod.fluidtopics.net/~J5NhLV~KWxo9aUN1dEPlw#r_GRCS-addQuery_S_O_O "フィールドが指定された条件 (フィールド、演算子、値) を満たすレコードを返すためのフィルターを追加します。") メソッドまたは [setEncodedQuery()](https://servicenow-prod.fluidtopics.net/~J5NhLV~KWxo9aUN1dEPlw#r_GRCS-setEncodedQuery "指定されたエンコードされたクエリ文字列を現在のクエリ句に追加します。") メソッドのいずれかを使用します。
{#r_GRCS-addQuery_S_O__table_rhl_n4v_hv__entry__3}

| 名前 | タイプ | 説明 |
|-|-|-|
| name | 文字列 | チェックするフィールドの名前。 |
| value | オブジェクト | クエリの対象とする値または値のリスト。 |
[表 : 4. パラメーター]

{#r_GRCS-addQuery_S_O__table_rhl_n4v_hv} {#r_GRCS-addQuery_S_O__table_shl_n4v_hv__entry__2}

| タイプ | 説明 |
|-|-|
| なし |   |
[表 : 5. 返される内容]

{#r_GRCS-addQuery_S_O__table_shl_n4v_hv}  
複数のクエリを示す例。

    var now_GR = new GlideRecord('incident');
    now_GR.addQuery('priority', 4); // Priority is 4 -- Low and,
    now_GR.addQuery('state', 3); // State is On Hold
    now_GR.query(response);
     
    function response(result) {
        while(result.next()) {
           // Print all INC with priority 4 -- Low AND state is On Hold
            console.log(result.getValue('number')); 
        }
    }

文字列オブジェクトを渡す方法を示す例。

    var now_GR = new GlideRecord('incident');
    now_GR.addQuery('short_description', new String('USB device not working')); // string object
    now_GR.addQuery('priority', 4); //number
    now_GR.query(response);
     
    function response(result) {
        while(result.next()) {
           // Print all INC with priority 4 -- Low AND short description contains 'USB device not working'
            console.log(result.getValue('number')); 
        }
    }

## クライアント側 GlideRecord - addQuery(文字列名, オブジェクト演算子, オブジェクト値) {#ariaid-title5}

フィールドが指定された条件 (フィールド、演算子、値) を満たすレコードを返すためのフィルターを追加します。
SQL に精通している場合、このメソッドは「where」句に似ています。このメソッドを複数回呼び出すことで、1 つのフィルターに対して 1 つ以上のクエリを作成できます。目的のクエリをすべて定義したら、 [クライアント側 GlideRecord - query(文字列名, 関数 responseFunction, 文字列値)](https://servicenow-prod.fluidtopics.net/~J5NhLV~KWxo9aUN1dEPlw#r_GRCS-query_Function "addQuery() フィルターに基づいて、テーブルに対してサーバーへのクエリを実行します。このメソッドは、GlideRecord テーブルとテーブルの参照を照会します。") を呼び出して指定されたクエリ句 (フィルター) を実行します。

より複雑なクエリを作成するには、 [setEncodedQuery()](https://servicenow-prod.fluidtopics.net/~J5NhLV~KWxo9aUN1dEPlw#r_GRCS-setEncodedQuery "指定されたエンコードされたクエリ文字列を現在のクエリ句に追加します。") メソッドを使用します。
{#r_GRCS-addQuery_S_O_O__table_wgh_cpv_hv__entry__3}

| 名前 | タイプ | 説明 |
|-|-|-|
| name | 文字列 | チェックするフィールドの名前。 |
| オペレーター | オブジェクト | クエリ演算子。使用可能な値は、 <var class="keyword varname">値</var> パラメーターのデータタイプによって異なります。 番号: * = * != * \> * \>= * \< * \<= {#r_GRCS-addQuery_S_O_O__ul_qyb_rbt_3y} 文字列 (大文字である必要があります): * = * != * IN * NOT IN * STARTSWITH * ENDSWITH * 次の値を含む * DOES NOT CONTAIN * INSTANCEOF {#r_GRCS-addQuery_S_O_O__ul_egz_vbt_3y} 注: LIKE 演算子は使用しないでください。代わりに CONTAINS を使用してください。 |
| value | オブジェクト | クエリ対象の値 (大文字と小文字は区別されません)。 |
[表 : 6. パラメーター]

{#r_GRCS-addQuery_S_O_O__table_wgh_cpv_hv} {#r_GRCS-addQuery_S_O_O__table_xgh_cpv_hv__entry__2}

| タイプ | 説明 |
|-|-|
| なし |   |
[表 : 7. 返される内容]

{#r_GRCS-addQuery_S_O_O__table_xgh_cpv_hv}  
フィルターに複数のクエリを追加する方法を示す例。

    var now_GR = new GlideRecord('incident');
    now_GR.addQuery('priority', '<=', 2); // Priority is 2 or higher and,
    now_GR.addQuery('short_description', 'CONTAINS', 'crash'); // Short description contains the word crash
    now_GR.query(response);
     
    function response(result) {
        while(result.next()) {
           // Print all INC with priority of 2 or higher AND short description contains "crash"
            console.log(result.getValue('number')); 
        }
    }

アレイを渡して単一のクエリーで複数の条件を検証する方法を示す例。

    var priorities = [4,2]; 
    var now_GR = new GlideRecord('incident'); 
    now_GR.addQuery('priority', 'IN', priorities); 
    now_GR.query(response); 

    function response(result) {
      while(result.next()) {
        console.log(result.getValue('number')); 
      } 
    }

## クライアント側 GlideRecord - deleteRecord(関数 responseFunction) {#ariaid-title6}

現在のレコードを削除し、完了時に指定された応答関数を呼び出します。
{#r_GRCS-deleteRecord_Function__table_esv_hqv_hv__entry__3}

| 名前 | タイプ | 説明 |
|-|-|-|
| 応答関数 | 関数 | コールバックの応答関数。 |
[表 : 8. パラメーター]

{#r_GRCS-deleteRecord_Function__table_esv_hqv_hv} {#r_GRCS-deleteRecord_Function__table_fsv_hqv_hv__entry__2}

| タイプ | 説明 |
|-|-|
| なし |   |
[表 : 9. 返される内容]

{#r_GRCS-deleteRecord_Function__table_fsv_hqv_hv}  
この例では、レコードを削除してから、応答関数の <var class="keyword varname">応答</var> を呼び出してアラートメッセージをログに記録します。

    var recordGR = new GlideRecord('incident');
    if (recordGR.get('99ebb4156fa831005be8883e6b3ee4b9')) {
      recordGR.deleteRecord(response);
    }

    function response(result) {
      alert('Deleted record sys_id: ' + result.getValue('sys_id'));
    }

出力:

    Deleted record sys_id: 99ebb4156fa831005be8883e6b3ee4b9

## クライアント側 GlideRecord - get(文字列 sys_id) {#ariaid-title7}

指定されたsys_idを持つレコードの GlideRecord クエリを実行します。このメソッドは単一のレコードのクエリに使用されることが想定されるため、返される前に次の操作が実行されます。
{#r_GRCS-get_O__table_u3j_fhw_hv__entry__3}

| 名前 | タイプ | 説明 |
|-|-|-|
| sys_id | 文字列 | 検出されるレコードのsys_id。 |
[表 : 10. パラメーター]

{#r_GRCS-get_O__table_u3j_fhw_hv} {#r_GRCS-get_O__table_v3j_fhw_hv__entry__2}

| タイプ | 説明 |
|-|-|
| ブーリアン | 1 つ以上の一致するレコードが見つかった場合は True。レコードが見つからなかった場合は false。 |
[表 : 11. 返される内容]

{#r_GRCS-get_O__table_v3j_fhw_hv}

## クライアント側 GlideRecord - getEncodedQuery() {#ariaid-title8}

現在の結果セットのクエリ条件をエンコードされたクエリ文字列として取得します。
{#r_GRCS-getEncodedQuery__table_wfk_spv_hv__entry__3}

| 名前 | タイプ | 説明 |
|-|-|-|
| なし |   |   |
[表 : 12. パラメーター]

{#r_GRCS-getEncodedQuery__table_wfk_spv_hv} {#r_GRCS-getEncodedQuery__table_xfk_spv_hv__entry__2}

| タイプ | 説明 |
|-|-|
| 文字列 | クエリに追加されたすべての条件を含むエンコードされたクエリ文字列。 |
[表 : 13. 返される内容]

{#r_GRCS-getEncodedQuery__table_xfk_spv_hv}

## クライアント側 GlideRecord:getLimit() {#ariaid-title9}

GlideRecord クエリによって返されるレコードの制限を返します。
{#r_GRCS-getLimit__table_pll_qlw_hv__entry__3}

| 名前 | タイプ | 説明 |
|-|-|-|
| なし |   |   |
[表 : 14. パラメーター]

{#r_GRCS-getLimit__table_pll_qlw_hv} {#r_GRCS-getLimit__table_qll_qlw_hv__entry__2}

| タイプ | 説明 |
|-|-|
| 番号 | GlideRecord クエリによって返されるレコードの制限。 |
[表 : 15. 返される内容]

{#r_GRCS-getLimit__table_qll_qlw_hv}

## クライアント側 GlideRecord - getTableName() {#ariaid-title10}

この GlideRecord に関連付けられているテーブルの名前を取得します。
{#r_GRCS-getTableName__table_art_5hw_hv__entry__3}

| 名前 | タイプ | 説明 |
|-|-|-|
| なし |   |   |
[表 : 16. パラメーター]

{#r_GRCS-getTableName__table_art_5hw_hv} {#r_GRCS-getTableName__table_brt_5hw_hv__entry__2}

| タイプ | 説明 |
|-|-|
| 文字列 | テーブル名 |
[表 : 17. 返される内容]

{#r_GRCS-getTableName__table_brt_5hw_hv}  

    var item = new GlideRecord('sc_request'); 
    item.addQuery('sys_id', current.request); 
    item.query(itemResponse); 
     
    function itemResponse(item) {
       alert('The table is ' + item.getTableName());
    }

## クライアント側 GlideRecord - hasNext() {#ariaid-title11}

GlideRecord にさらにレコードがあるかどうかを判定します。
{#r_GRCS-hasNext__table_ejm_m3w_hv__entry__3}

| 名前 | タイプ | 説明 |
|-|-|-|
| なし |   |   |
[表 : 18. パラメーター]

{#r_GRCS-hasNext__table_ejm_m3w_hv} {#r_GRCS-hasNext__table_fjm_m3w_hv__entry__2}

| タイプ | 説明 |
|-|-|
| ブーリアン | クエリセットにより多くのレコードがある場合は True。 |
[表 : 19. 返される内容]

{#r_GRCS-hasNext__table_fjm_m3w_hv}

## クライアント側 GlideRecord - insert(関数 responseFunction) {#ariaid-title12}

現在のレコードに設定されているフィールド値を使用して、新しいレコードを挿入します。
{#r_GRCS-insert_Function__table_szb_x3w_hv__entry__3}

| 名前 | タイプ | 説明 |
|-|-|-|
| 応答関数 | 関数 | レコードが挿入された後に実行する関数。 |
[表 : 20. パラメーター]

{#r_GRCS-insert_Function__table_szb_x3w_hv} {#r_GRCS-insert_Function__table_tzb_x3w_hv__entry__2}

| タイプ | 説明 |
|-|-|
| 文字列 | 挿入されたレコードのSys_id。レコードが挿入されなかった場合は null。 |
[表 : 21. 返される内容]

{#r_GRCS-insert_Function__table_tzb_x3w_hv}  

    var now_GR = new GlideRecord('incident');
    now_GR.short_description = 'Learn about GlideRecord';
    var recResponse = now_GR.insert(handleResponse);

    function handleResponse(recResponse, answer) {
    // Answer will be the sys_id of the created record or null
    alert('Newly created sys_id is - ' + answer + ' exists');
    }

## クライアント側 GlideRecord - next() {#ariaid-title13}

GlideRecord の次のレコードに移動します。
{#r_GRCS-next__table_ldp_jjw_hv__entry__3}

| 名前 | タイプ | 説明 |
|-|-|-|
| なし |   |   |
[表 : 22. パラメーター]

{#r_GRCS-next__table_ldp_jjw_hv} {#r_GRCS-next__table_mdp_jjw_hv__entry__2}

| タイプ | 説明 |
|-|-|
| ブーリアン | クエリセットにこれ以上レコードがない場合は false。 |
[表 : 23. 返される内容]

{#r_GRCS-next__table_mdp_jjw_hv}  

    var rec = new GlideRecord('incident');
    rec.query(recResponse);
     
    function recResponse(rec) {
      while (rec.next()) { 
        alert(rec.number + ' exists');
      }
    }

## クライアント側 GlideRecord - orderBy(String column) {#ariaid-title14}

orderBy 列を指定します。複数列で並べ替えるために複数回呼び出される場合があります。
{#r_GRCS-orderBy_S__table_jhj_3kw_hv__entry__3}

| 名前 | タイプ | 説明 |
|-|-|-|
| column | 文字列 | 結果セットの順序付けに使用する列名。 |
[表 : 24. パラメーター]

{#r_GRCS-orderBy_S__table_jhj_3kw_hv} {#r_GRCS-orderBy_S__table_khj_3kw_hv__entry__2}

| タイプ | 説明 |
|-|-|
| なし |   |
[表 : 25. 返される内容]

{#r_GRCS-orderBy_S__table_khj_3kw_hv}  

    function UpdateProjectWBS(project) {
      var count = 0;
      var child = new GlideRecord('pm_project_task');
      child.addQuery('parent', project.sys_id);
      child.orderBy('order');
      child.orderBy('number');
      child.query(childResponse);
      g_form.addInfoMessage(count + ' Project Tasks updated');
    }
     
    function childResponse(child) {
      var len = child.getRowCount().toString().length;
      var seq = 0;
      while (child.next()) {
        count += UpdateProjectTaskWBS(child, 1, ++seq, len, '');
      }
    }

## クライアント側 GlideRecord - query(文字列名, 関数 responseFunction, 文字列値) {#ariaid-title15}

addQuery() フィルターに基づいて、テーブルに対してサーバーへのクエリを実行します。このメソッドは、GlideRecord テーブルとテーブルの参照を照会します。
同期クエリ呼び出しは行わないでください。応答関数なしでクエリを実行すると、呼び出しは同期されます。つまり、画面はクエリの応答を待ってから続行します。
{#r_GRCS-query_Function__table_zbp_qjl_3v__entry__3}

| 名前 | タイプ | 説明 |
|-|-|-|
| name | 文字列 | オプション。クエリするフィールドの名前。 |
| 応答関数 | 関数 | クエリ結果が利用可能になったときに呼び出される関数。 |
| value | 文字列 | オプション。クエリ対象のフィールド値。リテラルのペアは、クエリのペアと見なされます (フィールド:値)。 |
[表 : 26. パラメーター]

{#r_GRCS-query_Function__table_zbp_qjl_3v} {#r_GRCS-query_Function__table_dg5_wkw_hv__entry__2}

| タイプ | 説明 |
|-|-|
| なし |   |
[表 : 27. 返される内容]

{#r_GRCS-query_Function__table_dg5_wkw_hv}  
応答関数を使用した基本的な例を次に示します。

    var rec = new GlideRecord('incident');
    rec.query(recResponse);
     
    function recResponse(rec) {
      while (rec.next()) { 
       alert(rec.number + ' exists');
      } 
    }

次の例は、同期構文と非同期構文の違いを非同期の例とともに示しています。

    // synchronous call syntax (no response function): DO NOT USE
            query();
            
            // asynchronous call syntax
            // performs query with current conditions, calls responseFunction when done
            query(responseFunction)
            
            // synchronous call syntax (no response function): DO NOT USE
            // adds "category=hardware" to current query conditions and performs query
            query('category', 'hardware')
            
            // asynchronous call syntax
            // adds "category=hardware" to current query conditions, performs query, and calls responseFunction when done
            query('category', 'hardware', responseFunction)
            
            // asynchronous call example
            // adds "user_name=abel.tuter" to current query conditions, performs query, and calls defined response function when done
            function onLoad() {
            var now_GR = new GlideRecord("sys_user");
            now_GR.query("user_name", "abel.tuter", function(now_GR) {
            if (now_GR.next()) {
            alert("You can access fields by name from the client API, just like in the server API:\n now_GR.name = " + now_GR.name);
            alert("You can also access fields using getValue():\n now_GR.getValue(\"email\") = " + now_GR.getValue("email"));
            if (now_GR.getDisplayValue) {
            alert("In Service Portal, Mobile, and Agent Workspace, you can access a field's display value:\n now_GR.getDisplayValue(\"company\") = " + now_GR.getDisplayValue("company"));
            } else {
            alert("On the desktop, you cannot access a field's display value, but can get its sys_id:\n now_GR.company = " + now_GR.company);
            }
            alert("You cannot dot-walk in the client API:\n now_GR.company.name = " + now_GR.company.name);
            }
            });
            }

## クライアント側 GlideRecord - setEncodedQuery(文字列 encodedQuery) {#ariaid-title16}

指定されたエンコードされたクエリ文字列を現在のクエリ句に追加します。
このメソッドを使用すると、他のクライアント側の addQuery() メソッドとは異なり、単一のクエリ呼び出しで複雑なフィルター (エンコードされたクエリ文字列) を指定できます。目的のクエリをすべて定義したら、 [クライアント側 GlideRecord - query(文字列名, 関数 responseFunction, 文字列値)](https://servicenow-prod.fluidtopics.net/~J5NhLV~KWxo9aUN1dEPlw#r_GRCS-query_Function "addQuery() フィルターに基づいて、テーブルに対してサーバーへのクエリを実行します。このメソッドは、GlideRecord テーブルとテーブルの参照を照会します。") を呼び出して指定されたクエリ句 (フィルター) を実行します。エンコードされたクエリ文字列の詳細については、「 [エンコードされたクエリ文字列」](https://www.servicenow.com/docs/access?context=c_EncodedQueryStrings&version=australia&pubname=australia-platform-user-interface&ft:locale=en-US)を参照してください。

query() メソッドを呼び出す前にこのメソッドを複数回呼び出すと、クエリは一緒に AND されます。
{#r_GRCS-setEncodedQuery__table_bpl_gvw_zgb__entry__3}

| 名前 | タイプ | 説明 |
|-|-|-|
| encodedQuery | 文字列 | 現在のクエリ句に追加するエンコードされたクエリ文字列。 |
[表 : 28. パラメーター]

{#r_GRCS-setEncodedQuery__table_bpl_gvw_zgb} {#r_GRCS-setEncodedQuery__table_cpl_gvw_zgb__entry__2}

| タイプ | 説明 |
|-|-|
| なし |   |
[表 : 29. 返される内容]

{#r_GRCS-setEncodedQuery__table_cpl_gvw_zgb}  

    var now_GR = new GlideRecord('incident');
    now_GR.setEncodedQuery('priority=4^ORstate=3');
    now_GR.query(response);
     
    function response(result) {
        while(result.next()) {
            console.log(result.getValue('number'));
        }
    }

## クライアント側 GlideRecord - setLimit(数値 maxQuery) {#ariaid-title17}

GlideRecord のレコード数の制限を設定します。
{#r_GRCS-setLimit_N__table_c4d_3lw_hv__entry__3}

| 名前 | タイプ | 説明 |
|-|-|-|
| maxQuery | 番号 | 取得するレコード数の制限。 |
[表 : 30. パラメーター]

{#r_GRCS-setLimit_N__table_c4d_3lw_hv} {#r_GRCS-setLimit_N__table_d4d_3lw_hv__entry__2}

| タイプ | 説明 |
|-|-|
| なし |   |
[表 : 31. 返される内容]

{#r_GRCS-setLimit_N__table_d4d_3lw_hv}

