Class ResourceAssignmentPeriodActual

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

public class ResourceAssignmentPeriodActual extends BusinessObject

Resource assignment period actuals represent the actual values on a resource assignment during a financial period.

The following rules apply for resource assignment period actuals:

  • They can only be tracked for in-progress or completed activities.
  • Negative values are allowed.
  • If both units and costs are simultaneously updated on a period actual instance, units are the driving value.
  • They must have at least one non-zero field value for a corresponding database record to exist
  • If activity period actuals exist and have valid values for a particular resource type, resource assignment period actuals are created automatically for the first assignment of the corresponding resource type. Thereafter, period actuals can only be tracked on the resource assignment, not at the activity level.
  • Costs can be calculated only when a resource price per unit is defined
  • Updating values in assignment period actuals should update the corresponding activity period values. However, for material resource assignments, the update to activity period actuals occurs only when material cost is changed on the assignment.
  • Creating an assignment period actual value results in the automatic creation of an activity period actual value if it does not already exist.
  • An activity period actual may not exist for a corresponding assignment period actual if only material units are being tracked in the assignment period actual instance.

Note that this business object has a multi-part object ID; its object ID is a combination of its financial period object ID and its resource assignment object ID. The method createObjectId() can be used to create the multi-part object ID from the individual IDs.

See Also:   Quick reference of ResourceAssignmentPeriodActual fields

  • Constructor Details

    • ResourceAssignmentPeriodActual

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

      public ResourceAssignmentPeriodActual(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 FinancialPeriodObjectId and ResourceAssignmentObjectId 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
    • ResourceAssignmentPeriodActual

      public ResourceAssignmentPeriodActual(Session session, ObjectId financialPeriodObjectId, ObjectId resourceAssignmentObjectId) throws BusinessObjectException
      Class constructor specifying the Session and the individual components of the multi-part key: FinancialPeriodObjectId and ResourceAssignmentObjectId. This constructor is most commonly used when update() is intended to be called on this object.
      Parameters:
      session - the Session
      financialPeriodObjectId - the first ObjectId in the key
      resourceAssignmentObjectId - the second ObjectId in the key
      Throws:
      BusinessObjectException - if a problem occurred in the client-side business objects
    • ResourceAssignmentPeriodActual

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

    • loadFinancialPeriod

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

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

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

      public ObjectId getFinancialPeriodObjectId() throws BusinessObjectException
      Gets the unique ID of the associated financial period. 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 FinancialPeriodObjectId
      Throws:
      BusinessObjectException - if a problem occurred in the client-side business objects
    • setFinancialPeriodObjectId

      public void setFinancialPeriodObjectId(ObjectId o) throws BusinessObjectException
      Sets the unique ID of the associated financial period. 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
    • getResourceAssignmentObjectId

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

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

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

      public ObjectId getFinancialPeriodTemplateId() throws BusinessObjectException
      Gets the id of the financial period template to which the financial period belongs.
      Returns:
      the value in the field FinancialPeriodTemplateId
      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
    • getWBSObjectId

      public ObjectId getWBSObjectId() throws BusinessObjectException
      Gets the unique ID of the WBS for the associated activity. 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
    • getResourceType

      public ResourceType getResourceType() throws BusinessObjectException
      Gets the resource type: "Labor", "Nonlabor", or "Material".
      Returns:
      the value in the field ResourceType
      Throws:
      BusinessObjectException - if a problem occurred in the client-side business objects
    • getActualUnits

      public Unit getActualUnits() throws BusinessObjectException
      Gets the actual units on this resource assignment during a financial period.
      Returns:
      the value in the field ActualUnits
      Throws:
      BusinessObjectException - if a problem occurred in the client-side business objects
    • setActualUnits

      public void setActualUnits(Unit u) throws BusinessObjectException
      Sets the actual units on this resource assignment during a financial period.
      Parameters:
      u - the value to set this field to
      Throws:
      BusinessObjectException - if a problem occurred in the client-side business objects
    • getActualCost

      public Cost getActualCost() throws BusinessObjectException
      Gets the actual cost on this resource assignment during a financial period.
      Returns:
      the value in the field ActualCost
      Throws:
      BusinessObjectException - if a problem occurred in the client-side business objects
    • setActualCost

      public void setActualCost(Cost c) throws BusinessObjectException
      Sets the actual cost on this resource assignment during a financial period.
      Parameters:
      c - the value to set this field to
      Throws:
      BusinessObjectException - if a problem occurred in the client-side business objects
    • getCreateDate

      public Date getCreateDate() throws BusinessObjectException
      Gets the date this resource assignment period actual 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 resource assignment period actual 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 resource assignment period actual.
      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 resource assignment period actual.
      Returns:
      the value in the field LastUpdateUser
      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
    • 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 financialPeriodObjectId, ObjectId resourceAssignmentObjectId) throws InvalidValueException
      Creates a multi-part ObjectId from two individual ObjectIds.
      Parameters:
      financialPeriodObjectId - the ObjectId of the associated financialPeriod object.
      resourceAssignmentObjectId - the ObjectId of the associated resourceAssignment 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 FinancialPeriodObjectId and ResourceAssignmentObjectId 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 ResourceAssignmentPeriodActual object in the database.
      Returns:
      ObjectId the unique ID of the newly created ResourceAssignmentPeriodActual 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, ResourceAssignmentPeriodActual[] resourceassignmentperiodactuals) throws ServerException, NetworkException, BusinessObjectException
      Creates multiple ResourceAssignmentPeriodActual objects in the database.
      Parameters:
      session - the Session object
      resourceassignmentperiodactuals - array of ResourceAssignmentPeriodActual objects to create
      Returns:
      ObjectId[] the array of unique IDs of newly created ResourceAssignmentPeriodActual 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 ResourceAssignmentPeriodActual object from the database.
      Parameters:
      session - the Session object
      fields - fields to load
      objId - unique ID of the ResourceAssignmentPeriodActual object
      Returns:
      ResourceAssignmentPeriodActual the ResourceAssignmentPeriodActual 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 ResourceAssignmentPeriodActual objects from the database.
      Parameters:
      session - the Session object
      fields - fields to load
      objIds - object ids of the ResourceAssignmentPeriodActual 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 ResourceAssignmentPeriodActual 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, ResourceAssignmentPeriodActual[] resourceassignmentperiodactuals) throws ServerException, NetworkException, BusinessObjectException
      Updates multiple ResourceAssignmentPeriodActual objects in the database.
      Parameters:
      session - the Session object
      resourceassignmentperiodactuals - array of ResourceAssignmentPeriodActual 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 ResourceAssignmentPeriodActual 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, ResourceAssignmentPeriodActual[] resourceassignmentperiodactuals) throws ServerException, NetworkException, BusinessObjectException
      Deletes multiple ResourceAssignmentPeriodActual objects from the database.
      Parameters:
      session - the Session object
      resourceassignmentperiodactuals - array of ResourceAssignmentPeriodActual 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