workflows = new DBStorage(); workflows.setDBAccess(dbAccess); workflows.setWritebackTable("WF_WORKFLOWS"); workflows.setWhereClause(":SEARCH is null" + " or lower(WORKFLOW) like lower(:SEARCH)" + " or exists (select *" + " from wf_wofl_steps ws" + " join wf_functions f on f.id = ws.func_id" + " where ws.wofl_id = m.id" + " and (lower(f.function) like lower(:SEARCH)" + " or lower(ws.name) like lower(:SEARCH)" + " or lower(f.descr) like lower(:SEARCH)))" + " or exists (select *" + " from wf_wofl_steps ws" + " join wf_wfst_params p on p.wfst_id = ws.id" + " where ws.wofl_id = m.id" + " and (lower(p.name) like lower(:SEARCH)" + " or lower(ws.name) like lower(:SEARCH)" + " or lower(p.value) like lower(:SEARCH)))"); workflows.setDefaultSort(new SortDefinition("WORKFLOW")); workflows.open(); workflows.getMetaData().addColumnMetaData(new ColumnMetaData("SEARCH"));