Salto for
NetSuite
Articles
SHARE
Sonny Spencer, BFP, ACA
November 15, 2024
9
min read
Custom records are one of the best NetSuite customization options available to NetSuite Administrators and NetSuite Developers. They allow NetSuite customers to tailor the application to meet their specific business needs. NetSuite is configured with a set of base tables used to gather and report on data. Through custom records, customers are able to add to these base tables to collect and report on additional data points that will help them run their business effectively.
Did you know?: NetSuite bundles and SuiteApps created by NetSuite’s partner ecosystem all use custom records as the backbone of their solutions? Next time you’re looking at your list of custom records, you should notice many of them are associated with a bundle and very likely locked down to maintain the integrity of the bundled solution.
NetSuite really sets itself apart by giving users the ability to customize the application in a user friendly, point and click way. Yes, some customization requires integrations, scripting, etc. but many customization options don’t require any form of developer or coding experience at all. One of the most powerful customization options in NetSuite is the ability to create custom records.
By creating custom records, NetSuite Administrators can give their business the flexibility to capture data needed for day to day operations and introduce automation to processes that were previously manual and/or maintained externally to NetSuite.
Salto Tip: When creating a custom record in NetSuite, you can add it to the list of available saved search options by checking the “Include in Search Menu” checkbox as part of the custom record configuration. Also, the custom record will automatically be added as an available user role permission as part of the user role configuration.
Screenshot of custom record creation screen, with “Include in Search Menu” flagged
As you start planning to customize NetSuite with new custom record types here are a few considerations:
When you decide to start capturing new data points to help run your business, you need to ensure you are capturing the right data points and that the users populating the data understand exactly what they are populating. For each field on the custom record make sure the appropriate field type and validation are set. Changing them after the fact can lead to loss of data, so just because it is relatively straightforward to create a new custom record doesn’t mean you should do it without first making sure you deeply understand the requirements and outcomes needed by the business.
With all of the great flexibility NetSuite offers it is easy to get carried away and start building a solution that is far more complex than intended or desired. With any solution, first attempt to build a minimum viable product (MVP) before extending the solution. Taking this approach will force you to think about what is most critical to the business and deliver a solution that meets those requirements. Don’t forget that any customization you build needs to be managed and maintained, so the simpler the solution the better.
That being said, don’t forget that the most successful solutions generally combine custom records with workflows and Suitescripts. You will see many of them today in the form of SuiteApps in the SuiteApp Marketplace.
As you think about the data structure for your new custom record make sure you consider parent/child relationships. Custom records can be child records to base NetSuite tables e.g. Customer Records, Invoice Records, Employee Records, etc. They can also be child records of other Custom Records. With that, you can establish a hierarchy of custom records to achieve creative solutions to business problems.
Screenshot shows a custom record from the NetSuite APM bundle with a parent/child relationship
For more information on parent/child record relationships see the NetSuite documentation here.
NetSuite continues to innovate across all key areas of the platform. Let’s explore some of the latest enhancements to these features in 2024.
With the 2024.2 release, NetSuite made an update on user security for custom records.
To provide more control over who can access custom record entries in your NetSuite environment, a more precise setup for users with required permissions has been introduced.
Specifically, the “No Permissions Required” access type has been renamed to “No Permissions Required for Internal Roles”. You can use this when you want to make a custom record available to internal roles without requiring permission. Further, additional configuration options become available to set access for external users. Additional details can be found here.
Link to the 2024.2 NetSuite Release Notes in SuiteAnswers.
Note: NetSuite account access is required to access these Release Notes.
NetSuite custom records have many configuration options, so many in fact that it can be difficult to stay on top of all of them. Manually attempting to migrate them from one environment to another will not only take a huge amount of time, but is also prone to risk of error. If just one setting on the custom record is set incorrectly, it can have significant consequences in your Production environment.
For example, if the “Access Type” field value is set incorrectly as part of migration, this could result in end users having access to this record (and its underlying data) when they shouldn’t have that access. This might not be caught until it is too late. In the case where a custom record is created to capture employee feedback or some other confidential data point, not having the appropriate security in place on the custom record could have dire consequences for a business.
Another scenario to consider is when a custom record is part of a larger NetSuite customization that involves scripts, workflows, saved searches and even other custom records. Where a particular solution has this many related customizations, it can make the migration of this solution to Production very painful for NetSuite Administrators when performed manually. Not only would this be a labor intensive deployment process, but there is a significant possibility of running into environment dependency issues, which will only slow the process down further.
Having the ability to quickly compare NetSuite environments ahead of time would benefit the NetSuite Admin Team massively. As will the ability to deploy larger customizations to Production seamlessly.
Not sure how impactful this is to your business? Check out the cost of getting deployments wrong (with a calculator) here.
Now, let’s explore solutions to these challenges.
As we have already discussed, it can be incredibly painful for any NetSuite Administrator to manage NetSuite custom records between different environments, especially if attempting to do it manually.
Attempting to migrate custom record solutions manually results in a HIGH level of risk given the large number of configuration settings on any one custom record, let alone all related customizations.
Fortunately, NetSuite does offer some native solutions to managing the migration of these solutions. Copy to Account, SuiteBundler and the SuiteCloud Development Framework (SDF) are options to consider, each with their own pros and cons. Review these native customization migration tools to see which would be the most effective for migrating your particular customized solution to the Production environment.
Many NetSuite Admin teams are working across numerous NetSuite environments, all of which contain active development and customization. With all these moving parts to accommodate, there are alternative solutions to consider. Salto is one such solution - check out the Salto SuiteApp. The Salto platform is going to allow you to perform environment comparisons across the various environments you manage, making for a much easier way to identify any potential deployment conflicts in advance vs finding out mid-deployment or even worse, post deployment!
When working with custom records the potential for deployment conflicts is higher due to their connectivity with many other customization areas in NetSuite. This will slow down any deployment process by forcing a more in-depth review of potential conflicts or even accepting the creation of duplicate customization components in Production and the need to clean up after the fact. Not ideal.
In addition, Salto gives NetSuite Administrators the flexibility to execute deployment rollbacks quickly and seamlessly in the situation where a deployment to Production was pushed and unexpected issues arose. While this should not be a frequent occurrence, it is generally a high priority when a rollback is needed, so having the ability to manage this within minutes and not hours is a game changer for any NetSuite Admin Team.
Now that you have successfully deployed your NetSuite custom records to Production, let’s consider some best practices in this area.
Salto Tip: Check out this FREE NetSuite Administrator training course on Salto Leap for a detailed review of custom record configuration.
For more Best Practices to manage your NetSuite customizations, check out Salto’s blog posts that explore some of the things that NetSuite Developers and NetSuite Administrators should be leveraging within the NetSuite ecosystem.
All NetSuite users should consider the potential of custom records to streamline their specific business processes. While NetSuite Administrators and Developers are typically responsible for their technical implementation, end-users often identify the core business needs that custom records can address.
Custom records provide a powerful tool for tailoring NetSuite to unique business requirements. By creating custom fields and records, NetSuite customers can capture and store additional data that aligns precisely with their business reporting needs. If you haven't explored custom records yet, consider the various business scenarios where capturing extra data points within NetSuite could be beneficial.
Before diving into a complex custom record solution, it's worth investigating pre-built options available natively within NetSuite and the SuiteApp marketplace. While many business needs are unique, others are common across industries. The SuiteApp marketplace offers a wealth of solutions that can address common requirements, saving time and effort.
Lastly, if you’re a NetSuite Administrator, make sure to take advantage of the tools available to you to manage your custom record customizations seamlessly.
Salto for
NetSuite
NetSuite
SHARE
Sonny Spencer, BFP, ACA
November 15, 2024
9
min read
Custom records are one of the best NetSuite customization options available to NetSuite Administrators and NetSuite Developers. They allow NetSuite customers to tailor the application to meet their specific business needs. NetSuite is configured with a set of base tables used to gather and report on data. Through custom records, customers are able to add to these base tables to collect and report on additional data points that will help them run their business effectively.
Did you know?: NetSuite bundles and SuiteApps created by NetSuite’s partner ecosystem all use custom records as the backbone of their solutions? Next time you’re looking at your list of custom records, you should notice many of them are associated with a bundle and very likely locked down to maintain the integrity of the bundled solution.
NetSuite really sets itself apart by giving users the ability to customize the application in a user friendly, point and click way. Yes, some customization requires integrations, scripting, etc. but many customization options don’t require any form of developer or coding experience at all. One of the most powerful customization options in NetSuite is the ability to create custom records.
By creating custom records, NetSuite Administrators can give their business the flexibility to capture data needed for day to day operations and introduce automation to processes that were previously manual and/or maintained externally to NetSuite.
Salto Tip: When creating a custom record in NetSuite, you can add it to the list of available saved search options by checking the “Include in Search Menu” checkbox as part of the custom record configuration. Also, the custom record will automatically be added as an available user role permission as part of the user role configuration.
Screenshot of custom record creation screen, with “Include in Search Menu” flagged
As you start planning to customize NetSuite with new custom record types here are a few considerations:
When you decide to start capturing new data points to help run your business, you need to ensure you are capturing the right data points and that the users populating the data understand exactly what they are populating. For each field on the custom record make sure the appropriate field type and validation are set. Changing them after the fact can lead to loss of data, so just because it is relatively straightforward to create a new custom record doesn’t mean you should do it without first making sure you deeply understand the requirements and outcomes needed by the business.
With all of the great flexibility NetSuite offers it is easy to get carried away and start building a solution that is far more complex than intended or desired. With any solution, first attempt to build a minimum viable product (MVP) before extending the solution. Taking this approach will force you to think about what is most critical to the business and deliver a solution that meets those requirements. Don’t forget that any customization you build needs to be managed and maintained, so the simpler the solution the better.
That being said, don’t forget that the most successful solutions generally combine custom records with workflows and Suitescripts. You will see many of them today in the form of SuiteApps in the SuiteApp Marketplace.
As you think about the data structure for your new custom record make sure you consider parent/child relationships. Custom records can be child records to base NetSuite tables e.g. Customer Records, Invoice Records, Employee Records, etc. They can also be child records of other Custom Records. With that, you can establish a hierarchy of custom records to achieve creative solutions to business problems.
Screenshot shows a custom record from the NetSuite APM bundle with a parent/child relationship
For more information on parent/child record relationships see the NetSuite documentation here.
NetSuite continues to innovate across all key areas of the platform. Let’s explore some of the latest enhancements to these features in 2024.
With the 2024.2 release, NetSuite made an update on user security for custom records.
To provide more control over who can access custom record entries in your NetSuite environment, a more precise setup for users with required permissions has been introduced.
Specifically, the “No Permissions Required” access type has been renamed to “No Permissions Required for Internal Roles”. You can use this when you want to make a custom record available to internal roles without requiring permission. Further, additional configuration options become available to set access for external users. Additional details can be found here.
Link to the 2024.2 NetSuite Release Notes in SuiteAnswers.
Note: NetSuite account access is required to access these Release Notes.
NetSuite custom records have many configuration options, so many in fact that it can be difficult to stay on top of all of them. Manually attempting to migrate them from one environment to another will not only take a huge amount of time, but is also prone to risk of error. If just one setting on the custom record is set incorrectly, it can have significant consequences in your Production environment.
For example, if the “Access Type” field value is set incorrectly as part of migration, this could result in end users having access to this record (and its underlying data) when they shouldn’t have that access. This might not be caught until it is too late. In the case where a custom record is created to capture employee feedback or some other confidential data point, not having the appropriate security in place on the custom record could have dire consequences for a business.
Another scenario to consider is when a custom record is part of a larger NetSuite customization that involves scripts, workflows, saved searches and even other custom records. Where a particular solution has this many related customizations, it can make the migration of this solution to Production very painful for NetSuite Administrators when performed manually. Not only would this be a labor intensive deployment process, but there is a significant possibility of running into environment dependency issues, which will only slow the process down further.
Having the ability to quickly compare NetSuite environments ahead of time would benefit the NetSuite Admin Team massively. As will the ability to deploy larger customizations to Production seamlessly.
Not sure how impactful this is to your business? Check out the cost of getting deployments wrong (with a calculator) here.
Now, let’s explore solutions to these challenges.
As we have already discussed, it can be incredibly painful for any NetSuite Administrator to manage NetSuite custom records between different environments, especially if attempting to do it manually.
Attempting to migrate custom record solutions manually results in a HIGH level of risk given the large number of configuration settings on any one custom record, let alone all related customizations.
Fortunately, NetSuite does offer some native solutions to managing the migration of these solutions. Copy to Account, SuiteBundler and the SuiteCloud Development Framework (SDF) are options to consider, each with their own pros and cons. Review these native customization migration tools to see which would be the most effective for migrating your particular customized solution to the Production environment.
Many NetSuite Admin teams are working across numerous NetSuite environments, all of which contain active development and customization. With all these moving parts to accommodate, there are alternative solutions to consider. Salto is one such solution - check out the Salto SuiteApp. The Salto platform is going to allow you to perform environment comparisons across the various environments you manage, making for a much easier way to identify any potential deployment conflicts in advance vs finding out mid-deployment or even worse, post deployment!
When working with custom records the potential for deployment conflicts is higher due to their connectivity with many other customization areas in NetSuite. This will slow down any deployment process by forcing a more in-depth review of potential conflicts or even accepting the creation of duplicate customization components in Production and the need to clean up after the fact. Not ideal.
In addition, Salto gives NetSuite Administrators the flexibility to execute deployment rollbacks quickly and seamlessly in the situation where a deployment to Production was pushed and unexpected issues arose. While this should not be a frequent occurrence, it is generally a high priority when a rollback is needed, so having the ability to manage this within minutes and not hours is a game changer for any NetSuite Admin Team.
Now that you have successfully deployed your NetSuite custom records to Production, let’s consider some best practices in this area.
Salto Tip: Check out this FREE NetSuite Administrator training course on Salto Leap for a detailed review of custom record configuration.
For more Best Practices to manage your NetSuite customizations, check out Salto’s blog posts that explore some of the things that NetSuite Developers and NetSuite Administrators should be leveraging within the NetSuite ecosystem.
All NetSuite users should consider the potential of custom records to streamline their specific business processes. While NetSuite Administrators and Developers are typically responsible for their technical implementation, end-users often identify the core business needs that custom records can address.
Custom records provide a powerful tool for tailoring NetSuite to unique business requirements. By creating custom fields and records, NetSuite customers can capture and store additional data that aligns precisely with their business reporting needs. If you haven't explored custom records yet, consider the various business scenarios where capturing extra data points within NetSuite could be beneficial.
Before diving into a complex custom record solution, it's worth investigating pre-built options available natively within NetSuite and the SuiteApp marketplace. While many business needs are unique, others are common across industries. The SuiteApp marketplace offers a wealth of solutions that can address common requirements, saving time and effort.
Lastly, if you’re a NetSuite Administrator, make sure to take advantage of the tools available to you to manage your custom record customizations seamlessly.