Join the #BuildWithBuildAgent Challenge! Get recognized, earn exclusive swag, and inspire the ServiceNow Community with what you can build using Build Agent.  Join the Challenge.

How to query user name

Sironi
Kilo Sage

Hi,

Some one help me in GlideQuery.

var gr= "David Faroon"

var rp = new GlideRecord('resource_plan');
rp.initialize();
var usergr = new GlideRecord('sys_user');
usergr.addQuery('name', gr);
usergr.query();
if (usergr.next()) {
rp.user_resource = usergr.sys_id;
}
rp.insert();

 

is it right way to compare name with User table, if yes then ResourcePlan not created . any suggestions ?

1 ACCEPTED SOLUTION

okay.

So try it like this.

 

var gr = "David   Faroon";
gr = gr.trim().replace(/\s+/g,' ');
var rp = new GlideRecord('resource_plan');
rp.initialize();
var usergr = new GlideRecord('sys_user');
usergr.addQuery('name',gr);
usergr.query();
  if (usergr.next()) {
    gs.info("Entered into your if condition");
    rp.user_resource = usergr.getValue("sys_id");
  }
rp.setWorkflow(false);
rp.insert();

View solution in original post

32 REPLIES 32

Hi,

Also just check if resource_plan has any other fields which are mandatory as your are not assigning any other values in your code.

 

Willem
Giga Sage
Giga Sage

I would change the order a bit.

Can you try it like this:

var userName = "David Faroon"

var usergr = new GlideRecord('sys_user');
usergr.addQuery('name', userName);
usergr.query();
if (usergr.next()) {
    var rp = new GlideRecord('resource_plan');
    rp.initialize();
    rp.user_resource = usergr.getUniqueValue();
    rp.insert();
}

Willem
Giga Sage
Giga Sage

Please note you need to fill in mandatory fields as well:

  • group_resource
  • planned_hours
  • task
  • start_date
  • end_date

find_real_file.png

sure, once RP created by script. Resource Manager will fill all these details.

There is a business rule: Check For Resource Based on Type that will abort the action/insert unless all mandat fields are filled.