Example usage for org.hibernate Query setFirstResult

List of usage examples for org.hibernate Query setFirstResult

Introduction

In this page you can find the example usage for org.hibernate Query setFirstResult.

Prototype

@Override
    Query<R> setFirstResult(int startPosition);

Source Link

Usage

From source file:com.lp.server.anfrage.fastlanereader.AnfrageHandler.java

License:Open Source License

/**
 * gets the data page for the specified row using the current query. The row
 * at rowIndex will be located in the middle of the page.
 * /* w  ww .ja  va 2  s .co  m*/
 * @param rowIndex
 *            diese Zeile soll selektiert sein
 * @return QueryResult das Ergebnis der Abfrage
 * @throws EJBExceptionLP
 *             Ausnahme
 * @see UseCaseHandler#getPageAt(java.lang.Integer)
 */
public QueryResult getPageAt(Integer rowIndex) throws EJBExceptionLP {
    QueryResult result = null;
    SessionFactory factory = FLRSessionFactory.getFactory();
    Session session = null;
    try {
        int colCount = getTableInfo().getColumnClasses().length;
        int pageSize = AnfrageHandler.PAGE_SIZE;
        int startIndex = Math.max(rowIndex.intValue() - (pageSize / 2), 0);
        int endIndex = startIndex + pageSize - 1;

        session = factory.openSession();
        String queryString = this.getFromClause() + this.buildWhereClause() + this.buildOrderByClause();
        // myLogger.info("HQL: " + queryString);
        Query query = session.createQuery(queryString);
        query.setFirstResult(startIndex);
        query.setMaxResults(pageSize);
        List<?> resultList = query.list();
        Iterator<?> resultListIterator = resultList.iterator();

        Object[][] rows = new Object[resultList.size()][colCount];
        int row = 0;
        int col = 0;

        while (resultListIterator.hasNext()) {
            // FLRAnfrage anfrage = (FLRAnfrage) resultListIterator.next();
            FLRAnfrage anfrage = (FLRAnfrage) ((Object[]) resultListIterator.next())[0];

            rows[row][col++] = anfrage.getI_id();

            // Kuerzel fuer die Auftragart
            String anfrageart = null;

            if (anfrage.getAnfrageart_c_nr().equals(AnfrageServiceFac.ANFRAGEART_LIEFERGRUPPE)) {
                anfrageart = AnfrageServiceFac.ANFRAGEART_LIEFERGRUPPE_SHORT;
            }

            rows[row][col++] = anfrageart;
            rows[row][col++] = anfrage.getC_nr();

            if (anfrage.getAnfrageart_c_nr().equals(AnfrageServiceFac.ANFRAGEART_LIEFERGRUPPE)) {
                if (anfrage.getFlrliefergruppe() != null) {
                    String sUebersetzung = anfrage.getFlrliefergruppe().getC_nr();
                    Iterator iterUebersetzungenI = anfrage.getFlrliefergruppe()
                            .getLiefergruppe_liefergruppespr_set().iterator();

                    while (iterUebersetzungenI.hasNext()) {
                        FLRLiefergruppespr bestellungartspr = (FLRLiefergruppespr) iterUebersetzungenI.next();
                        if (bestellungartspr.getLocale().getC_nr()
                                .compareTo(theClientDto.getLocUiAsString()) == 0) {
                            if (bestellungartspr.getC_bez() != null
                                    && bestellungartspr.getC_bez().length() > 0) {
                                sUebersetzung = bestellungartspr.getC_bez();
                                break;
                            }
                        }
                    }

                    rows[row][col++] = sUebersetzung;
                } else {
                    rows[row][col++] = null;
                }

            } else {

                rows[row][col++] = anfrage.getFlrlieferant() == null ? null
                        : anfrage.getFlrlieferant().getFlrpartner().getC_name1nachnamefirmazeile1();
            }

            // IMS 1757 die Anschrift des Lieferanten anzeigen im Format
            // A-5020 Salzburg, Bahnhofstrasse 1
            String cAnschrift = null; // eine Liefergruppenanfrage hat
            // keinen Lieferanten

            if (anfrage.getFlrlieferant() != null) {
                FLRLandplzort flranschrift = anfrage.getFlrlieferant().getFlrpartner().getFlrlandplzort();

                if (flranschrift != null) {
                    cAnschrift = flranschrift.getFlrland().getC_lkz() + "-" + flranschrift.getC_plz() + " "
                            + flranschrift.getFlrort().getC_name();
                }
            }
            rows[row][col++] = cAnschrift;

            rows[row][col++] = anfrage.getC_bez();
            rows[row][col++] = anfrage.getT_belegdatum();
            String sStatus = anfrage.getAnfragestatus_c_nr();
            rows[row][col++] = getStatusMitUebersetzung(sStatus, anfrage.getT_versandzeitpunkt(),
                    anfrage.getC_versandtype());

            BigDecimal nGesamtwertAnfrageInAnfragewaehrung = new BigDecimal(0);

            if (anfrage.getN_gesamtanfragewertinanfragewaehrung() != null
                    && !anfrage.getAnfragestatus_c_nr().equals(AnfrageServiceFac.ANFRAGESTATUS_STORNIERT)) {
                nGesamtwertAnfrageInAnfragewaehrung = anfrage.getN_gesamtanfragewertinanfragewaehrung();
            }

            rows[row][col++] = nGesamtwertAnfrageInAnfragewaehrung;
            rows[row++][col++] = anfrage.getWaehrung_c_nr_anfragewaehrung();

            col = 0;
        }
        result = new QueryResult(rows, this.getRowCount(), startIndex, endIndex, 0);
    } catch (Exception e) {
        throw new EJBExceptionLP(EJBExceptionLP.FEHLER_FLR, e);
    } finally {
        try {
            session.close();
        } catch (HibernateException he) {
            throw new EJBExceptionLP(EJBExceptionLP.FEHLER, he);
        }
    }
    return result;
}

From source file:com.lp.server.anfrage.fastlanereader.AnfragepositionartHandler.java

License:Open Source License

/**
 * gets the page of data for the specified row using the current
 * queryParameters.// w  w  w  . j  a v a2  s  .c o m
 * 
 * @param rowIndex
 *            diese Zeile soll selektiert sein
 * @return QueryResult das Ergebnis der Abfrage
 * @throws EJBExceptionLP
 *             Ausnahme
 * @see UseCaseHandler#getPageAt(java.lang.Integer)
 */
public QueryResult getPageAt(Integer rowIndex) throws EJBExceptionLP {
    QueryResult result = null;
    SessionFactory factory = FLRSessionFactory.getFactory();
    Session session = null;
    try {
        int colCount = getTableInfo().getColumnClasses().length;
        int pageSize = AnfragepositionartHandler.PAGE_SIZE;
        int startIndex = Math.max(rowIndex.intValue() - (pageSize / 2), 0);
        int endIndex = startIndex + pageSize - 1;

        session = factory.openSession();
        String queryString = this.getFromClause() + this.buildWhereClause() + this.buildOrderByClause();
        // myLogger.info("HQL: " + queryString);
        Query query = session.createQuery(queryString);
        query.setFirstResult(startIndex);
        query.setMaxResults(pageSize);
        List<?> resultList = query.list();
        Iterator<?> resultListIterator = resultList.iterator();
        Object[][] rows = new Object[resultList.size()][colCount];
        int row = 0;
        int col = 0;
        while (resultListIterator.hasNext()) {
            FLRAnfragepositionart positionart = (FLRAnfragepositionart) resultListIterator.next();
            rows[row][col++] = positionart.getPositionsart_c_nr();
            rows[row][col++] = getSystemMultilanguageFac().uebersetzePositionsartOptimal(
                    positionart.getPositionsart_c_nr(), theClientDto.getLocUi(), theClientDto.getLocMandant());

            rows[row][col++] = positionart.getI_sort();
            row++;
            col = 0;
        }
        result = new QueryResult(rows, this.getRowCount(), startIndex, endIndex, 0);
    } catch (Exception e) {
        throw new EJBExceptionLP(EJBExceptionLP.FEHLER_FLR, e);
    } finally {
        try {
            session.close();
        } catch (HibernateException he) {
            throw new EJBExceptionLP(EJBExceptionLP.FEHLER, he);
        }
    }
    return result;
}

From source file:com.lp.server.anfrage.fastlanereader.AnfragepositionHandler.java

License:Open Source License

public QueryResult getPageAt(Integer rowIndex) throws EJBExceptionLP {
    QueryResult result = null;/* w  w  w  . jav  a2  s.  c  o m*/
    SessionFactory factory = FLRSessionFactory.getFactory();
    Session session = null;
    String mandantCNr = theClientDto.getMandant();
    Locale locUI = theClientDto.getLocUi();

    try {
        int colCount = getTableInfo().getColumnClasses().length;
        int pageSize = AnfrageHandler.PAGE_SIZE;
        int startIndex = Math.max(rowIndex.intValue() - (pageSize / 2), 0);
        int endIndex = startIndex + pageSize - 1;

        session = factory.openSession();
        String queryString = this.getFromClause() + this.buildWhereClause() + this.buildOrderByClause();
        // myLogger.info("HQL= " + queryString);
        Query query = session.createQuery(queryString);
        query.setFirstResult(startIndex);
        query.setMaxResults(pageSize);
        List<?> resultList = query.list();
        Iterator<?> resultListIterator = resultList.iterator();
        Object[][] rows = new Object[resultList.size()][colCount];
        String[] tooltipData = new String[resultList.size()];
        int row = 0;
        int col = 0;

        int iNachkommastellenMenge = getMandantFac().getNachkommastellenMenge(mandantCNr);
        int iNachkommastellenPreis = getMandantFac().getNachkommastellenPreisEK(mandantCNr);

        while (resultListIterator.hasNext()) {
            FLRAnfrageposition position = (FLRAnfrageposition) resultListIterator.next();
            rows[row][col++] = position.getI_id();
            rows[row][col++] = getAnfragepositionFac().getPositionNummer(position.getI_id(), theClientDto);
            rows[row][col++] = getUIObjectBigDecimalNachkommastellen(position.getN_menge(),
                    iNachkommastellenMenge);
            rows[row][col++] = position.getEinheit_c_nr() == null ? "" : position.getEinheit_c_nr().trim();

            String sIdentnummer = "";
            if (position.getFlrartikel() != null) {
                sIdentnummer = position.getFlrartikel().getC_nr();
            }
            rows[row][col++] = sIdentnummer;

            // in der Spalte Bezeichnung koennen verschiedene Dinge stehen
            String sBezeichnung = null;

            if (position.getAnfragepositionart_c_nr().equals(LocaleFac.POSITIONSART_TEXTEINGABE)) {
                if (position.getX_textinhalt() != null && position.getX_textinhalt().length() > 0) {
                    sBezeichnung = Helper.strippHTML(position.getX_textinhalt());
                }
            } else if (position.getAnfragepositionart_c_nr().equals(LocaleFac.POSITIONSART_SEITENUMBRUCH)) {
                sBezeichnung = "[" + getTextRespectUISpr("lp.seitenumbruch", mandantCNr, locUI) + "]";
            } else if (position.getAnfragepositionart_c_nr().equals(LocaleFac.POSITIONSART_TEXTBAUSTEIN)) {
                sBezeichnung = position.getFlrmediastandard().getC_nr();
            } else if (position.getAnfragepositionart_c_nr().equals(LocaleFac.POSITIONSART_IDENT)) {
                // die sprachabhaengig Artikelbezeichnung anzeigen
                sBezeichnung = getArtikelFac().formatArtikelbezeichnungEinzeiligOhneExc(
                        position.getFlrartikel().getI_id(), theClientDto.getLocUi());
            } else {
                // die restlichen Positionsarten
                if (position.getC_bez() != null) {
                    sBezeichnung = position.getC_bez();
                }
            }

            rows[row][col++] = sBezeichnung;

            rows[row][col++] = getUIObjectBigDecimalNachkommastellen(position.getN_richtpreis(),
                    iNachkommastellenPreis);
            if (position.getN_richtpreis() == null || position.getN_menge() == null) {
                rows[row][col++] = null;
            } else {
                rows[row][col++] = getUIObjectBigDecimalNachkommastellen(
                        position.getN_richtpreis().multiply(position.getN_menge()), iNachkommastellenPreis);
            }
            // Text
            if (position.getX_textinhalt() != null && !position.getX_textinhalt().equals("")) {
                rows[row][col++] = new Boolean(true);
                String text = position.getX_textinhalt();
                text = text.replaceAll("\n", "<br>");
                text = "<html>" + text + "</html>";
                tooltipData[row] = text;
            } else {
                rows[row][col++] = new Boolean(false);
            }
            row++;
            col = 0;
        }
        result = new QueryResult(rows, this.getRowCount(), startIndex, endIndex, 0, tooltipData);
    } catch (Exception e) {
        throw new EJBExceptionLP(EJBExceptionLP.FEHLER_FLR, e);
    } finally {
        try {
            session.close();
        } catch (HibernateException he) {
            throw new EJBExceptionLP(EJBExceptionLP.FEHLER, he);
        }
    }
    return result;
}

From source file:com.lp.server.anfrage.fastlanereader.AnfragepositionlieferdatenHandler.java

License:Open Source License

public QueryResult getPageAt(Integer rowIndex) throws EJBExceptionLP {
    QueryResult result = null;/*  w  w  w.  ja  v a  2 s  . c om*/
    SessionFactory factory = FLRSessionFactory.getFactory();
    Session session = null;
    try {
        int colCount = getTableInfo().getColumnClasses().length;
        int pageSize = AnfrageHandler.PAGE_SIZE;
        int startIndex = Math.max(rowIndex.intValue() - (pageSize / 2), 0);
        int endIndex = startIndex + pageSize - 1;

        session = factory.openSession();
        String queryString = this.getFromClause() + this.buildWhereClause() + this.buildOrderByClause();
        // myLogger.info("HQL= " + queryString);
        Query query = session.createQuery(queryString);
        query.setFirstResult(startIndex);
        query.setMaxResults(pageSize);
        List<?> resultList = query.list();
        Iterator<?> resultListIterator = resultList.iterator();
        Object[][] rows = new Object[resultList.size()][colCount];
        int row = 0;
        int col = 0;

        while (resultListIterator.hasNext()) {
            FLRAnfragepositionlieferdaten position = (FLRAnfragepositionlieferdaten) resultListIterator.next();
            rows[row][col++] = position.getI_id();
            rows[row][col++] = position.getN_anliefermenge();
            rows[row][col++] = position.getFlranfrageposition().getFlrartikel().getEinheit_c_nr() == null ? ""
                    : position.getFlranfrageposition().getFlrartikel().getEinheit_c_nr().trim();
            String sIdentnummer = "";
            if (position.getFlranfrageposition().getFlrartikel() != null) {
                sIdentnummer = position.getFlranfrageposition().getFlrartikel().getC_nr();
            }
            rows[row][col++] = sIdentnummer;
            String cArtikelbezeichnung = null;

            Boolean bArtikellieferantVorhanden = false;

            if (position.getFlranfrageposition().getAnfragepositionart_c_nr()
                    .equals(AnfrageServiceFac.ANFRAGEPOSITIONART_IDENT)) {
                // die sprachabhaengig Artikelbezeichnung anzeigen
                cArtikelbezeichnung = getArtikelFac().formatArtikelbezeichnungEinzeiligOhneExc(
                        position.getFlranfrageposition().getFlrartikel().getI_id(), theClientDto.getLocUi());

                ArtikellieferantDto alDto = getArtikelFac()
                        .artikellieferantFindByArtikellIIdLieferantIIdOhneExc(
                                position.getFlranfrageposition().getFlrartikel().getI_id(),
                                position.getFlranfrageposition().getFlranfrage().getFlrlieferant().getI_id(),
                                theClientDto);
                if (alDto != null) {
                    bArtikellieferantVorhanden = true;
                }

            } else {
                if (position.getFlranfrageposition().getC_bez() != null) {
                    cArtikelbezeichnung = position.getFlranfrageposition().getC_bez();
                }
            }

            rows[row][col++] = cArtikelbezeichnung;
            rows[row][col++] = position.getN_nettogesamtpreis();

            rows[row++][col++] = bArtikellieferantVorhanden;

            col = 0;
        }
        result = new QueryResult(rows, this.getRowCount(), startIndex, endIndex, 0);
    } catch (Exception e) {
        throw new EJBExceptionLP(EJBExceptionLP.FEHLER_FLR, e);
    } finally {
        try {
            session.close();
        } catch (HibernateException he) {
            throw new EJBExceptionLP(EJBExceptionLP.FEHLER, he);
        }
    }
    return result;
}

From source file:com.lp.server.anfrage.fastlanereader.AnfragetextHandler.java

License:Open Source License

/**
 * gets the data page for the specified row using the current query. The row
 * at rowIndex will be located in the middle of the page.
 * /*from  w  w  w .ja v  a 2  s .c o m*/
 * @param rowIndex
 *            diese Zeile soll selektiert sein
 * @return QueryResult das Ergebnis der Abfrage
 * @throws EJBExceptionLP
 *             Ausnahme
 * @see UseCaseHandler#getPageAt(java.lang.Integer)
 */
public QueryResult getPageAt(Integer rowIndex) throws EJBExceptionLP {
    QueryResult result = null;
    SessionFactory factory = FLRSessionFactory.getFactory();
    Session session = null;
    try {
        int colCount = getTableInfo().getColumnClasses().length;
        int pageSize = AnfragetextHandler.PAGE_SIZE;
        int startIndex = Math.max(rowIndex.intValue() - (pageSize / 2), 0);
        int endIndex = startIndex + pageSize - 1;

        session = factory.openSession();
        String queryString = this.getFromClause() + this.buildWhereClause() + this.buildOrderByClause();
        // myLogger.info("HQL= " + queryString);
        Query query = session.createQuery(queryString);
        query.setFirstResult(startIndex);
        query.setMaxResults(pageSize);
        List<?> resultList = query.list();
        Iterator<?> resultListIterator = resultList.iterator();
        Object[][] rows = new Object[resultList.size()][colCount];

        int row = 0;
        int col = 0;

        while (resultListIterator.hasNext()) {
            FLRAnfragetext anfragetext = (FLRAnfragetext) resultListIterator.next();

            rows[row][col++] = anfragetext.getI_id();
            rows[row][col++] = anfragetext.getMediaart_c_nr();
            rows[row++][col++] = anfragetext.getX_textinhalt();

            col = 0;
        }
        result = new QueryResult(rows, this.getRowCount(), startIndex, endIndex, 0);
    } catch (Exception e) {
        throw new EJBExceptionLP(EJBExceptionLP.FEHLER_FLR, e);
    } finally {
        try {
            session.close();
        } catch (HibernateException he) {
            throw new EJBExceptionLP(EJBExceptionLP.FEHLER, he);
        }
    }
    return result;
}

From source file:com.lp.server.anfrage.fastlanereader.ZertifikatartHandler.java

License:Open Source License

/**
 * gets the data page for the specified row using the current query. The row
 * at rowIndex will be located in the middle of the page.
 * /*from  w w  w .j ava2 s  .co m*/
 * @param rowIndex
 *            diese Zeile soll selektiert sein
 * @return QueryResult das Ergebnis der Abfrage
 * @throws EJBExceptionLP
 *             Ausnahme
 * @see UseCaseHandler#getPageAt(java.lang.Integer)
 */
public QueryResult getPageAt(Integer rowIndex) throws EJBExceptionLP {
    QueryResult result = null;
    SessionFactory factory = FLRSessionFactory.getFactory();
    Session session = null;
    try {
        int colCount = getTableInfo().getColumnClasses().length;
        int pageSize = AnfragetextHandler.PAGE_SIZE;
        int startIndex = Math.max(rowIndex.intValue() - (pageSize / 2), 0);
        int endIndex = startIndex + pageSize - 1;

        session = factory.openSession();
        String queryString = this.getFromClause() + this.buildWhereClause() + this.buildOrderByClause();
        // myLogger.info("HQL= " + queryString);
        Query query = session.createQuery(queryString);
        query.setFirstResult(startIndex);
        query.setMaxResults(pageSize);
        List<?> resultList = query.list();
        Iterator<?> resultListIterator = resultList.iterator();
        Object[][] rows = new Object[resultList.size()][colCount];

        int row = 0;
        int col = 0;

        while (resultListIterator.hasNext()) {
            FLRZertifikatart anfragetext = (FLRZertifikatart) resultListIterator.next();

            rows[row][col++] = anfragetext.getI_id();
            rows[row++][col++] = anfragetext.getC_bez();

            col = 0;
        }
        result = new QueryResult(rows, this.getRowCount(), startIndex, endIndex, 0);
    } catch (Exception e) {
        throw new EJBExceptionLP(EJBExceptionLP.FEHLER_FLR, e);
    } finally {
        try {
            session.close();
        } catch (HibernateException he) {
            throw new EJBExceptionLP(EJBExceptionLP.FEHLER, he);
        }
    }
    return result;
}

From source file:com.lp.server.angebot.fastlanereader.AngebotartHandler.java

License:Open Source License

/**
 * gets the page of data for the specified row using the current
 * queryParameters.//from   w  ww  . j av a  2 s . c o  m
 * 
 * @param rowIndex
 *            diese Zeile soll selektiert sein
 * @return QueryResult das Ergebnis der Abfrage
 * @throws EJBExceptionLP
 *             Ausnahme
 * @see UseCaseHandler#getPageAt(java.lang.Integer)
 */
public QueryResult getPageAt(Integer rowIndex) throws EJBExceptionLP {
    QueryResult result = null;
    SessionFactory factory = FLRSessionFactory.getFactory();
    Session session = null;
    try {
        int colCount = getTableInfo().getColumnClasses().length;
        int pageSize = AngebotartHandler.PAGE_SIZE;
        int startIndex = Math.max(rowIndex.intValue() - (pageSize / 2), 0);
        int endIndex = startIndex + pageSize - 1;

        session = factory.openSession();
        String queryString = this.getFromClause() + this.buildWhereClause() + this.buildOrderByClause();

        Query query = session.createQuery(queryString);
        session = setFilter(session);

        query.setFirstResult(startIndex);
        query.setMaxResults(pageSize);
        List<?> resultList = query.list();
        Iterator<?> resultListIterator = resultList.iterator();

        Object[][] rows = new Object[resultList.size()][colCount];
        int row = 0;
        int col = 0;
        String sLocUI = Helper.locale2String(theClientDto.getLocUi());

        while (resultListIterator.hasNext()) {
            Object o[] = (Object[]) resultListIterator.next();
            FLRAngebotart angebotart = (FLRAngebotart) o[0];
            Iterator<?> sprsetIterator = angebotart.getAngebotart_angebotart_set().iterator();

            rows[row][col++] = angebotart.getC_nr();
            rows[row][col++] = angebotart.getC_nr();
            rows[row][col++] = angebotart.getI_sort();
            rows[row][col++] = findSpr(sLocUI, sprsetIterator);

            row++;
            col = 0;
        }
        result = new QueryResult(rows, this.getRowCount(), startIndex, endIndex, 0);
    } catch (Exception e) {
        throw new EJBExceptionLP(EJBExceptionLP.FEHLER_FLR, e);
    } finally {
        try {
            session.close();
        } catch (HibernateException he) {
            throw new EJBExceptionLP(EJBExceptionLP.FEHLER, he);
        }
    }
    return result;
}

From source file:com.lp.server.angebot.fastlanereader.AngeboterledigungsgrundHandler.java

License:Open Source License

/**
 * gets the page of data for the specified row using the current
 * queryParameters.//from   ww w .  j  a  v  a  2s .  c o  m
 * 
 * @param rowIndex
 *            diese Zeile soll selektiert sein
 * @return QueryResult das Ergebnis der Abfrage
 * @throws EJBExceptionLP
 *             Ausnahme
 * @see UseCaseHandler#getPageAt(java.lang.Integer)
 */
public QueryResult getPageAt(Integer rowIndex) throws EJBExceptionLP {

    QueryResult result = null;
    SessionFactory factory = FLRSessionFactory.getFactory();
    Session session = null;

    try {
        int colCount = getTableInfo().getColumnClasses().length;
        int pageSize = AngeboterledigungsgrundHandler.PAGE_SIZE;
        int startIndex = Math.max(rowIndex.intValue() - (pageSize / 2), 0);
        int endIndex = startIndex + pageSize - 1;

        session = factory.openSession();
        String queryString = this.getFromClause() + this.buildWhereClause() + this.buildOrderByClause();
        Query query = session.createQuery(queryString);
        session = setFilter(session);
        query.setFirstResult(startIndex);
        query.setMaxResults(pageSize);
        List<?> resultList = query.list();
        Iterator<?> resultListIterator = resultList.iterator();

        Object[][] rows = new Object[resultList.size()][colCount];
        int row = 0;
        int col = 0;

        String sLocUI = Helper.locale2String(theClientDto.getLocUi());

        while (resultListIterator.hasNext()) {
            Object o[] = (Object[]) resultListIterator.next();
            FLRAngeboterledigungsgrund erledigungsgrund = (FLRAngeboterledigungsgrund) o[0];
            Iterator<?> sprsetIterator = erledigungsgrund
                    .getAngeboterledigungsgrund_angeboterledigungsgrundspr_set().iterator();

            rows[row][col++] = erledigungsgrund.getC_nr();
            rows[row][col++] = erledigungsgrund.getC_nr();
            rows[row][col++] = erledigungsgrund.getI_sort();
            rows[row][col++] = findSpr(sLocUI, sprsetIterator);

            row++;
            col = 0;
        }
        result = new QueryResult(rows, this.getRowCount(), startIndex, endIndex, 0);
    } catch (Exception e) {
        throw new EJBExceptionLP(EJBExceptionLP.FEHLER_FLR, e);
    } finally {
        try {
            session.close();
        } catch (HibernateException he) {
            throw new EJBExceptionLP(EJBExceptionLP.FEHLER, he);
        }
    }
    return result;
}

From source file:com.lp.server.angebot.fastlanereader.AngebotHandler.java

License:Open Source License

/**
 * gets the data page for the specified row using the current query. The row
 * at rowIndex will be located in the middle of the page.
 * //from   w ww.  j av  a2s. c  om
 * @param rowIndex
 *            diese Zeile soll selektiert sein
 * @return QueryResult das Ergebnis der Abfrage
 * @throws EJBExceptionLP
 *             Ausnahme
 * @see UseCaseHandler#getPageAt(java.lang.Integer)
 */
public QueryResult getPageAt(Integer rowIndex) throws EJBExceptionLP {
    QueryResult result = null;
    SessionFactory factory = FLRSessionFactory.getFactory();
    Session session = null;
    try {
        int colCount = getTableInfo().getColumnClasses().length;
        int pageSize = AngebotHandler.PAGE_SIZE;
        int startIndex = Math.max(rowIndex.intValue() - (pageSize / 2), 0);
        int endIndex = startIndex + pageSize - 1;

        session = factory.openSession();
        String queryString = this.getFromClause() + this.buildWhereClause() + this.buildOrderByClause();
        // myLogger.info("HQL= " + queryString);
        Query query = session.createQuery(queryString);
        query.setFirstResult(startIndex);
        query.setMaxResults(pageSize);
        List<?> resultList = query.list();
        Iterator<?> resultListIterator = resultList.iterator();

        Object[][] rows = new Object[resultList.size()][colCount];
        int row = 0;
        int col = 0;

        // darf Preise sehen.
        final boolean bDarfPreiseSehen = getTheJudgeFac().hatRecht(RechteFac.RECHT_LP_DARF_PREISE_SEHEN_VERKAUF,
                theClientDto);

        while (resultListIterator.hasNext()) {
            FLRAngebot angebot = (FLRAngebot) ((Object[]) resultListIterator.next())[0];

            rows[row][col++] = angebot.getI_id();
            rows[row][col++] = angebot.getC_nr();
            rows[row][col++] = angebot.getFlrkunde() == null ? null
                    : angebot.getFlrkunde().getFlrpartner().getC_name1nachnamefirmazeile1();

            // IMS 1757 die Anschrift des Kunden anzeigen
            String cAnschrift = null;

            if (angebot.getFlrkunde() != null) {
                FLRLandplzort flranschrift = angebot.getFlrkunde().getFlrpartner().getFlrlandplzort();

                if (flranschrift != null) {
                    cAnschrift = flranschrift.getFlrland().getC_lkz() + "-" + flranschrift.getC_plz() + " "
                            + flranschrift.getFlrort().getC_name();
                }
            }

            rows[row][col++] = cAnschrift;
            rows[row][col++] = angebot.getC_bez();
            rows[row][col++] = angebot.getT_belegdatum();
            rows[row][col++] = angebot.getT_nachfasstermin();

            if (iAnlegerStattVertreterAnzeigen == 1) {
                if (angebot.getFlrpersonalanleger() != null) {
                    rows[row][col++] = angebot.getFlrpersonalanleger().getC_kurzzeichen();
                } else {
                    rows[row][col++] = null;
                }
            } else if (iAnlegerStattVertreterAnzeigen == 2) {
                if (angebot.getFlrpersonalaenderer() != null) {
                    rows[row][col++] = angebot.getFlrpersonalaenderer().getC_kurzzeichen();
                } else {
                    rows[row][col++] = null;
                }
            } else {
                if (angebot.getFlrvertreter() != null) {
                    rows[row][col++] = angebot.getFlrvertreter().getC_kurzzeichen();
                } else {
                    rows[row][col++] = null;
                }
            }
            String sStatus = angebot.getAngebotstatus_c_nr();
            rows[row][col++] = getStatusMitUebersetzung(sStatus, angebot.getT_versandzeitpunkt(),
                    angebot.getC_versandtype());

            BigDecimal nGesamtwertAngebotInAngebotswaehrung = new BigDecimal(0);

            if (angebot.getN_gesamtangebotswertinangebotswaehrung() != null
                    && !angebot.getAngebotstatus_c_nr().equals(AngebotServiceFac.ANGEBOTSTATUS_STORNIERT)) {
                nGesamtwertAngebotInAngebotswaehrung = angebot.getN_gesamtangebotswertinangebotswaehrung();
            }

            if (bDarfPreiseSehen) {
                rows[row][col++] = nGesamtwertAngebotInAngebotswaehrung;
            } else {
                rows[row][col++] = null;
            }

            rows[row++][col++] = angebot.getWaehrung_c_nr_angebotswaehrung();

            col = 0;
        }
        result = new QueryResult(rows, this.getRowCount(), startIndex, endIndex, 0);
    } catch (Exception e) {
        throw new EJBExceptionLP(EJBExceptionLP.FEHLER_FLR, e);
    } finally {
        try {
            session.close();
        } catch (HibernateException he) {
            throw new EJBExceptionLP(EJBExceptionLP.FEHLER, he);
        }
    }
    return result;
}

From source file:com.lp.server.angebot.fastlanereader.AngebotpositionartHandler.java

License:Open Source License

/**
 * gets the page of data for the specified row using the current
 * queryParameters./*from   w w w.ja v  a 2s .  co  m*/
 * 
 * @param rowIndex
 *            diese Zeile soll selektiert sein
 * @return QueryResult das Ergebnis der Abfrage
 * @throws EJBExceptionLP
 *             Ausnahme
 * @see UseCaseHandler#getPageAt(java.lang.Integer)
 */
public QueryResult getPageAt(Integer rowIndex) throws EJBExceptionLP {
    QueryResult result = null;
    SessionFactory factory = FLRSessionFactory.getFactory();
    Session session = null;
    try {
        int colCount = getTableInfo().getColumnClasses().length;
        int pageSize = AngebotpositionartHandler.PAGE_SIZE;
        int startIndex = Math.max(rowIndex.intValue() - (pageSize / 2), 0);
        int endIndex = startIndex + pageSize - 1;

        session = factory.openSession();
        String queryString = this.getFromClause() + this.buildWhereClause() + this.buildOrderByClause();
        // myLogger.info("HQL: " + queryString);
        Query query = session.createQuery(queryString);
        query.setFirstResult(startIndex);
        query.setMaxResults(pageSize);
        List<?> resultList = query.list();
        Iterator<?> resultListIterator = resultList.iterator();
        Object[][] rows = new Object[resultList.size()][colCount];
        int row = 0;
        int col = 0;
        while (resultListIterator.hasNext()) {
            FLRAngebotpositionart positionart = (FLRAngebotpositionart) resultListIterator.next();
            rows[row][col++] = positionart.getPositionsart_c_nr();
            rows[row][col++] = getSystemMultilanguageFac().uebersetzePositionsartOptimal(
                    positionart.getPositionsart_c_nr(), theClientDto.getLocUi(), theClientDto.getLocMandant());

            rows[row][col++] = positionart.getI_sort();
            row++;
            col = 0;
        }
        result = new QueryResult(rows, this.getRowCount(), startIndex, endIndex, 0);
    } catch (Exception e) {
        throw new EJBExceptionLP(EJBExceptionLP.FEHLER_FLR, e);
    } finally {
        try {
            session.close();
        } catch (HibernateException he) {
            throw new EJBExceptionLP(EJBExceptionLP.FEHLER, he);
        }
    }
    return result;
}