Discussions

Stay up-to-date with the latest news from NetSuite. You’ll be in the know about how to connect with peers and take your business to new heights at our virtual, in-person, on demand events, and much more.
Now is the time to ask your NetSuite-savvy friends and colleagues to join the NetSuite Support Community! Refer now! Click here to watch and learn more!
Update your Profile with your Support type to get your Support Type badge.
Don't miss out on our Pop Quiz You only have until November 7, 2025, 2:00PM ET to comment your answers and earn rewards! Click here for more details.
Uncover the power of data with the Analytics Hub —your ultimate guide to mastering NetSuite Saved Searches and Reports. Simplify the complex and unlock your organization's true potential. Dive into the Analytics Hub now and soar to new heights!
To help you get the most out of your 2025.2 Release Preview account, review the topics outlined in the 2025.2 Release Preview Guide.
Nominate Your Peers for NetSuite Support Community's Choice of the Quarter! Submit your nomination today.
Intelligent Payment Automation version 1.0.3 is now available in the SuiteApp Marketplace. The SuiteApp, powered by BILL, lets you automate payments, manage vendor details, and bank account information within NetSuite. Learn more

Suitescript - How to ONLY Run on "Create" not "edit

edited Dec 2, 2019 5:58PM in SuiteCloud / Customization 5 comments

Hi everyone - I am using the following code to reallocate orders to the location where the correct stock is available, and if no location has available falling back to location '8'.

However - There are times when we need to override the system and choose a specific location - with the below script in place - it undoes out changes.  How can I set this to ONLY run on Creation of a new order, and not on editing an existing one?

// BEGIN CUSTOM FUNCTIONS FOR SETTING LOCATIONS FOR WEB ORDERS  // This custom function is run immediately before a sales order is saved.     function customBeforeSubmit()  {   debug('Before Submit is called');   return chooseLocation();  }  //END CUSTOM FUNCTIONS FOR SETTING LOCATION  //BEGIN LOCATION  function chooseLocation()  {  // Get entire quantities of all inventoried items in the sales order. Note that optional filtering  // criteria is used when calling the getItemMap() function to exclude noninventory items.  var itemMap = getItemMap('NonInvtPart');  var numLines = nlapiGetLineItemCount('item');  var goodLocations = new Array();  var badLocations = new Array();  // Get available quantities for each location of each

Howdy, Stranger!

Log In

To view full details, sign in.

Register

Don't have an account? Click here to get started!

Leaderboard

Community Whiz

Quarter 4 (Oct-Dec 2025)

This Week's Leaders

This Month's Leaders

All Time Leaders