how to create 2 auto generate sequence number fields in single table?

Purvi Kotadiya
Giga Expert

Requirement- I have a table 'test' and I would like to create 2 auto generate number fields. For ex: 1st-> test00001 (default)

2nd- > currentyear/01, currentyear/02 and so on should be auto generated based on certain conditions.

 

Can I have 2 number maintenance records for the same table as it doesn't have field name or any other approach?

 

 

1 ACCEPTED SOLUTION

Tanushree Maiti
Mega Patron

Hi @Purvi Kotadiya 

 

For  1st field (e.g u_custom_num_1) , you can enable auto numbering . (refer: Auto-Numbering Records: How it works and how to remove it)

.

For 2nd field - If you do not need the number to be generated prior to inserting the record, in that case you can ,you can  use before insert Business Rule .

 

Sample code - //not tested. 

(function executeRule(current, previous /*null when async*/) {
  
    if (current.category == 'hardware')   // Add your condition if any
{ current.u_custom_num_2 =
"currentyear/" + current.number.toString().slice(-2) ; //with currentyear you can append 1st field's last 2 digit. } })(current, previous);

  

Please mark this response as Helpful & Accept it as solution if it assisted you with your question.
Regards
Tanushree Maiti
ServiceNow Technical Architect
Linkedin:

View solution in original post

6 REPLIES 6

namanajain
Kilo Guru

Hi @Purvi Kotadiya 
No — you cannot have 2 “Number Maintenance / auto-number” records for the same table to generate 2 different auto-numbers. ServiceNow table auto-numbering supports only ONE numbering scheme per table (it uses a single number_ref).

Screenshot 2026-04-26 170522.png

Screenshot 2026-04-26 170740.png

 

Solution:- If you need a 2nd auto-generated value (like YYYY/01, YYYY/02…), create it as a separate String field and populate it via a Business Rule / script (or use a separate counter logic per year).

Please mark this response as Helpful & Accept it as solution if it assisted you with your question.
Regards

Purvi Kotadiya
Giga Expert

Hello @namanajain, thanks for the response. I was thinking of BR, but then will it be con currency safe?

Hi @Purvi Kotadiya 

Yes, a Business Rule is a good way to do this. It will still be concurrency-safe as long as you generate the second number using ServiceNow’s standard numbering mechanism (sys_number/sys_number_counter) through NumberManager.
Reference :- How to access getNextObjNumberPadded() in a client... - ServiceNow Community
Don't directy just use (number+1) it will not work on multiple submissions.

@Purvi Kotadiya  If u find the solution. Please Accept it as solution. 
Thanks