This article is relevant if you need to bulk (mass update) NetSuite fields that are read-only and not editable (inline edit mode).
Background
We recently helped a client that terminated a NetSuite Administrator who produced modifications to the NetSuite production configuration without first testing assumptions in the sandbox. The implications of activating new Production features without testing assumptions were significant. In this case, the Administrator activated NetSuite’s Invoice Grouping feature in a failed attempt to help improve cash receipt processing. This caused havoc in the accounting department and was not easily remediated.
The many things we were asked to correct in the client environment included deactivating the Invoice Grouping feature and cleaning up the incorrect flags activated on thousands of existing invoices. These invoices were in limbo until they could be returned to their native state. Because there were thousands, it was not reasonable to manually modify each record one at a time.
The challenge with the native Invoice Grouping field is that it is marked as “Inline Text.” This means that the form definition does not allow for conventional user interface edits even if you try to modify the field definition using the Form Builder tool.
When we are in situations where the form fields are not available for edit, the standard NetSuite Mass Update and CSV update tools will also not allow us to edit the field. It can be frustrating when we cannot perform something that seems relatively straightforward.
Solving for Mass Updating NetSuite Fields that are Not Editable
The first thing to determine is if we can indeed modify the field with SuiteScript. Using the handy NetSuite Advanced Field Help Chrome add-in, we quickly determined the field was editable via script. For those not using any browser add-in, see my 2016 article, How To: Quickly Update a NetSuite Read Only Field for another approach to help you assess if the field is editable in SuiteScript.
Once you assess that the field can be edited in SuiteScript, you need an approach to update the field in bulk. Many NetSuite Administrators will appreciate my 2015 article, How To: Create Custom NetSuite Workflow action with SuiteScript. This pattern will allow you to craft a script to plug in the workflow tool to address the field to be updated. With a scheduled workflow, we can attack the challenge. Furthermore, one could follow the pattern in my recent 2022 article, Download a Simple NetSuite Delete Record Script, to learn how to connect up scripts to Mass Updates. We then can create a Custom Mass Update to target the field.
Both of these approaches, however, require you to develop some scripts so you can plug them into NetSuite’s workflow or mass updates frameworks. This takes time and often is beyond the reach of many.
Leverage Prolecto’s Map/Reduce Update Tool
Since 2008, as we have helped our clients in NetSuite implementations, innovation, and support, we have built our own tools to help our team members be more productive. Thus, for all Prolecto clients, we give our Utilities Bundle to our clients without a license charge as a gesture of long-term relationship goodwill.
The bundle offers a handy tool to our client NetSuite Administrators which allows the use of a saved search or a SQL query as the input to drive a Map Reduce script. Here is how it works as you define these parameters to fire a map/reduce script:
- Saved Search: develop a saved search to attack the records that need to be updated. This is often the easiest approach.
- SQL Query: alternatively, write a SuiteQL query that returns the records instead. See my related 2022 article, Learn How To Update NetSuite using SQL. We are increasingly using SQL to gain access to harder-to-reach NetSuite data sources.
- Field Updates: indicate the fieldname(s) that need to be updated and the value you want them to become. Click the image to see the syntax.
- Optional XEdit Style Updates: to make the operation faster, you can select the option to update XEdit style. This effectively submits only the fields that update and avoids a full record load, update and save operation.
- Select Number of Concurrent Processors: here is where the Map/Reduce technique shows its power. All accounts have at least two processors at the time of this writing. For accounts with multiple processors (SuiteCloud + licenses), we can set the number of concurrent processors to dramatically reduce the time it takes to run and finish the update algorithm.
Watch the Map Reduce Update on Inline Edit Fields
A short video (3:55) demonstrates the tool in action.
Get the Prolecto Utilities Map/Reduce Update Tool
We often are engaged by NetSuite Administrators that need more muscle in their day-to-day technical management. In this case, we help those Administrators leverage our free-of-license-charge Utilities toolkit to become much more productive. Naturally, we are there to help them solve emergent complex situations once we have a relationship.
If you found this article relevant, feel free to sign up for notifications to new articles as I post them. If you desire to install the Prolecto Utilities bundle to get more capacity in your NetSuite administrative affairs, let’s have a conversation.
Hi. To clarify, what is the x-edit style? I haven’t come across this phrase before. Is this something specific to this script or is it a Netsuite suitescript concept? thanks
Hello Vernita,
Please look up the Help topic: “Inline Editing Using nlapiSubmitField”.
Marty