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.