Example usage for org.hibernate SQLQuery uniqueResult

List of usage examples for org.hibernate SQLQuery uniqueResult

Introduction

In this page you can find the example usage for org.hibernate SQLQuery uniqueResult.

Prototype

R uniqueResult();

Source Link

Document

Convenience method to return a single instance that matches the query, or null if the query returns no results.

Usage

From source file:simtra.simtraadmin.dao.ReporteDao.java

public Reporte buscarPorIncidencia(Integer idIncidencia) {
    sesionActual();/*from  w w  w.j  ava  2 s  .co m*/
    StringBuilder sql = new StringBuilder();
    sql.append("SELECT reporte.* ");
    sql.append("FROM reporte, incidencia ");
    sql.append("WHERE reporte.incId = incidencia.incId ");
    sql.append("AND reporte.incId = :idIncidencia ");
    SQLQuery query = sesion.createSQLQuery(sql.toString()).addEntity(Reporte.class);
    query.setInteger("idIncidencia", idIncidencia);
    Reporte objeto = (Reporte) query.uniqueResult();
    return objeto;
}

From source file:uk.ac.ox.it.ords.api.database.services.impl.hibernate.DatabaseServiceImpl.java

License:Apache License

protected Object singleResultQuery(String query) throws Exception {

    Session session = this.getOrdsDBSessionFactory().openSession();
    try {/*from   w  w w . j  a v  a  2  s.co  m*/
        Transaction transaction = session.beginTransaction();
        SQLQuery sqlQuery = session.createSQLQuery(query);
        Object result = sqlQuery.uniqueResult();
        transaction.commit();
        return result;
    } catch (Exception e) {
        log.debug(e.getMessage());
        session.getTransaction().rollback();
        throw e;
    } finally {
        session.close();
    }
}

From source file:util.Cargar.java

public Object resultadoUnico(String QuerySql, Class tipo) {
    sessionHibernate();/*from ww w .ja va2  s  . c  o  m*/
    Object retorno = null;
    try {
        try {
            SQLQuery consulta = st.createSQLQuery(QuerySql);
            consulta.addEntity(tipo);
            retorno = consulta.uniqueResult();
            if (retorno == null) {
                JOptionPane.showMessageDialog(null, "La sentencia no ha retornado ningun valor.", "Aviso",
                        JOptionPane.ERROR_MESSAGE);
            }
        } catch (HibernateException ex) {
            JOptionPane.showMessageDialog(null,
                    "La sentencia Select ha retornado mas de un valor. " + "\n" + ex.getMessage(), "Aviso",
                    JOptionPane.ERROR_MESSAGE);
        }
    } catch (Exception ex) {
        JOptionPane.showMessageDialog(null, "Ha ocurrido un error." + ex.getMessage(), "Aviso",
                JOptionPane.ERROR_MESSAGE);
    }
    return retorno;
}

From source file:util.Cargar.java

public BigDecimal buscarDescuento(String cod_cliente, Integer cod_forma_pago, Date fecha) {
    BigDecimal retorno = BigDecimal.ZERO;

    sessionHibernate();//from w  w w.j  a  v a  2 s  .  com
    String consulta = "From MtClientes Where nroDocum = :nro_docum";
    Query query = st.createQuery(consulta);
    query.setParameter("nro_docum", cod_cliente);
    MtClientes objCliente = (MtClientes) query.uniqueResult();

    if (objCliente == null) {
        JOptionPane.showMessageDialog(null, "No existe el cdigo del cliente", "Error",
                JOptionPane.ERROR_MESSAGE);
    } else {
        String consulta1 = "select max(b.porcentaje_dto) from mt_promociones_cab a inner join mt_promociones_det b on a.id_promo = b.id_promo "
                + "where a.esta_activo = 'S' and a.cod_forma_pago = :cod_forma_pago"
                + " and (a.es_por_fecha = 'N' or (a.fecha_inicio >= :fecha1 and fecha_fin <= :fecha2))"
                + " and b.cod_tipo_cliente = :cod_tipo_cliente";

        SQLQuery query2 = st.createSQLQuery(consulta1);
        query2.setParameter("cod_forma_pago", cod_forma_pago);
        query2.setParameter("fecha1", fecha);
        query2.setParameter("fecha2", fecha);
        query2.setParameter("cod_tipo_cliente", objCliente.getMtTiposClientes().getCodTipoCliente());

        Object descuento = query2.uniqueResult();
        if (descuento != null) {
            retorno = new BigDecimal(descuento.toString());
        }
    }
    return retorno;
}