GlideList2 (g_list) - Cliente

  • Versão de lançamento: Xanadu
  • Atualizado 1 de ago. de 2024
  • 9 min. de leitura
  • A API GlideList2 fornece métodos para personalizar listas (v2).

    A variável g_list é usada para acessar um objeto de lista especificado. A variável g_list não está disponível para a ação de IU do link do formulário de listas relacionadas. Ele está disponível para a ação de IU do link do formulário de listas.

    Esses métodos são usados em menus de contexto de IU e ações de IU.

    Vários desses métodos estão disponíveis em Estrutura de IU do Next Experience. Para obter detalhes, consulte GlideList (Estrutura de IU do Next Experience).

    GlideList2 – addFilter(Filtro de cadeia de caracteres)

    Adiciona um único termo ao filtro de consulta de lista.

    Tabela 1. Parâmetros
    Nome Tipo Descrição
    filtros Cadeia de caracteres Cadeia de caracteres de consulta codificada no formato Glide padrão. Consulte Cadeias de caracteres de consulta codificadas.
    Tabela 2. Retorna
    Tipo Descrição
    vazio
    g_list.addFilter("active=true");

    GlideList2 – get(Object DOMelement)

    Retorna o objeto GlideList2 para a lista que contém o item especificado.

    Tabela 3. Parâmetros
    Nome Tipo Descrição
    DOMelemento Objeto O ID do elemento DOM da lista para a qual você deseja o objeto GlideList2.
    Tabela 4. Retorna
    Tipo Descrição
    Objeto O objeto GlideList2 ou nulo se não for encontrado.

    GlideList2 – get(cadeia de caracteres ListID)

    Retorna o objeto GlideList2 para a lista especificada.

    Tabela 5. Parâmetros
    Nome Tipo Descrição
    ListID Cadeia de caracteres O ID da lista para o qual você deseja o objeto GlideList2.
    Tabela 6. Retorna
    Tipo Descrição
    Objeto O objeto GlideList2 ou nulo se não for encontrado.
    function assignLabelActionViaLookupModal(tableName, listId) {
    	var list = GlideList2.get(listId);
    	if (!list)
    		return;
    
    	assignLabelViaLookup(tableName, sysIds, list.getView());
    }

    GlideList2 – getChecked()

    Retorna uma lista separada por vírgulas dos sys_ids dos itens verificados na lista associada.

    Tabela 7. Parâmetros
    Nome Tipo Descrição
    nenhum
    Tabela 8. Retorna
    Tipo Descrição
    Cadeia de caracteres Lista separada por vírgulas dos sys_ids dos itens verificados na lista. Não verifica para determinar se os itens retornados podem ser executados.
    function removeLabelActionViaLookupModal(tableName, listId) {
      var list = GlideList2.get(listId);
      if (!list)
        return;
    
      var sysIds = list.getChecked();
      if (!sysIds)
        return;
    
      removeLabelViaLookup(tableName, sysIds);
    }

    GlideList2 – getFixedQuery()

    Retorna a consulta fixa.

    Uma consulta fixa é a parte da consulta que não pode ser removida da trilha (ou seja, ela é fixa para o usuário). É especificado pela inclusão de um parâmetro sysparm_fixed_query para o módulo da aplicação.

    Tabela 9. Parâmetros
    Nome Tipo Descrição
    nenhum
    Tabela 10. Retorna
    Tipo Descrição
    Cadeia de caracteres A cadeia de caracteres de consulta fixa da lista.
    var list = GlideList2.get(container.readAttribute('list_id'));
    var filter = this._getFilter(element);
    var fixedQuery = list.getFixedQuery();
    if (fixedQuery)
      filter = fixedQuery + "^" + filter;

    GlideList2 – getGroupBy()

    Retorna o campo ou a lista separada por vírgulas de campos que são usados para agrupar a lista.

    Tabela 11. Parâmetros
    Nome Tipo Descrição
    nenhum
    Tabela 12. Retorna
    Tipo Descrição
    Cadeia de caracteres O campo ou a lista separada por vírgulas de campos que são usados para agrupar a lista.
    function runFilterV2Lists(name, filter) {
      var list = GlideList2.get(name);	
        if (list) {
          var groupBy = list.getGroupBy();
          if (groupBy)  
            filter += "^" + groupBy;
    		
            list.setFilterAndRefresh(filter);
        }
    }

    GlideList2 – getListName()

    Retorna o nome da lista, que geralmente é o nome da tabela.

    Tabela 13. Parâmetros
    Nome Tipo Descrição
    nenhum
    Tabela 14. Retorna
    Tipo Descrição
    Cadeia de caracteres O nome da lista (geralmente o nome da tabela).
    var list = GlideList2.get(name);	
    var listName = list.getListName();
    

    GlideList2 – getOrderBy()

    Retorna o primeiro campo usado para ordenar a lista.

    Tabela 15. Parâmetros
    Nome Tipo Descrição
    nenhum
    Tabela 16. Retorna
    Tipo Descrição
    Cadeia de caracteres O campo pelo qual a lista será ordenada. Vazio se a lista não estiver ordenada.
    var list = GlideList2.get(listId);
    if (!list)
      return;
    var orderBy = list.getOrderBy();

    GlideList2 – getParentTable()

    Retorna o nome da tabela primária para uma lista relacionada (a tabela associada ao formulário).

    Tabela 17. Parâmetros
    Nome Tipo Descrição
    nenhum
    Tabela 18. Retorna
    Tipo Descrição
    Cadeia de caracteres O nome da tabela primária.
    for (var id in GlideLists2) {
      var list = GlideLists2[id];
      if (list.getTableName() == listTableName && list.getParentTable() == tableName)
        return list.getContainer();
    }
    

    GlideList2 - getQuery (booliano orderBy, booliano groupBy, booliano fixo, booliano tudo)

    Retorna a cadeia de caracteres de consulta codificada da lista.

    Tabela 19. Parâmetros
    Nome Tipo Descrição
    orderBy Booliano Opcional. Sinalizador que indica se orderBy deve ser incluído nos resultados.
    Valores válidos:
    • verdadeiro: incluir orderBy nos resultados.
    • falso: não inclui orderBy nos resultados.

    Padrão: falso

    groupBy Booliano Opcional. Sinalizador que indica se groupBy deve ser incluído nos resultados.
    Valores válidos:
    • verdadeiro: incluir groupBy nos resultados.
    • falso: não inclui groupBy nos resultados.

    Padrão: falso

    fixa Booliano Opcional. Sinalizador que indica se a consulta fixa deve ser incluída nos resultados.
    Valores válidos:
    • verdadeiro: inclui consulta fixa nos resultados.
    • falso: não inclui consulta fixa nos resultados.

    Padrão: falso

    todos Booliano Padrão. Sinalizador que indica se orderBy, groupBy e consulta fixa devem ser incluídos nos resultados.
    Valores válidos:
    • verdadeiro: inclui orderBy, groupBy e consulta fixa nos resultados.
    • falso: não inclui todas as três opções nos resultados.

    Padrão: verdadeiro

    Tabela 20. Retorna
    Tipo Descrição
    Cadeia de caracteres Cadeia de caracteres de consulta codificada para a lista.
    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()

    Retorna o campo de lista relacionada que associa a lista relacionada ao formulário primário.

    Tabela 21. Parâmetros
    Nome Tipo Descrição
    nenhum
    Tabela 22. Retorna
    Tipo Descrição
    Cadeia de caracteres Campo que conecta a lista ao formulário primário.
    var list = GlideList2.get(name);
    var related = list.getRelated();
    if (related) 
      ajax.addParam("sysparm_is_related_list", "true");

    GlideList2 – getTableName()

    Retorna o nome da tabela para a lista.

    Tabela 23. Parâmetros
    Nome Tipo Descrição
    nenhum
    Tabela 24. Retorna
    Tipo Descrição
    Cadeia de caracteres Retorna o nome da tabela para a lista.
    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()

    Retorna a exibição usada para exibir a lista.

    Tabela 25. Parâmetros
    Nome Tipo Descrição
    nenhum
    Tabela 26. Retorna
    Tipo Descrição
    Cadeia de caracteres O nome da exibição.
    function assignLabelActionViaLookupModal(tableName, listId) {
    	var list = GlideList2.get(listId);
    	if (!list)
    		return;
    
    	assignLabelViaLookup(tableName, sysIds, list.getView());
    }

    GlideList2 – getTitle()

    Retorna o título da lista.

    Tabela 27. Parâmetros
    Nome Tipo Descrição
    nenhum
    Tabela 28. Retorna
    Tipo Descrição
    Cadeia de caracteres O título da lista.
    var list = GlideList2.get(name);	
    var listTitle = list.getTitle();
    

    GlideList2 - isUserList()

    Retorna verdadeiro se a lista tiver sido personalizada pelo usuário ao escolher a mecânica de lista e mudar o layout da lista.

    Tabela 29. Parâmetros
    Nome Tipo Descrição
    nenhum
    Tabela 30. Retorna
    Tipo Descrição
    Booliano Verdadeiro se o layout da lista tiver sido alterado.
    var list = GlideList2.get(listId);
    if (!list)
      return;
    if (list.isUserList())
      var tableName = list.getTableName();

    GlideList2 - atualizar (Número firstRow, String additionalParms)

    Atualiza a lista. A parte orderBy do filtro de lista é ignorada para que a lista use sua ordem natural quando for atualizada.

    Tabela 31. Parâmetros
    Nome Tipo Descrição
    firstRow Número A primeira linha a aparecer na lista.

    Padrão: primeira linha da exibição atual.

    parâmetrosadicionais Cadeia de caracteres Pares de nome-valor opcionais que são enviados com a solicitação de atualização da lista.
    Tabela 32. Retorna
    Tipo Descrição
    vazio
    $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(Número firstRow, String description)

    Atualiza a lista. A parte orderBy do filtro de lista será incluída se for especificada para a lista.

    Tabela 33. Parâmetros
    Nome Tipo Descrição
    firstRow Número A primeira linha a aparecer na lista.

    Padrão: primeira linha da exibição atual.

    descrição Cadeia de caracteres Pares de nome-valor opcionais que são enviados com a solicitação de atualização de lista.
    Tabela 34. Retorna
    Tipo Descrição
    vazio
    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(Filtro de cadeia de caracteres)

    Define a cadeia de caracteres de consulta codificada para a lista, ignorando as partes orderBy e groupBy da cadeia de caracteres de consulta.

    Tabela 35. Parâmetros
    Nome Tipo Descrição
    filtros Cadeia de caracteres Cadeia de caracteres de consulta codificada no formato Glide padrão. Consulte Cadeias de caracteres de consulta codificadas.
    Tabela 36. Retorna
    Tipo Descrição
    vazio
    list = GlideList2.get($(side+"ContentDivRelease").select(".list_div")[0].getAttribute("id"));
    if (list) {
      list.setFilter("active=true");
      list.refresh(1);
     }

    GlideList2 – setFilterAndRefresh(Filtro de cadeia de caracteres)

    Define a cadeia de caracteres de consulta codificada para a lista, incluindo orderBy e groupBy se especificado e atualiza a lista usando o novo filtro.

    Tabela 37. Parâmetros
    Nome Tipo Descrição
    filtros Cadeia de caracteres Cadeia de caracteres de consulta codificada.
    Tabela 38. Retorna
    Tipo Descrição
    vazio
    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(Number rowNum)

    Define a primeira linha que aparece na lista quando ela é atualizada.

    Tabela 39. Parâmetros
    Nome Tipo Descrição
    rowNum Número Número da primeira linha a ser exibida.
    Tabela 40. Retorna
    Tipo Descrição
    vazio
    var nextRow = 0;
    var rowsPerPage = 20;
    var list = GlideList2.get(listId);
    if (!list)
      return;
    list.setFirstRow(nextRow);
    nextRow = nextRow + rowsPerPage;
    

    GlideList2 – setGroupBy(cadeia de caracteres groupBy)

    Define os critérios groupBy de lista para um único campo.

    Tabela 41. Parâmetros
    Nome Tipo Descrição
    groupBy Cadeia de caracteres Os critérios groupBy para a lista.
    Tabela 42. Retorna
    Tipo Descrição
    vazio
    function runContextAction(listId) {
      var g_list = GlideList2.get(listId);
      g_list.setGroupBy('');
      g_list.refresh(1);
    }

    GlideList2 – setOrderBy(cadeia de caracteres orderBy)

    Define os critérios orderBy para a lista.

    Para uma única ordem por campo, use o campo orderBy ou o campo orderByDesc. Para vários campos, use orderByField1^orderByField2^orderByField3. orderBy especifica a ordem crescente e orderByDesc especifica decrescente. Essas cadeias de caracteres de prefixo são opcionais. Se não for especificado, orderBy será a ordem padrão.

    Tabela 43. Parâmetros
    Nome Tipo Descrição
    orderBy Cadeia de caracteres Campos orderBy únicos ou múltiplos.
    Tabela 44. Retorna
    Tipo Descrição
    vazio
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                updateOrderBy: function(orderBy){
      var list = GlideList2.get(this.listID);
      if (list)
        list.setOrderBy(orderBy);
    };

    GlideList2 – setRowsPerPage(Número de linhas)

    Define o número de linhas por página a serem exibidas.

    Tabela 45. Parâmetros
    Nome Tipo Descrição
    linhas Número O número de linhas a serem exibidas.
    Tabela 46. Retorna
    Tipo Descrição
    vazio
    link: function(scope) {
      var list = GlideList2.get(scope.listId);
      list.setRowsPerPage(scope.maxRows);
      list.setFilterAndRefresh(scope.tableQuery);
    }

    GlideList2 – showHideGroups(booliano showFlag)

    Mostra ou oculta todos os grupos na lista e salva o estado atual recolhido/expandido dos grupos como uma preferência do usuário.

    Tabela 47. Parâmetros
    Nome Tipo Descrição
    mostrarFlag Booliano Se verdadeiro, mostra os grupos na lista.
    Tabela 48. Retorna
    Tipo Descrição
    vazio
    function showHideAllGroups(showFlag) {
      var list = GlideList2.get(listId);
      if (!list)
        return;
      list.showHideGroups(showFlag);
    }

    GlideList2 – showHideList(booliano showFlag)

    Exibe ou oculta a lista e salva o estado atual recolhido/expandido da lista como uma preferência do usuário.

    Tabela 49. Parâmetros
    Nome Tipo Descrição
    mostrarFlag Booliano Se verdadeiro, exibirá a lista.
    Tabela 50. Retorna
    Tipo Descrição
    vazio
    GlideList2.toggleAll = function(expandFlag) {
    for (var id in GlideLists2) {
      var list = GlideLists2[id];
    list.showHideList(expandFlag);
    }

    GlideList2 - classificar (campo de cadeia de caracteres)

    Classifica a lista em ordem crescente e define o campo como uma coluna orderBy.

    Tabela 51. Parâmetros
    Nome Tipo Descrição
    Assunto: Cadeia de caracteres Campo a ser usado para classificar a lista.
    Tabela 52. Retorna
    Tipo Descrição
    vazio
    $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 - ordenarDescending (cadeia de caracteres do campo, valor do número)

    Classifica um único campo na lista em ordem decrescente e define o campo como uma coluna orderByDescField.

    Tabela 53. Parâmetros
    Nome Tipo Descrição
    Assunto: Cadeia de caracteres Campo a ser usado para classificar a lista.
    Tabela 54. Retorna
    Tipo Descrição
    vazio
    $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()

    Alterna a exibição da lista e salva o estado atual recolhido/expandido da lista como uma preferência do usuário.

    Tabela 55. Parâmetros
    Nome Tipo Descrição
    nenhum
    Tabela 56. Retorna
    Tipo Descrição
    vazio
    var list = GlideList2.get(listId);
    if (!list)
      return;
    list.toggleList();

    GlideList2 – alternarListNoPref()

    Alterna a exibição da lista, mas não salva o estado atual recolhido/expandido da lista como uma preferência do usuário.

    Tabela 57. Parâmetros
    Nome Tipo Descrição
    nenhum
    Tabela 58. Retorna
    Tipo Descrição
    vazio
    var list = GlideList2.get(listId);
    if (!list)
      return;
    list.toggleListNoPref();