Joseph
03/06/2025, 9:14 PMfunction closeWorkOrder(workOrderId) {
try {
let workOrder = record.load({ type: 'workorder', id: workOrderId });
workOrder.setValue({ fieldId: 'orderstatus', value: 'H' });
workOrder.save();
} catch (e) {
log.error('Error Closing Work Order', {
workOrderId: workOrderId,
error: e.message,
stack: e.stack
});
}
}
giving me this error: "You cannot close this work order by setting work order status directly."Celigo AI
03/06/2025, 9:14 PMAI generated answer (using internal Slack threads):The error "You cannot close this work order by setting work order status directly." is occurring because in NetSuite, you cannot directly set the status of a Work Order to 'Closed' using SuiteScript. The status of a Work Order is managed by NetSuite based on the transactions associated with it, such as Work Order Completions and Work Order Closings. Instead of directly setting the status, you need to close each line item on the Work Order. This can be done by setting the 'isclosed' field to true for each line item in the 'item' sublist of the Work Order record. Here is an example of how you can do this:
javascript
function closeWorkOrder(workOrderId) {
try {
let workOrder = record.load({ type: 'workorder', id: workOrderId });
let lineCount = workOrder.getLineCount({ sublistId: 'item' });
for (let i = 0; i < lineCount; i++) {
workOrder.selectLine({ sublistId: 'item', line: i });
workOrder.setCurrentSublistValue({ sublistId: 'item', fieldId: 'isclosed', value: true });
workOrder.commitLine({ sublistId: 'item' });
}
workOrder.save();
} catch (e) {
log.error('Error Closing Work Order', {
workOrderId: workOrderId,
error: e.message,
stack: e.stack
});
}
}
This script will load the Work Order, iterate over each line item, set the 'isclosed' field to true, and then save the Work Order. This will effectively close the Work Order.
******
Disclaimer:
This response was generated by an artificial intelligence assistant based on previous conversations from multiple Slack channels, and may contain inaccuracies or mistakes.
******Celigo AI
03/06/2025, 9:14 PMSlack thread 1: here (available only if the original thread was posted in the last 90 days)
Similarity score: 0.84053129
Slack thread 2: here (available only if the original thread was posted in the last 90 days)
Similarity score: 0.838617742
Slack thread 3: here (available only if the original thread was posted in the last 90 days)
Similarity score: 0.837536633
Celigo AI
03/06/2025, 9:14 PM