Do you have people you could listen to all day, regardless of the topic?
Chuck Tomasi is one of those people for me.
Doesn’t matter if he’s talking about Jelly, GraphQL, or, like in this case, adjusting M2M tables.
He shares his 5 essential adjustments when creating Many-to-Many tables in ServiceNow.
Key takeaways
TL;DR: The platform defaults are terrible, so change everything!
- Change the table name immediately: Use something human-readable.
- Remove the scope from field names: You don’t want to type it in every script for the rest of your life.
- Fix the field labels: These show up in related lists that actual humans will see.
- Change the table label to singular: ServiceNow adds the “s” automatically.
- Learn to reset M2M definitions: There’s no delete button on “sys_m2m”.
Changing the default values can also help you avoid some weird bugs on m2m tables.
Adding fields to your m2m table
Regarding the suggestion of adding custom fields to m2m, keep in mind the licensing implications.
The following tables are exempted: – Many to Many Tables: Many to many tables that are registered in the m2m_table field in the sys_m2m table. These tables are restricted to three (3) custom fields in addition to the standard fields created by the system.
References
- Chuck Tomasi: LinkedIn
- ServiceNow Custom Table Guide
- nullEDGE Website
- nullEDGE YouTube channel
- My LinkedIn posts #nullEDGEAdvent (any feedback is welcomed!)
- Intro to my nullEDGE advent calendar adventure

