代码之家  ›  专栏  ›  技术社区  ›  Tom Hanson

SuiteScript 2.0 search.create返回空结果

  •  1
  • Tom Hanson  · 技术社区  · 6 年前

    我试图得到所有的销售订单,这是在建立一个新的销售订单点等待履行。这是为了提醒用户销售订单已经在进行中。我使用的代码是这样的;

        function saleOrderInPendingFulfillmentAlreadyExists(scriptContext)
        {
            //Check if the customer already has an order which is pending fulfillment
            debugger;
            var idCustomer = scriptContext.currentRecord.getValue('entity');
            var recCustomer;
            if(idCustomer)
            {
                var filters = [
                   ["mainline", "is", "T"], "and",
                   ["type", "anyOf", search.Type.SALES_ORDER], "and",
                   ["entity", "anyOf", idCustomer],
               ];
    
               var columns = [ "tranid" ];
    
               var searchQuery = search.create({
                   "type": search.Type.TRANSACTION,
                   "filters": filters,
                   "columns": columns
               });
    
               var salesorders = searchQuery.run().getRange({"start": 0, "end": 1000}) || [];
    
            }
        }
    

    在调试代码时,变量salesorders是一个空数组,但我知道customer文件上至少有8个Sales Orders。我做错什么了?

    1 回复  |  直到 6 年前
        1
  •  3
  •   michoel    6 年前

    type 搜索筛选器希望记录的格式与 search.Type 枚举( 'SalesOrd' 而不是 'salesorder' ). 欢迎使用NetSuite!

    您可以将过滤器更改为

    var filters = [
       ["mainline", "is", "T"], "and",
       ["type", "anyOf", 'SalesOrd'], "and",
       ["entity", "anyOf", idCustomer],
    ];
    

    或者,更好

    var searchQuery = search.create({
       "type": search.Type.SALES_ORDER,
       "filters": filters,
       "columns": columns
    });
    

    NetSuite Search Export Chrome Extension

    推荐文章