Salto for
NetSuite
Articles
SHARE
Sonny Spencer, BFP, ACA
August 20, 2023
10
min read
About Salto: Salto's platform helps you and your team deploy, track, and manage your NetSuite customizations effortlessly. Learn more here.
NetSuite Administrators have a lot on their plates—at all times—so it’s only natural for mistakes to be made from time to time. We’re only human after all! In this blog post, we will explore some of the common mistakes I have seen NetSuite Administrators make in the past (and still see them make today).
Avoiding these mistakes does not mean that Administrators’ plates become half full. Instead, they will be able to optimize their NetSuite processes to focus on more value add initiatives, which will be more rewarding and result in better outcomes for the business.
NetSuite provides excellent audit trail reporting to track user login frequency. Reference the Login Audit Trail to run a query for specific users or for all users.
Navigate: Setup > Users / Roles > View Login Audit Trail
The great thing about this particular saved search is that it can be customized to identify how long it has been since a particular user last logged into the system. With this information at an Administrator’s fingertips, they can modify user access in real time where users have been idle for a significant period of time.
One of the mistakes I have seen is Administrators not leveraging the out of the box NetSuite reporting that is available to effectively manage user access. If you don’t know the last time a particular user logged into NetSuite, how can you validate whether their access is still appropriate or not? If your company has a policy for IT system access removal, then your NetSuite policy should align. If your company does not have a policy, consider introducing a simple, but effective one. As a best practice consider NetSuite system access removal if the amount of time since the user’s last login exceeds 90 days.
Administrators may work from a separate ticketing system to manage user access requests; other times they will receive user access requests via email. Either way, Administrators should challenge these user access requests by confirming how frequently the user expects to access NetSuite. If infrequent, perhaps the user can get what they need from scheduled saved search results instead. Possibly not, but it is something to consider. The level of access should also be challenged where appropriate. Administrators need to keep the “principle of least privilege” top of mind when reviewing a user access request.
For companies performing quarterly access reviews, having a practice of frequent user access review will significantly reduce the risk of deficiencies arising and therefore means fewer user access issues to troubleshoot.
Many of the bundles installed in NetSuite environments are “managed bundles”. This means that the bundle owner (NetSuite or NetSuite Partner) has the ability to push updates to the bundle, and therefore your NetSuite environment, automatically without notification.
For larger managed bundle updates, NetSuite will typically provide notification well in advance to all Administrators, but smaller updates can be pushed without the knowledge of Administrators. Issues may arise with managed bundle updates . Administrators tracking these updates are quick to address any concerns with NetSuite support, whereas others may not be aware of an issue for days or even weeks.
NetSuite Administrators should create saved searches to track managed bundle updates. This cannot be done directly, as bundle system notes are not accessible to the NetSuite reporting engine. However, this can be done indirectly by tracking scripts, script deployments and workflow updates. Most, if not all, managed bundle updates will involve a change to one or more SuiteScripts and/or workflows.
Consider scheduling a saved search that tracks script additions and updates in the last 24 hours. These results can then be monitored on the Administrator’s dashboard in the form of a reminder or portlet or even be emailed directly to the Administrator each morning.
Staying informed of managed bundle updates will help Administrators stay on top of system changes and be proactive in resolving any issues that may arise.
As NetSuite Administrators, we should always be thinking about our end user experience and that includes how we manage issues that arise. These could be role permission gaps, script bugs, or just user error. Regardless, it is important to be proactive when it comes to addressing NetSuite issues, ideally identifying and resolving them before end users are even aware there is an issue.
One way to be more proactive is similar to how we can solve for Mistake #2 above—consider creating a saved search that captures script errors in the last 24 hours and have the results be monitored on the Administrator’s dashboard or emailed directly.
You may find a large number of saved search results and that is because not all logged errors are actually errors that need to be addressed; some may just require some code cleanup in the future. You can filter these out so that you are left with errors that need to be investigated. The goal is then to identify and resolve the issue before users are aware of it. Alternatively, Administrators can reach out to end users to let them know there is an issue and that it is actively being investigated. This level of communication and transparency is far better for the end user experience than is running into expected errors.
Migrating NetSuite customizations manually from one environment to another can take a lot of time—something Administrators tend to be short on. Not only that, there is the inherent risk of human error in moving these customizations manually.
Fortunately, NetSuite offers several out of the box options to support migrating changes to different environments, such as SuiteBundler, Copy to Account and SuiteCloud Development Framework (SDF). There are benefits and drawbacks to each of these options. More technical Administrators and Developers may opt for working with SDF to migrate changes, whereas others will likely prefer to use the “point and click” solutions, like SuiteBundler and Copy to Account.
These out of the box solutions help to avoid manual migration efforts, but another solution to consider is Salto. The Salto SuiteApp helps NetSuite Administrators and Developers manage their NetSuite customizations in a more automated way by speeding up the deployment process for all custom development. Salto has the ability to compare NetSuite environments in order to identify any discrepancies between them, as well as confirm record dependencies. It also provides the ability to seamlessly roll back to older versions of NetSuite configuration, which is a massive benefit especially when the alternative is to unwind manually under time pressure!
NetSuite performs two releases each year in which functionality upgrades and new features are rolled out globally. Each release contains numerous changes that will impact every NetSuite customer. Administrators will often focus on testing the new release to ensure there is no impact to the company’s business processes within NetSuite. This is important, but arguably equally important is sharing key upgrades and new features with end users so that these business processes can be evolved and optimized over time.
NetSuite provides detailed release notes for each release as well as access to a Release Preview environment for customers who request access.
Navigate: Setup > Company > Release Preview > Request Release Preview (only available closer to new release date)
Use the Release Preview environment not only to test existing business processes but for taking a closer look at the new functionality available. Grant access to your end users so they can review the new functionality and consider whether it is something they would want to implement in the future. Your end users will appreciate the proactiveness, as we pointed out in Mistake #3 above.
For any NetSuite Administrator joining a company with an existing NetSuite environment, it can be challenging to quickly get up to speed on all of the system customizations that have been implemented. Typically there is some reliance on the knowledge of existing team members—but what happens if those team members are no longer around?
That is why it is important to maintain a detailed log of all significant system customizations—not just what the customizations are, but an understanding of the problems they solve. This can be challenging to do directly within NetSuite, so you may opt to use an external document management system or change management system.
Maintaining a well documented history of NetSuite system customizations will take some additional effort but will pay dividends in the long run, whether for yourself or future NetSuite Administrators. In 5-10 years time, your NetSuite environment will contain many more customizations and it will be extremely difficult to track each significant change without proper documentation in place.
Another area where NetSuite Administrators can be more proactive is around the review and cleanup of technical debt. Think about all of the customizations to your NetSuite environment—how many of those are still actively used today? How many are performing a function that is no longer required? How many scripts do you have that have been updated many times over to account for new requirements?
The point being that, over time, the effectiveness of NetSuite customizations may diminish and it is important to monitor for this and then commit the time and energy to cleaning up or deprecating those customizations.
Taking this proactive approach will yield increased system performance over time, especially when compared to NetSuite environments that have not been maintained effectively. While your end users may not be aware of your efforts behind the scenes, they will be the first to let you know when system performance starts to decline.
If your NetSuite environment is already running slow or less than optimally, check out this blog post that provides a framework for how to investigate and remediate.
It is fair to assume that NetSuite users with the same role will perform similar tasks and functions for the most part. As such, these users will need access to the same shortcuts, reminders, and portlets to optimize their day to day use of NetSuite.
Despite this, many NetSuite users end up creating their own custom dashboards because the creation of role-specific dashboards has not been prioritized.
For a user that has never worked with NetSuite before, it can be daunting at first to try and navigate the plethora of menus and submenus to get to the required page. Imagine instead that the user has never worked with NetSuite before and when they first login they see a clean dashboard with all of the links, reminders and portlets they need to perform their job. This can make or break a user’s NetSuite experience, which is why it’s important to take the time to build tailored dashboards for each custom role.
These need not be fancy. In fact, the best dashboards are simple and require little/no scrolling. Consider a baseline dashboard and allow users to customize from that baseline. Work with your end users to build out the baseline for their respective roles and come prepared with your own suggestions to add value to the process.
Bottom line, if your users are not working with tailored, role-specific dashboards, then they are not using NetSuite optimally.
Earlier we discussed the need to track bundle updates. Another mistake I see Administrators make is trying to solve all business requirements with internal customizations. The ability to customize NetSuite to meet your specific business needs is a huge benefit, but sometimes you are better off working with a NetSuite partner (see SuiteApp marketplace) to implement a built for NetSuite (BFN) solution. These solutions are maintained by the partner and enhanced periodically. In this regard, you are able to rely on subject matter experts for a specific solution vs trying to build a custom solution yourself. This can save time, effort and money, especially if you don’t have the technical resources at your disposal to develop a solution in-house.
Earlier in Mistake #4 we discussed some of the challenges migrating NetSuite changes manually and considered some of the alternatives. One such alternative, Salto, is available on the NetSuite SuiteApp marketplace and can be accessed here.
For more information on these best practices, check out Salto’s blog posts that explore some of the things that NetSuite Developers and NetSuite Administrators overlook when working with NetSuite.
I think it’s important to reiterate the fact that NetSuite Administrators are juggling a lot of balls simultaneously. The mistakes outlined in this blog post are made by even seasoned NetSuite Administrators, so Administrators (new or not) should not be discouraged if they have fallen into one or more of these mistakes. Instead, see this as an opportunity to revisit your strategy, starting with the above best practices. If you can execute on all ten points, you will be setting up your NetSuite environment, end users, and your NetSuite Administrators and Developers all for long term success!
Salto for
NetSuite
NetSuite
SHARE
Sonny Spencer, BFP, ACA
August 20, 2023
10
min read
About Salto: Salto's platform helps you and your team deploy, track, and manage your NetSuite customizations effortlessly. Learn more here.
NetSuite Administrators have a lot on their plates—at all times—so it’s only natural for mistakes to be made from time to time. We’re only human after all! In this blog post, we will explore some of the common mistakes I have seen NetSuite Administrators make in the past (and still see them make today).
Avoiding these mistakes does not mean that Administrators’ plates become half full. Instead, they will be able to optimize their NetSuite processes to focus on more value add initiatives, which will be more rewarding and result in better outcomes for the business.
NetSuite provides excellent audit trail reporting to track user login frequency. Reference the Login Audit Trail to run a query for specific users or for all users.
Navigate: Setup > Users / Roles > View Login Audit Trail
The great thing about this particular saved search is that it can be customized to identify how long it has been since a particular user last logged into the system. With this information at an Administrator’s fingertips, they can modify user access in real time where users have been idle for a significant period of time.
One of the mistakes I have seen is Administrators not leveraging the out of the box NetSuite reporting that is available to effectively manage user access. If you don’t know the last time a particular user logged into NetSuite, how can you validate whether their access is still appropriate or not? If your company has a policy for IT system access removal, then your NetSuite policy should align. If your company does not have a policy, consider introducing a simple, but effective one. As a best practice consider NetSuite system access removal if the amount of time since the user’s last login exceeds 90 days.
Administrators may work from a separate ticketing system to manage user access requests; other times they will receive user access requests via email. Either way, Administrators should challenge these user access requests by confirming how frequently the user expects to access NetSuite. If infrequent, perhaps the user can get what they need from scheduled saved search results instead. Possibly not, but it is something to consider. The level of access should also be challenged where appropriate. Administrators need to keep the “principle of least privilege” top of mind when reviewing a user access request.
For companies performing quarterly access reviews, having a practice of frequent user access review will significantly reduce the risk of deficiencies arising and therefore means fewer user access issues to troubleshoot.
Many of the bundles installed in NetSuite environments are “managed bundles”. This means that the bundle owner (NetSuite or NetSuite Partner) has the ability to push updates to the bundle, and therefore your NetSuite environment, automatically without notification.
For larger managed bundle updates, NetSuite will typically provide notification well in advance to all Administrators, but smaller updates can be pushed without the knowledge of Administrators. Issues may arise with managed bundle updates . Administrators tracking these updates are quick to address any concerns with NetSuite support, whereas others may not be aware of an issue for days or even weeks.
NetSuite Administrators should create saved searches to track managed bundle updates. This cannot be done directly, as bundle system notes are not accessible to the NetSuite reporting engine. However, this can be done indirectly by tracking scripts, script deployments and workflow updates. Most, if not all, managed bundle updates will involve a change to one or more SuiteScripts and/or workflows.
Consider scheduling a saved search that tracks script additions and updates in the last 24 hours. These results can then be monitored on the Administrator’s dashboard in the form of a reminder or portlet or even be emailed directly to the Administrator each morning.
Staying informed of managed bundle updates will help Administrators stay on top of system changes and be proactive in resolving any issues that may arise.
As NetSuite Administrators, we should always be thinking about our end user experience and that includes how we manage issues that arise. These could be role permission gaps, script bugs, or just user error. Regardless, it is important to be proactive when it comes to addressing NetSuite issues, ideally identifying and resolving them before end users are even aware there is an issue.
One way to be more proactive is similar to how we can solve for Mistake #2 above—consider creating a saved search that captures script errors in the last 24 hours and have the results be monitored on the Administrator’s dashboard or emailed directly.
You may find a large number of saved search results and that is because not all logged errors are actually errors that need to be addressed; some may just require some code cleanup in the future. You can filter these out so that you are left with errors that need to be investigated. The goal is then to identify and resolve the issue before users are aware of it. Alternatively, Administrators can reach out to end users to let them know there is an issue and that it is actively being investigated. This level of communication and transparency is far better for the end user experience than is running into expected errors.
Migrating NetSuite customizations manually from one environment to another can take a lot of time—something Administrators tend to be short on. Not only that, there is the inherent risk of human error in moving these customizations manually.
Fortunately, NetSuite offers several out of the box options to support migrating changes to different environments, such as SuiteBundler, Copy to Account and SuiteCloud Development Framework (SDF). There are benefits and drawbacks to each of these options. More technical Administrators and Developers may opt for working with SDF to migrate changes, whereas others will likely prefer to use the “point and click” solutions, like SuiteBundler and Copy to Account.
These out of the box solutions help to avoid manual migration efforts, but another solution to consider is Salto. The Salto SuiteApp helps NetSuite Administrators and Developers manage their NetSuite customizations in a more automated way by speeding up the deployment process for all custom development. Salto has the ability to compare NetSuite environments in order to identify any discrepancies between them, as well as confirm record dependencies. It also provides the ability to seamlessly roll back to older versions of NetSuite configuration, which is a massive benefit especially when the alternative is to unwind manually under time pressure!
NetSuite performs two releases each year in which functionality upgrades and new features are rolled out globally. Each release contains numerous changes that will impact every NetSuite customer. Administrators will often focus on testing the new release to ensure there is no impact to the company’s business processes within NetSuite. This is important, but arguably equally important is sharing key upgrades and new features with end users so that these business processes can be evolved and optimized over time.
NetSuite provides detailed release notes for each release as well as access to a Release Preview environment for customers who request access.
Navigate: Setup > Company > Release Preview > Request Release Preview (only available closer to new release date)
Use the Release Preview environment not only to test existing business processes but for taking a closer look at the new functionality available. Grant access to your end users so they can review the new functionality and consider whether it is something they would want to implement in the future. Your end users will appreciate the proactiveness, as we pointed out in Mistake #3 above.
For any NetSuite Administrator joining a company with an existing NetSuite environment, it can be challenging to quickly get up to speed on all of the system customizations that have been implemented. Typically there is some reliance on the knowledge of existing team members—but what happens if those team members are no longer around?
That is why it is important to maintain a detailed log of all significant system customizations—not just what the customizations are, but an understanding of the problems they solve. This can be challenging to do directly within NetSuite, so you may opt to use an external document management system or change management system.
Maintaining a well documented history of NetSuite system customizations will take some additional effort but will pay dividends in the long run, whether for yourself or future NetSuite Administrators. In 5-10 years time, your NetSuite environment will contain many more customizations and it will be extremely difficult to track each significant change without proper documentation in place.
Another area where NetSuite Administrators can be more proactive is around the review and cleanup of technical debt. Think about all of the customizations to your NetSuite environment—how many of those are still actively used today? How many are performing a function that is no longer required? How many scripts do you have that have been updated many times over to account for new requirements?
The point being that, over time, the effectiveness of NetSuite customizations may diminish and it is important to monitor for this and then commit the time and energy to cleaning up or deprecating those customizations.
Taking this proactive approach will yield increased system performance over time, especially when compared to NetSuite environments that have not been maintained effectively. While your end users may not be aware of your efforts behind the scenes, they will be the first to let you know when system performance starts to decline.
If your NetSuite environment is already running slow or less than optimally, check out this blog post that provides a framework for how to investigate and remediate.
It is fair to assume that NetSuite users with the same role will perform similar tasks and functions for the most part. As such, these users will need access to the same shortcuts, reminders, and portlets to optimize their day to day use of NetSuite.
Despite this, many NetSuite users end up creating their own custom dashboards because the creation of role-specific dashboards has not been prioritized.
For a user that has never worked with NetSuite before, it can be daunting at first to try and navigate the plethora of menus and submenus to get to the required page. Imagine instead that the user has never worked with NetSuite before and when they first login they see a clean dashboard with all of the links, reminders and portlets they need to perform their job. This can make or break a user’s NetSuite experience, which is why it’s important to take the time to build tailored dashboards for each custom role.
These need not be fancy. In fact, the best dashboards are simple and require little/no scrolling. Consider a baseline dashboard and allow users to customize from that baseline. Work with your end users to build out the baseline for their respective roles and come prepared with your own suggestions to add value to the process.
Bottom line, if your users are not working with tailored, role-specific dashboards, then they are not using NetSuite optimally.
Earlier we discussed the need to track bundle updates. Another mistake I see Administrators make is trying to solve all business requirements with internal customizations. The ability to customize NetSuite to meet your specific business needs is a huge benefit, but sometimes you are better off working with a NetSuite partner (see SuiteApp marketplace) to implement a built for NetSuite (BFN) solution. These solutions are maintained by the partner and enhanced periodically. In this regard, you are able to rely on subject matter experts for a specific solution vs trying to build a custom solution yourself. This can save time, effort and money, especially if you don’t have the technical resources at your disposal to develop a solution in-house.
Earlier in Mistake #4 we discussed some of the challenges migrating NetSuite changes manually and considered some of the alternatives. One such alternative, Salto, is available on the NetSuite SuiteApp marketplace and can be accessed here.
For more information on these best practices, check out Salto’s blog posts that explore some of the things that NetSuite Developers and NetSuite Administrators overlook when working with NetSuite.
I think it’s important to reiterate the fact that NetSuite Administrators are juggling a lot of balls simultaneously. The mistakes outlined in this blog post are made by even seasoned NetSuite Administrators, so Administrators (new or not) should not be discouraged if they have fallen into one or more of these mistakes. Instead, see this as an opportunity to revisit your strategy, starting with the above best practices. If you can execute on all ten points, you will be setting up your NetSuite environment, end users, and your NetSuite Administrators and Developers all for long term success!