All Routines Enabled
- Last UpdatedJun 06, 2017
- 1 minute read
This example contains the absolute minimum code required to use the COM-based batch function interface with all of the routines enabled. The logic required to continue Batch Manager processing is also provided in the functions that require return values.
using BATCHOBJSRVLib;
using BATCHVBSERVERLib;
namespace BatchFunction
{
public class Hooks :IBatchHook
{
public int BatchInit(object pIBatch)
{
return 1;
}
public void BatchComplete(object pIBatch)
{
}
public int BatchPrepare(object pIBatch)
{
return 1;
}
public void EquipAllocChange(object pIBatch, object pIEquipment)
{
}
public int EvalConnAllocation(object pIBatch, object pIEquipment)
{
return 1;
}
public int EvalUnitAllocation(object pIBatch, object pIEquipment)
{
return 1;
}
public void LogEquipStatus(object pIEquipStatus)
{
}
public void OperationComplete(object pIBatch, string opname, string processinstance)
{
}
public void OperationPrepare(object pIBatch, string opname, string processinstance)
{
}
public void PhaseComplete(object pIBatch, object pIPhase, object pIEquipment)
{
}
public void PhasePrepare(object pIBatch, object pIPhase, object pIEquipment)
{
}
public void RoutineStates(object pIRoutines)
{
// Check to see if you are terminating
if (pIRoutines == null)
{
// You are terminating- Do cleanup and exit
return;
}
// Define required local variable
BORoutines hook_routines = null;
// Enable all of the required routines
hook_routines = (BORoutines)pIRoutines;
hook_routines.RoutineState = BatchRtnConstants.wwAllCOMInterfaces | BatchRtnConstants.wwRoutineStatesOnTerm;
}
public void UnitProcedureComplete(object pIBatch, string unitprocedurename, string processinstance)
{
}
public void UnitProcedurePrepare(object pIBatch, string unitprocedurename, string processinstance)
{
}
}
}