I was helping a partner last week customizing a testing environment and we needed to reset the Ticket Number so they could start from scratch again. The Support team was ready to start taking calls but the customer wanted to have the numbering sequence starting at Ticket #0000 and Sage SalesLogix Ticket’s ID was already at 83. The ticket number is generated every time you open a new ticket, whether it was saved or cancelled. The Ticket Number field is a calculated field (Ticket.Alternatekeyprefix + Ticket.Alternatekeysuffix). We knew we had to change the alternatekeysuffix but it was a little challenging to find out where it was pulling from so we could reset the counter.
So, here are our findings in case you need to replicate this someday…
It is stored in the SITEKEYS table.
KeyType = 32
KeyDesc = "T" (for ticket)
The KeyValue should be "reset" to "A000000" - that is an "A" with 6 zero's behind it. That is the part that gets turned into the decimal value (last 5 digits of the 7-digit #). First two digits get turned into the "1-" part.
In my demo database, the value I had was A00002B which indicated the last ticket number used ended with 83. I found an online calculator (since I was too lazy to try to do it manually) and it will show you the correct Base 36 to decimal conversion values. In our case, we just wanted to reset to zero but you could change the values here too if your scenario was to start with a specific number in mind.
According to Wikipedia, Base 36 is a positional numeral system using 36 as the radix. The choice of 36 is convenient in that the digits can be represented using the Arabic numerals 0-9 and the Latin letters A-Z. Base 36 is therefore the most compact case-insensitive alphanumeric numeral system using ASCII characters. SalesLogix uses base 36 as part of its database identifiers.
Please do not try this on a production database since it could cause duplicate values and corruption with your database.