linavokolans
06/13/2023, 12:11 PM/**
* @NApiVersion 2.x
* @NScriptType UserEventScript
*/
define(['N/record'], function(record) {
function beforeSubmit(context) {
if (context.type === context.UserEventType.CREATE || context.type === context.UserEventType.EDIT) {
var newRecord = context.newRecord;
var discountItemId = newRecord.getValue({
fieldId: 'discountitem'
});
var discountRate = newRecord.getValue({
fieldId: 'rate'
});
if (discountItemId && !isDiscountSublistItem(newRecord, discountItemId)) {
try {
var lineCount = newRecord.getLineCount({
sublistId: 'item'
});
newRecord.selectNewLine({
sublistId: 'item'
});
newRecord.setCurrentSublistValue({
sublistId: 'item',
fieldId: 'item',
value: discountItemId
});
newRecord.setCurrentSublistValue({
sublistId: 'item',
fieldId: 'rate',
value: discountRate
});
newRecord.setCurrentSublistValue({
sublistId: 'item',
fieldId: 'amount',
value: 0
});
newRecord.commitLine({
sublistId: 'item'
});
} catch (e) {
log.error('Error : ', e);
}
}
}
}
function isDiscountSublistItem(record, discountItemId) {
var lineCount = record.getLineCount({
sublistId: 'item'
});
for (var i = 0; i < lineCount; i++) {
var item = record.getSublistValue({
sublistId: 'item',
fieldId: 'item',
line: i
});
if (item === discountItemId) {
return true;
}
}
return false;
}
return {
beforeSubmit: beforeSubmit
};
});
this script is not working onCreate and Edit as wellNathan L
06/13/2023, 1:10 PMlinavokolans
06/13/2023, 2:10 PMNathan L
06/13/2023, 2:14 PMbattk
06/13/2023, 8:58 PMbattk
06/13/2023, 8:58 PMbattk
06/13/2023, 8:59 PMbattk
06/13/2023, 9:00 PMbattk
06/13/2023, 9:00 PMbattk
06/13/2023, 9:02 PM