2012-01-04 1 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를 사용해야한다고 생각합니다. 지정된 웹에서 목록을 찾아 업데이트하십시오.

나는이 작업을 수행 할 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(); 

, 당신은 프로젝트 서버의 WSSInterop Webservice를하여이 작업을 수행 할 수 있습니다

//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; 

코드가 컴파일 될지는 모르겠지만 이렇게 작동해야합니다.

감사합니다. 플로리안

관련 문제