A NetSuite user would like his workflow to execute on a scheduled manner. He will process a batch of records per execution. However, when a workflow's Initiation Type is set to Scheduled, it will execute every 30 minutes and he does not have control over it.
The following steps need to be done in order to make a workflow execute on scheduled times using a Scheduled Mass Update:
1. The user needs to define his workflow under Customization > Workflow > Workflows > New.
2. The workflow's Initiation type should be Event-based but On Create and On Update should not be checked.
3. After defining all the workflow details (States, Actions &Transitions); it is ready to be run on a scheduled manner.
4. To schedule it, go to Lists > Mass Update > Mass Updates.
5. The workflow that has just been created will be visible on the Workflows tree.
6. Choose the workflow from the Workflows tree.
7. Define the filters that will pull up the records to be processed by the workflow.
8. Afterwards, go to the Schedule tab.
9. Check the Run Update According To Schedule checkbox and define the schedule on the Scheduling section.
10. Save the Mass Update.
11. To see the Scheduled Mass Update, one needs to go to Lists > Mass Update > Saved Mass Updates.
This approach can be used if the workflow is not time-sensitive. This is because when using a Mass Update, one can define how frequently the workflow will execute but cannot define the exact time it executes.
1. When the workflow already ran against the record, it won't be pulled up by the search.
2. The workflow might be saving the state where the record is that is why when the workflow already ran on it, it is not pulled up on the Mass Update Search.
3. This can be useful for one-off executions i.e. workflows that does not need to be repeatedly done on a record.