Org.hibernate.hql.ast.QuerySyntaxException: unexpected AST node: query

1 resposta
V

Fala galera,

Estou com um problemão com o hibernate quando utilizo subqueries com CASE WHEN … THEN … ELSE … END. Olhem o HQL:

SELECT NEW MAP((CASE
    WHEN SIZE(tcd.vendedor.vendedorParceiras) > 0 
         THEN  (SELECT vEp.empresaParceira.empresa.razaoSocial FROM VendedorParceira vEp WHERE vEp.vendedor.codVendedor = tcd.vendedor.codVendedor)         
         ELSE (SELECT vPf.pessoa.nome FROM VendedorPf vPf WHERE vPf.vendedor.codVendedor = tcd.vendedor.codVendedor)	   		   
    END 
    ) AS nome 
) 
FROM TabelaComissaoDiferenciada tcd

Quando rodo a query me dá o seguinte erro:

java.lang.IllegalArgumentException: org.hibernate.hql.ast.QuerySyntaxException: unexpected AST node: query

Se no THEN e no ELSE eu colocar qualquer coisa que não seja uma subquery, funciona normalmente. Será que existe alguma solução para isso, eu digo, um modo que permita uma subquery com o CASE

1 Resposta

A

Ea aí conseguiu resolver o problema?

Criado 8 de junho de 2009
Ultima resposta 21 de jan. de 2013
Respostas 1
Participantes 2