Workflow SharePoint 2013 REST API AJAX更新工作流任务
我需要你的帮助。 我想完成2013年运行的自定义工作流任务(SH 2010 WF)。 我一直在使用一段代码。在JavaScript-AJAX中使用restapi更新任务列表。 我用其他列表测试代码并运行OK,但当我想更新任务列表时。我收到了不同的错误消息 如果我想更新标题文件,我收到了“消息”:{“lang”:“es”,“value”:“value不在预期范围内。”}}},“status”:400,“statusText”:“Bad Request”}” 如果我想更新结果字段,我可以在属性中看到该字段 关于如何使用RESTAPI处理工作流任务及其内容类型,您有任何概念性描述吗 提前感谢 拉米罗 我将分享我的代码Workflow SharePoint 2013 REST API AJAX更新工作流任务,workflow,Workflow,我需要你的帮助。 我想完成2013年运行的自定义工作流任务(SH 2010 WF)。 我一直在使用一段代码。在JavaScript-AJAX中使用restapi更新任务列表。 我用其他列表测试代码并运行OK,但当我想更新任务列表时。我收到了不同的错误消息 如果我想更新标题文件,我收到了“消息”:{“lang”:“es”,“value”:“value不在预期范围内。”}}},“status”:400,“statusText”:“Bad Request”}” 如果我想更新结果字段,我可以在属性中看到
function updateJson(endpointUri,payload, success, error)
{
return getFormDigest('https://partner.coca-cola.com/sites/SLBU2013Test/POC').then(function (data) {
$.ajax({
url: endpointUri,
type: "POST",
data: JSON.stringify(payload),
contentType: "application/json;odata=verbose",
headers: {
"Accept": "application/json;odata=verbose",
"X-RequestDigest" : data.d.GetContextWebInformation.FormDigestValue,
"X-HTTP-Method": "MERGE",
"If-Match": "*"
},
success: success,
error: error
});
});
}
function getItemTypeForListName(name) {
console.log("SP.Data." + name.charAt(0).toUpperCase() + name.slice(1) + "ListItem");
return"SP.Data." + name.charAt(0).toUpperCase() + name.slice(1) + "ListItem";
}
function updateListItem(webUrl,listTitle,listItemId,itemProperties,success,failure)
{
var listItemUri = webUrl + "/_api/web/lists/getbytitle('" + listTitle + "')/items(" + listItemId + ")";
console.log(listItemUri);
var itemPayload = {
'__metadata': {'type': 'SP.Data.TasksListItem'}
};
for(var prop in itemProperties){
itemPayload[prop] = itemProperties[prop];
console.log(itemProperties[prop]);
}
updateJson(listItemUri,itemPayload,success,failure);
}
function getFormDigest(webUrl) {
return $.ajax({
url: webUrl + "/_api/contextinfo",
method: "POST",
headers: { "Accept": "application/json; odata=verbose" }
});
}
function Calcular (){
var itemProperties = {'Status':'Completadas'};
updateListItem('https://partner.coca-cola.com/sites/SLBU2013Test/POC','Tasks',2,itemProperties,printInfo,logError);
function printInfo()
{
console.log('Item has been created');
}
function logError(error){
console.log(JSON.stringify(error));
}
};
还有一个类似的帖子。我的答案是做一些屏幕抓取并将用户重定向到UI。简而言之,我们不能用REST更新列表,但可以用CSOM更新。无论如何,WF忽略了任务更改。这是链接:。我们也遇到了同样的问题。你找到解决办法了吗?