LIKE or LIKE_IGNORE_CASE doesnot work for tasks/process filter

LIKE or LIKE_IGNORE_CASE doesnot work for tasks or process query. It returns the results as EQUALS .
For eg.
If we have tasks / process with process variable var_1 = “abcd”
We need to search for those tasks/ process which have var_1 starts with “ab”
Was calling /query/tasks API with
name : “var_1”
value : “ab”
operation : “LIKE”

but didnot get desired output.

if we pass
name : “var_1”
value : “abcd”
operation : “LIKE”

We get the result.
Ideally, passing “ab” with “LIKE” operation , should have fetched us the desired results.

The like operation uses the SQL like operator behind the scenes. As a result it’s expecting SQL like wildcards.

Try value ab% or %bc% instead.

Will

It works for process.
But it doesnot work for task query.
For Task it returns
{
“message”: “Bad request”,
“exception”: “Unsupported variable query operation: LIKE_IGNORE_CASE”
}

It appears that the task query is looking for “friendly operation names” like ‘equalsIgnoreCase’ and ‘likeIgnoreCase’ but that likeIgnoreCase is not currently supported.

Is there any specific reason for it to be not supported. Like heavy operation on engine or not very efficient to search tasks using such a filter. It looks like a very obvious requirement to have support for such a filter. Please help.

Opened https://github.com/flowable/flowable-engine/issues/1939 and created PR https://github.com/flowable/flowable-engine/pull/1940

1 Like

As a followup, this has been corrected in the current Master Branch and will become part of the next Flowable release.

1 Like