在 2 个数字之间过滤
Filter between 2 numbers
我有一个包含 3 个字段的自定义记录:
最低限度
最大限度
评分
我想建立一个在自定义正文字段中使用数字的搜索,如果该数字介于最小和最大数字之间,它将以比率提醒。
我可以通过保存的搜索或脚本搜索来执行此操作吗?
filters: [
["thenumberfield", search.Operator.GREATER_THAN, theMinNumber], "AND",
["thenumberfield", search.Operator.LESS_THAN, theMaxNumber]
]
function compare(context){
var minnumber = nlapiGetFieldValue('minnumber');
var maxnumber = nlapiGetFieldValue('maxnumber');
var comparenumber = nlapiGetFieldValue('comparenumber');
var rate = nlapiGetFieldValue('rate');
if(comparenumber > minnumber && comparenumber < maxnumber){
alert(rate);
}
}
假设您为此使用客户端脚本:
/**
* @NApiVersion 2.x
* @NScriptType ClientScript
*/
define(["N/search"], function(search){
function fieldChanged(ctx){
if(ctx.fieldId == 'custbody_rate_definer'){ // use the id of your custom body field
var definer = ctx.currentRecord.getValue({fieldId:ctx.fieldId});
var rate = null;
// use the actual values from your rate lookup custom record for the search
search.create({
type:'customrecord_custom_rates',
filters:[
['custrecord_max_val', 'greaterthan', definer], 'AND',
['custrecord_min_val', 'lessthan', definer], 'AND',
],
columns:[
'custrecord_rate'
]
}).run().each(function(result){
//this assumes your rates don't overlap and nothing else needs to be done to disambiguate the rate records (e.g. valid during some set of dates)
rate = parseFloat(result.getValue({name:'custrecord_rate'})) || 0;
return false;
});
if(rate) alert('The rate is '+ rate);
}
}
return {
fieldChanged:fieldChanged;
}
});
我有一个包含 3 个字段的自定义记录: 最低限度 最大限度 评分
我想建立一个在自定义正文字段中使用数字的搜索,如果该数字介于最小和最大数字之间,它将以比率提醒。
我可以通过保存的搜索或脚本搜索来执行此操作吗?
filters: [
["thenumberfield", search.Operator.GREATER_THAN, theMinNumber], "AND",
["thenumberfield", search.Operator.LESS_THAN, theMaxNumber]
]
function compare(context){
var minnumber = nlapiGetFieldValue('minnumber');
var maxnumber = nlapiGetFieldValue('maxnumber');
var comparenumber = nlapiGetFieldValue('comparenumber');
var rate = nlapiGetFieldValue('rate');
if(comparenumber > minnumber && comparenumber < maxnumber){
alert(rate);
}
}
假设您为此使用客户端脚本:
/**
* @NApiVersion 2.x
* @NScriptType ClientScript
*/
define(["N/search"], function(search){
function fieldChanged(ctx){
if(ctx.fieldId == 'custbody_rate_definer'){ // use the id of your custom body field
var definer = ctx.currentRecord.getValue({fieldId:ctx.fieldId});
var rate = null;
// use the actual values from your rate lookup custom record for the search
search.create({
type:'customrecord_custom_rates',
filters:[
['custrecord_max_val', 'greaterthan', definer], 'AND',
['custrecord_min_val', 'lessthan', definer], 'AND',
],
columns:[
'custrecord_rate'
]
}).run().each(function(result){
//this assumes your rates don't overlap and nothing else needs to be done to disambiguate the rate records (e.g. valid during some set of dates)
rate = parseFloat(result.getValue({name:'custrecord_rate'})) || 0;
return false;
});
if(rate) alert('The rate is '+ rate);
}
}
return {
fieldChanged:fieldChanged;
}
});