Questions Tagged With ivyhttps://answers.axonivy.com/tags/ivy/?type=rss&user=lttungquestions tagged <span class="tag">ivy</span>enThu, 18 May 2017 02:59:45 -0400Extend Task Json Queryhttps://answers.axonivy.com/questions/2629/extend-task-json-query<p>I have a Task Query as json to filter tasks by states: SUSPENDED, RESUMED, PARKED and order by priority:</p> <pre><code>TaskQuery stateQuery = TaskQuery.create().where().state().isEqual(TaskState.SUSPENDED).or().state().isEqual(TaskState.RESUMED).or().state().isEqual(TaskState.PARKED).orderBy().priority(); </code></pre> <p>After that, I would like to extend this query: filtering by ((suspended or resumed or parked states) and applicationId) order by priority but it is not as my expectation:</p> <pre><code>Way 1: TaskQuery.fromJson(stateQueryJson).where().and().applicationId().isEqual(1); </code></pre> <p>The result: SELECT * FROM IWA_Task WHERE (Column(IWA_TaskQuery.State) = 4 || Column(IWA_TaskQuery.State) = 5 || (Column(IWA_TaskQuery.State) = 8 &amp;&amp; Column(IWA_TaskQuery.ApplicationId) = 1)) ORDER BY Column(CurrentPriority) ASCENDING</p> <p>==&gt; <strong>Tasks with Suspended state and Resumed state are not filtered by applicationId</strong></p> <pre><code>Way 2: TaskQuery.create().where().and(TaskQuery.fromJson(stateQuery.asJson())).and().applicationId().isEqual(1) </code></pre> <p>The result: SELECT * FROM IWA_Task WHERE ((Column(IWA_TaskQuery.State) = 4 || Column(IWA_TaskQuery.State) = 5 || Column(IWA_TaskQuery.State) = 8) &amp;&amp; Column(IWA_TaskQuery.ApplicationId) = 1) </p> <p>==&gt; <strong>Priority order is lost</strong></p> <p>Do you have any suggestions? Or is it a bug of task json query?</p>lttungThu, 18 May 2017 02:59:45 -0400https://answers.axonivy.com/questions/2629/extend-task-json-queryivytask-query