spUtil - Cliente

  • Versão de lançamento: Washingtondc
  • Atualizado 1 de fev. de 2024
  • 7 min. de leitura
  • A API spUtil fornece métodos de utilitário para executar funções comuns em um script de cliente de widget Portal de serviços.

    Essas funções incluem:

    Para obter informações adicionais sobre widgets, consulte Widgets do Portal de serviços.

    spUtil - addErrorMessage(cadeia de caracteres "mensagem")

    Exibe uma mensagem de erro de notificação.

    Tabela 1. Parâmetros
    Nome Tipo Descrição
    message Cadeia de caracteres Mensagem de erro a ser exibida.
    Tabela 2. Retorna
    Tipo Descrição
    vazio
    spUtil.addErrorMessage("There has been an error processing your request")

    spUtil - addInfoMessage(cadeia de caracteres "mensagem")

    Exibe uma mensagem de informação de notificação.

    Tabela 3. Parâmetros
    Nome Tipo Descrição
    message Cadeia de caracteres Mensagem a ser exibida.
    Tabela 4. Retorna
    Tipo Descrição
    vazio
    spUtil.addInfoMessage("Your order has been placed")

    spUtil - addTrivialMessage(cadeia de caracteres "mensagem")

    Exibe uma mensagem de notificação comum.

    As mensagens triviais desaparecem após um curto período.

    Tabela 5. Parâmetros
    Nome Tipo Descrição
    message Cadeia de caracteres Mensagem a ser exibida.
    Tabela 6. Retorna
    Tipo Descrição
    vazio
    spUtil.addTrivialMessage("Thanks for your order")

    spUtil – createUid()

    Crie um identificador exclusivo.

    Tabela 7. Parâmetros
    Nome Tipo Descrição
    Nenhum
    Tabela 8. Retorna
    Tipo Descrição
    Cadeia de caracteres Um ID exclusivo de 32 caracteres.

    spUtil - get(cadeia de caracteres widgetId Object data)

    Incorpora um modelo de widget em um client script de widget.

    A função de retorno de chamada retorna o modelo de widget completo. Para obter informações adicionais sobre widgets, consulte Widgets do Portal de serviços.

    Tabela 9. Parâmetros
    Nome Tipo Descrição
    ID do widget Cadeia de caracteres ID do widget ou sys_id do widget a ser incorporado.
    dados Objeto Opcional. Pares de parâmetros de nome/valor a serem passados para o modelo de widget.
    Tabela 10. Retorna
    Tipo Descrição
    Objeto Modelo do widget incorporado.

    Sem dados passados.

    spUtil.get("widget-cool-clock").then(function(response) {
      c.coolClock = response;
    });

    Com os dados passados.

    spUtil.get('pps-list-modal', {title: c.data.editAllocations, 
      table: 'resource_allocation', 
      queryString: 'GROUPBYuser^resource_plan=' + c.data.sysId, 
      view: 'resource_portal_allocations' }).then(function(response) {
        var formModal = response;
        c.allocationListModal = response;
      });  	
    

    spUtil – getHeaders()

    Recupera todos os cabeçalhos a serem usados para chamadas de API.

    Tabela 11. Parâmetros
    Nome Tipo Descrição
    Nenhum
    Tabela 12. Retorna
    Tipo Descrição
    Objeto Todos os cabeçalhos a serem usados para chamadas de API.

    spUtil – getHost()

    Retorna o domínio do host completo.

    Tabela 13. Parâmetros
    Nome Tipo Descrição
    Nenhum
    Tabela 14. Retorna
    Tipo Descrição
    Cadeia de caracteres O domínio do host completo, por exemplo hi.servicenow.com

    spUtil - getPreference(preferência de cadeia de caracteres, retorno de chamada de função)

    Executa o retorno de chamada com a resposta Preferência do usuário passando o nome da preferência.

    Tabela 15. Parâmetros
    Nome Tipo Descrição
    preferência Cadeia de caracteres Nome da preferência.
    retorno de chamada Função Defina a função de retorno de chamada.
    Tabela 16. Retorna
    Tipo Descrição
    vazio

    spUtil – getURL()

    Retorna as informações de URL do portal de serviços atual.

    Tabela 17. Parâmetros
    Nome Tipo Descrição
    Nenhum
    Tabela 18. Retorna
    Tipo Descrição
    Cadeia de caracteres URL atual do portal de serviços.

    spUtil - format(modelo de cadeia de caracteres, dados do objeto)

    Formata uma cadeia de caracteres que contém variáveis.

    Use este método como uma alternativa à concatenação de cadeia de caracteres.

    Tabela 19. Parâmetros
    Nome Tipo Descrição
    modelo Cadeia de caracteres Modelo de cadeia de caracteres que contém valores para substituição de variável.
    dados Objeto Objeto que contém os valores das variáveis definidas na cadeia de caracteres do modelo.
    Tabela 20. Retorna
    Tipo Descrição
    Cadeia de caracteres Cadeia de caracteres que contém os valores de variáveis em vez da nomenclatura de variáveis.
    spUtil.format('An error ocurred: {error} when loading {widget}', {error: '404', widget: 'sp-widget'})

    Saída:

    'An error occurred: 404 when loading sp-widget'

    spUtil – isMobile()

    Verifica se o cliente atual é um dispositivo móvel.

    Tabela 21. Parâmetros
    Nome Tipo Descrição
    Nenhum
    Tabela 22. Retorna
    Tipo Descrição
    Booliano Sinalizador que indica se o cliente atual é um dispositivo móvel.
    Valores válidos:
    • verdadeiro: o cliente atual é um dispositivo móvel.
    • falso: o cliente atual não é um dispositivo móvel.

    spUtil - parseAttributes(cadeia de caracteres atributos)

    Analisa os atributos separados por vírgulas em uma cadeia de caracteres especificada.

    Tabela 23. Parâmetros
    Nome Tipo Descrição
    atributos Cadeia de caracteres Cadeia de caracteres que contém atributos separados por vírgulas, como o campo Atributos de um registro de dicionário.
    Tabela 24. Retorna
    Tipo Descrição
    Matriz Matriz de objetos que contém os atributos analisados.
    function getRefQualElements() {
      var refQualElements = [];
      if (field && field.attributes && field.attributes.indexOf('ref_qual_elements') > -1) {
        var attributes = spUtil.parseAttributes(field.attributes);
        refQualElements = attributes['ref_qual_elements'].split(';');
      }
      return refQualElements;
    }

    spUtil - recordWatch(Object $scope, Tabela de cadeia de caracteres, Filtro de cadeia de caracteres, Retorno de chamada de função)

    Observa se há atualizações em uma tabela ou filtro e retorna o valor da função de retorno de chamada.

    Permite que um desenvolvedor de widget responda a atualizações de tabela em tempo real. Por exemplo, usando recordWatch(), o widget de lista simples pode ouvir mudanças em sua tabela de dados. Se os registros forem adicionados, removidos ou atualizados, o widget será atualizado automaticamente.

    Nota:
    Ao passar o argumento $scope para a função recordWatch(), injete $scope nos parâmetros da função de client script.
    Tabela 25. Parâmetros
    Nome Tipo Descrição
    $escopo Objeto Escopo do objeto de dados atualizado pela função de retorno de chamada.
    tabela Cadeia de caracteres Tabela observada.
    filtros Cadeia de caracteres Filtre por campos a serem observados.
    retorno de chamada Função Opcional. Parâmetro para definir a função de retorno de chamada.
    Tabela 26. Retorna
    Tipo Descrição
    Promessa Valor de retorno da função de retorno de chamada.
    //A simple recordWatch function.
    spUtil.recordWatch($scope, "live_profile", "sys_id=" + liveProfileId);
    
    //In a widget client script
    function(spUtil, $scope) {
      /* widget controller */
      var c =this;
    
      // Registers a listener on the incident table with the filter active=true, 
      // meaning that whenever something changes on that table with that filter, 
      // the callback function is executed.    
      // The callback function takes a single parameter 'response', which contains 
      // the property 'data'. The 'data' property contains information about the changed record. 
      spUtil.recordWatch($scope, "incident", "active=true", function(response) {
            
        // Returns the data inserted or updated on the table 
        console.log(response.data);   
        
        });
    }

    spUtil - refresh(Object $scope)

    Chama o servidor e substitui as opções e os dados atuais pela resposta do servidor.

    Chamar spUtil.refresh() é semelhante a chamar server.refresh(). No entanto, ao chamar spUtil.refresh(), você pode definir o objeto $scope.

    Tabela 27. Parâmetros
    Nome Tipo Descrição
    $escopo Objeto Escopo definido para a atualização.
    Tabela 28. Retorna
    Tipo Descrição
    Objeto Opções e objetos de dados atualizados.

    spUtil - scrollTo(seletor de cadeia de caracteres, tempo do número)

    Rola para o elemento com o seletor especificado, durante um período especificado.

    Tabela 29. Parâmetros
    Nome Tipo Descrição
    seletor Cadeia de caracteres Seletor para rolar para.
    hora Número Tempo necessário para rolar para o seletor especificado.

    Unidade: milissegundos

    Tabela 30. Retorna
    Tipo Descrição
    vazio

    spUtil - setBreadCrumb(Object $scope, Matrizes de trilhas)

    Atualiza as trilhas do cabeçalho.

    Tabela 31. Parâmetros
    Nome Tipo Descrição
    $escopo Objeto Escopo definido para a tabela.
    trilhas Matriz Condições usadas para criar o filtro de trilha.
    Tabela 32. Retorna
    Tipo Descrição
    vazio

    spUtil - setPreference(cadeia de caracteres pref, cadeia de caracteres valor)

    Define uma preferência do usuário.

    Tabela 33. Parâmetros
    Nome Tipo Descrição
    pref Cadeia de caracteres Nome de preferência
    valor Cadeia de caracteres Valor de preferência
    Tabela 34. Retorna
    Tipo Descrição
    vazio

    spUtil - setSearchPage(cadeia de caracteres searchPage)

    Atualiza a página de pesquisa.

    Tabela 35. Parâmetros
    Nome Tipo Descrição
    SearchPage Cadeia de caracteres Nome da página de pesquisa.
    Tabela 36. Retorna
    Tipo Descrição
    vazio

    spUtil - update(Object $scope)

    Atualiza o objeto de dados no servidor em um determinado escopo.

    Este método é semelhante a server.update(), mas inclui um parâmetro $scope que define o escopo a ser ignorado.

    Tabela 37. Parâmetros
    Nome Tipo Descrição
    $escopo Objeto Escopo definido para a atualização.
    Tabela 38. Retorna
    Tipo Descrição
    Objeto Objeto de dados atualizado.

    O exemplo a seguir inclui um widget P1 que observa mudanças no campo de estado e usa um filtro para observar todos os P1s ativos e permitir que a função de retorno de chamada determine se os dados devem ser atualizados. A propriedade data.changes contém uma matriz de todos os campos atualizados. Se o estado de algum campo tiver sido alterado, os dados serão atualizados no widget.

    var q = "priority=1^active=true^EQ";
    spUtil.recordWatch($scope, "incident", q, function(event, data) {
       if (data.changes.includes("state")) { // only update if state was updated.
          spUtil.update($scope);
       }
    });