【问题标题】:Collaboration portal approval workflow协作门户批准工作流
【发布时间】:2011-04-16 09:02:23
【问题描述】:
我工作的公司最近从另一家公司接管了一个 SharePoint 2007 项目。另一家公司使用 Collaboration Portal Publishing 模板创建了一个站点。由于这是一个互联网网站,这给我带来了一些问题。
默认情况下,网站的页面库上未激活审批工作流,并且客户要求工作流在所有页面库上都处于活动状态。问题是该站点很大,手动执行此操作将花费太长时间,而且由于站点如此之大,我无法从头开始重新创建它。
有没有一种方法可以在网站的所有页面库上激活审批工作流程?我可以更改站点定义中的某些内容吗?或者有没有办法以编程方式激活它?然后我可以创建一个控制台应用程序,它将递归地遍历站点并将工作流附加到页面库?
【问题讨论】:
标签:
sharepoint
sharepoint-2007
sharepoint-workflow
【解决方案1】:
你可以试试这个代码:
using (MossFramework.DocumentLibraryHelper docLibraryHelper = new MossFramework.DocumentLibraryHelper("SITENAME"))
{
using (SPSite site = new SPSite(docLibraryHelper.MossSiteAddress))
{
SPWeb siteCollection = site.OpenWeb();
siteCollection.AllowUnsafeUpdates = true;
SPFolder folder = siteCollection.GetFolder("Document Centre");
SPList list = siteCollection.Lists["Document Centre"];
Guid wfBaseId = new Guid("{5703E6AC-1C65-440F-88DC-EB65F2C6DF82}");
SPWorkflowAssociation wrkFl = list.WorkflowAssociations.GetAssociationByBaseID(wfBaseId);
foreach (SPListItem spListItem in list.Items)
{
site.WorkflowManager.StartWorkflow(spListItem, wrkFl, wrkFl.AssociationData);
// Error occurs here
}
site.Close();
}
}
或
You can try with this
希望对你有帮助