NetSuite搜索重复的电子邮件地址

时间:2014-04-20 01:33:35

标签: netsuite

正如您从我之前的所有问题中可以看出的那样,我试图学习一些NetSuite Suitescript来真正利用NetSuite。话虽如此,我已经到了可以搜索最大员工编号的地方,然后采取相应行动。现在我想要做的是搜索一个电子邮件地址,看看给定的是否重复。基本上确保如果已存在包含电子邮件地址的员工记录,则工作流将不会创建新的员工记录。

到目前为止,我有以下内容......

function checkDuplicate(givenEmail){
    var filters = new nlobjSearchFilter('email', null, givenEmail);
    var colums = new nlobjSearchColumn('email');
    var results = new nlobjSearchRecord('employee', null, filters, columns);
    if(results[0].getValue('email') == null) return false;
    else return true;
}

有更好/更简单的方法吗?我将对此进行测试。

1 个答案:

答案 0 :(得分:1)

你的语法有点偏。根据您的脚本,我建议应用以下修改:

function checkDuplicate(givenEmail){
    var filters = new nlobjSearchFilter('email', null, 'is', givenEmail);
    var results = new nlapiSearchRecord('employee', null, filters);

    return (results != null);
}

由于您只是检查是否有匹配结果,因此不需要nlobjColumn。此外,如果没有任何匹配,nlapiSearchRecord将返回null。

作为补充说明,您的SuiteScript上似乎仍然有点粗糙(至少使用搜索API),所以我建议您查看"使用SuiteScript搜索"在NetSuite帮助中心。