2011-04-16 11 views
0

私が働く会社は最近、別の会社のSharePoint 2007プロジェクトフォームを引き継いだ。他の会社は、Collaboration Portal Publishingテンプレートを使用してサイトを作成しました。これはインターネットのWebサイトなので、これは私にいくつかの問題を引き起こしています。コラボレーションポータルの承認ワークフロー

デフォルトでは、承認ワークフローはサイトのページライブラリでアクティブ化されておらず、クライアントはすべてのページライブラリでワークフローをアクティブにする必要があります。問題は、サイトが大規模で、手動で行うには時間がかかりすぎるということです。そのような大きなサイトでは、最初から再作成することはできません。

サイトのすべてのページライブラリで承認ワークフローを有効にする方法はありますか?おそらく私はサイトの定義で何かを変更することができますか?またはプログラムでプログラムをアクティブにする方法はありますか?その後、サイトを繰り返して繰り返し、ワークフローをページライブラリに添付するコンソールアプリケーションを作成できますか?

答えて

0

あなたは、このコードを試すことができます。

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

私は

を役に立てば幸い
関連する問題