我在Netsuite帐户上保存了交易记录的搜索,并且此保存的搜索在Netsuite UI上具有某些过滤条件。
使用SuiteScript 2.0,我正在加载此搜索并获取Netsuite UI上定义的所有过滤器的副本(例如defaultfilters),然后将“ trandate”的过滤器用作filterExpression,然后将defaultfilter推入savesearch过滤器集合中。
但是发生的是,netsuite仅考虑“转换”过滤器,而不考虑Netsuite上定义的过滤器。
我假设在两个过滤器之间应用了“ OR”逻辑运算符。
在另一个查询中讨论的相同问题: SuiteScript 2.0 search.createFilter with formula not working
请引导我解决这个问题。
谢谢
答案 0 :(得分:1)
您可以执行以下操作以添加searchFilters或FilterExpressions
加载搜索
var savedSearch = search.load({ id: SEARCH_ID });
在savedSearch
对象中推送自定义过滤器,如下所示:
// for searchFilter
savedSearch.filters.push(search.createSearchFilters(SEARCH_FILTER_OBJECT);
// for filter expression
var filterExpressions = savedSearch.filterExpressions;
filterExpressions.push('and', [FIELDID, SEARCH_OPERATOR, VALUES]);
savedSearch.filterExpressions = filterExpressions;
关于在filterExpressions中使用公式,如果您将formulanumeric
用作fieldName,则您的运算符应为equalto
而不是is
,而如果您将formulatext
用作fieldName,则可以按照NetSuite's Search Operators
is
运算符