javascript - 如何使用 javascript 批准任务?

标签 javascript sharepoint sharepoint-2013

我在任务列表上实现了一项功能。

当我按下一个按钮时,选定的任务被批准。在任务列表中,字段已正确更新。该任务也在工作流日志中正确更新。

问题是工作流不会继续,并且不会创建与下一个参与者关联的任务。要更新任务,我使用以下代码。

var context = new SP.ClientContext.get_current();
var selectedItems = SP.ListOperation.Selection.getSelectedItems(context);
var list = context.get_web().get_lists().getByTitle("Test");
var item;
for (item in selectedItems)
{
        var listitem = list.getItemById(selectedItems[item].id);
        listitem.set_item('Completed',true);
        listitem.set_item('PercentComplete',1);
        listitem.set_item('FormData','Completed');
        listitem.set_item('Status','Approved');
        listitem.set_item('WorkflowOutcome','Approved');
        listitem.update();
}

我做错了什么? 我需要做什么才能获得批准才能正常继续?

谢谢,

最佳答案

我有这个有效的托管代码:

//编辑 在我看来,在第一个版本中我删除了无用的代码行(现在已注释)并且我认为 SPBuiltInFieldId.TaskStatusStatus 不同,但它们是相同的字段。

ht["Completed"] = "TRUE";
ht["PercentComplete"] = 1.0f;
//ht[SPBuiltInFieldId.PercentComplete] = 1.0f;
ht["Status"] = "Completed";
//ht[SPBuiltInFieldId.TaskStatus] = SPResource.GetString(new CultureInfo((int)elevWeb.Language, false), Strings.WorkflowStatusCompleted, new object[0]);
ht["WorkflowOutcome"] = outcome;
//ht[SPBuiltInFieldId.WorkflowOutcome] = outcome;
ht["TaskStatus"] = outcome;
ht["FormData"] = outcome;

所以我认为您需要像这样更改您的代码:

//编辑

问题是您必须将状态设置为 Completed 但您的 FormDataWorkflowOutcome 设置为正确的工作流程结果,即 已批准

var listitem = list.getItemById(selectedItems[item].id);
listitem.set_item('Completed',true);
listitem.set_item('PercentComplete',1);
listitem.set_item('Status','Completed');
listitem.set_item('FormData','Approved');
listitem.set_item('WorkflowOutcome','Approved');
listitem.update();

关于javascript - 如何使用 javascript 批准任务?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44841245/

相关文章:

javascript - 在 vue-chart 中重新渲染图表

javascript - 在迭代器内部访问外部数据库时出现问题

使用 CONTAINS 的 SharePoint 列表 CAML 查询

sharepoint - Sharepoint REST API 和 Microsoft Graph Sharepoint API 之间的区别

sharepoint - 将多个功能打包到一个 WSP 解决方案文件中

jquery - 共享点 2013 : How to make Promoted links responsive?

SharePoint REST 显示当前用户个人资料图片

javascript - 使用 Javascript 更改背景图像

javascript - 如何使用 REST for Sharepoint 2013 删除项目

javascript 通过原型(prototype)继承