How to trigger ServiceNow workflow from ui action?

2019-07-15 05:39发布

问题:

I am getting started with workflows in ServiceNow. I can see that the trigger for at workflow is based on conditions. But can a workflow be triggered by some sort of user action, i.e. a UI Action/button or through a script?

回答1:

There's a Workflow object accessible server side that you can use to start a workflow that's documented here.

Here's an example from that wiki article:

// where current is a task record with a workflow context
var w = new Workflow();
var context = w.startFlow(id, current, current.operation(), vars);
  • current: A GlideRecord that's been next()'ed to the record against which you're running the workflow
  • id: The sys_id of the wf_workflow you want to run (NOTE: This is NOT the workflow version, the startFlow method handles determining which version is published and executes against it.
  • vars: The input variables that your target workflow accepts. This should be a JavaScript associative array e.g.: var vars = {variable1: "value1", variable2: "value2"};