我想将具有OR条件的过滤器动态添加到脚本2.0中的搜索对象。
答案 0 :(得分:4)
您可以使用过滤器表达式添加and/or
运算符。
按照NetSuite
使用过滤器表达式作为创建过滤器(search.Filter)的快捷方式。
例如搜索过滤器,如
search.createFilter({
name: 'transactionnumber',
operator: 'is',
values: 'ABC'
});
可以替换为
[['transactionnumber', 'is', 'ABC'], 'or', ['transactionnumber', 'is', 'XYZ']]
实质上,搜索过滤器是数组或与运算符连接在一起的数组。
答案 1 :(得分:0)
有同样的问题。这对我有用:
var soLines = salesOrder.lineItems;
var filteredIDs = [];
for (var i = 0; i < soLines.length; i++) {
filteredIDs.push(['customid', 'is', soLines[i].customID])
filteredIDs.push('OR');
}
filteredIDs.pop();
var mySearch = search.create({
type: search.Type.SALES_ORDER
join: 'item',
columns: [
"internalid",
"item.itemid",
"customid"
],
filters: [filteredIDs]
});
诀窍是在创建搜索之前创建过滤器。然后,您可以将过滤后的列表分配为过滤器