org.activiti.engine.runtime

## Interface ProcessInstanceQuery

- All Superinterfaces:
    Query<ProcessInstanceQuery,ProcessInstance>

      public interface ProcessInstanceQuery
      extends Query<ProcessInstanceQuery,ProcessInstance>

  Allows programmatic querying of `ProcessInstance`s.
  Author:
    Joram Barrez, Tijs Rademakers, Frederik Heremans, Falko Menge

- - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method and Description
    --- | ---
    `ProcessInstanceQuery` | `active()` Only select process instances which are active, which means that neither the process instance nor the corresponding process definition are suspended.
    `ProcessInstanceQuery` | `deploymentId(String deploymentId)` Select the process instances which are defined by a deployment with the given id.
    `ProcessInstanceQuery` | `deploymentIdIn(List<String> deploymentIds)` Select the process instances which are defined by one of the given deployment ids
    `ProcessInstanceQuery` | `endOr()` End an OR statement.
    `ProcessInstanceQuery` | `excludeSubprocesses(boolean excludeSubprocesses)` Exclude sub processes from the query result;
    `ProcessInstanceQuery` | `includeProcessVariables()` Include process variables in the process query result
    `ProcessInstanceQuery` | `involvedUser(String userId)` Select the process instances with which the user with the given id is involved.
    `ProcessInstanceQuery` | `limitProcessInstanceVariables(Integer processInstanceVariablesLimit)` Limit process instance variables
    `ProcessInstanceQuery` | `locale(String locale)` Localize process name and description to specified locale.
    `ProcessInstanceQuery` | `or()` Begin an OR statement.
    `ProcessInstanceQuery` | `orderByProcessDefinitionId()` Order by process definition id (needs to be followed by `Query.asc()` or `Query.desc()`).
    `ProcessInstanceQuery` | `orderByProcessDefinitionKey()` Order by process definition key (needs to be followed by `Query.asc()` or `Query.desc()`).
    `ProcessInstanceQuery` | `orderByProcessInstanceId()` Order by id (needs to be followed by `Query.asc()` or `Query.desc()`).
    `ProcessInstanceQuery` | `orderByTenantId()` Order by tenant id (needs to be followed by `Query.asc()` or `Query.desc()`).
    `ProcessInstanceQuery` | `processDefinitionCategory(String processDefinitionCategory)` Only select process instances whose process definition category is processDefinitionCategory.
    `ProcessInstanceQuery` | `processDefinitionId(String processDefinitionId)` Select the process instances which are defined by a process definition with the given id.
    `ProcessInstanceQuery` | `processDefinitionIds(Set<String> processDefinitionIds)` Select the process instances which are defined by process definitions with the given ids.
    `ProcessInstanceQuery` | `processDefinitionKey(String processDefinitionKey)` Select the process instances which are defined by a process definition with the given key.
    `ProcessInstanceQuery` | `processDefinitionKeys(Set<String> processDefinitionKeys)` Select the process instances which are defined by process definitions with the given keys.
    `ProcessInstanceQuery` | `processDefinitionName(String processDefinitionName)` Select process instances whose process definition name is processDefinitionName
    `ProcessInstanceQuery` | `processDefinitionVersion(Integer processDefinitionVersion)` Only select process instances with a certain process definition version.
    `ProcessInstanceQuery` | `processInstanceBusinessKey(String processInstanceBusinessKey)` Select process instances with the given business key
    `ProcessInstanceQuery` | `processInstanceBusinessKey(String processInstanceBusinessKey, String processDefinitionKey)` Select process instance with the given business key, unique for the given process definition
    `ProcessInstanceQuery` | `processInstanceId(String processInstanceId)` Select the process instance with the given id
    `ProcessInstanceQuery` | `processInstanceIds(Set<String> processInstanceIds)` Select process instances whose id is in the given set of ids
    `ProcessInstanceQuery` | `processInstanceName(String name)` Only select process instances with the given name.
    `ProcessInstanceQuery` | `processInstanceNameLike(String nameLike)` Only select process instances with a name like the given value.
    `ProcessInstanceQuery` | `processInstanceNameLikeIgnoreCase(String nameLikeIgnoreCase)` Only select process instances with a name like the given value, ignoring upper/lower case.
    `ProcessInstanceQuery` | `processInstanceTenantId(String tenantId)` Only select process instances that have the given tenant id.
    `ProcessInstanceQuery` | `processInstanceTenantIdLike(String tenantIdLike)` Only select process instances with a tenant id like the given one.
    `ProcessInstanceQuery` | `processInstanceWithoutTenantId()` Only select process instances that do not have a tenant id.
    `ProcessInstanceQuery` | `subProcessInstanceId(String subProcessInstanceId)` Select the process instance that have as sub process instance the given process instance.
    `ProcessInstanceQuery` | `superProcessInstanceId(String superProcessInstanceId)` Select the process instances which are a sub process instance of the given super process instance.
    `ProcessInstanceQuery` | `suspended()` Only select process instances which are suspended, either because the process instance itself is suspended or because the corresponding process definition is suspended
    `ProcessInstanceQuery` | `variableValueEquals(Object value)` Only select process instances which have at least one global variable with the given value.
    `ProcessInstanceQuery` | `variableValueEquals(String name, Object value)` Only select process instances which have a global variable with the given value.
    `ProcessInstanceQuery` | `variableValueEqualsIgnoreCase(String name, String value)` Only select process instances which have a local string variable with the given value, case insensitive.
    `ProcessInstanceQuery` | `variableValueGreaterThan(String name, Object value)` Only select process instances which have a variable value greater than the passed value.
    `ProcessInstanceQuery` | `variableValueGreaterThanOrEqual(String name, Object value)` Only select process instances which have a global variable value greater than or equal to the passed value.
    `ProcessInstanceQuery` | `variableValueLessThan(String name, Object value)` Only select process instances which have a global variable value less than the passed value.
    `ProcessInstanceQuery` | `variableValueLessThanOrEqual(String name, Object value)` Only select process instances which have a global variable value less than or equal to the passed value.
    `ProcessInstanceQuery` | `variableValueLike(String name, String value)` Only select process instances which have a global variable value like the given value.
    `ProcessInstanceQuery` | `variableValueLikeIgnoreCase(String name, String value)` Only select process instances which have a global variable value like the given value (case insensitive).
    `ProcessInstanceQuery` | `variableValueNotEquals(String name, Object value)` Only select process instances which have a global variable with the given name, but with a different value than the passed value.
    `ProcessInstanceQuery` | `variableValueNotEqualsIgnoreCase(String name, String value)` Only select process instances which have a local string variable which is not the given value, case insensitive.
    `ProcessInstanceQuery` | `withJobException()` Only select process instances that failed due to an exception happening during a job execution.
    `ProcessInstanceQuery` | `withLocalizationFallback()` Instruct localization to fallback to more general locales including the default locale of the JVM if the specified locale is not found.

    - ### Methods inherited from interface org.activiti.engine.query.Query

      `asc, count, desc, list, listPage, singleResult`

- - ### Method Detail

    - #### processInstanceId

          ProcessInstanceQuery processInstanceId(String processInstanceId)

      Select the process instance with the given id

    - #### processInstanceIds

          ProcessInstanceQuery processInstanceIds(Set<String> processInstanceIds)

      Select process instances whose id is in the given set of ids

    - #### processInstanceBusinessKey

          ProcessInstanceQuery processInstanceBusinessKey(String processInstanceBusinessKey)

      Select process instances with the given business key

    - #### processInstanceBusinessKey

          ProcessInstanceQuery processInstanceBusinessKey(String processInstanceBusinessKey,
                                                          String processDefinitionKey)

      Select process instance with the given business key, unique for the given process definition

    - #### processInstanceTenantId

          ProcessInstanceQuery processInstanceTenantId(String tenantId)

      Only select process instances that have the given tenant id.

    - #### processInstanceTenantIdLike

          ProcessInstanceQuery processInstanceTenantIdLike(String tenantIdLike)

      Only select process instances with a tenant id like the given one.

    - #### processInstanceWithoutTenantId

          ProcessInstanceQuery processInstanceWithoutTenantId()

      Only select process instances that do not have a tenant id.

    - #### processDefinitionCategory

          ProcessInstanceQuery processDefinitionCategory(String processDefinitionCategory)

      Only select process instances whose process definition category is processDefinitionCategory.

    - #### processDefinitionName

          ProcessInstanceQuery processDefinitionName(String processDefinitionName)

      Select process instances whose process definition name is processDefinitionName

    - #### processDefinitionVersion

          ProcessInstanceQuery processDefinitionVersion(Integer processDefinitionVersion)

      Only select process instances with a certain process definition version. Particulary useful when used in combination with `processDefinitionKey(String)`

    - #### processDefinitionKey

          ProcessInstanceQuery processDefinitionKey(String processDefinitionKey)

      Select the process instances which are defined by a process definition with the given key.

    - #### processDefinitionKeys

          ProcessInstanceQuery processDefinitionKeys(Set<String> processDefinitionKeys)

      Select the process instances which are defined by process definitions with the given keys.

    - #### processDefinitionId

          ProcessInstanceQuery processDefinitionId(String processDefinitionId)

      Select the process instances which are defined by a process definition with the given id.

    - #### processDefinitionIds

          ProcessInstanceQuery processDefinitionIds(Set<String> processDefinitionIds)

      Select the process instances which are defined by process definitions with the given ids.

    - #### deploymentId

          ProcessInstanceQuery deploymentId(String deploymentId)

      Select the process instances which are defined by a deployment with the given id.

    - #### deploymentIdIn

          ProcessInstanceQuery deploymentIdIn(List<String> deploymentIds)

      Select the process instances which are defined by one of the given deployment ids

    - #### superProcessInstanceId

          ProcessInstanceQuery superProcessInstanceId(String superProcessInstanceId)

      Select the process instances which are a sub process instance of the given super process instance.

    - #### subProcessInstanceId

          ProcessInstanceQuery subProcessInstanceId(String subProcessInstanceId)

      Select the process instance that have as sub process instance the given process instance. Note that there will always be maximum only one such process instance that can be the result of this query.

    - #### excludeSubprocesses

          ProcessInstanceQuery excludeSubprocesses(boolean excludeSubprocesses)

      Exclude sub processes from the query result;

    - #### involvedUser

          ProcessInstanceQuery involvedUser(String userId)

      Select the process instances with which the user with the given id is involved.

    - #### variableValueEquals

          ProcessInstanceQuery variableValueEquals(String name,
                                                   Object value)

      Only select process instances which have a global variable with the given value. The type of variable is determined based on the value, using types configured in `ProcessEngineConfiguration#getVariableTypes()`. Byte-arrays and `Serializable` objects (which are not primitive type wrappers) are not supported.
      Parameters:
        `name` - name of the variable, cannot be null.

    - #### variableValueEquals

          ProcessInstanceQuery variableValueEquals(Object value)

      Only select process instances which have at least one global variable with the given value. The type of variable is determined based on the value, using types configured in `ProcessEngineConfiguration#getVariableTypes()`. Byte-arrays and `Serializable` objects (which are not primitive type wrappers) are not supported.

    - #### variableValueEqualsIgnoreCase

          ProcessInstanceQuery variableValueEqualsIgnoreCase(String name,
                                                             String value)

      Only select process instances which have a local string variable with the given value, case insensitive.

      This method only works if your database has encoding/collation that supports case-sensitive queries. For example, use "collate UTF-8" on MySQL and for MSSQL, select one of the case-sensitive Collations available (MSDN Server Collation Reference).

      Parameters:
        `name` - name of the variable, cannot be null.
        `value` - value of the variable, cannot be null.

    - #### variableValueNotEquals

          ProcessInstanceQuery variableValueNotEquals(String name,
                                                      Object value)

      Only select process instances which have a global variable with the given name, but with a different value than the passed value. Byte-arrays and `Serializable` objects (which are not primitive type wrappers) are not supported.
      Parameters:
        `name` - name of the variable, cannot be null.

    - #### variableValueNotEqualsIgnoreCase

          ProcessInstanceQuery variableValueNotEqualsIgnoreCase(String name,
                                                                String value)

      Only select process instances which have a local string variable which is not the given value, case insensitive.

      This method only works if your database has encoding/collation that supports case-sensitive queries. For example, use "collate UTF-8" on MySQL and for MSSQL, select one of the case-sensitive Collations available (MSDN Server Collation Reference).

      Parameters:
        `name` - name of the variable, cannot be null.
        `value` - value of the variable, cannot be null.

    - #### variableValueGreaterThan

          ProcessInstanceQuery variableValueGreaterThan(String name,
                                                        Object value)

      Only select process instances which have a variable value greater than the passed value. Booleans, Byte-arrays and `Serializable` objects (which are not primitive type wrappers) are not supported.
      Parameters:
        `name` - variable name, cannot be null.
        `value` - variable value, cannot be null.

    - #### variableValueGreaterThanOrEqual

          ProcessInstanceQuery variableValueGreaterThanOrEqual(String name,
                                                               Object value)

      Only select process instances which have a global variable value greater than or equal to the passed value. Booleans, Byte-arrays and `Serializable` objects (which are not primitive type wrappers) are not supported.
      Parameters:
        `name` - variable name, cannot be null.
        `value` - variable value, cannot be null.

    - #### variableValueLessThan

          ProcessInstanceQuery variableValueLessThan(String name,
                                                     Object value)

      Only select process instances which have a global variable value less than the passed value. Booleans, Byte-arrays and `Serializable` objects (which are not primitive type wrappers) are not supported.
      Parameters:
        `name` - variable name, cannot be null.
        `value` - variable value, cannot be null.

    - #### variableValueLessThanOrEqual

          ProcessInstanceQuery variableValueLessThanOrEqual(String name,
                                                            Object value)

      Only select process instances which have a global variable value less than or equal to the passed value. Booleans, Byte-arrays and `Serializable` objects (which are not primitive type wrappers) are not supported.
      Parameters:
        `name` - variable name, cannot be null.
        `value` - variable value, cannot be null.

    - #### variableValueLike

          ProcessInstanceQuery variableValueLike(String name,
                                                 String value)

      Only select process instances which have a global variable value like the given value. This be used on string variables only.
      Parameters:
        `name` - variable name, cannot be null.
        `value` - variable value, cannot be null. The string can include the wildcard character '%' to express like-strategy: starts with (string%), ends with (%string) or contains (%string%).

    - #### variableValueLikeIgnoreCase

          ProcessInstanceQuery variableValueLikeIgnoreCase(String name,
                                                           String value)

      Only select process instances which have a global variable value like the given value (case insensitive). This be used on string variables only.
      Parameters:
        `name` - variable name, cannot be null.
        `value` - variable value, cannot be null. The string can include the wildcard character '%' to express like-strategy: starts with (string%), ends with (%string) or contains (%string%).

    - #### suspended

          ProcessInstanceQuery suspended()

      Only select process instances which are suspended, either because the process instance itself is suspended or because the corresponding process definition is suspended

    - #### active

          ProcessInstanceQuery active()

      Only select process instances which are active, which means that neither the process instance nor the corresponding process definition are suspended.

    - #### processInstanceName

          ProcessInstanceQuery processInstanceName(String name)

      Only select process instances with the given name.

    - #### processInstanceNameLike

          ProcessInstanceQuery processInstanceNameLike(String nameLike)

      Only select process instances with a name like the given value.

    - #### processInstanceNameLikeIgnoreCase

          ProcessInstanceQuery processInstanceNameLikeIgnoreCase(String nameLikeIgnoreCase)

      Only select process instances with a name like the given value, ignoring upper/lower case.

    - #### locale

          ProcessInstanceQuery locale(String locale)

      Localize process name and description to specified locale.

    - #### withLocalizationFallback

          ProcessInstanceQuery withLocalizationFallback()

      Instruct localization to fallback to more general locales including the default locale of the JVM if the specified locale is not found.

    - #### includeProcessVariables

          ProcessInstanceQuery includeProcessVariables()

      Include process variables in the process query result

    - #### limitProcessInstanceVariables

          ProcessInstanceQuery limitProcessInstanceVariables(Integer processInstanceVariablesLimit)

      Limit process instance variables

    - #### withJobException

          ProcessInstanceQuery withJobException()

      Only select process instances that failed due to an exception happening during a job execution.

    - #### or

          ProcessInstanceQuery or()

      Begin an OR statement. Make sure you invoke the endOr method at the end of your OR statement. Only one OR statement is allowed, for the second call to this method an exception will be thrown.

    - #### endOr

          ProcessInstanceQuery endOr()

      End an OR statement. Only one OR statement is allowed, for the second call to this method an exception will be thrown.

    - #### orderByProcessInstanceId

          ProcessInstanceQuery orderByProcessInstanceId()

      Order by id (needs to be followed by `Query.asc()` or `Query.desc()`).

    - #### orderByProcessDefinitionKey

          ProcessInstanceQuery orderByProcessDefinitionKey()

      Order by process definition key (needs to be followed by `Query.asc()` or `Query.desc()`).

    - #### orderByProcessDefinitionId

          ProcessInstanceQuery orderByProcessDefinitionId()

      Order by process definition id (needs to be followed by `Query.asc()` or `Query.desc()`).

    - #### orderByTenantId

          ProcessInstanceQuery orderByTenantId()

      Order by tenant id (needs to be followed by `Query.asc()` or `Query.desc()`).

Copyright © 2016 Alfresco. All rights reserved.