IBM Enterprise Records, Version 5.1.+            

Executing a disposition schedule

Execution of a disposition schedule involves calculating the cutoff date, calculating phase dates, and performing associated actions (including cutoff and phase actions) on an entity.

Out-of-the-box Sweep and disposition processing

Out-of-the-box RM application and Disposition Sweep both perform disposition processing. The disposition processing is based entirely on properties and workflows. Properties allow Disposition Sweep and IBM® Enterprise Records to keep track of when to enable workflow launch, indicate which schedule and which phase the entity is currently in. The workflow does all the action such as destroy, review, transfer, and export. Workflow also transfers the entity to the next phase and generates transcripts.

Calculating cutoff-related date and performing cutoff action are initiated by Disposition Sweep. Disposition Sweep is a daemon process that can be configured to execute at a scheduled time. In addition, Disposition Sweep keeps track of the specified event and entities associated with the disposition schedule. When you run the Disposition Sweep program, if the specified event occurs or the specified calendar date arrives, the disposition schedule is triggered and the cutoff date is calculated. Entities remain in the cutoff period for the specified cutoff retention period. Once the cutoff retention is over and the cutoff date arrives, Disposition Sweep automatically launches the cutoff workflow if there is a cutoff workflow associated with the cutoff action, updates the disposition data of the entity and passes the entity to the 1st phase after completing the cutoff workflow. Else if there is no cutoff action then simply trigger to the 1st phase and updates the disposition data.

Entities remain in a phase period for the specified phase retention period. Once the specified phase execution date arrives, user can manually initiate phase action using the RM application. RM application launches workflow if there is a workflow associated with the phase action, updates the disposition data of the entity and passes the entity to the next phase.

Besides use out-of-the-box Disposition Sweep program to execute disposition schedules, you can also execute disposition schedules using RM API classes and interfaces directly, which is shown below.

Executing cutoff

Calculating cutoff
DispositionAllocatableObject object means the object that can associate with a disposition schedule. RecordCategory, RecordFolder and RecordType object are all DispositionAllocatableObject object. To execute cutoff, call the DispositionSchedule.runDisposalTrigger() method, passing the DispositionAllocatableObject object as parameter. This method checks whether the disposal trigger for the DispositionAllocatableObject object has been triggered. If the event has occurred or the calendar date has arrived, this method sets the CurrentPhaseExecutionDate (CPED) and other disposal related data on the object based on the disposal trigger associated with the schedule.
Calculating cutoff-related date and performing cutoff action are initiated by a utility program called DisposalSweep. DisposalSweep is a daemon process that is configured to execute at a scheduled time. In addition, DisposalSweep keeps track of the specified event and entities associated with the disposition schedule. When the specified event occurs or the specified calendar date arrives, the disposition schedule is triggered and the cutoff date is calculated. Entities remain in the cutoff period for the specified cutoff retention period. Once the cutoff retention is over and the cutoff date arrives, DisposalSweep automatically launches the workflows associated with the cutoff action and passes entities to the next phase.
DispositionSchedule loDS = loDispositionAllocatableObject.getAssociatedDisposalSchedule(); 



// Calls the runDisposaltrigger() method of DispositionSchedule and passes 
// the DispositionAllocatableObject object as input parameter 


loDS.runDisposaltrigger(loDispositionAllocatableObject)
Launching cutoff workflow
Entities remain in the cutoff period for the specified cutoff retention period. Once the cutoff retention is over and the cutoff date arrives, then the disposition sweep launches the cutoff workflow using the private method launchCuttOffWorkflow() which takes the argument as RMObjectStore, Entity, Execution Date and VWSession Object.
Transferring to the 1st phase
If at least one Phase object is associated with a disposition schedule, you can transfer the RM entity from cutoff period to the 1st phase. To accomplish that, use DisposableObject.completePhaseExecution() method. This method recalculates the cutoff if there is any change in the associated disposition schedule or the entity and updates the CurrentPhaseExecutionDate and other disposal related properties. If the parameter abTriggerNextPhase is set to true, it sets the cutoff date and other disposal related data and then triggers next phase by internally call DispositionSchedule.triggerNextPhase() method.

Executing phase(s)

If zero or more Phase object(s) are associated with a disposition schedule, you must execute the phases associated with entities in a sequential order.

Launching workflow associated with phase action
After a particular phase is triggered, entities remain in that phase for the time period that is specified in the retention period of that phase. Once the retention period is over, you can launch the workflow associated with the phase action.
Launching the Workflow associated with the Phase Action
If you want to launch the workflow associated with a phase action, call RMBulkOperationsUtil.initiateDisposition() method, passing in an object of RMObjectstore that represents the FPOS, A String array that contains the GUIDs of RM entities for whom disposition needs to be initiatedand VWSession object. This method internally calls the DisposableObject.initiateDisposition() on the entity which takes a VWSession Object as the parameter. This method further validates whether the DisposableObject object can be disposed. For example, it verifies that the DisposableObject object is not on hold and that the cutoff date is not null and CurrentPhaseExecutionDate is less than or equal to the CurrentDate. After these validations, the initiateDisposition method launches the workflow associated with the current phase action and passes entities to the next phase. The following code fragment calls the initiateDisposition method.
//Initiates a disposition on the entity 

public RMBulkOperationResults initiateDisposition(RMObjectStore aoRMOS, String[]asArrObjectIDs, 
   VWSession aoVWSession) throws RMException{ 

//This method gets the DisposableObject for each GUID specified in asArrObjectIDs. 

//Calls the public HashMap initiateDisposition(VWSession loSession) throws RMException on the DisposableObject object.
Transferring to the next phase
Transferring to the next phase uses the same method as transfer to the 1st phase. See Transferring to the 1st phase for more detailed information.


Feedback

Last updated: August 2011


© Copyright IBM Corporation 2011.
This information center is powered by Eclipse technology. (http://www.eclipse.org)