NetSuite SuiteScript empowers developers and administrators to create tailored business logic, such as custom processes and applications, to meet specific business needs. Built on JavaScript, SuiteScript provides robust, application-level scripting capabilities across the NetSuite platform. Below, we explore the various types of SuiteScripts available for developing and customizing NetSuite applications.
1. Bundle Installation Script
Bundle Installation Scripts automate tasks like setup, configuration, and data management during bundle installation, updates, or uninstallation in target accounts. These scripts eliminate manual tasks for NetSuite administrators and can be associated with multiple bundles.
2. Client Script
Client Scripts execute on the client side, running in the user’s browser based on predefined event triggers. They can validate user-entered data, auto-populate fields or sublists, and respond to events like form loading, field value changes, line item selection, or form saving. These scripts are compatible with most standard NetSuite records, custom record types, and Suitelets.
3. Map/Reduce Script
Map/Reduce Scripts provide a structured framework for processing large volumes of records or data. They can be scheduled or run on-demand and are ideal for dividing data into small, independent parts for parallel processing. Key features include:
4. Mass Update Script
Mass Update Scripts are server-side scripts that enable programmatic updates to fields unavailable in general mass updates. They support complex calculations across records and are initiated on-demand, though they cannot be prioritized or scheduled.
5. Portlet Script
Portlet Scripts allow users to create custom dashboard portlets. Supported types include:
6. RESTlet Script
RESTlet Scripts enable custom RESTful integrations with NetSuite, allowing external or internal applications to call them. They facilitate data exchange between NetSuite and other systems or customize page behavior within NetSuite, returning values to the calling application when needed.
7. Scheduled Script
Scheduled Scripts, which run on the server, can be executed on-demand or on a recurring basis (minimum interval of 15 minutes). With a higher governance limit than other script types, they are ideal for bulk processing or long-running background tasks. In SuiteScript 2.0, developers must implement logic to handle yielding for large datasets or governance limits, as automatic yielding is not supported (unlike SuiteScript 1.0).
8. Suitelet Script
Suitelets extend the SuiteScript API to build custom NetSuite pages and backend logic. Operating in a request-response model, these server-side scripts are invoked by HTTP GET or POST requests to system-generated URLs, enabling custom front-end and back-end implementations.
9. User Event Script
User Event Scripts trigger when users interact with records, such as creating, opening, updating, or saving them. These scripts support tasks like custom validation, enforcing data integrity, implementing business rules, and applying user-defined permission checks or record restrictions.
10. Workflow Action Script
Workflow Action Scripts enhance workflows by adding custom actions to records. They address limitations in standard workflows, such as interacting with line items, and are invoked by workflows to extend scripting functionality.
Ready to leverage SuiteScript for your NetSuite customization needs? Schedule a call with us today!