Class ProjectResource

java.lang.Object
com.primavera.integration.client.BOBase
com.primavera.integration.client.bo.BusinessObject
com.primavera.integration.client.bo.object.ProjectResource

public class ProjectResource extends BusinessObject

Primavera's resource planning feature allows you to do high-level project planning for future project or project that does not require resource assignments at the activity level. The resource planning feature allows you to allocate and manage resources at the project and WBS levels. If the LifeOfProjectFlag is true, the resource assignment is for the duration of the project, and so, if the project dates are pushed out, the resource assignment dates are pushed as well.

If the LifeOfProjectFlag is false, the dates on the ProjectResource will be calculated from the dates on the child ProjectResourceQuantity objects.

See Also:   Quick reference of ProjectResource fields

  • Constructor Details

    • ProjectResource

      public ProjectResource(Session session)
      Class constructor specifying the Session. This constructor is most commonly used when create() is intended to be called on this object.
      Parameters:
      session - the Session
    • ProjectResource

      public ProjectResource(Session session, ObjectId objId) throws BusinessObjectException
      Class constructor specifying the Session and ObjectId of the object. This constructor is most commonly used when update() will be called on this object.
      Parameters:
      session - the Session
      objId - the ObjectId
      Throws:
      BusinessObjectException - if a problem occurred in the client-side business objects
    • ProjectResource

      public ProjectResource(Session session, com.primavera.infr.db.PrmRowSet rowSet, int iIndex) throws BusinessObjectException
      Class constructor called internally after objects are retrieved from the server. Client code should use one of the other constructors for this class.
      Parameters:
      session - the Session
      rowSet - the PrmRowSet retrieved from the server
      iIndex - the row index in the PrmRowSet associated with this business object
      Throws:
      BusinessObjectException - if a problem occurred in the client-side business objects
  • Method Details

    • loadProject

      public Project loadProject(String[] fields) throws ServerException, NetworkException, BusinessObjectException
      Loads an associated Project object from the database.
      Parameters:
      fields - fields to load
      Returns:
      Project the Project object
      Throws:
      ServerException - if a problem occurred on the server-side
      NetworkException - if a problem occurred in the network layer
      BusinessObjectException - if a problem occurred in the client-side business objects
    • loadWBS

      Loads an associated WBS object from the database.
      Parameters:
      fields - fields to load
      Returns:
      WBS the WBS object
      Throws:
      ServerException - if a problem occurred on the server-side
      NetworkException - if a problem occurred in the network layer
      BusinessObjectException - if a problem occurred in the client-side business objects
    • loadProjectResourceCategory

      public ProjectResourceCategory loadProjectResourceCategory(String[] fields) throws ServerException, NetworkException, BusinessObjectException
      Loads an associated ProjectResourceCategory object from the database.
      Parameters:
      fields - fields to load
      Returns:
      ProjectResourceCategory the ProjectResourceCategory object
      Throws:
      ServerException - if a problem occurred on the server-side
      NetworkException - if a problem occurred in the network layer
      BusinessObjectException - if a problem occurred in the client-side business objects
    • loadResource

      public Resource loadResource(String[] fields) throws ServerException, NetworkException, BusinessObjectException
      Loads an associated Resource object from the database.
      Parameters:
      fields - fields to load
      Returns:
      Resource the Resource object
      Throws:
      ServerException - if a problem occurred on the server-side
      NetworkException - if a problem occurred in the network layer
      BusinessObjectException - if a problem occurred in the client-side business objects
    • loadProjectResourceQuantities

      public BOIterator<ProjectResourceQuantity> loadProjectResourceQuantities(String[] fields, String sWhereClause, String sOrderBy) throws ServerException, NetworkException, BusinessObjectException
      Loads multiple associated ProjectResourceQuantity objects from the database.
      Parameters:
      fields - fields to load
      sWhereClause - where clause
      sOrderBy - order-by clause
      Returns:
      BOIterator a business object iterator used to get the results of the load request
      Throws:
      ServerException - if a problem occurred on the server-side
      NetworkException - if a problem occurred in the network layer
      BusinessObjectException - if a problem occurred in the client-side business objects
    • getObjectId

      public ObjectId getObjectId() throws BusinessObjectException
      Gets the unique ID generated by the system. This field is automatically loaded by default whenever this type of business object is loaded from the database.
      Overrides:
      getObjectId in class BusinessObject
      Returns:
      the value in the field ObjectId
      Throws:
      BusinessObjectException - if a problem occurred in the client-side business objects
    • setObjectId

      public void setObjectId(ObjectId o) throws BusinessObjectException
      Sets the unique ID generated by the system. This field is automatically loaded by default whenever this type of business object is loaded from the database.
      Overrides:
      setObjectId in class BusinessObject
      Parameters:
      o - the value to set this field to
      Throws:
      BusinessObjectException - if a problem occurred in the client-side business objects
    • getProjectResourceCategoryObjectId

      public ObjectId getProjectResourceCategoryObjectId() throws BusinessObjectException
      Gets the unique ID of the associated project resource category. This field is automatically loaded by default whenever this type of business object is loaded from the database.
      Returns:
      the value in the field ProjectResourceCategoryObjectId
      Throws:
      BusinessObjectException - if a problem occurred in the client-side business objects
    • setProjectResourceCategoryObjectId

      public void setProjectResourceCategoryObjectId(ObjectId o) throws BusinessObjectException
      Sets the unique ID of the associated project resource category. This field is automatically loaded by default whenever this type of business object is loaded from the database.
      Parameters:
      o - the value to set this field to
      Throws:
      BusinessObjectException - if a problem occurred in the client-side business objects
    • getProjectObjectId

      public ObjectId getProjectObjectId() throws BusinessObjectException
      Gets the unique ID of the associated project. This field is automatically loaded by default whenever this type of business object is loaded from the database.
      Returns:
      the value in the field ProjectObjectId
      Throws:
      BusinessObjectException - if a problem occurred in the client-side business objects
    • setProjectObjectId

      public void setProjectObjectId(ObjectId o) throws BusinessObjectException
      Sets the unique ID of the associated project. This field is automatically loaded by default whenever this type of business object is loaded from the database.
      Parameters:
      o - the value to set this field to
      Throws:
      BusinessObjectException - if a problem occurred in the client-side business objects
    • getProjectId

      public String getProjectId() throws BusinessObjectException
      Gets the short code that uniquely identifies the associated project.
      Returns:
      the value in the field ProjectId
      Throws:
      BusinessObjectException - if a problem occurred in the client-side business objects
    • getWBSObjectId

      public ObjectId getWBSObjectId() throws BusinessObjectException
      Gets the unique ID of the associated WBS. This field is automatically loaded by default whenever this type of business object is loaded from the database. This field must contain a valid value in order to create this type of business object in the database.
      Returns:
      the value in the field WBSObjectId
      Throws:
      BusinessObjectException - if a problem occurred in the client-side business objects
    • setWBSObjectId

      public void setWBSObjectId(ObjectId o) throws BusinessObjectException
      Sets the unique ID of the associated WBS. This field is automatically loaded by default whenever this type of business object is loaded from the database. This field must contain a valid value in order to create this type of business object in the database.
      Parameters:
      o - the value to set this field to
      Throws:
      BusinessObjectException - if a problem occurred in the client-side business objects
    • getWBSCode

      public String getWBSCode() throws BusinessObjectException
      Gets the short code assigned to the associated WBS element for identification.
      Returns:
      the value in the field WBSCode
      Throws:
      BusinessObjectException - if a problem occurred in the client-side business objects
    • getResourceObjectId

      public ObjectId getResourceObjectId() throws BusinessObjectException
      Gets the unique ID of the associated resource. This field is automatically loaded by default whenever this type of business object is loaded from the database.
      Returns:
      the value in the field ResourceObjectId
      Throws:
      BusinessObjectException - if a problem occurred in the client-side business objects
    • setResourceObjectId

      public void setResourceObjectId(ObjectId o) throws BusinessObjectException
      Sets the unique ID of the associated resource. This field is automatically loaded by default whenever this type of business object is loaded from the database.
      Parameters:
      o - the value to set this field to
      Throws:
      BusinessObjectException - if a problem occurred in the client-side business objects
    • getRoleObjectId

      public ObjectId getRoleObjectId() throws BusinessObjectException
      Gets the unique ID of the associated role. This field is automatically loaded by default whenever this type of business object is loaded from the database.
      Returns:
      the value in the field RoleObjectId
      Throws:
      BusinessObjectException - if a problem occurred in the client-side business objects
    • setRoleObjectId

      public void setRoleObjectId(ObjectId o) throws BusinessObjectException
      Sets the unique ID of the associated role. This field is automatically loaded by default whenever this type of business object is loaded from the database.
      Parameters:
      o - the value to set this field to
      Throws:
      BusinessObjectException - if a problem occurred in the client-side business objects
    • getRoleName

      public String getRoleName() throws BusinessObjectException
      Gets the name of the associated role.
      Returns:
      the value in the field RoleName
      Throws:
      BusinessObjectException - if a problem occurred in the client-side business objects
    • getResourceName

      public String getResourceName() throws BusinessObjectException
      Gets the name of the associated resource.
      Returns:
      the value in the field ResourceName
      Throws:
      BusinessObjectException - if a problem occurred in the client-side business objects
    • getProjectResourceCategoryName

      public String getProjectResourceCategoryName() throws BusinessObjectException
      Gets the name of the associated project resource category.
      Returns:
      the value in the field ProjectResourceCategoryName
      Throws:
      BusinessObjectException - if a problem occurred in the client-side business objects
    • getStatus

      public ProjectStatus getStatus() throws BusinessObjectException
      Gets the project or WBS status: 'Planned', 'Active', 'Inactive', 'What-If', or 'Requested'.
      Returns:
      the value in the field Status
      Throws:
      BusinessObjectException - if a problem occurred in the client-side business objects
    • getStartDate

      public Date getStartDate() throws BusinessObjectException
      Gets the start date of the assignment. By default, it is set to the Planned Start date of the project. If LifeOfProjectFlag is set to true, this date is set to the Project Planned Start date. If associated ProjectResourceQuantities exist, this field is set to the beginning of the week of the earliest ProjectResourceQuantity. This field must contain a valid value in order to create this type of business object in the database.
      Returns:
      the value in the field StartDate
      Throws:
      BusinessObjectException - if a problem occurred in the client-side business objects
    • setStartDate

      public void setStartDate(Date d) throws BusinessObjectException
      Sets the start date of the assignment. By default, it is set to the Planned Start date of the project. If LifeOfProjectFlag is set to true, this date is set to the Project Planned Start date. If associated ProjectResourceQuantities exist, this field is set to the beginning of the week of the earliest ProjectResourceQuantity. This field must contain a valid value in order to create this type of business object in the database.
      Parameters:
      d - the value to set this field to
      Throws:
      BusinessObjectException - if a problem occurred in the client-side business objects
    • getFinishDate

      public Date getFinishDate() throws BusinessObjectException
      Gets the finish date of the assignment. By default, it is set to the Planned Start date of the project + 1 day, finishing at 5:00pm. For example, if the planned start date is January 1, 8:00am, the finish date is set to January 2, 5:00pm. If LifeOfProjectFlag is set to true during creation, this date is set to the Project Scheduled Finish date. If associated ProjectResourceQuantities exist, this field is set to the end of the week of the latest ProjectResourceQuantity. This field must contain a valid value in order to create this type of business object in the database.
      Returns:
      the value in the field FinishDate
      Throws:
      BusinessObjectException - if a problem occurred in the client-side business objects
    • setFinishDate

      public void setFinishDate(Date d) throws BusinessObjectException
      Sets the finish date of the assignment. By default, it is set to the Planned Start date of the project + 1 day, finishing at 5:00pm. For example, if the planned start date is January 1, 8:00am, the finish date is set to January 2, 5:00pm. If LifeOfProjectFlag is set to true during creation, this date is set to the Project Scheduled Finish date. If associated ProjectResourceQuantities exist, this field is set to the end of the week of the latest ProjectResourceQuantity. This field must contain a valid value in order to create this type of business object in the database.
      Parameters:
      d - the value to set this field to
      Throws:
      BusinessObjectException - if a problem occurred in the client-side business objects
    • getCommittedFlag

      public boolean getCommittedFlag() throws BusinessObjectException
      Gets the Boolean value that determines whether a resource is committed, and so, the resource assignment is stable and unlikely to change. When calculating availability, Primavera considers only assignments that are marked as committed.
      Returns:
      the value in the field CommittedFlag
      Throws:
      BusinessObjectException - if a problem occurred in the client-side business objects
    • setCommittedFlag

      public void setCommittedFlag(boolean b) throws BusinessObjectException
      Sets the Boolean value that determines whether a resource is committed, and so, the resource assignment is stable and unlikely to change. When calculating availability, Primavera considers only assignments that are marked as committed.
      Parameters:
      b - the value to set this field to
      Throws:
      BusinessObjectException - if a problem occurred in the client-side business objects
    • getLifeOfProjectFlag

      public boolean getLifeOfProjectFlag() throws BusinessObjectException
      Gets the Boolean value that determines whether a resource that is assigned to a project at Project or WBS level, has that assignment for the duration of the project.
      Returns:
      the value in the field LifeOfProjectFlag
      Throws:
      BusinessObjectException - if a problem occurred in the client-side business objects
    • setLifeOfProjectFlag

      public void setLifeOfProjectFlag(boolean b) throws BusinessObjectException
      Sets the Boolean value that determines whether a resource that is assigned to a project at Project or WBS level, has that assignment for the duration of the project.
      Parameters:
      b - the value to set this field to
      Throws:
      BusinessObjectException - if a problem occurred in the client-side business objects
    • getResourceRequest

      public ResourceRequest getResourceRequest() throws BusinessObjectException
      Gets the resource request used as a search template to search for a qualified resource. This field may not be included in the where clause or order by clause specified when loading business objects.
      Returns:
      the value in the field ResourceRequest
      Throws:
      BusinessObjectException - if a problem occurred in the client-side business objects
    • setResourceRequest

      public void setResourceRequest(ResourceRequest r) throws BusinessObjectException
      Sets the resource request used as a search template to search for a qualified resource. This field may not be included in the where clause or order by clause specified when loading business objects.
      Parameters:
      r - the value to set this field to
      Throws:
      BusinessObjectException - if a problem occurred in the client-side business objects
    • getTotalUnits

      public Unit getTotalUnits() throws BusinessObjectException
      Gets the Assigned quantity to Wbs resource assignment. This field may not be included in the where clause or order by clause specified when loading business objects.
      Returns:
      the value in the field TotalUnits
      Throws:
      BusinessObjectException - if a problem occurred in the client-side business objects
    • getIsBaseline

      public boolean getIsBaseline() throws BusinessObjectException
      Gets the boolean value indicating if this business object is related to a Project or Baseline.
      Returns:
      the value in the field IsBaseline
      Throws:
      BusinessObjectException - if a problem occurred in the client-side business objects
    • getIsTemplate

      public boolean getIsTemplate() throws BusinessObjectException
      Gets the boolean value indicating if this business object is related to a template Project.
      Returns:
      the value in the field IsTemplate
      Throws:
      BusinessObjectException - if a problem occurred in the client-side business objects
    • getCreateDate

      public Date getCreateDate() throws BusinessObjectException
      Gets the date this project resource was created.
      Returns:
      the value in the field CreateDate
      Throws:
      BusinessObjectException - if a problem occurred in the client-side business objects
    • getLastUpdateDate

      public Date getLastUpdateDate() throws BusinessObjectException
      Gets the date this project resource was last updated.
      Returns:
      the value in the field LastUpdateDate
      Throws:
      BusinessObjectException - if a problem occurred in the client-side business objects
    • getCreateUser

      public String getCreateUser() throws BusinessObjectException
      Gets the name of the user that created this project resource.
      Returns:
      the value in the field CreateUser
      Throws:
      BusinessObjectException - if a problem occurred in the client-side business objects
    • getLastUpdateUser

      public String getLastUpdateUser() throws BusinessObjectException
      Gets the name of the user that last updated this project resource.
      Returns:
      the value in the field LastUpdateUser
      Throws:
      BusinessObjectException - if a problem occurred in the client-side business objects
    • getRequiredCreateFields

      public static String[] getRequiredCreateFields()
      Gets all fields that must be set before calling create() on this business object. Generally the array will contain one field in each position, but if this business object requires either one field or another field to be set, both of those fields will appear in an element of the returned array separated by '|'. For example, if this business object requires field A to always be set, and field B or field C to be set, one element in the returned array will contain A, and one element will contain B|C.
      Returns:
      String[] an array of required create fields
    • getFilterableFields

      public static String[] getFilterableFields()
      Gets all fields that can be filtered.
      Returns:
      String[] an array of filterable fields
    • getInternalDefaultLoadFields

      public static String[] getInternalDefaultLoadFields()
      An internal method that should not be called directly by client code.
      Returns:
      String[] an internal array
    • getAllFields

      public static String[] getAllFields()
      Gets all fields for this business object.
      Returns:
      String[] an array of all fields
    • getInternalAllFields

      public static String[] getInternalAllFields()
      An internal method that should not be called directly by client code.
      Returns:
      String[] an internal array
    • getInternalAllFieldsSet

      public static Set<String> getInternalAllFieldsSet()
      An internal method that should not be called directly by client code.
      Returns:
      String[] an internal array
    • getWritableFields

      public static String[] getWritableFields()
      Gets all writable fields for this business object.
      Returns:
      String[] an array of writable fields
    • getDefaultXMLExportFields

      @Deprecated public static String[] getDefaultXMLExportFields()
      Deprecated.
      Gets the fields that are exported by the hierarchical XML exporter when no fields are specified. This method is no longer relevant since the hierarchical XML exporter has been replaced by the flat XML exporter.
      Returns:
      String[] an array of field names
    • getMinimumXMLExportFields

      public static String[] getMinimumXMLExportFields()
      Gets all fields that are always exported at a minimum by the new flat XML exporter
      Returns:
      String[] an array of exported fields
    • toString

      public String toString()
      Returns a string representation of the object. The output is in XML.
      Overrides:
      toString in class Object
      Returns:
      String a string representation of the object.
    • create

      Creates this ProjectResource object in the database.
      Returns:
      ObjectId the unique ID of the newly created ProjectResource object
      Throws:
      ServerException - if a problem occurred on the server-side
      NetworkException - if a problem occurred in the network layer
      BusinessObjectException - if a problem occurred in the client-side business objects
    • create

      public static ObjectId[] create(Session session, ProjectResource[] projectresources) throws ServerException, NetworkException, BusinessObjectException
      Creates multiple ProjectResource objects in the database.
      Parameters:
      session - the Session object
      projectresources - array of ProjectResource objects to create
      Returns:
      ObjectId[] the array of unique IDs of newly created ProjectResource objects
      Throws:
      ServerException - if a problem occurred on the server-side
      NetworkException - if a problem occurred in the network layer
      BusinessObjectException - if a problem occurred in the client-side business objects
    • load

      public static ProjectResource load(Session session, String[] fields, ObjectId objId) throws ServerException, NetworkException, BusinessObjectException
      Loads a single ProjectResource object from the database.
      Parameters:
      session - the Session object
      fields - fields to load
      objId - unique ID of the ProjectResource object
      Returns:
      ProjectResource the ProjectResource object
      Throws:
      ServerException - if a problem occurred on the server-side
      NetworkException - if a problem occurred in the network layer
      BusinessObjectException - if a problem occurred in the client-side business objects
    • load

      public static BOIterator<ProjectResource> load(Session session, String[] fields, ObjectId[] objIds) throws ServerException, NetworkException, BusinessObjectException
      Loads multiple ProjectResource objects from the database.
      Parameters:
      session - the Session object
      fields - fields to load
      objIds - object ids of the ProjectResource objects
      Returns:
      BOIterator a business object iterator used to get the results of the load request
      Throws:
      ServerException - if a problem occurred on the server-side
      NetworkException - if a problem occurred in the network layer
      BusinessObjectException - if a problem occurred in the client-side business objects
    • update

      Updates this ProjectResource object in the database.
      Throws:
      ServerException - if a problem occurred on the server-side
      NetworkException - if a problem occurred in the network layer
      BusinessObjectException - if a problem occurred in the client-side business objects
    • update

      public static void update(Session session, ProjectResource[] projectresources) throws ServerException, NetworkException, BusinessObjectException
      Updates multiple ProjectResource objects in the database.
      Parameters:
      session - the Session object
      projectresources - array of ProjectResource objects to update
      Throws:
      ServerException - if a problem occurred on the server-side
      NetworkException - if a problem occurred in the network layer
      BusinessObjectException - if a problem occurred in the client-side business objects
    • delete

      Deletes this ProjectResource object from the database.
      Throws:
      ServerException - if a problem occurred on the server-side
      NetworkException - if a problem occurred in the network layer
      BusinessObjectException - if a problem occurred in the client-side business objects
    • delete

      public static void delete(Session session, ProjectResource[] projectresources) throws ServerException, NetworkException, BusinessObjectException
      Deletes multiple ProjectResource objects from the database.
      Parameters:
      session - the Session object
      projectresources - array of ProjectResource objects to delete
      Throws:
      ServerException - if a problem occurred on the server-side
      NetworkException - if a problem occurred in the network layer
      BusinessObjectException - if a problem occurred in the client-side business objects