You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

SharePoint Server 2013通过REST API获取WorkflowInstanceID问题

SharePoint Server 2013 获取工作流实例ID生成状态页面链接解决方案

问题原因说明

直接调用列表项的WorkflowInstanceID字段返回null,是因为该字段仅适用于SharePoint 2010兼容模式工作流。SharePoint 2013平台工作流(基于Workflow Manager)的实例信息存储在独立的工作流服务中,无法通过列表项直接获取。

可行解决方案

方案1:调用工作流服务REST接口获取实例信息

使用SharePoint工作流服务专属接口,直接枚举指定列表项的所有工作流实例:

/_api/SP.WorkflowServices.WorkflowInstanceService.Current/EnumerateInstancesForListItem('{ListGuid}', {ItemID})

返回结果中,Id字段即为所需的WorkflowInstanceGuid,同时可获取工作流名称、状态等信息。注意替换路径中的{ListGuid}(目标列表的GUID)和{ItemID}(列表项ID)。

方案2:从工作流历史列表查询

每个工作流运行时都会在Workflow History(内部名称)列表中生成记录,通过列表项ID关联查询:

/_api/web/lists/getbytitle('Workflow History')/Items?$filter=ItemId eq {ItemID}&$select=WorkflowInstanceID,WorkflowName

若环境为中文,列表显示名称为“工作流历史记录”,建议改用内部名称调用更稳定:

/_api/web/lists/getbyid('{WorkflowHistoryListGuid}')/Items?$filter=ItemId eq {ItemID}&$select=WorkflowInstanceID,WorkflowName

方案3:从Tasks列表关联查询

Tasks列表中任务的WorkflowInstanceID字段默认不会被返回,需显式指定$select:

/_api/web/lists/getbytitle('Tasks')/Items?$select=ID,WorkflowInstanceID,RelatedItemId

其中RelatedItemId对应关联的目标列表项ID,可通过该字段反向匹配到对应工作流实例。

生成状态页面链接

拿到ListGuid和WorkflowInstanceGuid后,拼接以下格式的链接即可跳转至工作流状态页面:

/_layouts/15/WrkStat.aspx?List={ListGuid}&WorkflowInstanceID={WorkflowInstanceGuid}

内容的提问来源于stack exchange,提问作者Allen

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.14 22:37:13