【问题标题】:How to create a Search in SuiteScript 2.0 version如何在 SuiteScript 2.0 版本中创建搜索
【发布时间】:2016-11-16 21:02:11
【问题描述】:

我想使用 "SuitScript 2.0 version" 创建对记录的搜索。我知道我可以使用 "SuiteScript 1.0" 使用 nlapiSearchRecord() api 使用过滤器和条件来实现它,但我想使用 SuitScript 2.0 版本来做到这一点。 为此,在“SuiteScript 2.0”中,必须使用 "N/search Module",但不知道如何在 2.0 中进行搜索,相当于 suitscript 1.0 版本。

谁能给出一个在 SuiteScript 2.0 版本中搜索的例子。

提前致谢。

【问题讨论】:

    标签: javascript json search netsuite suitescript


    【解决方案1】:

    您是正确的,您将使用N/search。它使用与nlapiCreateSearch 的 1.0 API 类似的 API。

    您将使用search.create 构建您的搜索对象或使用search.load 加载已保存的搜索。然后,您将对结果搜索对象调用run。最后,您可以通过两种方式处理结果:

    1. 使用each 方法和回调
    2. 使用getRange 方法获取特定数量的结果

    在下面的示例中,我将N/search 作为s 导入到我的模块中,并展示了each 方法的用法。

    function findCustomers() {
        // Create and run search
        s.create({
            "type": "customer",
            "filters": [
                ['isinactive', s.Operator.IS, 'F'], 'and',
                ['company', s.Operator.NONEOF, ['123','456']
            ],
            "columns": ['email', 'firstname', 'lastname']
        }).run().each(processCustomer);
    }
    
    function processCustomer(result) {
        // do something with Customer search result
        // returns a boolean; true to continue iterating, false to stop
        return true;
    }
    

    【讨论】:

    • 过滤器/列中的列名是否与记录浏览器、模式浏览器或连接浏览器中的任何一个相关,或者您将如何确定在那里使用什么?
    • 列名来自记录浏览器中记录类型的搜索列部分。
    • 谢谢,一如既往,你是摇滚明星!
    • @erictgrubaugh,我可以通过将空数组传递给 search.columns 来获取搜索结果中的所有列,因为我不知道所有列的名称,或者任何其他方式来获取显示的搜索类型的字段在使用套件脚本 2.0 的记录浏览器的“搜索列”部分中 - 谢谢
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-12-29
    • 1970-01-01
    • 2018-05-14
    • 1970-01-01
    • 1970-01-01
    • 2016-10-09
    • 1970-01-01
    相关资源
    最近更新 更多