前言
最近,在SharePoint Online上搞事情,用到了2013的工作流,之前也分享了一些相关的内容。今天,又需要在SharePoint Online上审批,于是,就有了下面的方法,亲测通过,分享给大家。
正文
ListName | 工作流任务列表名 |
Action | 操作名称,Approved或者Rejected |
ItemId | 工作流任务的ID |
整个方法比较简单,其实就是调用JavaScript对象模型,更新了工作流任务的几个属性而已。但是,比较复杂的就是,要更新哪几个属性,既更新了项目,还能让流程继续跑下去。于是,试了一晚上,有了下面的方法。我在我这里亲测成功,大家如果有问题,就自己调参数就好了。
function approveTask(ListName,Action,ItemId) { var ctx = SP.ClientContext.get_current(); var list = ctx.get_web().get_lists().getByTitle(ListName); this.item = list.getItemById(ItemId); item.set_item('Status',"Completed"); item.set_item('PercentComplete',1); item.set_item('TaskOutcome',Action); item.update(); ctx.executeQueryAsync(Function.createDelegate(this, function(){ console.log("success"); //create success }), Function.createDelegate(this, function(){ //create fail })); }