Interface IBusinessCase
Every process that is started is a case.
A case belongs to a IBusinessCase.
Use method ICase.getBusinessCase() to get the business case a case belongs to.
If a process is triggered or signaled or started inside the context of an existing business case then it's case is automatically attached to the existing business case.
Use method subCases() to get the cases that are attached to a business case.
Implementation Details:
If a process is started and no IBusinessCase is available then the started case acts as (sub) case and as business case.
As soon as a second case is attached to the IBusinessCase the initial case is copied and the copy acts now as business case whereas the initial case acts only as sub case
now.
The ICase interface defines the functionality all cases (business or sub cases) have. This interface extends the ICase interface with methods
that are only available for business cases.
- Since:
- 6.5
- API:
- This is a public API.
-
Method Summary
Modifier and TypeMethodDescriptionvoiddestroy()Destroys this business case and all sub cases that belong to business case.getStage()Returns theBusinessCaseStageof thisIBusinessCase.Returns the id of the current stage of thisIBusinessCase.Gets the web startable that started the case.getState()Gets the state of the business case.The working time of a business case is the sum of all working times of all tasks of all sub cases.voidsetStageId(StageId stageId) Sets the current stage of thisIBusinessCaseto the given stage id.voidsetStageId(String stageId) Sets the current stage of thisIBusinessCaseto the given stage id.subCases()Gets the subcasesthat belong to thisbusiness case.Methods inherited from interface ch.ivyteam.ivy.workflow.ICase
attachToBusinessCase, customFields, descriptions, documents, getActiveTasks, getApplication, getBusinessCalendar, getBusinessCase, getBusinessRuntime, getBusinessState, getCategory, getCategoryPath, getCreatorTask, getCreatorUser, getCreatorUserName, getDescription, getDetailLink, getEndTimestamp, getFirstTask, getId, getModifiedTimestamp, getName, getOwner, getOwnerName, getPriority, getProcessModel, getProcessModelVersion, getProcessStart, getStartTimestamp, getTasks, getWorkflowContext, getWorkflowEvents, isBusinessCase, isPersistent, names, notes, owners, setBusinessCalendar, setCategoryPath, setCreatorUser, setDescription, setName, setOwner, setPriority, tasks, uuid
-
Method Details
-
subCases
ISubCases subCases()Gets the subcasesthat belong to thisbusiness case.- Returns:
- all (sub) cases of this business case
- Since:
- 6.5
- API:
- This public API is available in Java.
-
getState
CaseState getState()Gets the state of the business case. A business case is in stateCaseState.RUNNINGwhile any of itssub caseis in stateCaseState.CREATEDorCaseState.RUNNING. It changes to stateCaseState.DONEas soon as its lastsub casechanges to stateCaseState.DONE. It changes to stateCaseState.DESTROYEDas soon as its lastsub casechanges to stateCaseState.DESTROYED. -
getWorkingTime
Duration getWorkingTime()The working time of a business case is the sum of all working times of all tasks of all sub cases.- Specified by:
getWorkingTimein interfaceICase- Returns:
- Working time as
Duration.
Returnsnullfor the following situations:- no task has been parked or completed
- the case has been completed before the working time feature was introduced.
- See Also:
- API:
- This public API is available in Java.
-
destroy
void destroy()Destroys this business case and all sub cases that belong to business case. Destroys also all tasks that belong to any of the sub cases of the business case. -
getStage
BusinessCaseStage getStage()Returns theBusinessCaseStageof thisIBusinessCase. TheBusinessCaseStageprovides locale specific information like the name of aBusinessCaseStage, as defined in the CMS. Nevernull.- Returns:
- the current
BusinessCaseStage, corresponding to the current stage id - Since:
- 6.6
- API:
- This public API is available in Java.
-
getStageId
StageId getStageId()Returns the id of the current stage of thisIBusinessCase. Nevernull.- Returns:
- id of the current stage
- Since:
- 6.6
- API:
- This public API is available in Java.
-
setStageId
Sets the current stage of thisIBusinessCaseto the given stage id.- Parameters:
stageId- id of the stage- Since:
- 6.6
- API:
- This public API is available in Java.
-
setStageId
Sets the current stage of thisIBusinessCaseto the given stage id.- Parameters:
stageId- id of the stage- Since:
- 6.7
- API:
- This public API is available in Java.
-
getStartedFrom
IWebStartable getStartedFrom()Gets the web startable that started the case. It can be a process start or a CaseMap start. It can return startables that are not startable anymore because a project is not released on the engine anymore.- Returns:
- web startable the case was started with
- Since:
- 9.3
- API:
- This public API is available in Java.
-