Troubleshooting SCIS Performance Issues

This topic applies to

Applies to

SuiteCommerce InStore

This section includes recommendations for optimizing your implementation of SuiteCommerce InStore (SCIS). The following topics include recommended settings for best performance outcomes:

Form Optimization – Faster Forms with Fewer Fields

You can increase the speed of SCIS by using forms that include only the essential fields required to capture information from the following records:

  • Transactions

  • Customers

  • Items

The SuiteCommerce InStore SuiteApp installs a set of Minimal forms. These are forms which have been optimized for best performance. Using these forms is not required. However, if you notice some latency in your implementation of SCIS, then you have the option of using the optimized forms.

To use Minimal transaction and entry forms, go to the SCIS Settings record to select the forms you want to use. It is recommended that you test the form on your Sandbox environment to ensure it works as you expect. For more information, read Transaction Forms and Other Entry Forms.

You can customize one of the minimal forms, but note the following recommendations:

  • Make a copy of the minimal form, and then customize your copy. You must work from a copy because forms that are installed by the SuiteApp may be updated or changed during periodic managed SuiteApp updates. Your custom forms are not affected.

  • Ensure that the Enable Item Line Shipping field is marked to show on transaction forms. This field is required on forms used for SCIS transactions.

  • Do not change or remove default tax settings on minimal transaction forms. If you modify default tax settings on these forms, tax may not be calculated properly, or you may not be able to submit transactions through SCIS.

SCIS Settings for Improved Performance

There are settings on the Order subtab of the SCIS Settings record that you can use to help optimize the performance of your SCIS implementation.

  • Submit on Update - By default, SCIS transactions are saved in memory before they are submitted. When this box is checked, each transaction is automatically committed in NetSuite. Checking the box, makes the system work slower.

  • Search for Serialized Item – This setting enables search capabilities for transactions by serial number or lot number. When this box is checked, you can find a transaction using the serial number or the lot number of an item on the transaction. Clear the box for this setting to optimize performance.

  • Execute Client Scripts – Check this box if you use AvaTax. It enables the system to execute Avalara integration code as client scripts. It also enables administrators and web developers to implement logic around client scripts. This setting is intended to resolve slowness when adding, voiding or returning items, updating item quantity, and adding discounts.

    Warning

    If you check the box, you must test on a Sandbox account and work with Professional Services to ensure your SCIS implementation continues to behave as expected. This setting is experimental. Tasks for Professional Services include modifying any Client Scripts that are incompatible with the enablefieldtriggers property in SuiteScript.


    Recommendations for Using the Execute Client Scripts Setting

    The following recommendations apply to accounts that use Avalara and are experiencing performance issues:

    1. Obtain a Sandbox account for testing SCIS with the Execute Client Scripts setting enabled.

    2. Clear the Submit on Update box.

    3. Check the Execute Client Scripts box.

    4. Work with Professional Services to modify any Client Scripts that are incompatible with the enablefieldtriggers property in SuiteScript.

    5. After testing on Sandbox, and verifying that entering and working with orders in SCIS is successful, apply the changes to your production account.

Features that Can Affect SCIS Performance

Fewer features enable faster performance for SCIS. To turn off features, go to Setup > Company > Enable Features. Turn off the following features if they are not required for your business processes:

  • Bill Costs to Customers - This feature includes additional sublists on cash sale transactions. The additional sublists can cause a degradation of performance in SCIS.

  • User events and workflows - These impact performance because they are triggered each time a transaction is submitted or edited in SCIS.

Performance Modifications in CustomConfiguration.js

You can modify settings in the CustomConfiguration.js file to optimize performance of your SCIS implementation.

Customer Search Settings

You can customize the default filters for searching customers in SCIS. For better performance, remove search filters that are not needed. For example, use only email and company name.

Modify the following section of code in CustomConfiguration.js. Configuration settings that are commented are the default settings. To change the default settings modify the settings, and then remove the comments around the code snippet.

//   searchFilters: [
      //       'fullname'
      // ,   'firstname'
      // ,   'lastname'
      // ,   'phone'
      // ,   'email'
   // ,   'companyname'
      // ],

The Warming Up Service

The warming up service keeps the server active. SCIS enables better performance by maintaining continuous activity during sessions. You can configure this setting by modifying the CustomConfiguration.js file. The default setting of 10 minutes is recommended. However, when troubleshooting latency issues with SCIS, you can modify the default setting to address your needs. Note that changing the setting to 20 - 30 minutes makes the warm up service less effective. Changing the setting to be less time, such as 1 minute, for example causes additional work for the system diminishing the purpose of the warm up service.

warmUp: {       
            //   warmUp : true,       
            //warmUpTime : 10 //in minutes    },