Pessoal, estou com um problema ao executar um query.
Não estou entendo o pq desse erro.
Meu DAO:
public class IGDao {
public static List<Item> ListaInfo() {
System.out.println("Abrindo sessao para INFORMAÇÔES GERENCIAIS");
Session s = HibernateUtil.getSession();
System.out.println("Sessão IG iniciada com sucesso!!!");
System.out.println("Executando query...");
String sql = "SELECT "
+ " CM_POLO.DS_POLO, "
+ " SUM( DECODE( ES_PRODUTO_FARMACEUTICO.DM_CLASSIFICACAO, '3', CM_ITEM.QTDE, 0 ) ) UNIDADE_PERF, "
+ " SUM( DECODE( ES_PRODUTO_FARMACEUTICO.DM_CLASSIFICACAO, '3', 0, CM_ITEM.QTDE ) ) UNIDADE_MED, "
+ " SUM( DECODE( ES_PRODUTO_FARMACEUTICO.DM_CLASSIFICACAO, '3', CM_ITEM.VL_LIQUIDO_TOTAL, 0 ) ) VALOR_PERF, "
+ " SUM( DECODE( ES_PRODUTO_FARMACEUTICO.DM_CLASSIFICACAO, '3', 0, CM_ITEM.VL_LIQUIDO_TOTAL ) ) VALOR_MED "
+ " FROM CM_POLO, "
+ " ES_PRODUTO_FARMACEUTICO, "
+ " CM_VENDEDOR, "
+ " CM_ITEM, "
+ " CM_MOVIMENTO "
+ " WHERE ES_PRODUTO_FARMACEUTICO.ID_PRODUTO = CM_ITEM.ID_PRODUTO "
+ " AND CM_POLO.ID_POLO = CM_VENDEDOR.ID_POLO "
+ " AND CM_VENDEDOR.ID_VENDEDOR = CM_MOVIMENTO.ID_VENDEDOR "
+ " AND CM_ITEM.ID_MOVIMENTO = CM_MOVIMENTO.ID_MOVIMENTO "
+ " AND CM_MOVIMENTO.DM_CANCELAMENTO <> 'S' "
+ " AND CM_MOVIMENTO.ID_TIPO_NOTA IN ( 1, 10, 11 ) "
+ " AND CM_MOVIMENTO.DT_MOVIMENTO BETWEEN TO_DATE('10/02/2008', 'dd/mm/yyyy') "
+ " AND TO_DATE('12/03/2008', 'dd/mm/yyyy') "
+ " GROUP BY CM_POLO.DS_POLO";
SQLQuery qryIG = s.createSQLQuery(sql).addEntity(Item.class).addEntity(
Movimento.class).addEntity(Vendedor.class)
.addEntity(Polo.class).addEntity(ProdutoFarmaceutico.class);
// qryIG.setParameter("dtInicial", string);
// qryIG.setParameter("dtFinal", string);
// qryIG.setResultTransformer(Transformers.aliasToBean(Item.class));
return qryIG.list();
}
}
Erro Gerado:
16:09:34,384 INFO LongType:182 - could not read column value from result set: ID_MOVIMENTO; Nome de coluna inválido
16:09:34,389 WARN JDBCExceptionReporter:77 - SQL Error: 17006, SQLState: 99999
16:09:34,389 ERROR JDBCExceptionReporter:78 - Nome de coluna inválido
Exception in thread "main" org.hibernate.exception.GenericJDBCException: could not execute query
at org.hibernate.exception.SQLStateConverter.handledNonSpecificException(SQLStateConverter.java:103)
at org.hibernate.exception.SQLStateConverter.convert(SQLStateConverter.java:91)
at org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:43)
at org.hibernate.loader.Loader.doList(Loader.java:2223)
at org.hibernate.loader.Loader.listIgnoreQueryCache(Loader.java:2104)
at org.hibernate.loader.Loader.list(Loader.java:2099)
at org.hibernate.loader.custom.CustomLoader.list(CustomLoader.java:289)
at org.hibernate.impl.SessionImpl.listCustomQuery(SessionImpl.java:1695)
at org.hibernate.impl.AbstractSessionImpl.list(AbstractSessionImpl.java:142)
at org.hibernate.impl.SQLQueryImpl.list(SQLQueryImpl.java:152)
at br.com.fitsistemas.dao.IGDao.ListaInfo(IGDao.java:53)
at br.com.fitsistemas.manager.ItemManager.main(ItemManager.java:15)
Caused by: java.sql.SQLException: Nome de coluna inválido
at oracle.jdbc.driver.SQLStateMapping.newSQLException(SQLStateMapping.java:70)
at oracle.jdbc.driver.DatabaseError.newSQLException(DatabaseError.java:112)
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:173)
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:229)
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:403)
at oracle.jdbc.driver.OracleStatement.getColumnIndex(OracleStatement.java:3366)
at oracle.jdbc.driver.OracleResultSetImpl.findColumn(OracleResultSetImpl.java:2009)
at oracle.jdbc.driver.OracleResultSet.getLong(OracleResultSet.java:440)
at com.mchange.v2.c3p0.impl.NewProxyResultSet.getLong(NewProxyResultSet.java:2625)
at org.hibernate.type.LongType.get(LongType.java:28)
at org.hibernate.type.NullableType.nullSafeGet(NullableType.java:163)
at org.hibernate.type.NullableType.nullSafeGet(NullableType.java:154)
at org.hibernate.loader.Loader.getKeyFromResultSet(Loader.java:1097)
at org.hibernate.loader.Loader.getRowFromResultSet(Loader.java:565)
at org.hibernate.loader.Loader.doQuery(Loader.java:701)
at org.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Loader.java:236)
at org.hibernate.loader.Loader.doList(Loader.java:2220)
... 8 more