我有一个名为“会话”的列表,该列表有一个用于项目创建、修改的工作流程。当我使用 Web 部件以及手动添加项目时,工作流程会触发。我开发了一个每天运行的计时器作业,它将项目添加到“会话”列表中。当计时器作业将项目添加到列表时,工作流程不会触发。
使用 API 创建或编辑列表项不会触发工作流程。你必须使用SPWorkflowManager http://msdn.microsoft.com/en-us/library/microsoft.sharepoint.workflow.spworkflowmanager.aspx类来自己触发它。每个实例SPSite
具有该类型的属性,这就是您应该使用的属性。
你可以这样编码:
SPSite site = foo; // Actually get your instance of SPSite by whatever is
// your favorite way to do so.
site.WorkflowManager.StartWorkflow(
item,
association,
association.AssociationData,
isAutoStart);
Where item
是您创建/编辑的 SPListItem,association
是的实例SPWorkflowAssociation http://msdn.microsoft.com/en-us/library/microsoft.sharepoint.workflow.spworkflowassociation.aspx将列表与实际工作流程相关联,以及isAutoStart
is a boolean
变量告诉工作流管理器工作流触发器是否应表现为自动启动的东西(在您的情况下,true
).
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)