First of all, this isn't how you force a specific value. User is still free to change and keep the changes. What I'm after is to set a preference that I know users will probably not care to change, or don't even understand what they are for. But perhaps will give them some nice performance tweak if they are changed into something else than what ServiceNow have set as default in my eyes.
You can find all user preferences under just "User Preferences" or "sys_user_preference.list".
Now, lets say you want to set so all users has this setting as default:
For this you go into the table and press "new". Then you create the following record.
- Name: glide.ui.related_list_timing
- Type: string
- Value: deferred
After pressing save you will get a record like this:
What you may notice is that after pressing save the system field will be checked. This means that it will apply to all users that don't have the own preference.
This also means that direct when the user changes the preference them self, your vaule will not affect this user anymore.
If you want to change a setting that has been in the game for a bit and want everyone to start having it, then you can do as above and as a extra step you delete all the records of the same name and only leave the record with the user name empty. This way all users starts with your default value.
It is almost impossible to know what all preferences is named or what the values they have. The easiest way to do find out is to set the preference yourself and then sort the tables after "updated" and there you got the record like this:
Now if you want that setting to be default you can just edit that one and remove the username from the user field. Then it becomes the default preference for everyone who doesn't have a own preference.
Here you can find atleast some of the preferences that can be set: ServiceNow Wiki - User Preference Settings. But then again. If you do something and it saves in the User preferences, you can set a default value by doing the above.