从Restlet触发MAP / Reduce脚本获取不足的权限时

问题描述 投票:1回答:3

当我通过使用任务模块从RESTlet调用MAP / REDUCE脚本时,我得到了以下问题,在Sandbox中配置明智似乎是好的。但我无法触发MAP / REDUCE脚本。可以请任何身体请帮助...

{"type":"error.SuiteScriptError","name":"INSUFFICIENT_PERMISSION","message":"You do not have privileges to perform this operation","stack":["submit(N/task)","doPost(/SuiteBundles/Bundle 10009/Solarwind_Import_Trsansaction_RESTlet.js:122)"],"cause":{"type":"internal error","code":"INSUFFICIENT_PERMISSION","details":"You do not have privileges to perform this operation","userEvent":null,"stackTrace":["submit(N/task)","doPost(/SuiteBundles/Bundle 10009/Solarwind_Import_Trsansaction_RESTlet.js:122)"],"notifyOff":false},"id":"","notifyOff":false}

代码是:

var mrTask = task.create({
    taskType : task.TaskType.MAP_REDUCE
});

mrTask.scriptId = 'customscript_sw_jsondata_mapreduce';
mrTask.deploymentId = 'customdeploy_sw_jsondata_mapreduce';
mrTask.params = 
{
    custscript_sw_jsondata_mapreduce_para : requestBody
};

mrTask.submit();

感恩节,Ganapathi

netsuite
3个回答
3
投票

我知道这是一篇旧帖子,但是为了运行Map / Reduce任务,您需要在SuiteScript上调用ViewScripts和Full。希望这可以帮助。


1
投票

权限不足可能是由于您的restlet / map reduce正在运行的上下文。如果它们未设置为“administrator”,那么运行脚本的任何角色可能都没有正确的权限。通过切换到管理员来确认其角色问题进行测试,然后您必须分析您正在执行的操作以及您需要的权限。


0
投票

实际上@luke和@Graham的答案都是正确的。

要提交任务(在2.0中),您需要将脚本设置为使用admin角色运行,并且调用它的用户需要具有suiteScript和suitescript调度权限角色。

© www.soinside.com 2019 - 2024. All rights reserved.