Class CaseQuery.FilterQuery
- java.lang.Object
-
- ch.ivyteam.ivy.persistence.query.Query<ICase>
-
- ch.ivyteam.ivy.workflow.query.CaseQuery
-
- ch.ivyteam.ivy.workflow.query.CaseQuery.FilterLink
-
- ch.ivyteam.ivy.workflow.query.CaseQuery.FilterQuery
-
- All Implemented Interfaces:
CaseQuery.IFilterableColumns
,CaseQuery.IFilterLink
,CaseQuery.IFilterQuery
- Enclosing class:
- CaseQuery
public static class CaseQuery.FilterQuery extends CaseQuery.FilterLink implements CaseQuery.IFilterQuery
Provides filter functionality forICase
Example:
Corresponds to SQL:CaseQuery.businessCases().where().customVarCharField1().isEqual("Hello World").and().customDecimalField2().isGreaterThan(15.3);
SELECT * FROM IWA_IWA_Case WHERE CustomVarCharField1 = 'Hello World' AND CustomDecimalField1 > 15.3
- API:
- This is a public API.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class ch.ivyteam.ivy.workflow.query.CaseQuery
CaseQuery.AggregationQuery, CaseQuery.FilterLink, CaseQuery.FilterQuery, CaseQuery.GroupByQuery, CaseQuery.IAggregationQuery, CaseQuery.ICaseStateFilterQuery, CaseQuery.IClobColumnFilterQuery, CaseQuery.IColumnFilterQuery, CaseQuery.ICustomFieldAggregationQuery, CaseQuery.ICustomFieldFilterQuery, CaseQuery.ICustomFieldGroupBy, CaseQuery.ICustomFieldOrderBy, CaseQuery.IDateColumnFilterQuery, CaseQuery.IFilterableColumns, CaseQuery.IFilterLink, CaseQuery.IFilterQuery, CaseQuery.IGroupByQueryColumns, CaseQuery.IIntegerColumnFilterQuery, CaseQuery.INumberColumnFilterQuery, CaseQuery.IOrderByQueryColumns, CaseQuery.IPatternColumnFilterQuery, CaseQuery.IStringColumnFilterQuery, CaseQuery.IWorkflowPriorityFilterQuery, CaseQuery.OrderByColumnQuery, CaseQuery.OrderByQuery
-
-
Method Summary
All Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description CaseQuery.IStringColumnFilterQuery
additionalProperty(String key)
Deprecated.CaseQuery.IIntegerColumnFilterQuery
applicationId()
Prepares a where statement for the columnApplicationId
.
Must be followed by a call to a condition method.CaseQuery.IStringColumnFilterQuery
businessCalendar()
Prepares a where statement for the columnBusinessCalendar
.
Must be followed by a call to a condition method.CaseQuery.IIntegerColumnFilterQuery
businessCaseId()
Prepares a where statement for the columnBusinessCaseId
.
Must be followed by a call to a condition method.CaseQuery.INumberColumnFilterQuery
businessRuntime()
Prepares a where statement for the columnBusinessRuntime
.
Must be followed by a call to a condition method.CaseQuery.FilterLink
canWorkOn(ISecurityMember member)
Filters all cases where the security member (user or role) can work on at least one task.CaseQuery.FilterLink
canWorkOn(IUserToken userToken)
Filters all cases where the user token can work on at least one task.CaseQuery.IIntegerColumnFilterQuery
caseId()
Prepares a where statement for the columnCaseId
.
Must be followed by a call to a condition method.CaseQuery.IStringColumnFilterQuery
category()
Prepares a where statement for the columnCategory
.
Must be followed by a call to a condition method.CaseQuery.IIntegerColumnFilterQuery
creatorTaskId()
Prepares a where statement for the columnCreatorTaskId
.
Must be followed by a call to a condition method.CaseQuery.IStringColumnFilterQuery
creatorUserDisplayName()
Prepares a where statement for the columnCreatorUserDisplayName
.
Must be followed by a call to a condition method.CaseQuery.IIntegerColumnFilterQuery
creatorUserId()
Prepares a where statement for the columnCreatorUserId
.
Must be followed by a call to a condition method.CaseQuery.IStringColumnFilterQuery
creatorUserName()
Prepares a where statement for the columnCreatorUserName
.
Must be followed by a call to a condition method.CaseQuery.FilterLink
currentUserIsInvolved()
Filters all cases the current session user is involved in.CaseQuery.FilterLink
currentUserOrHisRolesAreInvolved()
Filters all cases the current user or any of his roles are involved in.CaseQuery.ICustomFieldFilterQuery
customField()
Prepares a where statement for a custom field.
Must be followed by a call to a field value type.CaseQuery.IClobColumnFilterQuery
description()
Prepares a where statement for the columnDescription
.
Must be followed by a call to a condition method.CaseQuery.IClobColumnFilterQuery
displayDescriptionTemplate()
Prepares a where statement for the columnDisplayDescriptionTemplate
.
Must be followed by a call to a condition method.CaseQuery.IStringColumnFilterQuery
displayNameTemplate()
Prepares a where statement for the columnDisplayNameTemplate
.
Must be followed by a call to a condition method.CaseQuery.IDateColumnFilterQuery
endTimestamp()
Prepares a where statement for the columnEndTimestamp
.
Must be followed by a call to a condition method.CaseQuery.IIntegerColumnFilterQuery
environmentId()
Prepares a where statement for the columnEnvironmentId
.
Must be followed by a call to a condition method.CaseQuery.FilterLink
hasStarted(String memberName, String applicationName)
Filters all cases where the security member with given member name (user or role) in the given application has started.CaseQuery.FilterLink
isInvolved(ISecurityMember member)
Filters all cases the security member is involved in.
If the given security member is a user, this method is equivalent toCaseQuery.IFilterableColumns.userIsInvolved(ch.ivyteam.ivy.security.IUser)
. If the given security member is a role, this method is equivalent toCaseQuery.IFilterableColumns.roleIsInvolved(ch.ivyteam.ivy.security.IRole)
.CaseQuery.FilterLink
isInvolved(String memberName, String applicationName)
Filters all cases where the security member with given member name (user or role) in the given application is involved in.
Compared to the methodisInvolved(ISecurityMember)
, this method evaluates the correspondingISecurityMember
on query execution.CaseQuery.IStringColumnFilterQuery
name()
Prepares a where statement for the columnName
.
Must be followed by a call to a condition method.CaseQuery.FilterQuery
not(CaseQuery otherQuery)
Adds a condition, which negates a set of where conditions given by theotherQuery
with a NOT expression.
Only the where clause of the givenotherQuery
is considered.CaseQuery.IStringColumnFilterQuery
ownerName()
Prepares a where statement for the columnOwnerName
.
Must be followed by a call to a condition method.CaseQuery.IIntegerColumnFilterQuery
ownerRoleId()
Prepares a where statement for the columnOwnerRoleId
.
Must be followed by a call to a condition method.CaseQuery.IIntegerColumnFilterQuery
ownerUserId()
Prepares a where statement for the columnOwnerUserId
.
Must be followed by a call to a condition method.CaseQuery.IWorkflowPriorityFilterQuery
priority()
Prepares a where statement for the columnPriority
.
Must be followed by a call to a condition method.CaseQuery.IIntegerColumnFilterQuery
processModelId()
Prepares a where statement for the columnProcessModelId
.
Must be followed by a call to a condition method.CaseQuery.FilterLink
roleCanWorkOn(IRole role)
Filters all cases where the role can work on at least one task.CaseQuery.FilterLink
roleIsInvolved(IRole role)
Filters all cases the role is involved in.CaseQuery.FilterLink
roleIsInvolved(String roleName, String applicationName)
Filters all cases where the role with given name in the given application is involved in.CaseQuery.IStringColumnFilterQuery
stage()
Prepares a where statement for the columnStage
.
Must be followed by a call to a condition method.CaseQuery.IDateColumnFilterQuery
startTimestamp()
Prepares a where statement for the columnStartTimestamp
.
Must be followed by a call to a condition method.CaseQuery.ICaseStateFilterQuery
state()
Prepares a where statement for the columnState
.
Must be followed by a call to a condition method.CaseQuery.FilterLink
tasks(TaskQuery taskQuery)
Adds an expression to the where clause that selects those cases that have at least one matching task for the giventaskQuery
.CaseQuery.IIntegerColumnFilterQuery
taskStartId()
Prepares a where statement for the columnTaskStartId
.
Must be followed by a call to a condition method.CaseQuery.FilterLink
triggeredByTasks(TaskQuery taskQuery)
Adds an expression to the where clause that selects those cases that have been created with a Trigger process element by tasks which matches the giventaskQuery
.CaseQuery.FilterLink
userCanWorkOn(IUser user)
Filters all cases where the user can work on at least one task.CaseQuery.FilterLink
userIsInvolved(IUser user)
Filters all cases the user is involved in.CaseQuery.FilterLink
userIsInvolved(String userName, String applicationName)
Filters all cases where the user with given name in the given application is involved in.CaseQuery.FilterLink
userOrHisRolesAreInvolved(IUser user)
Filters all cases the user or any of his roles are involved in.CaseQuery.FilterLink
userOrHisRolesAreInvolved(String userName, String applicationName)
Filters all cases the user or any of his roles are involved in.CaseQuery.INumberColumnFilterQuery
workingTime()
Prepares a where statement for the columnWorkingTime
.
Must be followed by a call to a condition method.-
Methods inherited from class ch.ivyteam.ivy.workflow.query.CaseQuery.FilterLink
and, and, andOverall, andOverall, or, or
-
Methods inherited from class ch.ivyteam.ivy.workflow.query.CaseQuery
aggregate, businessCases, create, executor, groupBy, orderBy, subCases, where
-
Methods inherited from interface ch.ivyteam.ivy.workflow.query.CaseQuery.IFilterLink
and, and, andOverall, andOverall, or, or
-
-
-
-
Method Detail
-
tasks
public CaseQuery.FilterLink tasks(TaskQuery taskQuery)
Description copied from interface:CaseQuery.IFilterableColumns
Adds an expression to the where clause that selects those cases that have at least one matching task for the given
taskQuery
.This method considers only the where clause of the given
taskQuery
. All other parts are ignored.Example:
Get all cases that have tasks in state PARKEDimport ch.ivyteam.ivy.workflow.ICase; import ch.ivyteam.ivy.workflow.TaskState; import ch.ivyteam.ivy.workflow.query.TaskQuery; import ch.ivyteam.ivy.workflow.query.CaseQuery; CaseQuery query = CaseQuery.businessCases().where().tasks(TaskQuery.create().where().state().isEqual(TaskState.PARKED)); List<ICase> casesWithParkedTasks = ivy.wf.getCaseQueryExecutor().getResults(query);
- Specified by:
tasks
in interfaceCaseQuery.IFilterableColumns
- Parameters:
taskQuery
- task query with where clause to filter the tasks- Returns:
- the where query builder, for further building
- See Also:
CaseQuery.IFilterableColumns.tasks(ch.ivyteam.ivy.workflow.query.TaskQuery)
- API:
- This public API is available in IvyScript and Java. It has the visibility EXPERT.
-
triggeredByTasks
public CaseQuery.FilterLink triggeredByTasks(TaskQuery taskQuery)
Description copied from interface:CaseQuery.IFilterableColumns
Adds an expression to the where clause that selects those cases that have been created with a Trigger process element by tasks which matches the given
taskQuery
.Cases can be triggered by tasks by using the Trigger process element.
This method considers only the where clause of the given
taskQuery
. All other parts are ignored.Example:
Get all cases that were created by tasks with kind code "Order"import ch.ivyteam.ivy.workflow.ICase; import ch.ivyteam.ivy.workflow.TaskState; import ch.ivyteam.ivy.workflow.query.TaskQuery; import ch.ivyteam.ivy.workflow.query.CaseQuery; CaseQuery query = CaseQuery.businessCases().where().triggeredByTasks(TaskQuery.create().where().kindCode().isEqual("Order")); List<ICase> casesCreatedByTasksOfProcessOrder = ivy.wf.getCaseQueryExecutor().getResults(query);
- Specified by:
triggeredByTasks
in interfaceCaseQuery.IFilterableColumns
- Parameters:
taskQuery
- task query with where clause to filter the tasks- Returns:
- the where query builder, for further building
- See Also:
CaseQuery.IFilterableColumns.triggeredByTasks(ch.ivyteam.ivy.workflow.query.TaskQuery)
- API:
- This public API is available in IvyScript and Java. It has the visibility EXPERT.
-
isInvolved
public CaseQuery.FilterLink isInvolved(ISecurityMember member)
Description copied from interface:CaseQuery.IFilterableColumns
Filters all cases the security member is involved in.
- If the given security member is a user, this method is equivalent to
CaseQuery.IFilterableColumns.userIsInvolved(ch.ivyteam.ivy.security.IUser)
. - If the given security member is a role, this method is equivalent to
CaseQuery.IFilterableColumns.roleIsInvolved(ch.ivyteam.ivy.security.IRole)
.
- Specified by:
isInvolved
in interfaceCaseQuery.IFilterableColumns
- Returns:
- the query for further composition
- See Also:
ExtendedCaseQuery.IFilterQuery.isInvolved(ch.ivyteam.ivy.security.ISecurityMember)
- API:
- This public API is available in IvyScript and Java. It has the visibility EXPERT.
- If the given security member is a user, this method is equivalent to
-
canWorkOn
public CaseQuery.FilterLink canWorkOn(ISecurityMember member)
Description copied from interface:CaseQuery.IFilterableColumns
Filters all cases where the security member (user or role) can work on at least one task.- Specified by:
canWorkOn
in interfaceCaseQuery.IFilterableColumns
- Parameters:
member
- the security member (user or role)- Returns:
- the query for further composition
- See Also:
CaseQuery.IFilterableColumns.canWorkOn(ch.ivyteam.ivy.security.IUserToken)
- API:
- This public API is available in IvyScript and Java. It has the visibility EXPERT.
-
canWorkOn
public CaseQuery.FilterLink canWorkOn(IUserToken userToken)
Description copied from interface:CaseQuery.IFilterableColumns
Filters all cases where the user token can work on at least one task.- Specified by:
canWorkOn
in interfaceCaseQuery.IFilterableColumns
- Parameters:
userToken
- the user token- Returns:
- the query for further composition
- See Also:
CaseQuery.IFilterableColumns.canWorkOn(ch.ivyteam.ivy.security.ISecurityMember)
- API:
- This public API is available in IvyScript and Java. It has the visibility EXPERT.
-
isInvolved
public CaseQuery.FilterLink isInvolved(String memberName, String applicationName)
Description copied from interface:CaseQuery.IFilterableColumns
Filters all cases where the security member with given member name (user or role) in the given application is involved in.
Compared to the methodisInvolved(ISecurityMember)
, this method evaluates the correspondingISecurityMember
on query execution.Example:
Get all tasks where the current user or the user 'Joe' is involved in:import ch.ivyteam.ivy.workflow.ICase; import ch.ivyteam.ivy.workflow.query.CaseQuery; CaseQuery query = CaseQuery.businessCases() .where().isInvolved("#Joe", "MyApp") // note: to convert a user name to a member name a '#' is added as prefix .or().isInvolved(ivy.session.getSessionUser().getMemberName(), "MyApp"); List<ICase> cases = ivy.wf.getCaseQueryExecutor().getResults(query);
- Specified by:
isInvolved
in interfaceCaseQuery.IFilterableColumns
- Parameters:
memberName
- e.g. a role "TopManagementRole", e.g. a user must be prefixed with # "#Joe"applicationName
- e.g. "MyApplication"- Returns:
- the query for further composition
- See Also:
TaskQuery.IFilterableColumns.userIsInvolved(ch.ivyteam.ivy.security.IUser)
,TaskQuery.IFilterableColumns.userIsInvolved(String, String)
,CaseQuery.IFilterableColumns.isInvolved(ch.ivyteam.ivy.security.ISecurityMember)
,CaseQuery.IFilterableColumns.currentUserIsInvolved()
,CaseQuery.IFilterableColumns.userIsInvolved(ch.ivyteam.ivy.security.IUser)
,CaseQuery.IFilterableColumns.userIsInvolved(String, String)
,CaseQuery.IFilterableColumns.roleIsInvolved(ch.ivyteam.ivy.security.IRole)
,CaseQuery.IFilterableColumns.roleIsInvolved(String, String)
- API:
- This public API is available in IvyScript and Java. It has the visibility EXPERT.
-
currentUserIsInvolved
public CaseQuery.FilterLink currentUserIsInvolved()
Description copied from interface:CaseQuery.IFilterableColumns
Filters all cases the current session user is involved in. The current session user is involved in a case if
- the current session user is the creator of the case
the
current session user is involved
in at least one task of the case
The current session user is involved in a task if- the current session user could work on the task
- the current session user is working at the task right now
- the current session user has completed the task
- the current session user has worked on the task without completing it and now it is no longer accessible for him. Either because the task was completed by someone else, was reassigned, ...
- the current session user can work on the task but it is
delayed
Example:
import ch.ivyteam.ivy.workflow.query.CaseQuery; import ch.ivyteam.ivy.workflow.ICase; CaseQuery query = CaseQuery.businessCases().where().currentUserIsInvolved(); List<ICase> sessionInvolvedCases = ivy.wf.getCaseQueryExecutor().getResults(query);
- Specified by:
currentUserIsInvolved
in interfaceCaseQuery.IFilterableColumns
- Returns:
- the query for further composition
- See Also:
TaskQuery.IFilterableColumns.userIsInvolved(ch.ivyteam.ivy.security.IUser)
,TaskQuery.IFilterableColumns.userIsInvolved(String, String)
,CaseQuery.IFilterableColumns.isInvolved(ch.ivyteam.ivy.security.ISecurityMember)
,CaseQuery.IFilterableColumns.isInvolved(String, String)
,CaseQuery.IFilterableColumns.userIsInvolved(ch.ivyteam.ivy.security.IUser)
,CaseQuery.IFilterableColumns.userIsInvolved(String, String)
,CaseQuery.IFilterableColumns.roleIsInvolved(ch.ivyteam.ivy.security.IRole)
,CaseQuery.IFilterableColumns.roleIsInvolved(String, String)
- API:
- This public API is available in IvyScript and Java. It has the visibility EXPERT.
-
currentUserOrHisRolesAreInvolved
public CaseQuery.FilterLink currentUserOrHisRolesAreInvolved()
Description copied from interface:CaseQuery.IFilterableColumns
Filters all cases the current user or any of his roles are involved in. See
CaseQuery.IFilterableColumns.currentUserIsInvolved()
for a description of when the current user is involved in a case andCaseQuery.IFilterableColumns.roleIsInvolved(ch.ivyteam.ivy.security.IRole)
for when a role is involved in a case.Example:
import ch.ivyteam.ivy.workflow.query.CaseQuery; import ch.ivyteam.ivy.workflow.ICase; import IUser; IUser user = ivy.session.getSessionUser(); CaseQuery query = CaseQuery.businessCases().where().currentUserOrHisRolesAreInvolved(); List<ICase> userInvolvedCases = ivy.wf.getCaseQueryExecutor().getResults(query);
- Specified by:
currentUserOrHisRolesAreInvolved
in interfaceCaseQuery.IFilterableColumns
- Returns:
- the query for further composition
- See Also:
CaseQuery.IFilterableColumns.userOrHisRolesAreInvolved(ch.ivyteam.ivy.security.IUser)
,CaseQuery.IFilterableColumns.userOrHisRolesAreInvolved(String, String)
,CaseQuery.IFilterableColumns.isInvolved(ch.ivyteam.ivy.security.ISecurityMember)
,CaseQuery.IFilterableColumns.isInvolved(String, String)
,CaseQuery.IFilterableColumns.currentUserIsInvolved()
,CaseQuery.IFilterableColumns.userIsInvolved(ch.ivyteam.ivy.security.IUser)
,CaseQuery.IFilterableColumns.userIsInvolved(String, String)
,CaseQuery.IFilterableColumns.roleIsInvolved(ch.ivyteam.ivy.security.IRole)
,CaseQuery.IFilterableColumns.roleIsInvolved(String, String)
,TaskQuery.IFilterableColumns.currentUserOrHisRolesAreInvolved()
,TaskQuery.IFilterableColumns.userOrHisRolesAreInvolved(ch.ivyteam.ivy.security.IUser)
,TaskQuery.IFilterableColumns.userOrHisRolesAreInvolved(String, String)
- API:
- This public API is available in IvyScript and Java. It has the visibility EXPERT.
-
roleIsInvolved
public CaseQuery.FilterLink roleIsInvolved(IRole role)
Description copied from interface:CaseQuery.IFilterableColumns
Filters all cases the role is involved in. A role is involved in a case if the role is involved in at least one task of the case.
A
role is involved
in a task if- the task is assigned to the role. Either before or after the expiry.
- the role becomes responsible for a task after expiry but the task has not yet expired.
- the task is assigned to the role but is
delayed
- the task is assigned to a sub or parent role of the role
Example:
import ch.ivyteam.ivy.workflow.query.CaseQuery; import ch.ivyteam.ivy.workflow.ITask; import ch.ivyteam.ivy.security.IRole; IRole role = ivy.session.getSecurityContext().findRole("Admin"); CaseQuery query = CaseQuery.businessCases().where().roleIsInvolved(role); List<ICase> userInvolvedCases = ivy.wf.getCaseQueryExecutor().getResults(query);
- Specified by:
roleIsInvolved
in interfaceCaseQuery.IFilterableColumns
- Returns:
- the query for further composition
- See Also:
ExtendedCaseQuery.IFilterQuery.roleIsInvolved(ch.ivyteam.ivy.security.IRole)
- API:
- This public API is available in IvyScript and Java. It has the visibility EXPERT.
-
roleIsInvolved
public CaseQuery.FilterLink roleIsInvolved(String roleName, String applicationName)
Description copied from interface:CaseQuery.IFilterableColumns
Filters all cases where the role with given name in the given application is involved in.
Compared to the method
roleIsInvolved(IRole)
, this method evaluates the correspondingIRole
on query execution.This method is equivalent to
CaseQuery.IFilterableColumns.isInvolved(String, String)
- Specified by:
roleIsInvolved
in interfaceCaseQuery.IFilterableColumns
- Parameters:
roleName
- e.g. "TopManagementRole"- Returns:
- the query for further composition
- See Also:
TaskQuery.IFilterableColumns.userIsInvolved(ch.ivyteam.ivy.security.IUser)
,TaskQuery.IFilterableColumns.userIsInvolved(String, String)
,CaseQuery.IFilterableColumns.isInvolved(ch.ivyteam.ivy.security.ISecurityMember)
,CaseQuery.IFilterableColumns.isInvolved(String, String)
,CaseQuery.IFilterableColumns.currentUserIsInvolved()
,CaseQuery.IFilterableColumns.userIsInvolved(ch.ivyteam.ivy.security.IUser)
,CaseQuery.IFilterableColumns.userIsInvolved(String, String)
,CaseQuery.IFilterableColumns.roleIsInvolved(ch.ivyteam.ivy.security.IRole)
- API:
- This public API is available in IvyScript and Java. It has the visibility EXPERT.
-
userIsInvolved
public CaseQuery.FilterLink userIsInvolved(IUser user)
Description copied from interface:CaseQuery.IFilterableColumns
Filters all cases the user is involved in. A user is involved in a case if
- the user is the creator of the case
the
user is involved
in at least one task of the case
The user is involved in a task if- the user could work on the task
- the user is working at the task right now
- the user has completed the task
- the user has worked on the task without completing it and now it is no longer accessible for him. Either because the task was completed by someone else, was reassigned, ...
- the user can work on the task but it is
delayed
Example:
import ch.ivyteam.ivy.workflow.query.CaseQuery; import ch.ivyteam.ivy.workflow.ICase; import ch.ivyteam.ivy.security.IUser; IUser user = ivy.session.getSessionUser(); CaseQuery query = CaseQuery.businessCases().where().userIsInvolved(user); List<ICase> userInvolvedCases = ivy.wf.getCaseQueryExecutor().getResults(query);
- Specified by:
userIsInvolved
in interfaceCaseQuery.IFilterableColumns
- Returns:
- the query for further composition
- See Also:
ExtendedCaseQuery.IFilterQuery.userIsInvolved(ch.ivyteam.ivy.security.IUser)
- API:
- This public API is available in IvyScript and Java. It has the visibility EXPERT.
-
userIsInvolved
public CaseQuery.FilterLink userIsInvolved(String userName, String applicationName)
Description copied from interface:CaseQuery.IFilterableColumns
Filters all cases where the user with given name in the given application is involved in.Compared to the method
userIsInvolved(IUser)
, this method evaluates the correspondingIUser
on query execution.This method is equivalent to
isInvolved("#" + userName, appName)
- Specified by:
userIsInvolved
in interfaceCaseQuery.IFilterableColumns
- Parameters:
userName
- e.g. "Joe"- Returns:
- the query for further composition
- See Also:
TaskQuery.IFilterableColumns.userIsInvolved(ch.ivyteam.ivy.security.IUser)
,TaskQuery.IFilterableColumns.userIsInvolved(String, String)
,CaseQuery.IFilterableColumns.isInvolved(ch.ivyteam.ivy.security.ISecurityMember)
,CaseQuery.IFilterableColumns.isInvolved(String, String)
,CaseQuery.IFilterableColumns.currentUserIsInvolved()
,CaseQuery.IFilterableColumns.userIsInvolved(ch.ivyteam.ivy.security.IUser)
,CaseQuery.IFilterableColumns.roleIsInvolved(ch.ivyteam.ivy.security.IRole)
,CaseQuery.IFilterableColumns.roleIsInvolved(String, String)
- API:
- This public API is available in IvyScript and Java. It has the visibility EXPERT.
-
userOrHisRolesAreInvolved
public CaseQuery.FilterLink userOrHisRolesAreInvolved(IUser user)
Description copied from interface:CaseQuery.IFilterableColumns
Filters all cases the user or any of his roles are involved in. See
CaseQuery.IFilterableColumns.userIsInvolved(ch.ivyteam.ivy.security.IUser)
for a description of when a user is involved in a case andCaseQuery.IFilterableColumns.roleIsInvolved(ch.ivyteam.ivy.security.IRole)
for when a role is involved in a case.Example:
import ch.ivyteam.ivy.workflow.query.CaseQuery; import ch.ivyteam.ivy.workflow.ICase; import IUser; IUser user = ivy.session.getSessionUser(); CaseQuery query = CaseQuery.businessCases().where().userOrHisRolesAreInvolved(user); List<ICase> userInvolvedCases = ivy.wf.getCaseQueryExecutor().getResults(query);
- Specified by:
userOrHisRolesAreInvolved
in interfaceCaseQuery.IFilterableColumns
- Returns:
- the query for further composition
- See Also:
CaseQuery.IFilterableColumns.userOrHisRolesAreInvolved(String, String)
,CaseQuery.IFilterableColumns.currentUserOrHisRolesAreInvolved()
,CaseQuery.IFilterableColumns.isInvolved(ch.ivyteam.ivy.security.ISecurityMember)
,CaseQuery.IFilterableColumns.isInvolved(String, String)
,CaseQuery.IFilterableColumns.currentUserIsInvolved()
,CaseQuery.IFilterableColumns.userIsInvolved(ch.ivyteam.ivy.security.IUser)
,CaseQuery.IFilterableColumns.userIsInvolved(String, String)
,CaseQuery.IFilterableColumns.roleIsInvolved(ch.ivyteam.ivy.security.IRole)
,CaseQuery.IFilterableColumns.roleIsInvolved(String, String)
,TaskQuery.IFilterableColumns.userOrHisRolesAreInvolved(ch.ivyteam.ivy.security.IUser)
,TaskQuery.IFilterableColumns.userOrHisRolesAreInvolved(String, String)
,TaskQuery.IFilterableColumns.currentUserOrHisRolesAreInvolved()
- API:
- This public API is available in IvyScript and Java. It has the visibility EXPERT.
-
userOrHisRolesAreInvolved
public CaseQuery.FilterLink userOrHisRolesAreInvolved(String userName, String applicationName)
Description copied from interface:CaseQuery.IFilterableColumns
Filters all cases the user or any of his roles are involved in. See
CaseQuery.IFilterableColumns.userIsInvolved(ch.ivyteam.ivy.security.IUser)
for a description of when a user is involved in a case andCaseQuery.IFilterableColumns.roleIsInvolved(ch.ivyteam.ivy.security.IRole)
for when a role is involved in a case.Example:
import ch.ivyteam.ivy.workflow.query.CaseQuery; import ch.ivyteam.ivy.workflow.ICase; import IUser; CaseQuery query = CaseQuery.businessCases().where().userOrHisRolesAreInvolved("Joe", "CRM"); List<ICase> userInvolvedCases = ivy.wf.getCaseQueryExecutor().getResults(query);
- Specified by:
userOrHisRolesAreInvolved
in interfaceCaseQuery.IFilterableColumns
- Parameters:
userName
- e.g. "Joe"- Returns:
- the query for further composition
- See Also:
CaseQuery.IFilterableColumns.userOrHisRolesAreInvolved(ch.ivyteam.ivy.security.IUser)
,CaseQuery.IFilterableColumns.currentUserOrHisRolesAreInvolved()
,CaseQuery.IFilterableColumns.isInvolved(ch.ivyteam.ivy.security.ISecurityMember)
,CaseQuery.IFilterableColumns.isInvolved(String, String)
,CaseQuery.IFilterableColumns.currentUserIsInvolved()
,CaseQuery.IFilterableColumns.userIsInvolved(ch.ivyteam.ivy.security.IUser)
,CaseQuery.IFilterableColumns.userIsInvolved(String, String)
,CaseQuery.IFilterableColumns.roleIsInvolved(ch.ivyteam.ivy.security.IRole)
,CaseQuery.IFilterableColumns.roleIsInvolved(String, String)
,TaskQuery.IFilterableColumns.userOrHisRolesAreInvolved(String, String)
,TaskQuery.IFilterableColumns.userOrHisRolesAreInvolved(ch.ivyteam.ivy.security.IUser)
,TaskQuery.IFilterableColumns.currentUserOrHisRolesAreInvolved()
- API:
- This public API is available in IvyScript and Java. It has the visibility EXPERT.
-
userCanWorkOn
public CaseQuery.FilterLink userCanWorkOn(IUser user)
Description copied from interface:CaseQuery.IFilterableColumns
Filters all cases where the user can work on at least one task.- Specified by:
userCanWorkOn
in interfaceCaseQuery.IFilterableColumns
- Returns:
- the query for further composition
- API:
- This public API is available in IvyScript and Java. It has the visibility EXPERT.
-
roleCanWorkOn
public CaseQuery.FilterLink roleCanWorkOn(IRole role)
Description copied from interface:CaseQuery.IFilterableColumns
Filters all cases where the role can work on at least one task.- Specified by:
roleCanWorkOn
in interfaceCaseQuery.IFilterableColumns
- Returns:
- the query for further composition
- API:
- This public API is available in IvyScript and Java. It has the visibility EXPERT.
-
hasStarted
public CaseQuery.FilterLink hasStarted(String memberName, String applicationName)
Description copied from interface:CaseQuery.IFilterableColumns
Filters all cases where the security member with given member name (user or role) in the given application has started.Compared to the method
hasStarted(ISecurityMember)
, this method evaluates the correspondingISecurityMember
on query execution.Get all tasks where the current user or the user 'Joe' has started:
import ch.ivyteam.ivy.workflow.ICase; import ch.ivyteam.ivy.workflow.query.CaseQuery; CaseQuery query = CaseQuery.businessCases() .where().hasStarted("#Joe", "MyApp") // note: to convert a user name to a member name a '#' is added as prefix .or().hasStarted(ivy.session.getSessionUser().getMemberName(), "MyApp"); List<ICase> cases = ivy.wf.getCaseQueryExecutor().getResults(query);
- Specified by:
hasStarted
in interfaceCaseQuery.IFilterableColumns
- Parameters:
memberName
- e.g. a role "TopManagementRole", e.g. a user must be prefixed with # "#Joe"applicationName
- e.g. "MyApplication"- Returns:
- the query for further composition
- See Also:
CaseQuery.IFilterableColumns.currentUserHasStarted()
,CaseQuery.IFilterableColumns.hasStarted(ch.ivyteam.ivy.security.ISecurityMember)
- API:
- This public API is available in IvyScript and Java. It has the visibility EXPERT.
-
customField
public CaseQuery.ICustomFieldFilterQuery customField()
Description copied from interface:CaseQuery.IFilterableColumns
Prepares a where statement for a custom field.
Must be followed by a call to a field value type.Example:
import ch.ivyteam.ivy.workflow.ICase; import ch.ivyteam.ivy.workflow.query.CaseQuery; CaseQuery query = CaseQuery.businessCases().where().customField().stringField("myCustomField").isEqualTo("valueToFind")"; List<ICase> casesWithMatchingField = ivy.wf.getCaseQueryExecutor().getResults(query);
- Specified by:
customField
in interfaceCaseQuery.IFilterableColumns
- Returns:
- the query for further composition
- API:
- This public API is available in IvyScript and Java. It has the visibility EXPERT.
-
additionalProperty
@Deprecated public CaseQuery.IStringColumnFilterQuery additionalProperty(String key)
Deprecated.Description copied from interface:CaseQuery.IFilterableColumns
Prepares a where statement for an additional property value.
Must be followed by a call to a condition method.- Specified by:
additionalProperty
in interfaceCaseQuery.IFilterableColumns
- Parameters:
key
- the additional property key- Returns:
- the query for further composition
- API:
- This public API is available in IvyScript and Java. It has the visibility EXPERT.
-
not
public CaseQuery.FilterQuery not(CaseQuery otherQuery)
Adds a condition, which negates a set of where conditions given by the
otherQuery
with a NOT expression.
Only the where clause of the givenotherQuery
is considered. All other parts are ignored.SQL part:
NOT([otherSqlExpression])
Example:
Corresponds to SQL:CaseQuery subQuery = CaseQuery.businessCases().where() .customVarCharField1().equals("a").or() .customVarCharField2().equals("b") CaseQuery query = CaseQuery.businessCases().where() .not(subQuery)
SELECT * FROM IWA_IWA_Case WHERE NOT( customVarCharField1 = 'a' OR customVarCharField2 = 'b')
- Specified by:
not
in interfaceCaseQuery.IFilterableColumns
- Parameters:
otherQuery
- Query from which the negated where part will be added to the current query.- Returns:
- query for further composition
- API:
- This public API is available in IvyScript and Java. It has the visibility EXPERT.
-
caseId
public CaseQuery.IIntegerColumnFilterQuery caseId()
Description copied from interface:CaseQuery.IFilterableColumns
Prepares a where statement for the column
CaseId
.
Must be followed by a call to a condition method.- Specified by:
caseId
in interfaceCaseQuery.IFilterableColumns
- Returns:
- query for further composition
- See Also:
CaseQuery.IFilterableColumns.caseId()
- API:
- This public API is available in IvyScript and Java. It has the visibility EXPERT.
-
businessCaseId
public CaseQuery.IIntegerColumnFilterQuery businessCaseId()
Description copied from interface:CaseQuery.IFilterableColumns
Prepares a where statement for the column
BusinessCaseId
.
Must be followed by a call to a condition method.- Specified by:
businessCaseId
in interfaceCaseQuery.IFilterableColumns
- Returns:
- query for further composition
- See Also:
CaseQuery.IFilterableColumns.businessCaseId()
- API:
- This public API is available in IvyScript and Java. It has the visibility EXPERT.
-
applicationId
public CaseQuery.IIntegerColumnFilterQuery applicationId()
Description copied from interface:CaseQuery.IFilterableColumns
Prepares a where statement for the column
ApplicationId
.
Must be followed by a call to a condition method.- Specified by:
applicationId
in interfaceCaseQuery.IFilterableColumns
- Returns:
- query for further composition
- See Also:
CaseQuery.IFilterableColumns.applicationId()
- API:
- This public API is available in IvyScript and Java. It has the visibility EXPERT.
-
processModelId
public CaseQuery.IIntegerColumnFilterQuery processModelId()
Description copied from interface:CaseQuery.IFilterableColumns
Prepares a where statement for the column
ProcessModelId
.
Must be followed by a call to a condition method.- Specified by:
processModelId
in interfaceCaseQuery.IFilterableColumns
- Returns:
- query for further composition
- See Also:
CaseQuery.IFilterableColumns.processModelId()
- API:
- This public API is available in IvyScript and Java. It has the visibility EXPERT.
-
taskStartId
public CaseQuery.IIntegerColumnFilterQuery taskStartId()
Description copied from interface:CaseQuery.IFilterableColumns
Prepares a where statement for the column
TaskStartId
.
Must be followed by a call to a condition method.- Specified by:
taskStartId
in interfaceCaseQuery.IFilterableColumns
- Returns:
- query for further composition
- See Also:
CaseQuery.IFilterableColumns.taskStartId()
- API:
- This public API is available in IvyScript and Java. It has the visibility EXPERT.
-
creatorUserId
public CaseQuery.IIntegerColumnFilterQuery creatorUserId()
Description copied from interface:CaseQuery.IFilterableColumns
Prepares a where statement for the column
CreatorUserId
.
Must be followed by a call to a condition method.- Specified by:
creatorUserId
in interfaceCaseQuery.IFilterableColumns
- Returns:
- query for further composition
- See Also:
CaseQuery.IFilterableColumns.creatorUserId()
- API:
- This public API is available in IvyScript and Java. It has the visibility EXPERT.
-
creatorUserName
public CaseQuery.IStringColumnFilterQuery creatorUserName()
Description copied from interface:CaseQuery.IFilterableColumns
Prepares a where statement for the column
CreatorUserName
.
Must be followed by a call to a condition method.- Specified by:
creatorUserName
in interfaceCaseQuery.IFilterableColumns
- Returns:
- query for further composition
- See Also:
CaseQuery.IFilterableColumns.creatorUserName()
- API:
- This public API is available in IvyScript and Java. It has the visibility EXPERT.
-
creatorUserDisplayName
public CaseQuery.IStringColumnFilterQuery creatorUserDisplayName()
Description copied from interface:CaseQuery.IFilterableColumns
Prepares a where statement for the column
CreatorUserDisplayName
.
Must be followed by a call to a condition method.- Specified by:
creatorUserDisplayName
in interfaceCaseQuery.IFilterableColumns
- Returns:
- query for further composition
- See Also:
CaseQuery.IFilterableColumns.creatorUserDisplayName()
- API:
- This public API is available in IvyScript and Java. It has the visibility EXPERT.
-
creatorTaskId
public CaseQuery.IIntegerColumnFilterQuery creatorTaskId()
Description copied from interface:CaseQuery.IFilterableColumns
Prepares a where statement for the column
CreatorTaskId
.
Must be followed by a call to a condition method.- Specified by:
creatorTaskId
in interfaceCaseQuery.IFilterableColumns
- Returns:
- query for further composition
- See Also:
CaseQuery.IFilterableColumns.creatorTaskId()
- API:
- This public API is available in IvyScript and Java. It has the visibility EXPERT.
-
environmentId
public CaseQuery.IIntegerColumnFilterQuery environmentId()
Description copied from interface:CaseQuery.IFilterableColumns
Prepares a where statement for the column
EnvironmentId
.
Must be followed by a call to a condition method.- Specified by:
environmentId
in interfaceCaseQuery.IFilterableColumns
- Returns:
- query for further composition
- See Also:
CaseQuery.IFilterableColumns.environmentId()
- API:
- This public API is available in IvyScript and Java. It has the visibility EXPERT.
-
displayNameTemplate
public CaseQuery.IStringColumnFilterQuery displayNameTemplate()
Description copied from interface:CaseQuery.IFilterableColumns
Prepares a where statement for the column
DisplayNameTemplate
.
Must be followed by a call to a condition method.- Specified by:
displayNameTemplate
in interfaceCaseQuery.IFilterableColumns
- Returns:
- query for further composition
- See Also:
CaseQuery.IFilterableColumns.displayNameTemplate()
- API:
- This public API is available in IvyScript and Java. It has the visibility EXPERT.
-
name
public CaseQuery.IStringColumnFilterQuery name()
Description copied from interface:CaseQuery.IFilterableColumns
Prepares a where statement for the column
Name
.
Must be followed by a call to a condition method.- Specified by:
name
in interfaceCaseQuery.IFilterableColumns
- Returns:
- query for further composition
- See Also:
CaseQuery.IFilterableColumns.name()
- API:
- This public API is available in IvyScript and Java. It has the visibility EXPERT.
-
displayDescriptionTemplate
public CaseQuery.IClobColumnFilterQuery displayDescriptionTemplate()
Description copied from interface:CaseQuery.IFilterableColumns
Prepares a where statement for the column
DisplayDescriptionTemplate
.
Must be followed by a call to a condition method.- Specified by:
displayDescriptionTemplate
in interfaceCaseQuery.IFilterableColumns
- Returns:
- query for further composition
- See Also:
CaseQuery.IFilterableColumns.displayDescriptionTemplate()
- API:
- This public API is available in IvyScript and Java. It has the visibility EXPERT.
-
description
public CaseQuery.IClobColumnFilterQuery description()
Description copied from interface:CaseQuery.IFilterableColumns
Prepares a where statement for the column
Description
.
Must be followed by a call to a condition method.- Specified by:
description
in interfaceCaseQuery.IFilterableColumns
- Returns:
- query for further composition
- See Also:
CaseQuery.IFilterableColumns.description()
- API:
- This public API is available in IvyScript and Java. It has the visibility EXPERT.
-
startTimestamp
public CaseQuery.IDateColumnFilterQuery startTimestamp()
Description copied from interface:CaseQuery.IFilterableColumns
Prepares a where statement for the column
StartTimestamp
.
Must be followed by a call to a condition method.- Specified by:
startTimestamp
in interfaceCaseQuery.IFilterableColumns
- Returns:
- query for further composition
- See Also:
CaseQuery.IFilterableColumns.startTimestamp()
- API:
- This public API is available in IvyScript and Java. It has the visibility EXPERT.
-
endTimestamp
public CaseQuery.IDateColumnFilterQuery endTimestamp()
Description copied from interface:CaseQuery.IFilterableColumns
Prepares a where statement for the column
EndTimestamp
.
Must be followed by a call to a condition method.- Specified by:
endTimestamp
in interfaceCaseQuery.IFilterableColumns
- Returns:
- query for further composition
- See Also:
CaseQuery.IFilterableColumns.endTimestamp()
- API:
- This public API is available in IvyScript and Java. It has the visibility EXPERT.
-
businessCalendar
public CaseQuery.IStringColumnFilterQuery businessCalendar()
Description copied from interface:CaseQuery.IFilterableColumns
Prepares a where statement for the column
BusinessCalendar
.
Must be followed by a call to a condition method.- Specified by:
businessCalendar
in interfaceCaseQuery.IFilterableColumns
- Returns:
- query for further composition
- See Also:
CaseQuery.IFilterableColumns.businessCalendar()
- API:
- This public API is available in IvyScript and Java. It has the visibility EXPERT.
-
workingTime
public CaseQuery.INumberColumnFilterQuery workingTime()
Description copied from interface:CaseQuery.IFilterableColumns
Prepares a where statement for the column
WorkingTime
.
Must be followed by a call to a condition method.- Specified by:
workingTime
in interfaceCaseQuery.IFilterableColumns
- Returns:
- query for further composition
- See Also:
CaseQuery.IFilterableColumns.workingTime()
- API:
- This public API is available in IvyScript and Java. It has the visibility EXPERT.
-
businessRuntime
public CaseQuery.INumberColumnFilterQuery businessRuntime()
Description copied from interface:CaseQuery.IFilterableColumns
Prepares a where statement for the column
BusinessRuntime
.
Must be followed by a call to a condition method.- Specified by:
businessRuntime
in interfaceCaseQuery.IFilterableColumns
- Returns:
- query for further composition
- See Also:
CaseQuery.IFilterableColumns.businessRuntime()
- API:
- This public API is available in IvyScript and Java. It has the visibility EXPERT.
-
state
public CaseQuery.ICaseStateFilterQuery state()
Description copied from interface:CaseQuery.IFilterableColumns
Prepares a where statement for the column
State
.
Must be followed by a call to a condition method.- Specified by:
state
in interfaceCaseQuery.IFilterableColumns
- Returns:
- query for further composition
- See Also:
CaseQuery.IFilterableColumns.state()
- API:
- This public API is available in IvyScript and Java. It has the visibility EXPERT.
-
priority
public CaseQuery.IWorkflowPriorityFilterQuery priority()
Description copied from interface:CaseQuery.IFilterableColumns
Prepares a where statement for the column
Priority
.
Must be followed by a call to a condition method.- Specified by:
priority
in interfaceCaseQuery.IFilterableColumns
- Returns:
- query for further composition
- See Also:
CaseQuery.IFilterableColumns.priority()
- API:
- This public API is available in IvyScript and Java. It has the visibility EXPERT.
-
stage
public CaseQuery.IStringColumnFilterQuery stage()
Description copied from interface:CaseQuery.IFilterableColumns
Prepares a where statement for the column
Stage
.
Must be followed by a call to a condition method.- Specified by:
stage
in interfaceCaseQuery.IFilterableColumns
- Returns:
- query for further composition
- See Also:
CaseQuery.IFilterableColumns.stage()
- API:
- This public API is available in IvyScript and Java. It has the visibility EXPERT.
-
ownerRoleId
public CaseQuery.IIntegerColumnFilterQuery ownerRoleId()
Description copied from interface:CaseQuery.IFilterableColumns
Prepares a where statement for the column
OwnerRoleId
.
Must be followed by a call to a condition method.- Specified by:
ownerRoleId
in interfaceCaseQuery.IFilterableColumns
- Returns:
- query for further composition
- See Also:
CaseQuery.IFilterableColumns.ownerRoleId()
- API:
- This public API is available in IvyScript and Java. It has the visibility EXPERT.
-
ownerUserId
public CaseQuery.IIntegerColumnFilterQuery ownerUserId()
Description copied from interface:CaseQuery.IFilterableColumns
Prepares a where statement for the column
OwnerUserId
.
Must be followed by a call to a condition method.- Specified by:
ownerUserId
in interfaceCaseQuery.IFilterableColumns
- Returns:
- query for further composition
- See Also:
CaseQuery.IFilterableColumns.ownerUserId()
- API:
- This public API is available in IvyScript and Java. It has the visibility EXPERT.
-
ownerName
public CaseQuery.IStringColumnFilterQuery ownerName()
Description copied from interface:CaseQuery.IFilterableColumns
Prepares a where statement for the column
OwnerName
.
Must be followed by a call to a condition method.- Specified by:
ownerName
in interfaceCaseQuery.IFilterableColumns
- Returns:
- query for further composition
- See Also:
CaseQuery.IFilterableColumns.ownerName()
- API:
- This public API is available in IvyScript and Java. It has the visibility EXPERT.
-
category
public CaseQuery.IStringColumnFilterQuery category()
Description copied from interface:CaseQuery.IFilterableColumns
Prepares a where statement for the column
Category
.
Must be followed by a call to a condition method.- Specified by:
category
in interfaceCaseQuery.IFilterableColumns
- Returns:
- query for further composition
- See Also:
CaseQuery.IFilterableColumns.category()
- API:
- This public API is available in IvyScript and Java. It has the visibility EXPERT.
-
-