Adding Resources Example Two

The following example shows how to create a project that has two resources assigned to it. Note that one resource plays two different roles on the project, so the code is written as if to include a total of three sublist records: two for the person with two roles, plus one for the other resource.

C#

          private void addProject()
{

   // Create object

   Job newProject = new Job();


   // Set a value for companyName, which represents the name of the 
   // project, and for externalId, which is preffered for tracking purposes.

   newProject.companyName = "Launch";
   newProject.externalId = "103A";


   // If this is a OneWorld account, identify the subsidiary.

   RecordRef subsidiaryRef = new RecordRef();
   subsidiaryRef.internalId = "1";
   newProject.subsidiary = subsidiaryRef;


   // Specify that the Resources sublist will hold three entries.

   newProject.jobResourcesList = new JobResourcesList ();
   newProject.jobResourcesList.jobResources = new JobResources[3];


   // Define the three sublist records. The first two represent the 
   // same resource (the resource with the internalId 1148). Two entries
   // are used because this resource is filling two different roles on the project.

   newProject.jobResourcesList.jobResources[0] = new JobResources();
   newProject.jobResourcesList.jobResources[0].jobResource = new RecordRef();
   newProject.jobResourcesList.jobResources[0].jobResource.internalId = "1148";
   newProject.jobResourcesList.jobResources[0].role = new RecordRef();
   newProject.jobResourcesList.jobResources[0].role.internalId = "-3";

   newProject.jobResourcesList.jobResources[1] = new JobResources();
   newProject.jobResourcesList.jobResources[1].jobResource = new RecordRef();
   newProject.jobResourcesList.jobResources[1].jobResource.internalId = "1148";
   newProject.jobResourcesList.jobResources[1].role = new RecordRef();
   newProject.jobResourcesList.jobResources[1].role.internalId = "1";

   newProject.jobResourcesList.jobResources[2] = new JobResources();
   newProject.jobResourcesList.jobResources[2].jobResource = new RecordRef();
   newProject.jobResourcesList.jobResources[2].jobResource.internalId = "1147";
   newProject.jobResourcesList.jobResources[2].role = new RecordRef();
   newProject.jobResourcesList.jobResources[2].role.internalId = "1";

   _service.add(newProject);

} 

        

SOAP Request

          <soap:Envelope xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <soap:Header>
        <passport xmlns="urn:messages_2017_1.platform.webservices.netsuite.com">
            <email xmlns="urn:core_2017_1.platform.webservices.netsuite.com">user@netsuite.com</email>
            <password xmlns="urn:core_2017_1.platform.webservices.netsuite.com">**********</password>
            <account xmlns="urn:core_2017_1.platform.webservices.netsuite.com">12345</account>
            <role internalId="3" xmlns="urn:core_2017_1.platform.webservices.netsuite.com"/>
        </passport>
        <preferences xmlns="urn:messages_2017_1.platform.webservices.netsuite.com"/>
    </soap:Header>
    <soap:Body>
        <add xmlns="urn:messages_2017_1.platform.webservices.netsuite.com">
            <record externalId="103A" xsi:type="q1:Job" xmlns:q1="urn:relationships_2017_1.lists.webservices.netsuite.com">
                <q1:companyName>Launch</q1:companyName>
                <q1:subsidiary internalId="1"/>
                <q1:jobResourcesList>
                    <q1:jobResources>
                        <q1:jobResource internalId="1148"/>
                        <q1:role internalId="-3"/>
                    </q1:jobResources>
                    <q1:jobResources>
                        <q1:jobResource internalId="1148"/>
                        <q1:role internalId="1"/>
                    </q1:jobResources>
                    <q1:jobResources>
                        <q1:jobResource internalId="1147"/>
                        <q1:role internalId="1"/>
                    </q1:jobResources>
                </q1:jobResourcesList>
            </record>
        </add>
    </soap:Body>
</soap:Envelope> 

        

SOAP Response

          <soapenv:Envelope xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
    <soapenv:Header>
        <platformMsgs:documentInfo xmlns:platformMsgs="urn:messages_2017_1.platform.webservices.netsuite.com">
            <platformMsgs:nsId>WEBSERVICES_1013519_0918201384682079363447691_943f17897de781</platformMsgs:nsId>
        </platformMsgs:documentInfo>
    </soapenv:Header>
    <soapenv:Body>
        <addResponse xmlns="urn:messages_2017_1.platform.webservices.netsuite.com">
            <writeResponse>
                <platformCore:status isSuccess="true" xmlns:platformCore="urn:core_2017_1.platform.webservices.netsuite.com"/>
                <baseRef xsi:type="platformCore:RecordRef" type="job" externalId="103A" internalId="1155" xmlns:platformCore="urn:core_2017_1.platform.webservices.netsuite.com"/>
            </writeResponse>
        </addResponse>
    </soapenv:Body>
</soapenv:Envelope> 

        

Related Topics

Project (Job)
Adding a Project with a Status Example One
Projects
Entities
Entity Search
How to Use the SOAP Web Services Records Help
SOAP Web Services Supported Records
SOAP Schema Browser
SuiteTalk SOAP Web Services Platform Overview

General Notices