SuiteScript 2.0搜索过滤器正在抛出一个UNEXPECTED _ERROR

问题描述 投票:1回答:1

我正在尝试将手机号码和/或电子邮件号码与客户文件相匹配。我创建了一个为我这样做的功能。当我将搜索过滤器添加到搜索中时,我会抛出一个UNEXPECTED_ERROR。

function getCustomerByMobilePhoneAndOrEmail(mobile, email)
{
var filterEmail = search.createFilter({
        name : 'email',
        operator : search.Operator.ANYOF,
        values : [ email ]
    });
    /*var filterMobile = search.createFilter({
        name : 'formulanumeric',
        operator : search.Operator.EQUALTO,
        values : ["1"],
        formula : "CASE WHEN {mobilephone} LIKE '"+mobile+"' THEN 1 ELSE 0 END",
    });*/
    var crit = search.create({
        type: search.Type.CUSTOMER,
        filters: [filterEmail]
    });
    log.debug({
        title: "Criteria",
        details: JSON.stringify(crit)
    });
    var results = getAllResults(crit);

    log.debug({
        title: "Results",
        details: JSON.stringify(results)
    });
}

注意:我现在已经注释掉了移动设备,因为我正试图让电子邮件首先运行。

我已经检查了这个与我执行的其他脚本搜索,我不明白为什么这个会抛出错误。

netsuite suitescript2.0
1个回答
2
投票

经过测试,我得到了同样的意外错误。然后看到该搜索运算符:电子邮件地址字段类型不支持ANYOF。

将运算符更改为search.Operator.IS并且工作正常。

检查SuiteAnswers:SuiteScript 1.0搜索运算符(ID:10565),查看每种字段类型支持的运算符表。

© www.soinside.com 2019 - 2024. All rights reserved.