Os filtros NeoQL utilizam a linguagem HQL. Ela é um pouco semelhante ao SQL, já que ambas fazem consultas no banco de dados. Porém, a diferença é que o HQL possui um conceito voltado à orientação de objetos.
Além da sintaxe do HQL, é importante saber que ”${}” significa que o Fusion irá buscar a informação do formulário presente em tela.
Alguns exemplos de filtros:
neoId in (select h.neoId from D_cadastroHierarquia h where h.usuario.neoId = ${solicitante.neoId})
No caso, solicitante é um campo presente no formulário principal.
neoId in (select nu.neoId from NeoUser nu join nu.papers pa where pa.name = ”)
idunidade=( CASE WHEN ${unidadeSolicitacao} = ‘12956169’ THEN idunidade ELSE ${unidadeSolicitacao} END )
area.neoId = $origemAreaAgrupadora.neoId
substring(usuario,1,12) in (select usuario from com.neomind.fusion.entity.ext.x.usuariosFuncionarios where usuario = substring(${Solicitante.code},1,12))
Para relacionar usuários do Fusion a um EForm Externo
neoId in (select perm.neoId from D_frmParametroAprovacaoFluxo paf join paf.permissaoUso perm where perm.neoId = #user.neoId)
permissaoUso é um campo do tipo Lista no E-Form principal. Por conta disso, é possível realizar um JOIN nos registros cadastrados neste campo Lista.