Class ProjectResourceQuantity

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

public class ProjectResourceQuantity extends BusinessObject

The ProjectResourceQuantity object provides access to resource allocation hours per week for resources assigned to a project at the Project or WBS level. Usually there is one ProjectResourceQuantity object per week, and it corresponds to a record in the wbsrsrc_qty table. However, when a week contains days from more than one month, two ProjectResourceQuantity objects (and so, two records) will exist based on the two week fragments. They both have the same WeekStartDate but their MonthStartDate and week fragment data are different: The first ProjectResourceQuantity object holds data for the first week fragment, and its MonthStartDate has the same month as the WeekStartDate. The second ProjectResourceQuantity object holds data for the second week fragment, and its MonthStartDate is that of the next month.

Note that this business object has a multi-part object ID; its object ID is a combination of its project resource object ID, its week start date, its month start date, and its quantity. The method createObjectId() can be used to create the multi-part object ID from the individual IDs.

See Also:   Quick reference of ProjectResourceQuantity fields

  • Constructor Details

    • ProjectResourceQuantity

      public ProjectResourceQuantity(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
    • ProjectResourceQuantity

      public ProjectResourceQuantity(Session session, ObjectId objId) throws BusinessObjectException
      Class constructor specifying the Session and ObjectId of the object. This constructor is most commonly used when update() is intended to be called on this object. For this particular object, the ObjectId is multi-part, created from the ProjectResourceObjectId, WeekStartDate, and MonthStartDate field values. If you do not have the multi-part ObjectId already, it would be simpler to instead use the constructor that has multiple key parameters.
      Parameters:
      session - the Session
      objId - the ObjectId
      Throws:
      BusinessObjectException - if a problem occurred in the client-side business objects
    • ProjectResourceQuantity

      public ProjectResourceQuantity(Session session, ObjectId projectResourceObjectId, Date weekStartDate, Date monthStartDate) throws BusinessObjectException
      Class constructor specifying the Session and the individual components of the multi-part key: ProjectResourceObjectId, WeekStartDate, and MonthStartDate. This constructor is most commonly used when update() is intended to be called on this object.
      Parameters:
      session - the Session
      projectResourceObjectId - the first ObjectId in the key
      weekStartDate - the second ObjectId in the key
      monthStartDate - the third ObjectId in the key
      Throws:
      BusinessObjectException - if a problem occurred in the client-side business objects
    • ProjectResourceQuantity

      public ProjectResourceQuantity(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

    • loadProjectResource

      public ProjectResource loadProjectResource(String[] fields) throws ServerException, NetworkException, BusinessObjectException
      Loads an associated ProjectResource object from the database.
      Parameters:
      fields - fields to load
      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
    • 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
    • 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
    • getProjectResourceObjectId

      public ObjectId getProjectResourceObjectId() throws BusinessObjectException
      Gets the unique ID of the associated project resource. 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 ProjectResourceObjectId
      Throws:
      BusinessObjectException - if a problem occurred in the client-side business objects
    • setProjectResourceObjectId

      public void setProjectResourceObjectId(ObjectId o) throws BusinessObjectException
      Sets the unique ID of the associated project resource. 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
    • getWeekStartDate

      public Date getWeekStartDate() throws BusinessObjectException
      Gets the date value that represents the first day of the week. 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 WeekStartDate
      Throws:
      BusinessObjectException - if a problem occurred in the client-side business objects
    • setWeekStartDate

      public void setWeekStartDate(Date d) throws BusinessObjectException
      Sets the date value that represents the first day of the week. 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:
      d - the value to set this field to
      Throws:
      BusinessObjectException - if a problem occurred in the client-side business objects
    • getMonthStartDate

      public Date getMonthStartDate() throws BusinessObjectException
      Gets the date value that represents the first day of the month. If the week contains days from two different months, two objects will exist. The first ProjectResourceQuantity object's MonthStartDate is the first day of the month for the first week fragment. The second ProjectResourceQuantity object's MonthStartDate is the first day of the month for the second week fragment. 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 MonthStartDate
      Throws:
      BusinessObjectException - if a problem occurred in the client-side business objects
    • setMonthStartDate

      public void setMonthStartDate(Date d) throws BusinessObjectException
      Sets the date value that represents the first day of the month. If the week contains days from two different months, two objects will exist. The first ProjectResourceQuantity object's MonthStartDate is the first day of the month for the first week fragment. The second ProjectResourceQuantity object's MonthStartDate is the first day of the month for the second week fragment. 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:
      d - the value to set this field to
      Throws:
      BusinessObjectException - if a problem occurred in the client-side business objects
    • getQuantity

      public Unit getQuantity() throws BusinessObjectException
      Gets the value that represents the resource allocation hours per week for this project resource quantity. If the week contains days from two different months, two ProjectResourceQuantity business objects will exist. The first business object's Quantity field represents the hours of the first week fragment (WeekStartDate and MonthStartDate have the same month value). The second business object's Quantity field represents the second week fragment (WeekStartDate and MonthStartDate have different month values).
      Returns:
      the value in the field Quantity
      Throws:
      BusinessObjectException - if a problem occurred in the client-side business objects
    • setQuantity

      public void setQuantity(Unit u) throws BusinessObjectException
      Sets the value that represents the resource allocation hours per week for this project resource quantity. If the week contains days from two different months, two ProjectResourceQuantity business objects will exist. The first business object's Quantity field represents the hours of the first week fragment (WeekStartDate and MonthStartDate have the same month value). The second business object's Quantity field represents the second week fragment (WeekStartDate and MonthStartDate have different month values).
      Parameters:
      u - 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
    • 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
    • getFinancialPeriod1ObjectId

      public ObjectId getFinancialPeriod1ObjectId() throws BusinessObjectException
      Gets the unique ID of the associated first financial period for this project resource quantity.
      Returns:
      the value in the field FinancialPeriod1ObjectId
      Throws:
      BusinessObjectException - if a problem occurred in the client-side business objects
    • getFinancialPeriod2ObjectId

      public ObjectId getFinancialPeriod2ObjectId() throws BusinessObjectException
      Gets the unique ID of the associated second financial period for this project resource quantity.
      Returns:
      the value in the field FinancialPeriod2ObjectId
      Throws:
      BusinessObjectException - if a problem occurred in the client-side business objects
    • getFinancialPeriod1Quantity

      public Unit getFinancialPeriod1Quantity() throws BusinessObjectException
      Gets the value that represents the resource allocation hours for the first financial period for this project resource quantity. If the week contains days from two different months, two ProjectResourceQuantity business objects will exist. The first business object's Quantity field represents the hours of the first week fragment (WeekStartDate and MonthStartDate have the same month value). The second business object's Quantity field represents the second week fragment (WeekStartDate and MonthStartDate have different month values).
      Returns:
      the value in the field FinancialPeriod1Quantity
      Throws:
      BusinessObjectException - if a problem occurred in the client-side business objects
    • setFinancialPeriod1Quantity

      public void setFinancialPeriod1Quantity(Unit u) throws BusinessObjectException
      Sets the value that represents the resource allocation hours for the first financial period for this project resource quantity. If the week contains days from two different months, two ProjectResourceQuantity business objects will exist. The first business object's Quantity field represents the hours of the first week fragment (WeekStartDate and MonthStartDate have the same month value). The second business object's Quantity field represents the second week fragment (WeekStartDate and MonthStartDate have different month values).
      Parameters:
      u - the value to set this field to
      Throws:
      BusinessObjectException - if a problem occurred in the client-side business objects
    • getFinancialPeriod2Quantity

      public Unit getFinancialPeriod2Quantity() throws BusinessObjectException
      Gets the value that represents the resource allocation hours for the second financial period for this project resource quantity. If the week contains days from two different months, two ProjectResourceQuantity business objects will exist. The first business object's Quantity field represents the hours of the first week fragment (WeekStartDate and MonthStartDate have the same month value). The second business object's Quantity field represents the second week fragment (WeekStartDate and MonthStartDate have different month values).
      Returns:
      the value in the field FinancialPeriod2Quantity
      Throws:
      BusinessObjectException - if a problem occurred in the client-side business objects
    • setFinancialPeriod2Quantity

      public void setFinancialPeriod2Quantity(Unit u) throws BusinessObjectException
      Sets the value that represents the resource allocation hours for the second financial period for this project resource quantity. If the week contains days from two different months, two ProjectResourceQuantity business objects will exist. The first business object's Quantity field represents the hours of the first week fragment (WeekStartDate and MonthStartDate have the same month value). The second business object's Quantity field represents the second week fragment (WeekStartDate and MonthStartDate have different month values).
      Parameters:
      u - 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
    • 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
    • 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.
      Returns:
      the value in the field WBSObjectId
      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 quantity 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 quantity 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 quantity.
      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 quantity.
      Returns:
      the value in the field LastUpdateUser
      Throws:
      BusinessObjectException - if a problem occurred in the client-side business objects
    • getFinancialPeriodTmplId

      public ObjectId getFinancialPeriodTmplId() throws BusinessObjectException
      Gets the unique ID generated by the system.
      Returns:
      the value in the field FinancialPeriodTmplId
      Throws:
      BusinessObjectException - if a problem occurred in the client-side business objects
    • setFinancialPeriodTmplId

      public void setFinancialPeriodTmplId(ObjectId o) throws BusinessObjectException
      Sets the unique ID generated by the system.
      Parameters:
      o - the value to set this field to
      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.
    • createObjectId

      public static ObjectId createObjectId(ObjectId projectResourceObjectId, Date weekStartDate, Date monthStartDate) throws InvalidValueException
      Creates a multi-part ObjectId from two individual ObjectIds.
      Parameters:
      projectResourceObjectId - the ObjectId of the associated projectResource object.
      weekStartDate - the ObjectId of the associated weekS object.
      Returns:
      ObjectId the multi-part ObjectId
      Throws:
      InvalidValueException - if one of the input parameters was invalid.
      IllegalArgumentException - if one of the input parameters was null.
    • getObjectId

      public ObjectId getObjectId() throws BusinessObjectException
      Gets the ObjectId for this object. The ObjectId field serves as the primary key for the associated table in the database. For this object, the ObjectId is multi-part, consisting internally of the ProjectResourceObjectId, WeekStartDate, and MonthStartDate fields.
      Overrides:
      getObjectId in class BusinessObject
      Returns:
      ObjectId the multi-part ObjectId of this object
      Throws:
      BusinessObjectException - if the ObjectId fields were not loaded.
    • create

      Creates this ProjectResourceQuantity object in the database.
      Returns:
      ObjectId the unique ID of the newly created ProjectResourceQuantity 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, ProjectResourceQuantity[] projectresourcequantities) throws ServerException, NetworkException, BusinessObjectException
      Creates multiple ProjectResourceQuantity objects in the database.
      Parameters:
      session - the Session object
      projectresourcequantities - array of ProjectResourceQuantity objects to create
      Returns:
      ObjectId[] the array of unique IDs of newly created ProjectResourceQuantity 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

      Loads a single ProjectResourceQuantity object from the database.
      Parameters:
      session - the Session object
      fields - fields to load
      objId - unique ID of the ProjectResourceQuantity object
      Returns:
      ProjectResourceQuantity the ProjectResourceQuantity 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

      Loads multiple ProjectResourceQuantity objects from the database.
      Parameters:
      session - the Session object
      fields - fields to load
      objIds - object ids of the ProjectResourceQuantity 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 ProjectResourceQuantity 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, ProjectResourceQuantity[] projectresourcequantities) throws ServerException, NetworkException, BusinessObjectException
      Updates multiple ProjectResourceQuantity objects in the database.
      Parameters:
      session - the Session object
      projectresourcequantities - array of ProjectResourceQuantity 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 ProjectResourceQuantity 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, ProjectResourceQuantity[] projectresourcequantities) throws ServerException, NetworkException, BusinessObjectException
      Deletes multiple ProjectResourceQuantity objects from the database.
      Parameters:
      session - the Session object
      projectresourcequantities - array of ProjectResourceQuantity 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