SuiteScript 2.0:具有更新参数的重新计划脚本

时间:2018-12-04 05:54:17

标签: suitescript2.0

我有一个计划好的脚本,需要在1000个以上的记录中设置一个值。脚本最初会按您预期的那样超时,因此我需要重新计划脚本以获取下一个搜索范围并进行处理。我正在尝试使用在重新计划时增加的脚本参数。但是,我似乎陷入了相同记录的无限循环中。下面是该代码的简化版本。如何更新脚本的startIndex

var startIndex

function execute(scriptContext) {
    startIndex = script.getParameter({name: "custscript_startindex"});
    if(startIndex == null){
        startIndex = 0;
    }

    //building the search here

    //Run The Search -- Limited to 10 for testing
    var arrResults = searchNext.run().getRange(startIndex, startIndex + 10);

    //Process the results.

    if(needMore())
    {
        startIndex = startIndex + 10;
        var taskId = rescheduleCurrentScript();
        log.audit("Rescheduling status: " + task.checkStatus(taskId));
    }
}

function rescheduleCurrentScript() {
    var scheduledScriptTask = task.create({
        taskType: task.TaskType.SCHEDULED_SCRIPT
    });
    scheduledScriptTask.scriptId = runtime.getCurrentScript().id;
    scheduledScriptTask.deploymentId = runtime.getCurrentScript().deploymentId;
    scheduledScriptTask.params = {'custscript_startindex': startIndex };
    return scheduledScriptTask.submit();
}

0 个答案:

没有答案