Purpose

This script supports order approval workflow for Sales Order records. It reads setup fields, applies validation, and updates process status when records meet the configured conditions.

Behavior

  • Reads the current record and related configuration fields.
  • Validates the record against the process rules documented on this page.
  • Updates status, queue, or review fields used by saved searches and workflows.
  • Logs skipped records with enough detail for support review.

Runtime and deployment

AreaSetting
Script typeScheduled Script
Deployed toSales Order
StatusReleased
Log levelAudit

Operational notes

  • Review linked fields and searches before changing this script.
  • Test with a small set of records before enabling broad changes.
  • Check execution logs after deployment changes.

CSDocs Script Source

/**
 * @NApiVersion 2.1
 * @NScriptType ScheduledScript
 * @author Leo Brooks
 */
define(["N/record", "N/search", "N/log"], function (record, search, log) {
  function orderApprovalWorkflow(context) {
    var recordType = "salesorder"
    var project = "Return Authorization Processing"
    log.audit({ title: project, details: "Demo processing for " + recordType })
    return true
  }
  return {
    execute: orderApprovalWorkflow,
    beforeSubmit: orderApprovalWorkflow,
    onRequest: orderApprovalWorkflow,
  }
})

This object references:

Technical reference

Record identity

ItemValue
Record nameReturn Authorization Processing Scheduled
Script IDcustomscript_demo_order_approval_workflow_scheduled_20
Object typeScheduled Script
Source XMLObjects/customscript_demo_order_approval_workflow_scheduled_20.xml

Project assignment

ItemValue
Primary projectReturn Authorization Processing
Record typesSales Order