Imports a project plan from Microsoft Project to the specified project in QAComplete.
Requirements
-
The user must belong to a security group that has the Add privilege for Project Plan Maintenance (Project Manager).
-
The plug-in to MS Project that allows importing project plans to and exporting them from Microsoft Project must be installed.
Parameters
The operation uses the following parameters:
AuthenticationData : , required
An AuthenticationData
object containing the login information and the ID of the project to which you want to import a project plan from Microsoft Project.
ProjectPlan : ProjectPlan, required
The ProjectPlan
object that contains information on the project plan that you are importing from Microsoft Project to QAComplete.
Result
The ID of the imported project plan.
Example
Sample Code
C#
string login = "[email protected]";
string password = "p@ssword";
ServiceSoapClient service = new ServiceSoapClient();
// Prepare AuthenticationData
LoginInfo loginInfo = service.GetLoginInfo("", login, password);
AuthenticationData authData = new AuthenticationData();
authData.AppCode = loginInfo.AppCode;
authData.UserId = loginInfo.UserId;
authData.PassCode = password;
authData.DeptId = loginInfo.DeptId;
authData.ProjId = loginInfo.ProjId;
try
{
// Obtain the project plan that you want to import
ProjectPlan plan = new ProjectPlan();
plan.Name = "Application BETA Schedule";
plan.OwnerUserId = 24661;
…
// Specify the plan tasks
PPTask task = new PPTask();
task.TaskName = "Task1";
…
plan.Tasks = new PPTask[1];
plan.Tasks[0] = task;
…
// Imports the plan to QAComplete
int planId = service.ProjectPlans_ImportMSProject(authData, plan);
}
catch (FaultException e)
{
MessageFault msg = e.CreateMessageFault();
string error = msg.GetReaderAtDetailContents().GetAttribute("Text");
Console.WriteLine(error);
}
Java
String login = "[email protected]";
String password = "p@ssword";
ServiceSoap service = new Service().getServiceSoap12();
// Prepare AuthenticationData
LoginInfo loginInfo = service.getLoginInfo("", login, password);
AuthenticationData authData = new AuthenticationData();
authData.setAppCode(loginInfo.getAppCode());
authData.setUserId(loginInfo.getUserId());
authData.setPassCode(password);
authData.setDeptId(loginInfo.getDeptId());
authData.setProjId(loginInfo.getProjId());
try
{
// Obtain the project plan that you want to import
ProjectPlan plan = new ProjectPlan();
plan.setName("Application BETA Schedule");
plan.setOwnerUserId(24661);
…
// Specify the plan tasks
PPTask task = new PPTask();
task.setTaskName("Task1");
…
ArrayOfPPTask list = new ArrayOfPPTask();
list.getPPTask().add(0, task);
plan.setTasks(list);
…
// Imports the plan to QAComplete
int planId = service.projectPlansImportMSProject(authData, plan);
}
catch (Exception e)
{
e.printStackTrace();
}
Sample Request XML
POST /psws/psws.asmx HTTP/1.1
Host: myteam.mysite.com
Content-Type: text/xml; charset=utf-8
Content-Length: 1663 {Insert an appropriate value here}
SOAPAction: "http://www.pragmaticsw.com/ProjectPlans_ImportMSProject"
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<ProjectPlans_ImportMSProject xmlns="http://www.pragmaticsw.com/">
<AuthenticationData>
<AppCode>agSP</AppCode>
<DeptId>8162</DeptId>
<ProjId>11873</ProjId>
<UserId>24661</UserId>
<PassCode>p@ssword</PassCode>
</AuthenticationData>
<ProjectPlan>
<ProjPlanId>2</ProjPlanId>
<Name>Application BETA Schedule</Name>
<OwnerUserId>24661</OwnerUserId>
<OwnerName>Doe, John</OwnerName>
<AssigneeUserId>24661</AssigneeUserId>
<AssignedToName>Doe, John</AssignedToName>
<ActPctComplete>15</ActPctComplete>
<Tasks>
<PPTask>
<TaskName>Test new input controls</TaskName>
<IsParent>Y</IsParent>
<Indent>3</Indent>
<EstStart>2014-07-18T08:00:00</EstStart>
<EstFinish>2014-07-21T23:59:00</EstFinish>
<AssigneeUserId>24661</AssigneeUserId>
<AssignedToName>Doe, John</AssignedToName>
<PredNum>5</PredNum>
<SeqNum>6</SeqNum>
<Work>60</Work>
</PPTask>
<PPTask>
<TaskName>Test new list controls</TaskName>
<IsParent>N</IsParent>
<Indent>3</Indent>
<EstStart>2014-07-22T08:00:00</EstStart>
<EstFinish>2014-07-23T23:59:00</EstFinish>
<AssigneeUserId>24661</AssigneeUserId>
<AssignedToName>Doe, John</AssignedToName>
<PredNum>6</PredNum>
<SeqNum>7</SeqNum>
<Work>120</Work>
</PPTask>
</Tasks>
<Resources>
<PPResource>
<UserId>24661</UserId>
<PersonName>Doe, Jonh</PersonName>
<StandardRate>0</StandardRate>
</PPResource>
<PPResource>
<UserId>24667</UserId>
<PersonName>Doe, Jane</PersonName>
<StandardRate>0</StandardRate>
</PPResource>
</Resources>
</ProjectPlan>
</ProjectPlans_ImportMSProject>
</soap:Body>
</soap:Envelope>
SOAP 1.2
POST /psws/psws.asmx HTTP/1.1
Host: myteam.mysite.com
Content-Type: application/soap+xml; charset=utf-8
Content-Length: 1671 {Insert an appropriate value here}
<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
<soap12:Body>
<ProjectPlans_ImportMSProject xmlns="http://www.pragmaticsw.com/">
<AuthenticationData>
<AppCode>agSP</AppCode>
<DeptId>8162</DeptId>
<ProjId>11873</ProjId>
<UserId>24661</UserId>
<PassCode>p@ssword</PassCode>
</AuthenticationData>
<ProjectPlan>
<ProjPlanId>2</ProjPlanId>
<Name>Application BETA Schedule</Name>
<OwnerUserId>24661</OwnerUserId>
<OwnerName>Doe, John</OwnerName>
<AssigneeUserId>24661</AssigneeUserId>
<AssignedToName>Doe, John</AssignedToName>
<ActPctComplete>15</ActPctComplete>
<Tasks>
<PPTask>
<TaskName>Test new input controls</TaskName>
<IsParent>Y</IsParent>
<Indent>3</Indent>
<EstStart>2014-07-18T08:00:00</EstStart>
<EstFinish>2014-07-21T23:59:00</EstFinish>
<AssigneeUserId>24661</AssigneeUserId>
<AssignedToName>Doe, John</AssignedToName>
<PredNum>5</PredNum>
<SeqNum>6</SeqNum>
<Work>60</Work>
</PPTask>
<PPTask>
<TaskName>Test new list controls</TaskName>
<IsParent>N</IsParent>
<Indent>3</Indent>
<EstStart>2014-07-22T08:00:00</EstStart>
<EstFinish>2014-07-23T23:59:00</EstFinish>
<AssigneeUserId>24661</AssigneeUserId>
<AssignedToName>Doe, John</AssignedToName>
<PredNum>6</PredNum>
<SeqNum>7</SeqNum>
<Work>120</Work>
</PPTask>
</Tasks>
<Resources>
<PPResource>
<UserId>24661</UserId>
<PersonName>Doe, Jonh</PersonName>
<StandardRate>0</StandardRate>
</PPResource>
<PPResource>
<UserId>24667</UserId>
<PersonName>Doe, Jane</PersonName>
<StandardRate>0</StandardRate>
</PPResource>
</Resources>
</ProjectPlan>
</ProjectPlans_ImportMSProject>
</soap12:Body>
</soap12:Envelope>
Sample Response XML
HTTP/1.1 200 OK
Content-Type: text/xml; charset=utf-8
Content-Length: 433 {The server returns an appropriate value here}
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<ProjectPlans_ImportMSProjectResponse xmlns="http://www.pragmaticsw.com/">
<ProjectPlans_ImportMSProjectResult>5</ProjectPlans_ImportMSProjectResult>
</ProjectPlans_ImportMSProjectResponse>
</soap:Body>
</soap:Envelope>
SOAP 1.2
HTTP/1.1 200 OK
Content-Type: application/soap+xml; charset=utf-8
Content-Length: 443 {The server returns an appropriate value here}
<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
<soap12:Body>
<ProjectPlans_ImportMSProjectResponse xmlns="http://www.pragmaticsw.com/">
<ProjectPlans_ImportMSProjectResult>5</ProjectPlans_ImportMSProjectResult>
</ProjectPlans_ImportMSProjectResponse>
</soap12:Body>
</soap12:Envelope>
See Also
ProjectPlans_ExportMSProject
ProjectPlans_GetListOfProjectPlans
ProjectPlans_GetListOfResources
Project Plan Operations
Project Operations
SOAP API Reference