Class Shift
Shifts are used to define shift calendars for resources. A shift is comprised of one or more shift periods. The total duration of all shift periods in a shift always adds up to 24 hours, with one hour being the minimum shift period.
Shift hours are considered when calculating units and prices during leveling. The resource calendar is used to determine when the resource can work; the limits for that period are determined from the shift definition for that resource. The minimum resource availability for every shift must satisfy the minimum demand for the resource so that the resource can be leveled properly. Limits defined outside the boundaries of the shift definition are ignored. Since shifts are defined at the resource level, all projects are leveled using that resource according to the shift definition.
Shift periods may not be directly created or deleted. To access or change the shift periods on a shift, use the shift methods getShiftPeriodStarts(), getShiftPeriodDurations(), addShiftPeriod(), removeShiftPeriod(), and removeAllShiftPeriods().
See Also: Quick reference of Shift fields
-
Constructor Summary
ConstructorsConstructorDescriptionClass constructor specifying the Session.Class constructor specifying the Session and ObjectId of the object.Class constructor called internally after objects are retrieved from the server. -
Method Summary
Modifier and TypeMethodDescriptionvoidaddShiftPeriod(int iStartHour) Add a shift period with the start hour.create()Creates this Shift object in the database.static ObjectId[]Creates multiple Shift objects in the database.voiddelete()Deletes this Shift object from the database.static voidDeletes multiple Shift objects from the database.static String[]Gets all fields for this business object.Gets the date this shift was created.Gets the name of the user that created this shift.static String[]Deprecated.static String[]Gets all fields that can be filtered.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.Gets the date this shift was last updated.Gets the name of the user that last updated this shift.static String[]Gets all fields that are always exported at a minimum by the new flat XML exportergetName()Gets the name of the shift.Gets the unique ID generated by the system.static String[]Gets all fields that must be set before calling create() on this business object.int[]Gets the durations of the shift periods in an array.int[]Gets the start hours of the shift periods in an array.static String[]Gets all writable fields for this business object.static ShiftLoads a single Shift object from the database.static BOIterator<Shift>Loads multiple Shift objects from the database.loadShiftPeriods(String[] fields, String sWhereClause, String sOrderBy) Loads multiple associated ShiftPeriod objects from the database.voidRemove all the shift periods.voidremoveShiftPeriod(int iStartHour) Remove a shift period with the start hour.voidSets the name of the shift.voidSets the unique ID generated by the system.toString()Returns a string representation of the object.voidupdate()Updates this Shift object in the database.static voidUpdates multiple Shift objects in the database.Methods inherited from class com.primavera.integration.client.bo.BusinessObject
equals, getMaxFieldLength, getValue, getValue, hashCode, isNull, setEarlyDate, setNullMethods inherited from class com.primavera.integration.client.BOBase
combineFields
-
Constructor Details
-
Shift
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
-
Shift
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 SessionobjId- the ObjectId- Throws:
BusinessObjectException- if a problem occurred in the client-side business objects
-
Shift
public Shift(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
-
loadShiftPeriods
public BOIterator<ShiftPeriod> loadShiftPeriods(String[] fields, String sWhereClause, String sOrderBy) throws ServerException, NetworkException, BusinessObjectException Loads multiple associated ShiftPeriod objects from the database.- Parameters:
fields- fields to loadsWhereClause- where clausesOrderBy- 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-sideNetworkException- if a problem occurred in the network layerBusinessObjectException- if a problem occurred in the client-side business objects
-
getShiftPeriodStarts
Gets the start hours of the shift periods in an array.- Returns:
- the start hours of the shift periods in an int array
- Throws:
BusinessObjectException- if something was wrong in this Business object
-
getShiftPeriodDurations
Gets the durations of the shift periods in an array.- Returns:
- the durations of the shift periods in an int array
- Throws:
BusinessObjectException- if something was wrong in this Business object
-
addShiftPeriod
Add a shift period with the start hour.- Parameters:
iStartHour- the start hour of the shift period- Throws:
BusinessObjectException- if something was wrong in this Business object
-
removeShiftPeriod
Remove a shift period with the start hour.- Parameters:
iStartHour- the start hour of the shift period- Throws:
BusinessObjectException- if something was wrong in this Business object
-
removeAllShiftPeriods
Remove all the shift periods.- Throws:
BusinessObjectException- if something was wrong in this Business object
-
getObjectId
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:
getObjectIdin classBusinessObject- Returns:
- the value in the field ObjectId
- Throws:
BusinessObjectException- if a problem occurred in the client-side business objects
-
setObjectId
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:
setObjectIdin classBusinessObject- Parameters:
o- the value to set this field to- Throws:
BusinessObjectException- if a problem occurred in the client-side business objects
-
getName
Gets the name of the shift. 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 Name
- Throws:
BusinessObjectException- if a problem occurred in the client-side business objects
-
setName
Sets the name of the shift. This field must contain a valid value in order to create this type of business object in the database.- Parameters:
s- the value to set this field to- Throws:
BusinessObjectException- if a problem occurred in the client-side business objects
-
getCreateDate
Gets the date this shift 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 shift 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 shift.- 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 shift.- Returns:
- the value in the field LastUpdateUser
- 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. -
create
Creates this Shift object in the database.- Returns:
- ObjectId the unique ID of the newly created Shift 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, Shift[] shifts) throws ServerException, NetworkException, BusinessObjectException Creates multiple Shift objects in the database.- Parameters:
session- the Session objectshifts- array of Shift objects to create- Returns:
- ObjectId[] the array of unique IDs of newly created Shift 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 Shift load(Session session, String[] fields, ObjectId objId) throws ServerException, NetworkException, BusinessObjectException Loads a single Shift object from the database.- Parameters:
session- the Session objectfields- fields to loadobjId- unique ID of the Shift object- Returns:
- Shift the Shift 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<Shift> load(Session session, String[] fields, ObjectId[] objIds) throws ServerException, NetworkException, BusinessObjectException Loads multiple Shift objects from the database.- Parameters:
session- the Session objectfields- fields to loadobjIds- object ids of the Shift 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 Shift 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, Shift[] shifts) throws ServerException, NetworkException, BusinessObjectException Updates multiple Shift objects in the database.- Parameters:
session- the Session objectshifts- array of Shift 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 Shift 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, Shift[] shifts) throws ServerException, NetworkException, BusinessObjectException Deletes multiple Shift objects from the database.- Parameters:
session- the Session objectshifts- array of Shift 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
-