Configurar um item de ação

  • Versão de lançamento: Yokohama
  • Atualizado 30 de jan. de 2025
  • 4 min. de leitura
  • Para que uma função de ação funcione, você deve criar um item de ação para associar à função de ação. Os itens de ação definem o que é a função de ação e como ela funciona.

    Antes de Iniciar

    Antes de criar um item de ação, crie uma função de ação.

    Função necessária: administrador

    Por Que e Quando Desempenhar Esta Tarefa

    A maioria dos itens de ação usa parâmetros.

    Use itens de ação para definir o que uma função de ação faz quando um usuário usa essa função. As etapas a seguir detalham a criação de uma ação sem parâmetros. Para criar um item de ação com parâmetros, consulte Configurar um item de ação com parâmetros.

    Nota:
    Os aplicativos para celular da ServiceNow não podem executar nenhuma ação que não possa ser realizada na interface baseada na Web da plataforma. Por exemplo, se você usar ACLs para impedir que um usuário encerre um incidente sem adicionar um código de resolução e anotações, o usuário não poderá fechar um incidente no aplicativo sem os mesmos requisitos. Lembre-se disso ao criar ações, para que você possa adicionar os parâmetros corretos.

    Procedimento

    1. Navegar até Tudo > Sistema Móvel > Construtor de apps para celular.
      O Construtor de apps para celular abre em uma nova guia do navegador e exibe a tela de seleção do escopo da aplicação.
    2. Pesquise o escopo da aplicação em que você está trabalhando e selecione o nome do escopo da aplicação.
      A tela inicial de Construtor de apps para celular categorias é exibida.
    3. Selecione Funções no menu e selecione Novo.
    4. Selecione Novo na seção Item de ação e preencha os seguintes campos conforme necessário.
      Tabela 1. Campos de item de ação
      Campo Descrição
      Nome Um nome para o item de ação. Você pode ter vários itens de ação com o mesmo nome. Certifique-se de escolher um nome que seja facilmente identificável.
      Descrição Mais informações para ajudá-lo a identificar o item de ação.
      Tipo O tipo de item de ação. Escolha uma das seguintes opções:Campos diferentes aparecem no formulário de item de ação, dependendo do tipo de ação selecionado.
      Tabela A tabela à qual o item de ação se aplica, por exemplo, Incidente.
      Script de Execução

      O script executado pela ação. Este campo só aparecerá se você selecionar Script como o tipo. Para obter mais informações, consulte o exemplo abaixo.

      Para usar uma entrada de uma tela de parâmetro em seus scripts, use parm_input.<InputName>

      Para usar uma variável de uma tela de parâmetro em seus scripts, use parm_variable.<VariableName>

      Use o registro atual como condição Se você deseja um conjunto separado de condições de consulta para o item de ação. Se selecionado, o campo Condições de consulta será desabilitado. Para ações de atualização ou exclusão, você deve definir o registro que está atualizando ou excluindo fornecendo um SYS ID. Marcar Usar registro atual como condição como verdadeiro permite que você faça isso sem criar um parâmetro.
      Condição da consulta Condições de filtro que se aplicam ao item de ação.
      Definir valores de campos Determine os valores de campo para uma ação. Por exemplo, se você quiser criar uma ação que atualiza um incidente com um estado de Resolvido, use os valores de campo Estado = Resolvido. Você também pode criar itens com parâmetros para passar para o valor do campo.
      Tela do formulário de entrada Selecione uma tela de formulário de entrada a ser usada para este item de ação. Consulte Configurar uma tela de formulário de entrada.
    5. Selecione Save (Salvar).

    Exemplo

    O exemplo a seguir usa um script para atribuir uma tarefa ao usuário atual, usando o objeto SMTask. A primeira instrução "if" verifica se a entrada é um registro wm_task válido e encerra o script se não for. A segunda instrução "if" contém o código que atribui a tarefa ao usuário atual, se o usuário tiver permissão, conforme determinado pelo método canAssignToSelf. Esta ação foi feita como um script em vez de uma atualização para que essas verificações possam ser incluídas.

    (function WriteBackAction(parm_input, parm_variable) {
    	var smTask = new global.SMTask();
           var work_order_task_id = parm_variable['sys_id'];
    	var wotGR = new GlideRecord("wm_task");
    	if (!wotGR.get(work_order_task_id)) {
    		gs.error("wot_assign_to_me write-back action - failed to find work order task");
    		gs.addErrorMessage(gs.getMessage("Task assignment failed."));
    		return;
    	}
    	
    	if (smTask.canAssignToSelf(wotGR))
    		smTask.assignToMe(gs.getUserID(), work_order_task_id);
    	else
    		gs.addErrorMessage(gs.getMessage("Not a valid task assignment."));
    })(parm_input, parm_variable);

    O exemplo a seguir usa um script para executar uma funcionalidade de conclusão de navegação depois que uma ação é executada. Insira actionResult como a função e defina setRedirectionInfo(gr.getUniqueValue(), gr.getTableName() para especificar para onde navegar, depois que a ação for executada.

    (function WriteBackAction(parm_input, parm_variable, actionResult) {​
                var gr = new GlideRecord('incident');​
                gr.get(parm_variable['sys_id']);​
                gr.short_description = 'Updated by Scripted Action';​
                gs.addInfoMessage(gs.getMessage("This is the First success message"));​
                gs.addInfoMessage(gs.getMessage("This is the Second success message"));​
                gs.addInfoMessage(gs.getMessage("This is the Third success message"));​
                gr.update();​
            actionResult.setRedirectionInfo(gr.getUniqueValue(), gr.getTableName());         ​
    })(parm_input, parm_variable, actionResult);
    O exemplo a seguir usa um script para determinar onde os anexos selecionados pelo usuário no tipo de entrada de anexo são armazenados. O script anexa o arquivo selecionado a um registro de incidente específico com o sys_id na tabela Incidente [incidente].
    (function WriteBackAction(parm_input, parm_variable, actionResult) { 
    var targetTableName = "incident";
    var targetTableRecordSysId = "37aa099533b352102ed2923fad5c7b09";
    var inputName = "input2"; // input2 stands for the input's name. The input type must be "Attachment" 
    actionResult.addAttachment(inputName, targetTableName, targetTableRecordSysId);
    })(parm_input, parm_variable, actionResult);
    

    Se você usar parâmetros para o item de ação, poderá chamá-los no script. A chamada no script deve corresponder exatamente ao nome do parâmetro. Por exemplo, se o nome do parâmetro for wb_wot_reject_work_note, como no primeiro script acima, você poderá chamá-lo no script usando gr.work_notes = input.wb_wot_reject_work_note;.

    O que Fazer Depois

    Associe o item de ação a uma função de ação, consulte função de ação.

    Associe etapas de ação a um item de ação, consulte Configurar etapas de ação em um item de ação.