How to pass a value into workflow

kulshreshtha
Giga Contributor

Hi I have done a very simple workflow which I am trigger using a business rule. Please find below my business rule, workflow.

find_real_file.png

Business rule:

(function executeRule(current, previous /*null when async*/)

{

.........................

...........................

..........................

  var gr = new GlideRecord('wf_workflow');

  gr.addQuery('name', 'Z');

  gr.query();

  if (gr.next()) {

    var wf = new Workflow();

    var workflowId = '' + gr.sys_id;

    var vars = {};

    vars.number =5;

    wf.startFlow(workflowId, current, current.operation, {number: 5});

         

  }

  action.setRedirectURL(current);

})(current, previous);

My aim is to assign a value to a workflow variable. Here if workflow variable which i have named as number =5 i need to get mail with subject YES or else NO. Code in If block of workflow is

answer = ifScript();

  function ifScript() {

          if (workflow.scratchpad.number==5) {

                return 'yes';

          }

        return 'no';

  }

Problem is it is always giving NO message. Can anybody help me to get this concept..

Thanks in advance

1 ACCEPTED SOLUTION

Hi Naman,



Yes its the right method.


Whats the column name. check if you are using the same in your code.


View solution in original post

13 REPLIES 13

manikorada
ServiceNow Employee
ServiceNow Employee

Naman,



You need to use


workflow.inputs.number


What other changes do you think i need to do, because i am getting NO


Chuck Tomasi
Tera Patron

Hi Naman,



I've given the docs and the script include a look and don't see that it mentions the scratchpad anywhere. Have you tried just using



if (workflow.number == 5)



???


No this didnt work