I want to develop a client code in Java (C# api was useful till now) to change task status in a project in MS Project Server. Using wsdl I can read project entities, but I couldn,t find a way to change a task "complete percent". I have two questions.

  1. Which method can help me? Is it in "PWA/_vti_bin/PSI/Project.asmx?wsdl" ? Is "queueUpdateProject()" the right method?
  2. How should I compose the request xml?

Any api or guide in Java or C# could help me.

有帮助吗?

解决方案

Project Server communicates with PSI clients using ADO.NET Datasets. The structure isn't standard for Java and I don't know any good implementation of the Datasets in Java. Check this question.

I agree with propose solution for that question: create proxy web service which will translate your objects serialized in Java to the .NET datasets.

The overall workflow looks like this:

  • CheckOutProject

  • QueueAddToProject (adds tasks, resources, assignments)

  • QueueDeleteFromProject (drops tasks, resources, assignments)
  • QueueUpdateProject (updates tasks, resources, assignments, adds/drops/updates enterprise custom fields), Does not access > 1000 records per call

  • QueuePublishProject (optional)

  • QueueCheckInProject

All documentation is here: http://msdn.microsoft.com/en-us/library/office/websvcproject.project_di_pj14mref_methods.aspx

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top