Class ProjectResourceQuantity
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.
-
Constructor Summary
ConstructorsConstructorDescriptionProjectResourceQuantity(Session session) Class constructor specifying the Session.ProjectResourceQuantity(Session session, ObjectId objId) Class constructor specifying the Session and ObjectId of the object.ProjectResourceQuantity(Session session, ObjectId projectResourceObjectId, Date weekStartDate, Date monthStartDate) Class constructor specifying the Session and the individual components of the multi-part key: ProjectResourceObjectId, WeekStartDate, and MonthStartDate.ProjectResourceQuantity(Session session, com.primavera.infr.db.PrmRowSet rowSet, int iIndex) Class constructor called internally after objects are retrieved from the server. -
Method Summary
Modifier and TypeMethodDescriptioncreate()Creates this ProjectResourceQuantity object in the database.static ObjectId[]create(Session session, ProjectResourceQuantity[] projectresourcequantities) Creates multiple ProjectResourceQuantity objects in the database.static ObjectIdcreateObjectId(ObjectId projectResourceObjectId, Date weekStartDate, Date monthStartDate) Creates a multi-part ObjectId from two individual ObjectIds.voiddelete()Deletes this ProjectResourceQuantity object from the database.static voiddelete(Session session, ProjectResourceQuantity[] projectresourcequantities) Deletes multiple ProjectResourceQuantity objects from the database.static String[]Gets all fields for this business object.booleanGets the Boolean value that determines whether a resource is committed, and so, the resource assignment is stable and unlikely to change.Gets the date this project resource quantity was created.Gets the name of the user that created this project resource quantity.static String[]Deprecated.static String[]Gets all fields that can be filtered.Gets the unique ID of the associated first financial period for this project resource quantity.Gets the value that represents the resource allocation hours for the first financial period for this project resource quantity.Gets the unique ID of the associated second financial period for this project resource quantity.Gets the value that represents the resource allocation hours for the second financial period for this project resource quantity.Gets the unique ID generated by the system.static String[]An internal method that should not be called directly by client code.An internal method that should not be called directly by client code.static String[]An internal method that should not be called directly by client code.booleanGets the boolean value indicating if this business object is related to a Project or Baseline.booleanGets the boolean value indicating if this business object is related to a template Project.Gets the date this project resource quantity was last updated.Gets the name of the user that last updated this project resource quantity.static String[]Gets all fields that are always exported at a minimum by the new flat XML exporterGets the date value that represents the first day of the month.Gets the ObjectId for this object.Gets the unique ID of the associated project.Gets the unique ID of the associated project resource.Gets the value that represents the resource allocation hours per week for this project resource quantity.static String[]Gets all fields that must be set before calling create() on this business object.Gets the unique ID of the associated resource.Gets the unique ID of the associated role.Gets the unique ID of the associated WBS.Gets the date value that represents the first day of the week.static String[]Gets all writable fields for this business object.static ProjectResourceQuantityLoads a single ProjectResourceQuantity object from the database.static BOIterator<ProjectResourceQuantity>Loads multiple ProjectResourceQuantity objects from the database.loadProject(String[] fields) Loads an associated Project object from the database.loadProjectResource(String[] fields) Loads an associated ProjectResource object from the database.loadResource(String[] fields) Loads an associated Resource object from the database.Loads an associated WBS object from the database.voidSets the value that represents the resource allocation hours for the first financial period for this project resource quantity.voidSets the value that represents the resource allocation hours for the second financial period for this project resource quantity.voidSets the unique ID generated by the system.voidSets the date value that represents the first day of the month.voidSets the unique ID of the associated project resource.voidsetQuantity(Unit u) Sets the value that represents the resource allocation hours per week for this project resource quantity.voidSets the date value that represents the first day of the week.toString()Returns a string representation of the object.voidupdate()Updates this ProjectResourceQuantity object in the database.static voidupdate(Session session, ProjectResourceQuantity[] projectresourcequantities) Updates multiple ProjectResourceQuantity objects in the database.Methods inherited from class com.primavera.integration.client.bo.BusinessObject
equals, getMaxFieldLength, getValue, getValue, hashCode, isNull, setEarlyDate, setNull, setObjectIdMethods inherited from class com.primavera.integration.client.BOBase
combineFields
-
Constructor Details
-
ProjectResourceQuantity
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
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 SessionobjId- 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 SessionprojectResourceObjectId- the first ObjectId in the keyweekStartDate- the second ObjectId in the keymonthStartDate- 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 SessionrowSet- the PrmRowSet retrieved from the serveriIndex- 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-sideNetworkException- if a problem occurred in the network layerBusinessObjectException- 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-sideNetworkException- if a problem occurred in the network layerBusinessObjectException- if a problem occurred in the client-side business objects
-
loadWBS
public WBS loadWBS(String[] fields) throws ServerException, NetworkException, BusinessObjectException 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-sideNetworkException- if a problem occurred in the network layerBusinessObjectException- 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-sideNetworkException- if a problem occurred in the network layerBusinessObjectException- if a problem occurred in the client-side business objects
-
getProjectResourceObjectId
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
Gets all fields that can be filtered.- Returns:
- String[] an array of filterable fields
-
getInternalDefaultLoadFields
An internal method that should not be called directly by client code.- Returns:
- String[] an internal array
-
getAllFields
Gets all fields for this business object.- Returns:
- String[] an array of all fields
-
getInternalAllFields
An internal method that should not be called directly by client code.- Returns:
- String[] an internal array
-
getInternalAllFieldsSet
An internal method that should not be called directly by client code.- Returns:
- String[] an internal array
-
getWritableFields
Gets all writable fields for this business object.- Returns:
- String[] an array of writable fields
-
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
Gets all fields that are always exported at a minimum by the new flat XML exporter- Returns:
- String[] an array of exported fields
-
toString
Returns a string representation of the object. The output is in XML. -
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
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:
getObjectIdin classBusinessObject- 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-sideNetworkException- if a problem occurred in the network layerBusinessObjectException- 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 objectprojectresourcequantities- 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-sideNetworkException- if a problem occurred in the network layerBusinessObjectException- if a problem occurred in the client-side business objects
-
load
public static ProjectResourceQuantity load(Session session, String[] fields, ObjectId objId) throws ServerException, NetworkException, BusinessObjectException Loads a single ProjectResourceQuantity object from the database.- Parameters:
session- the Session objectfields- fields to loadobjId- unique ID of the ProjectResourceQuantity object- Returns:
- ProjectResourceQuantity the ProjectResourceQuantity object
- Throws:
ServerException- if a problem occurred on the server-sideNetworkException- if a problem occurred in the network layerBusinessObjectException- if a problem occurred in the client-side business objects
-
load
public static BOIterator<ProjectResourceQuantity> load(Session session, String[] fields, ObjectId[] objIds) throws ServerException, NetworkException, BusinessObjectException Loads multiple ProjectResourceQuantity objects from the database.- Parameters:
session- the Session objectfields- fields to loadobjIds- 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-sideNetworkException- if a problem occurred in the network layerBusinessObjectException- 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-sideNetworkException- if a problem occurred in the network layerBusinessObjectException- 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 objectprojectresourcequantities- array of ProjectResourceQuantity objects to update- Throws:
ServerException- if a problem occurred on the server-sideNetworkException- if a problem occurred in the network layerBusinessObjectException- 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-sideNetworkException- if a problem occurred in the network layerBusinessObjectException- 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 objectprojectresourcequantities- array of ProjectResourceQuantity objects to delete- Throws:
ServerException- if a problem occurred on the server-sideNetworkException- if a problem occurred in the network layerBusinessObjectException- if a problem occurred in the client-side business objects
-