GlideList2 (g_list) - クライアント

  • リリースバージョン: Washingtondc
  • 更新日 2024年02月01日
  • 読む17読むのに数分
  • GlideList2 は、(v2) リストをカスタマイズするために使用される JavaScript クラスです。

    変数 g_list は、指定されたリストオブジェクトにアクセスするために使用されます。g_list 変数は、関連リストのフォームリンク UI アクションでは使用できません。これは、リストフォームリンクの UI アクションで使用できます。

    これらのメソッドは、UI コンテキストメニューと UI アクションで使用されます。

    これらのメソッドのいくつかは Next Experience UI フレームワーク で使用できます。詳細については、以下を参照してください。 GlideList (Next Experience UI フレームワーク)

    GlideList2 - addFilter(文字列 filter)

    単一の用語をクエリフィルターのリストに追加します。

    表 : 1. パラメーター
    名前 タイプ 説明
    filter 文字列 標準の Glide 形式のエンコードされたクエリ文字列。エンコードされたクエリ文字列を参照してください。
    表 : 2. 返される内容
    タイプ 説明
    なし
    g_list.addFilter("active=true");

    GlideList2 - get(オブジェクト DOMelement)

    指定されたアイテムを含むリストの GlideList2 オブジェクトを返します。

    表 : 3. パラメーター
    名前 タイプ 説明
    DOMelement オブジェクト GlideList2 オブジェクトが必要なリストの DOM 要素 ID。
    表 : 4. 返される内容
    タイプ 説明
    オブジェクト GlideList2 オブジェクト。見つからない場合は null。

    GlideList2 - get(文字列 ListID)

    指定されたリストの GlideList2 オブジェクトを返します。

    表 : 5. パラメーター
    名前 タイプ 説明
    ListID 文字列 GlideList2 オブジェクトが必要なリスト ID。
    表 : 6. 返される内容
    タイプ 説明
    オブジェクト GlideList2 オブジェクト。見つからない場合は null。
    function assignLabelActionViaLookupModal(tableName, listId) {
    	var list = GlideList2.get(listId);
    	if (!list)
    		return;
    
    	assignLabelViaLookup(tableName, sysIds, list.getView());
    }

    GlideList2 - getChecked()

    関連するリストでチェックされたアイテムの sys_id のカンマ区切りリストを返します。

    表 : 7. パラメーター
    名前 タイプ 説明
    none
    表 : 8. 返される内容
    タイプ 説明
    文字列 リストでチェックされたアイテムの sys_id のカンマ区切りリスト。返されたアイテムの実行が許可されているかどうかを確認しません。
    function removeLabelActionViaLookupModal(tableName, listId) {
      var list = GlideList2.get(listId);
      if (!list)
        return;
    
      var sysIds = list.getChecked();
      if (!sysIds)
        return;
    
      removeLabelViaLookup(tableName, sysIds);
    }

    GlideList2 - getFixedQuery()

    固定クエリを返します。

    固定クエリは、ブレッドクラムから削除できないクエリの一部です (つまりユーザーに対して固定されています)。これは、アプリケーションモジュールの sysparm_fixed_query パラメーターを含めることで指定します。

    表 : 9. パラメーター
    名前 タイプ 説明
    none
    表 : 10. 返される内容
    タイプ 説明
    文字列 リストの固定クエリ文字列。
    var list = GlideList2.get(container.readAttribute('list_id'));
    var filter = this._getFilter(element);
    var fixedQuery = list.getFixedQuery();
    if (fixedQuery)
      filter = fixedQuery + "^" + filter;

    GlideList2 - getGroupBy()

    リストをグループ化するために使用されるフィールドまたはフィールドのカンマ区切りリストを返します。

    表 : 11. パラメーター
    名前 タイプ 説明
    none
    表 : 12. 返される内容
    タイプ 説明
    文字列 リストをグループ化するために使用されるフィールドまたはフィールドのカンマ区切りリスト。
    function runFilterV2Lists(name, filter) {
      var list = GlideList2.get(name);	
        if (list) {
          var groupBy = list.getGroupBy();
          if (groupBy)  
            filter += "^" + groupBy;
    		
            list.setFilterAndRefresh(filter);
        }
    }

    GlideList2 - getListName()

    通常はテーブル名であるリストの名前を返します。

    表 : 13. パラメーター
    名前 タイプ 説明
    none
    表 : 14. 返される内容
    タイプ 説明
    文字列 リスト名 (通常はテーブル名)。
    var list = GlideList2.get(name);	
    var listName = list.getListName();
    

    GlideList2 - getOrderBy()

    リストの順序付けに使用される最初のフィールドを返します。

    表 : 15. パラメーター
    名前 タイプ 説明
    none
    表 : 16. 返される内容
    タイプ 説明
    文字列 リストの順序付けの基準となるフィールド。リストが順序付けされていない場合は空です。
    var list = GlideList2.get(listId);
    if (!list)
      return;
    var orderBy = list.getOrderBy();

    GlideList2 - getParentTable()

    関連リスト (フォームに関連付けられたテーブル) の親テーブルの名前を返します。

    表 : 17. パラメーター
    名前 タイプ 説明
    none
    表 : 18. 返される内容
    タイプ 説明
    文字列 親テーブル名。
    for (var id in GlideLists2) {
      var list = GlideLists2[id];
      if (list.getTableName() == listTableName && list.getParentTable() == tableName)
        return list.getContainer();
    }
    

    GlideList2 - getQuery(ブーリアン orderBy, ブーリアン groupBy, ブーリアン fixed, ブーリアン all)

    リストのエンコードされたクエリ文字列を返します。

    表 : 19. パラメーター
    名前 タイプ 説明
    orderBy ブール オプション。結果に orderBy を含めるかどうかを示すフラグ。
    有効な値:
    • true:結果に orderBy を含めます。
    • false:結果に orderBy を含めません。

    デフォルト値:false

    groupBy ブール オプション。結果に groupBy を含めるかどうかを示すフラグ。
    有効な値:
    • true:結果に groupBy を含めます。
    • false:結果に groupBy を含めません。

    デフォルト値:false

    fixed ブール オプション。結果に固定クエリを含めるかどうかを示すフラグ。
    有効な値:
    • true:結果に固定クエリを含めます。
    • false:結果に固定クエリを含めません。

    デフォルト値:false

    すべて ブール デフォルトです。結果に orderBy、groupBy、および固定クエリを含めるかどうかを示すフラグ。
    有効な値:
    • true:結果に orderBy、groupBy、および固定クエリを含めます。
    • false:3 つのオプションのすべてを結果に含めません。

    デフォルト:true

    表 : 20. 返される内容
    タイプ 説明
    文字列 リストのエンコードされたクエリ文字列。
    var list = GlideList2.get(this.listID);
    var ajax = new GlideAjax("AJAXJellyRunner", "AJAXJellyRunner.do");
      ajax.addParam("sysparm_query_encoded", list.getQuery({groupby: true, orderby: true}));
      ajax.addParam("sysparm_table", list.getTableName());
      ajax.addParam("sysparm_view", list.getView());

    GlideList2 - getRelated()

    関連リストを親フォームに関連付ける関連リストフィールドを返します。

    表 : 21. パラメーター
    名前 タイプ 説明
    none
    表 : 22. 返される内容
    タイプ 説明
    文字列 リストを親フォームに接続するフィールド。
    var list = GlideList2.get(name);
    var related = list.getRelated();
    if (related) 
      ajax.addParam("sysparm_is_related_list", "true");

    GlideList2 - getTableName()

    リストのテーブル名を返します。

    表 : 23. パラメーター
    名前 タイプ 説明
    none
    表 : 24. 返される内容
    タイプ 説明
    文字列 リストのテーブル名を返します。
    GlideList2.getListsForTable = function(table) {
        var lists = [];
        for (var id in GlideLists2) {
            var list = GlideLists2[id];
            if (list.getTableName() == table)
                lists.push(list);
        }
        return lists;
    }

    GlideList2 - getView()

    リストを表示するために使用するビューを返します。

    表 : 25. パラメーター
    名前 タイプ 説明
    none
    表 : 26. 返される内容
    タイプ 説明
    文字列 ビューの名前。
    function assignLabelActionViaLookupModal(tableName, listId) {
    	var list = GlideList2.get(listId);
    	if (!list)
    		return;
    
    	assignLabelViaLookup(tableName, sysIds, list.getView());
    }

    GlideList2 - getTitle()

    リストのタイトルを返します。

    表 : 27. パラメーター
    名前 タイプ 説明
    none
    表 : 28. 返される内容
    タイプ 説明
    文字列 リストのタイトル。
    var list = GlideList2.get(name);	
    var listTitle = list.getTitle();
    

    GlideList2 - isUserList()

    リストメカニックを選択してリストレイアウトを変更し、リストがカスタマイズされている場合は true を返します。

    表 : 29. パラメーター
    名前 タイプ 説明
    none
    表 : 30. 返される内容
    タイプ 説明
    ブーリアン リストのレイアウトが変更された場合は true。
    var list = GlideList2.get(listId);
    if (!list)
      return;
    if (list.isUserList())
      var tableName = list.getTableName();

    GlideList2 - refresh(数値 firstRow, 文字列 additionalParms)

    リストを更新します。リストフィルターの orderBy 部分は無視されるため、リストは更新されたときに自然な順序付けを使用します。

    表 : 31. パラメーター
    名前 タイプ 説明
    firstRow 番号 リストに表示される最初の行。

    デフォルト:現在のビューの最初の行。

    additionalParms 文字列 リスト更新要求で送信されるオプションの名前と値のペア。
    表 : 32. 返される内容
    タイプ 説明
    なし
    $timeout(function() {
      if (GlideList.lists) {
        var list = GlideList.get(name);
        if (list) {
           if (sortBy) {
             if (sortDirection == 'ASC')
                list.sort(sortBy);
             else
                list.sortDescending(sortBy);
             }  
           list.refresh();
         }
       }
    }			

    GlideList2 - refreshWithOrderBy(数値 firstRow, 文字列 description)

    リストを更新します。リストに対して指定されている場合は、リストフィルターの orderBy 部分が含まれます。

    表 : 33. パラメーター
    名前 タイプ 説明
    firstRow 番号 リストに表示される最初の行。

    デフォルト:現在のビューの最初の行。

    説明 文字列 リスト更新要求で送信されるオプションの名前と値のペア。
    表 : 34. 返される内容
    タイプ 説明
    なし
    ga.getXML(function(serverResponse) {
      var response = serverResponse.responseXML.getElementsByTagName("response")[0];
      if (response) {
        var list = GlideList2.getByName("backlog_stories");
        list.refreshWithOrderBy();
        var status = response.getAttribute('status');
        $j('html, body').animate({scrollTop: $j("#"+data.record.sys_id).offset().top},500);
        if (status == 'failure') {
          alert('${gs.getMessage("Story cannot be created. Team is not associated with any project.")}');
        }
      }
    }

    GlideList2 - setFilter(文字列 filter)

    クエリ文字列の orderBygroupBy の部分を無視して、リストのエンコードされたクエリ文字列を設定します。

    表 : 35. パラメーター
    名前 タイプ 説明
    filter 文字列 標準の Glide 形式のエンコードされたクエリ文字列。エンコードされたクエリ文字列を参照してください。
    表 : 36. 返される内容
    タイプ 説明
    なし
    list = GlideList2.get($(side+"ContentDivRelease").select(".list_div")[0].getAttribute("id"));
    if (list) {
      list.setFilter("active=true");
      list.refresh(1);
     }

    GlideList2 - setFilterAndRefresh(文字列 filter)

    orderBygroupBy が指定されている場合はこれらを含めてリストのエンコードされたクエリ文字列を設定し、新しいフィルターを使用してリストを更新します。

    表 : 37. パラメーター
    名前 タイプ 説明
    filter 文字列 エンコードされたクエリ文字列。
    表 : 38. 返される内容
    タイプ 説明
    なし
    function updateListFilter(projectID) {
      var list = GlideList2.getByName("backlog_stories");
      var fixedQuery = $('hdn_additional_filters').value;
      if(!projectID) {
          list.setFilterAndRefresh(fixedQuery + "^ORDERBYteam_index");
          list.setOrderBy("team_index");
      }
    }

    GlideList2 - setFirstRow(数値 rowNum)

    リストが更新されたときにリストに表示される最初の行を設定します。

    表 : 39. パラメーター
    名前 タイプ 説明
    rowNum 数値 表示する最初の行の行番号。
    表 : 40. 返される内容
    タイプ 説明
    なし
    var nextRow = 0;
    var rowsPerPage = 20;
    var list = GlideList2.get(listId);
    if (!list)
      return;
    list.setFirstRow(nextRow);
    nextRow = nextRow + rowsPerPage;
    

    GlideList2 - setGroupBy(文字列 groupBy)

    単一のフィールドのリスト groupBy 条件を設定します。

    表 : 41. パラメーター
    名前 タイプ 説明
    groupBy 文字列 リストの groupBy 基準。
    表 : 42. 返される内容
    タイプ 説明
    なし
    function runContextAction(listId) {
      var g_list = GlideList2.get(listId);
      g_list.setGroupBy('');
      g_list.refresh(1);
    }

    GlideList2 - setOrderBy(文字列 orderBy)

    リストの orderBy 条件を設定します。

    単一の順序付けフィールドの場合は、orderBy フィールドまたは orderByDesc フィールドを使用します。複数のフィールドの場合は、orderByField1^orderByField2^orderByField3 を使用します。orderBy は昇順を指定し、orderByDesc は降順を指定します。これらのプレフィックス文字列はオプションです。指定しない場合、orderBy がデフォルトの順序になります。

    表 : 43. パラメーター
    名前 タイプ 説明
    orderBy 文字列 1 つまたは複数の orderBy フィールド。
    表 : 44. 返される内容
    タイプ 説明
    なし
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                updateOrderBy: function(orderBy){
      var list = GlideList2.get(this.listID);
      if (list)
        list.setOrderBy(orderBy);
    };

    GlideList2 - setRowsPerPage(数値 rows)

    表示する 1 ページあたりの行数を設定します。

    表 : 45. パラメーター
    名前 タイプ 説明
    rows 数値 表示する行数。
    表 : 46. 返される内容
    タイプ 説明
    なし
    link: function(scope) {
      var list = GlideList2.get(scope.listId);
      list.setRowsPerPage(scope.maxRows);
      list.setFilterAndRefresh(scope.tableQuery);
    }

    GlideList2 - showHideGroups(ブーリアン showFlag)

    リスト内のすべてのグループを表示または非表示にし、グループの現在の折りたたみ/展開ステータスをユーザー初期設定として保存します。

    表 : 47. パラメーター
    名前 タイプ 説明
    showFlag ブーリアン [true] の場合、リスト内のグループを表示します。
    表 : 48. 返される内容
    タイプ 説明
    なし
    function showHideAllGroups(showFlag) {
      var list = GlideList2.get(listId);
      if (!list)
        return;
      list.showHideGroups(showFlag);
    }

    GlideList2 - showHideList(ブーリアン showFlag)

    リストを表示または非表示にし、リストの現在の折りたたみ/展開ステータスをユーザー初期設定として保存します。

    表 : 49. パラメーター
    名前 タイプ 説明
    showFlag ブーリアン [true] の場合、リストを表示します。
    表 : 50. 返される内容
    タイプ 説明
    なし
    GlideList2.toggleAll = function(expandFlag) {
    for (var id in GlideLists2) {
      var list = GlideLists2[id];
    list.showHideList(expandFlag);
    }

    GlideList2 - sort(文字列 field)

    リストを昇順でソートし、フィールドを orderBy 列として設定します。

    表 : 51. パラメーター
    名前 タイプ 説明
    field 文字列 リストのソートに使用するフィールド。
    表 : 52. 返される内容
    タイプ 説明
    なし
    $timeout(function() {
      if (GlideList.lists) {
        var list = GlideList.get(name);
        if (list) {
           if (sortBy) {
             if (sortDirection == 'ASC')
                list.sort(sortBy);
             else
                list.sortDescending(sortBy);
             }  
           list.refresh();
         }
       }
    }

    GlideList2 - sortDescending(文字列 field, 数値 amount)

    リスト内の 1 つのフィールドを降順でソートし、フィールドを orderByDescField 列として設定します。

    表 : 53. パラメーター
    名前 タイプ 説明
    フィールド 文字列 リストのソートに使用するフィールド。
    表 : 54. 返される内容
    タイプ 説明
    なし
    $timeout(function() {
      if (GlideList.lists) {
        var list = GlideList.get(name);
        if (list) {
           if (sortBy) {
             if (sortDirection == 'ASC')
                list.sort(sortBy);
             else
                list.sortDescending(sortBy);
             }  
           list.refresh();
         }
       }
    }

    GlideList2 - toggleList()

    リストの表示を切り替えて、リストの現在の折りたたみ/展開ステータスをユーザー初期設定として保存します。

    表 : 55. パラメーター
    名前 タイプ 説明
    none
    表 : 56. 返される内容
    タイプ 説明
    なし
    var list = GlideList2.get(listId);
    if (!list)
      return;
    list.toggleList();

    GlideList2 - toggleListNoPref()

    リストの表示を切り替えますが、リストの現在の折りたたみ/展開ステータスをユーザー初期設定として保存しません。

    表 : 57. パラメーター
    名前 タイプ 説明
    none
    表 : 58. 返される内容
    タイプ 説明
    なし
    var list = GlideList2.get(listId);
    if (!list)
      return;
    list.toggleListNoPref();