Так что я пытаюсь сделать оператор Select с помощью HQL.HQL Выбрать с помощью OR
Отборные выглядит следующим образом:
queryParams[1] = new QueryParameter("clientObj", client); // Use Client as obj in hql
queryParams[0] = new QueryParameter("clientIDObj", client.ID);
if (!includeClosedSubTasks)
{
// tasks that aren't completed/closed/cancelled
qryString = "select st
from SubTask st
where st.ParentTask.ParentProject.ParentClient=:clientObj
and st.ParentTaskCategory.VisibleToClient=1 "
+ filter + // more ands
"and st.ParentTaskStatus.ID != 3
and st.ParentTaskStatus.ID != 4 and st.ParentTaskStatus.ID != 8
or st.RaisedByClientID=:clientIDObj
order by st.CreateDateTime";
}
Проще говоря, он должен сделать это:
выберите (а и б, в) или (г) ORDER BY .....
Однако, когда я выполняю этот код, я получаю ошибку синтаксиса запросов с этим innner исключением:
{ "Индекс находился вне диапазона Должно быть не negat. ive и меньше размера коллекции. \ r \ nПараметр: index "}
Как я могу решить эту проблему?