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:

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.

  • 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. This setting is intended to resolve slowness when adding, voiding or returning items, updating item quantity, and adding discounts.

    Recommendations for Using the Execute Client Scripts Setting

    Warning

    SCIS only supports client scripts for use with AvaTax integrations. You are responsible for testing and maintaining the client scripts that you create. Ensure your scripts work properly with each managed bundle update. If you use the Execute Client Scripts setting, test on a Sandbox account and work with Professional Services to ensure your SCIS implementation continues to behave as expected.


    The following recommendations apply to accounts that use AvaTax 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 are 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 },