试图找出状态和参与者等工作流信息存储在Sharepoint数据库中的位置.有一个名为工作流的表,但我似乎无法找到文档和worflow数据中的数据之间的连接.任何人?
SharePoint工作流基于Windows Workflow Foundation 3.5,因此您将找到的有关该工作流的信息很可能适用于SharePoint工作流.其中之一是保湿和脱水工作流程,它基本上将工作流程的当前状态以序列化形式保存到数据库(或其他任何地方).
SharePoint工作流依赖于四种机制:
工作流模板是您在SharePoint Designer/Visual Studio中创建的模板.使用SharePoint设计器,这将生成声明性*.XOML文件,使用Visual Studio a*.DLL - 工作流的所有逻辑,将分配给谁,参与者所在的人都存储在那里.
您与此关联的工作流模板,例如SharePoint中的列表,内容类型或站点,以及(隐藏的)工作流历史列表和工作流任务列表 - 即使您不使用它.使用此关联,您还可以拥有一个关联表单,该表单在您关联工作流程后执行.
工作流实例是在例如列表项上运行的实际实例(在实例化中,也可以呈现表单).这个实例实际上确实是你告诉它在模板中做的事情.
现在,回答您的问题:"数据库中存储的状态和参与者等工作流信息在哪里?"
简短回答:事实并非如此.
更长的答案:该表WorkflowAssociation存储关联.所以我可以看到他与BaseIDXYZ 的工作流程与SiteIdxyz 相关联,ListId依此类推(这是文档和数据之间的连接).Workflow数据库中的表存储有关运行和过去工作流的信息.因此,您知道ItemGUID正在运行的工作流实例,l何时创建它以及InternalState它在什么位置.这个内部状态对您没有帮助,因为它没有映射您在SP Designer中设计的状态它只是状态SharePoint内部的"运行/未运行/错误".但是有专栏InstanceData.我不确定,但有可能一旦工作流程脱水,当前状态就可以保存在那里.以什么编码/形式 - 不知道.您将无法在数据库中查找正在运行的工作流程中的信息(当前参与者).
最重要的是:无论如何,您不必查看数据库.
您只能通过代码查找状态和参与者等信息,甚至可以调试工作流程以查看所有信息.您还可以为此信息创建字段,只需显示"参与者".
| 归档时间: |
|
| 查看次数: |
5047 次 |
| 最近记录: |