2012-01-04 14 views
0

プロジェクトの問題を自動的に作成したいと考えています。その目的は、受信した電子メールに基づいて新しい問題を作成することです。Project Workspaceでプロジェクトの問題をプログラムで作成する方法

「プロジェクトワークスペースのPSIメソッドとデータセット」(http://msdn.microsoft.com/en-us/library/aa495198(office.12).aspx)による、発行リストへの参照を想定しているProjectWSSInfoDataSetを見ました。実際、ProjectWSSInfoDataSet XMLスキーマにはPROJECT_ISSUES_URLフィールドが含まれていますが、URLだけの場合はそれほど役に立ちません。

誰も似たようなことはありますか? (あるいはプロジェクトのリスクや成果物で)

答えて

0

私はSharePoint Webservicesでそれを行う必要があると思います。指定したWebのリストを見つけて更新します。

は、私はこれを行うにはSharePoint 2010 Client Object Modelをお勧めします。

:あなたはプロジェクトIDを経由してワークスペースのURLを取得するためにwan't場合

//Use SP2010 Client Object Model to update the list 
ClientContext SPContext = new ClientContext(wssUrl); 

//Get list by name 
string listname = "issues"; 

var query = SPContext.LoadQuery(SPContext.Web.Lists.Where(l => l.Title == listname)); 
SPContext.ExecuteQuery(); 

List myIssueList = query.FirstOrDefault(); 

//Add an item 
ListItemCreationInformation nItem = new ListItemCreationInformation(); 
nItem.LeafName = "Blubb.."; 
myIssueList.AddItem(nItem); 
SPContext.ExecuteQuery(); 

は、あなたがのProject ServerのWSSInterop Webサービスによってこれを行うことができます

//Use WssInterop Webservice to get the Workspace URL 
WssInteropSoapClient wssinteropSvc = new WssInteropSoapClient(); 

Guid prjGuid = new Guid("30937680-39FA-4685-A087-90C73376B2BE"); 

ProjectWSSInfoDataSet wssData = wssinteropSvc.ReadWssData(prjGuid); 
string wssUrl = wssData.ProjWssInfo[0].PROJECT_WORKSPACE_URL; 

コードがコンパイルされるかどうかわかりませんが、このように動作するはずです。

よろしくお願いいたしますフロリアン

関連する問題