01

Workflow Triggers Review

Understanding Events That Control Workflow Execution

🎯 Learning Objectives

Upon completion of this module, you will be able to:

Workflow Triggers Overview

Workflow triggers represent the events that occur during the processing of a record in NetSuite. They dictate when a workflow should perform certain tasks:

πŸ“‹ Two Types of Triggers

Client Triggers: Events that occur on the local computer within the user's web browser.

Server Triggers: Events that occur on the NetSuite server.

Client Triggers

Client triggers represent events that occur on the user's local computer in their web browser. Key distinction: They only occur when creating a new record or editing an existing recordβ€”NOT when viewing a record.

Form-Level Client Triggers

Trigger When It Occurs Common Uses
Before User Edit User creates new record or edits existing record Show/hide fields, make fields mandatory, default values
Before User Submit User saves the record (before server processing) Form-level validations on the client

Field-Level Client Triggers

These triggers create dynamic forms that perform additional processing based on user interactions:

Trigger When It Occurs Purpose
Before Field Edit User enters a field (before changes) Validate before allowing changes
After Field Edit User leaves a field (after changes) React to field value changes
After Field Sourcing After dependent fields are auto-populated React to sourced values

⚠️ SuiteBuilder vs. SuiteFlow

SuiteBuilder can also manipulate form display, but changes are static and require ongoing administration. SuiteFlow field-level triggers provide dynamic behavior based on user interactions.

Server Triggers

Server triggers represent events that occur on the NetSuite server during record processing.

Trigger When It Occurs Common Uses
Before Record Load Record is loaded from database (view, edit, copy) Modify display, set defaults for viewing
Before Record Submit After validation, before saving to database Server-side validations, modify data before save
After Record Submit After record is saved to database Create related records, send emails, integrations

State-Level Triggers

Trigger When It Occurs Purpose
Entry Record enters a workflow state Actions when entering a state
Exit Record leaves a workflow state Cleanup actions when leaving a state

βœ… Scheduled Trigger

The Scheduled trigger is a special server trigger that executes based on time rather than user events. We'll cover this in detail in Module 2.

Trigger Event Sequence

Understanding the order in which triggers fire is critical for proper workflow design:

Create/Edit Record Sequence

  1. Before Record Load β€” Record loaded from database
  2. Before User Edit β€” Form displayed to user (client)
  3. Field-level triggers β€” As user interacts with fields
  4. Before User Submit β€” User clicks Save (client validation)
  5. Before Record Submit β€” Server validation, pre-save processing
  6. After Record Submit β€” Record saved, post-save processing

View Record Sequence

  1. Before Record Load β€” Record loaded for viewing

πŸ’‘ Remember

Client triggers (Before User Edit, Before User Submit, field-level) do NOT fire when viewing a recordβ€”only when creating or editing.

Trigger Summary Diagram

WORKFLOW TRIGGERS

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”

β”‚ WORKFLOW INITIATION β”‚

β”‚ β†’ Event-based or Scheduled β”‚

β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€

β”‚ ACTION EXECUTION β”‚

β”‚ β†’ Client or Server triggers β”‚

β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€

β”‚ STATE TRANSITIONS β”‚

β”‚ β†’ Trigger-based or Scheduled β”‚

β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

🌟 Key Takeaways