Netsuite SSv1 将已保存搜索的过滤器替换为另一个已保存搜索的过滤器

Netsuite SSv1 Replace Filters of Saved Search with Filters From Another Saved Search

我需要用通用搜索 (searchGen) 的过滤器替换我循环的每个搜索的过滤器(循环中的 selectedSearchId 变量)。我成功地遍历了我的数组并获取了 ID,所以我只需要应用过滤器。有帮助吗?

var searchGen = nlapiLoadSearch('item','customsearch_ca_export_detail_search__38'); //loads a generic search 

    //TODO: get filters from searchGen

    for (var i = 0; i<selectedMarketsArray.length; i++){

            //TODO: replace filters of each selectedSearchId with filters from searchGen

            var selectedSearchId = marketplaces[selectedMarketsArray[i]].searchId;

            nlapiLogExecution('DEBUG','selectedSearchId',selectedSearchId);

    }

旁注,我花了几周时间与 Netsuite 代表就 SSv2 中的相同问题来回交流,结果发现这是一个需要修复的错误。这就是我在 v1.

中重写的原因

我对 suitescript(尤其是 SSv1)还是个新手,所以非常感谢您的帮助。

谢谢!

如果有人感兴趣的话,我确实弄清楚了。我这样使用 "getFilters()" 和 "setFilters()" 函数:

 var searchGen = nlapiLoadSearch('item','customsearch_ca_export_detail_search__38'); //loads a generic search 

    searchGenFilters = searchGen.getFilters();

    nlapiLogExecution('DEBUG','searchGenFilters',searchGenFilters);

    if(updateSearches){

        for (var i = 0; i<selectedMarketsArray.length; i++){

                //TODO: replace filters of each selectedSearchId with filters from searchGen

                var selectedSearchId = marketplaces[selectedMarketsArray[i]].searchId;

                nlapiLogExecution('DEBUG','selectedSearchId',selectedSearchId);

                var selectedSearch = nlapiLoadSearch('item',selectedSearchId);

                selectedSearch.setFilters(searchGenFilters);

                nlapiLogExecution('DEBUG','Selected Search Filter',selectedSearch.getFilters());

                selectedSearch.saveSearch();


        }

    }

希望对您有所帮助!

  • 杰西