Welcome to Community Week 2025! Join us to learn, connect, and be recognized as we celebrate the spirit of Community and the power of AI. Get the details  

Auto numbering through business rule

Siri8
Kilo Contributor

How to write a script for auto numbering records through business rule.I have written below script but it is not triggering.

var gr= new GlideRecord('table_name');
gr.orderByDesc('field_name');
gr.query();
if(gr.next())
{
var num= gr.field_name;
var str= num.substring(3);
var str_i = parseInt(str);
str_i++;
gr.num="CI"+str_i;
}

Can you please suggest me

1 ACCEPTED SOLUTION

Try below in background script before updating the same in business rule. Also, your business rule is on which table & when it is executing makes difference. 

var gr= new GlideRecord('incident');
gr.orderByDesc('number');
gr.query();
if(gr.next())
{
var num= gr.number;
var str= num.substring(3);
gs.print(str);
var str_i=Math.floor(str)+1;  
gs.print(str_i);
gr.num="CI"+str_i;
gs.print(gr.num);
}

 

Let me know until what step you get values printed properly in background script.

 

Thanks,

Jaspal Singh

View solution in original post

7 REPLIES 7

Jaspal Singh
Mega Patron
Mega Patron

Hi,

 

 

For every table created ServiceNow provides an Auto-numbering feature that can be used. All you need is to Configure Table & look for 'Control' tab from the Table.

 

Thanks,

Jaspal Singh

Yes,Actually I want through business rule that is the reason I have written script.

 

In that case don't use parsetInt() use Math.floor(); something like below.

var str_i = Math.floor(str);

 

Thanks,

Jaspal Singh

 

Its not working I have checked it.