YASSER
01/20/2025, 9:30 AMCeligo AI
01/20/2025, 9:30 AMAI generated answer (using internal Slack threads):To prevent a user from saving an invoice if the total discount amount is more than 20% of the invoice subtotal, you can use a User Event script in SuiteScript. This script will be triggered before the record is submitted (beforeSubmit function) and will check if the discount exceeds the allowed limit. Here is a sample code snippet:
javascript
/**
* @NApiVersion 2.x
* @NScriptType UserEventScript
*/
define(['N/record', 'N/runtime'], function(record, runtime) {
function beforeSubmit(context) {
if (context.type !== context.UserEventType.CREATE && context.type !== context.UserEventType.EDIT)
return;
var newRecord = context.newRecord;
var total = newRecord.getValue('total');
var discountTotal = newRecord.getValue('discounttotal');
if (discountTotal / total > 0.2) {
throw new Error('Discount cannot be more than 20% of the invoice subtotal.');
}
}
return {
beforeSubmit: beforeSubmit
};
});
This script gets the total and discount total values from the invoice record. It then checks if the discount total is more than 20% of the total. If it is, an error is thrown and the user is prevented from saving the record.
Please note that you need to deploy this script and associate it with the invoice record type in NetSuite.
******
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
01/20/2025, 9:30 AMSlack thread 1: here (available only if the original thread was posted in the last 90 days)
Similarity score: 0.820575655
Slack thread 2: here (available only if the original thread was posted in the last 90 days)
Similarity score: 0.810690522
Slack thread 3: here (available only if the original thread was posted in the last 90 days)
Similarity score: 0.810566068
Celigo AI
01/20/2025, 9:30 AM