Sharepoint 2013工作流程历史记录更改用户ID

时间:2016-10-05 09:28:28

标签: sharepoint-2013 sharepoint-workflow

我使用Visual Studio在Sharepoint 2013中创建自定义工作流,以批准添加到列表中的元素。它很简单:用户创建元素(发起者),而另一个人批准它(批准者)。

当我使用 WriteToHistory 框留下步骤跟踪时出现问题。创建的历史记录项中的用户ID始终是发起者,并且没有明显的方法来更改它。因此,我认为我可以用 CreateListItem 替换 WriteToHistory 元素来手动创建历史记录项及其所有字段。当我这样做时,我可以更新历史记录项中的所有字段(甚至 WorkflowInstance 值,它将此新历史记录项与其工作流实例相关联),但不能更新用户ID ...

我在工作流程运行时收到错误并尝试添加新的历史记录项

Retrying last request. Next attempt scheduled in less than one minute.
Details of last request: HTTP BadRequest to <siteURL>/_vti_bin/client.svc/web/lists(guid'<workflowHistoryListGUID>')/Items 
Correlation Id: 42e20e0f-61d2-4a35-9339-429d395dbdfb Instance Id: c329fba8-dbbd-4123-8411-b90a34ec8fbb

我不知道最后两个GUID引用的项目。其他信息:

  • 我使用内部名称设置用户ID字段。此字段类型是个人或群组,但我不知道如何在工作流程中创建SPUser。我已经传递了一个GUID和一个带有用户ID并且没有任何更改的Int32
  • 我没有为所有必填字段提供值
  • 其他字段可以完美地工作,无论其类型如何:字符串,日期等。

有人可以建议在历史项目中自定义用户ID吗?感谢

0 个答案:

没有答案