Inline Editing's xedit Events
Created: June 5, 2017
Whenever any record is edited inline, whether from the UI or a Script
using submitFields
, NetSuite will trigger an xedit
User Event for that
record. You can use this trigger type to make sure that any User Events you have
deployed on the record being edited either process or avoid Inline Edits
appropriately.
function beforeSubmit (context) {
if (context.type === context.UserEventType.XEDIT) {
// Do something special for Inline Edit...
}
// ...
}
function afterSubmit (context) {
if (context.type === context.UserEventType.XEDIT) {
// Avoid doing anything on Inline Edit
return
}
// ...
}
The only exception to this rule is when an Inline Edit is triggered by another User Event.
⚠️ Actions taken in User Event scripts will never trigger other User Event scripts.
For example, if you have an afterSubmit
User Event on the Sales Order that
automatically creates an appropriate Invoice, no User Events deployed
to the Invoice record will be triggered. This is because NetSuite never
chains User Events. In theory, this is to prevent any one script from
infinite looping or cascading a whole bunch of database interactions, but in
practice it is often a huge barrier to building efficient sequence flows
across multiple record types.