Purpose

This script supports item margin guardrails for Contact 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 typeRESTlet
Deployed toContact
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 RESTlet
 * @author Rina Shah
 */
define(["N/record", "N/search", "N/log"], function (record, search, log) {
  function itemMarginGuardrails(context) {
    var recordType = "contact"
    var project = "Journal Approval Controls"
    log.audit({ title: project, details: "Demo processing for " + recordType })
    return true
  }
  return {
    execute: itemMarginGuardrails,
    beforeSubmit: itemMarginGuardrails,
    onRequest: itemMarginGuardrails,
  }
})

This object references:

Technical reference

Record identity

ItemValue
Record nameJournal Approval Controls RESTlet
Script IDcustomscript_demo_item_margin_guardrails_restlet_02
Object typeRESTlet
Source XMLObjects/customscript_demo_item_margin_guardrails_restlet_02.xml

Project assignment

ItemValue
Primary projectJournal Approval Controls
Record typesContact