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.

Script to insert record in custom table

Sneha39
Mega Guru

I want to insert catalog item variable record to custom table as soon as the RITM gets created.

I am writing after BR on ritm table( its not working)  for same but looking for more suggestions.

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

// Add your code here

var tbl1 = new GlideRecord('u_cst_account');
tbl1.query();
if(tbl1.next())
{
var rec1=tbl1.u_account_names;
if(current.variables.var_type1 == 'AST1')
{
current.variables.var_name = rec1;
tbl1.setValue(name,current.variables.var_name);

}
}

})(current, previous);

1 ACCEPTED SOLUTION

Ok if its inserting of record

then you need to do 2 things

1. Make a check if same record exist

2. If Yes then ignore or If No then insert

var recinsert = new GlideRecord('u_cst_account');\
recinsert.addQuery('columnename',current.variables.var_name);//add here column name against which you want to check
recinsert.query();
if(!recinsert.next()) //If no record found
{
var recinsertnow = new GlideRecord('u_cst_account');
recinsert.initialize();
recinsert.setValue(name,current.variables.var_name);
recinsert.insert();
}

 

Hope this helps

Thank you
Prasad

View solution in original post

16 REPLIES 16

Sneha39
Mega Guru

Hi All,

Thanks for your help. 

It worked . I was making mistake i.e

defining variable in line (

recinsert.setValue(name,current.variables.var_name);

where name is a variable which i defined for table field 

var name = recinsert.u_account_name;

and was using but it wasn't working on BR.

 

Glad that it worked. Please mark appropriate answer correct and close the thread. Thank you Prasad