gpt4 book ai didi

javascript - 如何降低以下代码的治理成本

转载 作者:行者123 更新时间:2023-11-28 15:28:11 26 4
gpt4 key购买 nike

netsuite 对使用某些 API(以及某些脚本)的频率有限制。对于我正在做的事情,我认为以下是适用的成本:nlapi加载搜索:5nlobjSearchResultSet.getSearch(): 10大约需要一个小时,但每次我的脚本(如下)都会出错,可能是由于这个原因。我该如何改变它以降低治理成本?

function walkCat2(catId, pad){
var loadCategory = nlapiLoadRecord("sitecategory", "14958149");
var dupRecords = nlapiLoadSearch('Item', '1951'); //load saved search
var resultSet = dupRecords.runSearch(); //run saved search
resultSet.forEachResult(function(searchResult)
{
var InterID=(searchResult.getValue('InternalID')); // process- search
var LINEINX=loadCategory.getLineItemCount('presentationitem');
loadCategory.insertLineItem("presentationitem",LINEINX);
loadCategory.setLineItemValue("presentationitem", "presentationitem", LINEINX, InterID+'INVTITEM'); //--- Sets the line value.-jf
nlapiSubmitRecord(loadCategory , true);
return true; // return true to keep iterating
});
}

最佳答案

nlapiLoadRecord 使用 5 个单位,nlapiLoadSearch 使用 5 个单位,那么实际上是 resultSet.forEachResult 使用另外 10 个单位。最重要的是,您正在为每个搜索结果运行 nlapiSubmitRecord,这将为每个结果多使用 10 个单位

在我看来,您对搜索结果所做的一切就是将行项目添加到类别记录中。在完全添加完所有行之前,您不需要提交记录。现在,您将在添加的每一行之后提交记录。

nlapiSubmitRecord 移至 forEachResult 调用之后。这会将您的管理(尤其是执行时间)从每个搜索结果 10 个单位减少到仅 10 个单位。

关于javascript - 如何降低以下代码的治理成本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28373234/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com