Ниже приведен код для преобразования предложения в SO в NetSuite, когда для настраиваемого поля установлено значение «Одобрено». Я могу удалить строку, если значение настраиваемого поля не заполнено.
Любая идея о том, как я go вернусь к Цитате и конвертирую любые новые строки с настраиваемым полем, установленным в 'Approved', когда пользователь редактирует цитату?
define (['N / record'],
function(record) {
function afterSubmit(context) {
var quote = context.newRecord;
if ((context.type == context.UserEventType.EDIT) || (context.type == context.UserEventType.CREATE)) {
var approvedCount = quote.getLineCount({
sublistId: 'item'
});
for (var i = 0; i < approvedCount; i++) {
var approved = quote.getSublistValue({
sublistId: 'item',
fieldId: 'custom_field',
line: i
});
if (approved) {
var order = record.transform({
fromType: record.Type.ESTIMATE,
fromId: quote.id,
toType: record.Type.SALES_ORDER,
isDynamic: true
})
}
var orderLine = order.getLineCount({
sublistId: 'item'
});
for (var j = 0; j < orderLine; j++) {
var approved = quote.getSublistValue({
sublistId: 'item',
fieldId: 'custom_field',
line: j
});
var selectLine = order.selectLine({
sublistId: 'item',
line: i
})
order.setCurrentSublistValue({
sublistId: 'item',
fieldId: 'custom_field',
value: approved
})
order.commitLine({
sublistId: 'item'
})
}
}
order.save();
}
}
return {
beforeLoad: beforeLoad,
beforeSubmit: beforeSubmit,
afterSubmit: afterSubmit
};
});