Free-form text fields can be useful, but they also allow users to enter the same value in different ways. This can create reporting issues, duplicate values, and extra cleanup work.
Custom lists help reduce typing errors by giving users a controlled set of values to choose from.
Scenario
A team needs users to select a value on a NetSuite record.
Examples may include:
- request priority
- approval status
- vendor category
- customer type
- review reason
- task status
Solution
Use a custom list instead of a free-form text field when users should select from approved values.
A custom list allows admins to define the exact options users can choose. This helps keep data entry cleaner and more consistent.
Example Custom List
Custom list name:
Request Priority
Example values:
This list can then be used in a custom field so users select the correct priority instead of typing it manually.
Example: Create a Request Priority Custom List
A team wants users to select a priority level instead of typing it manually.
Without a custom list, users may enter:
- High
- high
- Hgh
- Priority High
To avoid this, create a controlled dropdown list.
1. Create the Custom List
NetSuite:
Go to Customization > Lists, Records, & Fields > Lists > New
Create a list named:
Request Priority
Add these values:
Click Explore (hamburger icon in the bottom left corner beside the home button). In the menu, go to Customization > Lists, Records, & Fields > List. Then, on the next page, click Create custom list definition.
Create a list named:
Request Priority
Add these values:
2. Create the Custom Field
NetSuite:
Go to the record where the priority should appear.
Example:
Customization > Lists, Records, & Fields > Transaction Body Fields > New
Create a field named:
Request Priority
Suggested setup:
- Type: List/Record
- List/Record: Request Priority
- Applies To: select the record or transaction type where needed
NetSuite Next:
Click Explore (hamburger icon in the bottom left corner beside the home button). In the menu, go to Customization > Lists, Records, & Fields > Transaction body fields. Then, on the next page, click new.
Create a field named:
Request Priority
Suggested setup:
- Type: List/Record
- List/Record: Request Priority
- Applies To: select the record or transaction type where needed
3. Test the Field
Open the form where the field was added.
Confirm that users can only select:
Result
Users no longer need to type the priority manually. This reduces spelling errors, keeps values consistent, and makes saved searches or reports easier to filter.
Why It Helps
Custom lists can help:
- reduce spelling mistakes
- keep values consistent
- make saved searches easier to filter
- improve reporting accuracy
- reduce cleanup work
- make forms easier for users to complete
References
- SA: SuiteBuilder – Customization (ID: 1045873)
- SA: Custom List (ID: 10397)
Notes
- Use custom lists when values should be controlled.
- Keep list values short and clear.
- Avoid creating duplicate values with the same meaning.
- Review existing lists before creating a new one.
- Use free-form text only when users need flexible comments or descriptions.
- Test the field on the correct form before production use.
Summary
Custom lists are a simple way to reduce typing errors and improve data consistency in NetSuite. By replacing free-form entry with predefined values, admins can make records easier to complete, search, and report on.
Disclaimer: The sample code described herein is provided on an "as is" basis, without warranty of any kind, to the fullest extent permitted by law. Oracle + NetSuite Inc. does not warrant or guarantee the individual success developers may have in implementing the sample code on their development platforms or in using their own Web server configurations.
Oracle + NetSuite Inc. does not warrant, guarantee or make any representations regarding the use, results of use, accuracy, timeliness or completeness of any data or information relating to the sample code. Oracle + NetSuite Inc. disclaims all warranties, express or implied, and in particular, disclaims all warranties of merchantability, fitness for a particular purpose, and warranties related to the code, or any service or software related thereto.
Oracle + NetSuite Inc. shall not be liable for any direct, indirect or consequential damages or costs of any type arising out of any action taken by you or others related to the sample code.
Share your insights and experiences in the NetSuite Admin Corner.