Boa Noite, estou tento um problema, ao utilizar o @SqlResultSetMapping, ele sempre retorna o mesmo objeto. já tentei de tudo e nada.
segue abaixo o código:
@SqlResultSetMapping(name = "teste", entities = { @EntityResult(entityClass = br.com.decoder.modelo.EntradaABordoItens.class, fields = {
@FieldResult(name = "codigo", column = "codigo"),
@FieldResult(name = "estoque", column = "codestoque"),
@FieldResult(name = "quantidade", column = "quantidade") }) })
String sql = "select new Long as codigo, estoque.codigo as codestoque, cast(estoque.quantidade - case when isnull(entradaabordoitens.quantidade) then 0 else entradaabordoitens.quantidade end as decimal(10,2)) as quantidade";
sql =sql + " from contasreceber ";
sql =sql + " inner join estoque on estoque.coditem=contasreceber.codigo ";
sql =sql + " left join entradaabordoitens on entradaabordoitens.codestoque=estoque.codigo ";
sql =sql + " where numeroPedido=:numeroPedido and (isnull(entradaabordoitens.codestoque) or estoque.quantidade > entradaabordoitens.quantidade) ";
Query query = em.createNativeQuery(sql, "teste");
query.setParameter("numeroPedido", numeroPedido);
List<EntradaABordoItens> lst = query.getResultList();
o atributo codigo é uma chave primaria.
obrigado a todos desde já!