2013-09-09 4 views
0

Я пытаюсь создать задачу в существующем проекте через PSI, используя код при условии, мой MSDN: http://msdn.microsoft.com/en-us/library/office/ms487478(v=office.12).aspx#pj12_PDSPSIExamples_TaskСоздать задачу в существующий MSP проекта с помощью PSI

Проблема я получаю ошибку «GeneralOnlyUpdatesAllowed», при попытке вызовите projectClient.QueueUpdateProject (jobId, sessionId, project, false);

Любые ides?

Guid sessionId = Guid.NewGuid(); 
      Guid jobId = Guid.NewGuid(); 
      string SESSION_DESC = "MSP-DAX Synchronization";     
      backendProject.ProjectDataSet project = projectClient.ReadProject(task.ProjectId, backendProject.DataStoreEnum.WorkingStore);     
      projectClient.CheckOutProject(task.ProjectId, sessionId, SESSION_DESC); 
      backendProject.ProjectDataSet.TaskRow taskRow = project.Task.NewTaskRow(); 
      taskRow.PROJ_UID = task.ProjectId; 
      taskRow.TASK_UID = Guid.NewGuid(); 
      taskRow.TASK_NAME = task.Subject; 
      taskRow.CREATED_DATE = task.Date; 
      taskRow.TASK_DUR_FMT = (int)PSLibrary.Task.DurationFormat.Hour;   
      project.Task.AddTaskRow(taskRow);        
      projectClient.QueueUpdateProject(jobId, sessionId, project, false);//here is the error 
      //projectClient.QueueAddToProject(jobId, sessionId, project, false); 
      WaitForQueue(queueSystemClient, jobId); 
      jobId = Guid.NewGuid(); 
      projectClient.QueueCheckInProject(jobId, task.ProjectId, false, sessionId, SESSION_DESC); 
      WaitForQueue(queueSystemClient, jobId); 

ответ

0

Странное поведение, но в любом случае. Я изменил следующие строки:

backendProject.ProjectDataSet project = projectClient.ReadProject(task.ProjectId,   backendProject.DataStoreEnum.WorkingStore); 
projectClient.QueueUpdateProject(jobId, sessionId, project, false); 

с этими них:

backendProject.ProjectDataSet project = new backendProject.ProjectDataSet(); 
projectClient.QueueAddToProject(jobId, sessionId, project, false); 

и все работали. Похоже, вы можете добавить задачу только к не инициализированному проекту.