02

Scheduling Actions & Transitions

Time-Based Workflow Automation

🎯 Learning Objectives

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

The Workflow Scheduler

The Workflow Scheduler is a continuously running background process on the NetSuite server that wakes up every 30 minutes to evaluate whether there are scheduled workflows, actions, and/or transitions to execute.

Common Use Cases

⚠️ Timing Consideration

Depending on server processing load, scheduled tasks may be delayed slightly. A task scheduled for a specific time may execute later, but never before its scheduled time.

Scheduling Workflow Initiation

To schedule workflow initiation, select Scheduled from the Initiation section of the Workflow Definition page.

Requirements

Schedule Options

Option Configuration Result
Run Once Select Saved Search, disable Repeat, set date/time Workflow initiates once at specified time
Recurring Select Saved Search, enable Repeat, set options Workflow initiates repeatedly per schedule

📋 Time Zone Behavior

Schedules execute in the time zone of the user who created them. Even if the user later changes their time zone preference, the schedule maintains the original time zone.

Scheduling Actions

Schedule actions by selecting Scheduled from the Trigger On dropdown. Scheduled actions only execute after the record enters the state containing the action.

Delay Configuration

Setting Purpose
Delay Number of hours or days to wait before executing
Unit Time unit for delay (Hour or Day)
Recurrence How often to repeat after initial execution

Example Configurations

Delay Recurrence Unit Behavior
1 0 Hour Execute once, 1 hour after entering state
1 2 Day Execute 1 day after, then every 2 days
0 blank Hour Execute once on next scheduler run (≤30 min)
0 0 Hour Execute continuously every 30 minutes

Time of Day Schedule

For actions that need to execute at a specific time:

Scheduling Transitions

Select Scheduled from the TRANSITION ON dropdown to create time-based transitions.

Transition Scheduling Behaviors

TRANSITION ON Saved Search Behavior
Server Trigger Yes Runs search on trigger, transitions if criteria met
Blank Yes Transitions when saved search criteria evaluates true
Scheduled Yes Waits for delay, then transitions if search criteria met

✅ Scheduled vs. Server Trigger

Server Trigger + Delay: Executes delay time after the trigger event occurs.

Scheduled: Executes delay time after entering the state—not tied to a specific event.

Service-Level Agreement Example

Implement an SLA for approval processing:

  1. Scheduled Send Email — Reminder to approver (Delay: 0, executes on next scheduler run)
  2. Scheduled Transition — Auto-reject if not approved within 1 hour (Delay: 1 Hour)
  3. Set Field Value — Update status to "Auto-Rejected" in end state

💡 Testing Tip

When testing scheduled workflows, set delay values as low as possible (e.g., 0) so you only wait ~30 minutes for the next scheduler run rather than hours or days.

Best Practices

⚠️ Important

There is no inherent order in which multiple scheduled workflows start and finish. If workflows A, B, and C are scheduled for the same time, any may complete first depending on processing load.

🎯 Hands-On Exercise

Configure a service-level agreement for the performance review approval process:

🌟 Key Takeaways