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.eingangsrechnung.fastlanereader.EingangsrechnungAuftragszuordnungHandler.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.
 * // ww w  .java  2s  .c om
 * @see UseCaseHandler#getPageAt(java.lang.Integer)
 * @param rowIndex
 *            Integer
 * @throws EJBExceptionLP
 * @return QueryResult
 */
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 = 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);
        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()) {
            FLREingangsrechnungAuftragszuordnung erAz = (FLREingangsrechnungAuftragszuordnung) resultListIterator
                    .next();
            rows[row][col++] = erAz.getI_id();
            rows[row][col++] = erAz.getFlrauftrag().getC_nr();
            rows[row][col++] = erAz.getFlrauftrag().getFlrkunde().getFlrpartner()
                    .getC_name1nachnamefirmazeile1();
            rows[row][col++] = erAz.getN_betrag();
            rows[row][col++] = erAz.getC_text();
            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_FLR, he);
        }
    }
    return result;
}

From source file:com.lp.server.eingangsrechnung.fastlanereader.EingangsrechnungHandler.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 av  a2s .c o m*/
 * @see UseCaseHandler#getPageAt(java.lang.Integer)
 * @param rowIndex
 *            Integer
 * @throws EJBExceptionLP
 * @return QueryResult
 */
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 = PAGE_SIZE;
        int startIndex = Math.max(rowIndex.intValue() - (pageSize / 2), 0);
        int endIndex = startIndex + pageSize - 1;

        session = factory.openSession();
        String queryString = "SELECT eingangsrechnung,(SELECT count(*) FROM FLRFinanzBelegbuchung as bb WHERE bb.belegart_c_nr='"
                + LocaleFac.BELEGART_EINGANGSRECHNUNG
                + "' AND bb.i_belegiid=eingangsrechnung.i_id  ) from FLREingangsrechnung as eingangsrechnung "
                + " left join eingangsrechnung.flrlieferant.flrpartner.flrlandplzort as flrlandplzort "
                + " left join eingangsrechnung.flrlieferant.flrpartner.flrlandplzort.flrort as flrort "
                + " left join eingangsrechnung.flrlieferant.flrpartner.flrlandplzort.flrland as flrland "
                + this.buildWhereClause() + this.buildOrderByClause();
        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()) {
            // ortimhandler: 8 da kommt jetzt ein Array zurueck, das an
            // index 0 brauch ich

            Object[] o = (Object[]) resultListIterator.next();
            FLREingangsrechnung eingangsrechnung = (FLREingangsrechnung) o[0];

            long lVerbucht = (Long) o[1];

            rows[row][col++] = eingangsrechnung.getI_id();
            rows[row][col++] = eingangsrechnung.getEingangsrechnungart_c_nr() == null ? null
                    : eingangsrechnung.getEingangsrechnungart_c_nr().substring(0, 1);
            rows[row][col++] = eingangsrechnung.getC_nr();
            rows[row][col++] = eingangsrechnung.getFlrlieferant().getFlrpartner()
                    .getC_name1nachnamefirmazeile1();
            // ortimhandler: 1 wenn vorhanden, dann im Format A-5020
            // Salzburg
            FLRLandplzort anschrift = eingangsrechnung.getFlrlieferant().getFlrpartner().getFlrlandplzort();
            if (anschrift != null) {
                rows[row][col++] = anschrift.getFlrland().getC_lkz() + "-" + anschrift.getC_plz() + " "
                        + anschrift.getFlrort().getC_name();
            } else {
                rows[row][col++] = "";
            }
            rows[row][col++] = eingangsrechnung.getT_belegdatum();
            String sStatus = eingangsrechnung.getStatus_c_nr();
            if (eingangsrechnung.getT_gedruckt() != null) {
                rows[row][col++] = getStatusMitUebersetzung(sStatus, eingangsrechnung.getT_gedruckt(),
                        "DRUCKER");
            } else {
                rows[row][col++] = getStatusMitUebersetzung(sStatus);
            }

            String lrnText = "";
            if (eingangsrechnung.getC_lieferantenrechnungsnummer() != null) {
                lrnText = eingangsrechnung.getC_lieferantenrechnungsnummer();
                if (eingangsrechnung.getC_text() != null) {
                    lrnText = lrnText + " " + eingangsrechnung.getC_text();
                }

            } else if (eingangsrechnung.getC_text() != null) {
                lrnText = eingangsrechnung.getC_text();
            } else {
                lrnText = "";
            }
            rows[row][col++] = lrnText;
            if (bBruttoStattNetto == false) {
                if (eingangsrechnung.getN_betragfw() != null && eingangsrechnung.getN_ustbetragfw() != null) {
                    rows[row][col++] = eingangsrechnung.getN_betragfw()
                            .subtract(eingangsrechnung.getN_ustbetragfw());
                } else {
                    rows[row][col++] = null;
                }

            } else {
                rows[row][col++] = eingangsrechnung.getN_betragfw();
            }
            rows[row][col++] = eingangsrechnung.getWaehrung_c_nr();

            if (bHatFibu == true) {
                if (lVerbucht > 0) {
                    rows[row][col++] = new Boolean(true);
                } else {
                    rows[row][col++] = new Boolean(false);
                }

            } else {
                rows[row][col++] = new Boolean(eingangsrechnung.getT_fibuuebernahme() != null);

            }

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

From source file:com.lp.server.eingangsrechnung.fastlanereader.EingangsrechnungKontierungHandler.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   ww w  .j  av a2s  . c  o m
 * @see UseCaseHandler#getPageAt(java.lang.Integer)
 * @param rowIndex
 *            Integer
 * @throws EJBExceptionLP
 * @return QueryResult
 */
public QueryResult getPageAt(Integer rowIndex) throws EJBExceptionLP {
    QueryResult result = null;
    SessionFactory factory = FLRSessionFactory.getFactory();
    Session session = null;
    try {
        int colCount = this.getTableInfo().getColumnClasses().length;
        int pageSize = 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);
        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()) {
            FLREingangsrechnungKontierung erKontierung = (FLREingangsrechnungKontierung) resultListIterator
                    .next();
            rows[row][col++] = erKontierung.getI_id();
            rows[row][col++] = erKontierung.getN_betrag();
            rows[row][col++] = erKontierung.getN_betrag_ust();
            rows[row][col++] = erKontierung.getFlrkostenstelle().getC_nr();
            rows[row][col++] = erKontierung.getFlrkonto().getC_nr();
            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_FLR, he);
        }
    }
    return result;
}

From source file:com.lp.server.eingangsrechnung.fastlanereader.EingangsrechnungsstatusHandler.java

License:Open Source License

public QueryResult getPageAt(Integer rowIndex) throws EJBExceptionLP {
    QueryResult result = null;//from w w  w  .j ava  2 s. c o m
    SessionFactory factory = FLRSessionFactory.getFactory();
    Session session = null;
    try {
        int colCount = getTableInfo().getColumnClasses().length;
        int pageSize = EingangsrechnungsstatusHandler.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);
        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()) {
            FLREingangsrechnungsstatus eingangsrechnungstatus = (FLREingangsrechnungsstatus) resultListIterator
                    .next();
            rows[row][col++] = eingangsrechnungstatus.getStatus_c_nr();
            rows[row][col++] = eingangsrechnungstatus.getStatus_c_nr();
            row++;
            col = 0;
        }
        result = new QueryResult(rows, this.getRowCount(), startIndex, endIndex, 0);
    } catch (Exception e) {
        throw new EJBExceptionLP(EJBExceptionLP.FEHLER, e);
    } finally {
        try {
            session.close();
        } catch (HibernateException he) {
            throw new EJBExceptionLP(EJBExceptionLP.FEHLER, he);
        }
    }
    return result;
}

From source file:com.lp.server.eingangsrechnung.fastlanereader.EingangsrechnungWEHandler.java

License:Open Source License

public QueryResult getPageAt(Integer rowIndex) throws EJBExceptionLP {
    QueryResult result = null;//from  ww  w.  java  2 s.c  om
    SessionFactory factory = FLRSessionFactory.getFactory();
    Session session = null;
    try {
        int colCount = getTableInfo().getColumnClasses().length;
        int pageSize = 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);
        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()) {
            FLRWareneingang wareneingang = (FLRWareneingang) resultListIterator.next();
            rows[row][col++] = wareneingang.getI_id();
            rows[row][col++] = wareneingang.getFlrbestellung().getC_nr();
            rows[row][col++] = wareneingang.getC_lieferscheinnr();
            rows[row][col++] = wareneingang.getT_lieferscheindatum();
            rows[row][col++] = wareneingang.getT_wareneingansdatum();

            rows[row][col++] = getWareneingangFac()
                    .berechneWertDesWareneingangsInBestellungswaehrung(wareneingang.getI_id(), theClientDto);

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

From source file:com.lp.server.eingangsrechnung.fastlanereader.EingangsrechnungzahlungHandler.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  w w  . j  a  va2 s  . co  m
 * @see UseCaseHandler#getPageAt(java.lang.Integer)
 * @param rowIndex
 *            Integer
 * @throws EJBExceptionLP
 * @return QueryResult
 */
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 = 999;
        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);
        query.setFirstResult(startIndex);
        query.setMaxResults(pageSize);
        List<?> resultList = query.list();
        Collections.reverse(resultList);
        Iterator<?> resultListIterator = resultList.iterator();
        Object[][] rows = new Object[resultList.size()][colCount];
        int row = resultList.size() - 1;

        BigDecimal bdOffen = null;

        while (resultListIterator.hasNext()) {
            FLREingangsrechnungzahlung zahlung = (FLREingangsrechnungzahlung) resultListIterator.next();

            EingangsrechnungDto erDto = getEingangsrechnungFac()
                    .eingangsrechnungFindByPrimaryKey(zahlung.getEingangsrechnung_i_id());

            if (bdOffen == null) {
                bdOffen = erDto.getNBetragfw();
                if (erDto.getEingangsrechnungartCNr()
                        .equals(EingangsrechnungFac.EINGANGSRECHNUNGART_SCHLUSSZAHLUNG)) {
                    bdOffen = bdOffen.subtract(
                            getEingangsrechnungFac().getAnzahlungenZuSchlussrechnungFw(erDto.getIId()));
                }
            }

            bdOffen = bdOffen.subtract(zahlung.getN_betragfw());

            rows[row][SPALTE_I_ID] = zahlung.getI_id();
            rows[row][SPALTE_ZAHLDATUM] = zahlung.getT_zahldatum();
            rows[row][SPALTE_BETRAG] = zahlung.getN_betragfw();
            rows[row][SPALTE_BETRAGUST] = zahlung.getN_betrag_ustfw();
            rows[row][SPALTE_OFFEN] = bdOffen;

            String zahlungsart = zahlung.getZahlungsart_c_nr();
            String zahlungsartUebersetzt = getRechnungServiceFac().uebersetzeZahlungsartOptimal(zahlungsart,
                    theClientDto.getLocUi(), theClientDto.getLocMandant());

            String art = "";
            if (zahlungsart.equalsIgnoreCase(RechnungFac.ZAHLUNGSART_BANK)
                    && zahlung.getFlrbankverbindung() != null) {
                art = zahlung.getFlrbankverbindung().getFlrbank().getFlrpartner()
                        .getC_name1nachnamefirmazeile1();
            } else if (zahlungsart.equalsIgnoreCase(RechnungFac.ZAHLUNGSART_BAR)
                    && zahlung.getFlrkassenbuch() != null) {
                art = zahlung.getFlrkassenbuch().getC_bez();
            } else if (zahlungsart.equalsIgnoreCase(RechnungFac.ZAHLUNGSART_GUTSCHRIFT)
                    && zahlung.getFlreingangsrechnung() != null) {
                art = zahlung.getFlreingangsrechnunggutschrift().getC_nr();
            } else if (zahlungsart.equalsIgnoreCase(RechnungFac.ZAHLUNGSART_GEGENVERRECHNUNG)
                    && zahlung.getFlrrechnungzahlung() != null) {
                art = zahlung.getFlrrechnungzahlung().getFlrrechnung().getC_nr();
            } else if (zahlungsart.equalsIgnoreCase(RechnungFac.ZAHLUNGSART_VORAUSZAHLUNG)
                    && zahlung.getFlrfinanzbuchungdetail() != null) {
                art = zahlung.getFlrfinanzbuchungdetail().getFlrbuchung().getC_text();
            }
            rows[row][SPALTE_ART] = zahlungsartUebersetzt + ": " + art;
            row--;
        }
        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_FLR, he);
        }
    }
    return result;
}

From source file:com.lp.server.eingangsrechnung.fastlanereader.ZahlungsvorschlagHandler.java

License:Open Source License

public QueryResult getPageAt(Integer rowIndex) throws EJBExceptionLP {
    Locale locUI = theClientDto.getLocUi();
    QueryResult result = null;//from  w  ww  .  jav a2 s  .  c  om
    SessionFactory factory = FLRSessionFactory.getFactory();
    Session session = null;
    try {
        int colCount = getTableInfo().getColumnClasses().length;
        int startIndex = Math.max(rowIndex.intValue() - (PAGE_SIZE / 2), 0);
        int endIndex = startIndex + PAGE_SIZE - 1;

        session = factory.openSession();
        String queryString = this.getFromClause() + this.buildWhereClause() + this.buildOrderByClause();
        Query query = session.createQuery(queryString);
        query.setFirstResult(startIndex);
        query.setMaxResults(PAGE_SIZE);
        List<?> resultList = query.list();
        Iterator<?> resultListIterator = resultList.iterator();
        Object[][] rows = new Object[resultList.size()][colCount];
        int row = 0;
        int col = 0;
        while (resultListIterator.hasNext()) {
            FLRZahlungsvorschlag zv = (FLRZahlungsvorschlag) resultListIterator.next();
            FLREingangsrechnungReport er = zv.getFlreingangsrechnungreport();
            String sWaehrung = " " + er.getWaehrung_c_nr();

            rows[row][col++] = zv.getI_id();
            rows[row][col++] = er.getEingangsrechnungart_c_nr().substring(0, 1);
            rows[row][col++] = er.getC_nr();
            rows[row][col++] = er.getMahnstufe_i_id();
            rows[row][col++] = er.getFlrlieferant().getFlrpartner().getC_name1nachnamefirmazeile1();
            rows[row][col++] = er.getN_betragfw();
            rows[row][col++] = zv.getT_faellig();
            if (zv.getN_angewandterskontosatz().doubleValue() > 0) {
                rows[row][col++] = Helper.formatZahl(zv.getN_angewandterskontosatz().setScale(
                        FinanzFac.NACHKOMMASTELLEN, RoundingMode.HALF_UP), FinanzFac.NACHKOMMASTELLEN, locUI)
                        + " %";
            } else {
                rows[row][col++] = null;
            }
            rows[row][col++] = zv.getN_offen();
            rows[row][col++] = sWaehrung;
            rows[row][col++] = er.getC_text();
            rows[row][col++] = new Boolean(Helper.short2Boolean(zv.getB_bezahlen()));
            // hat der LF eine Bankverbindung?
            Integer iPartnerIId = er.getFlrlieferant().getFlrpartner().getI_id();
            PartnerbankDto[] bvLF = getBankFac().partnerbankFindByPartnerIId(iPartnerIId, theClientDto);
            if (bvLF == null || bvLF.length == 0) {
                rows[row][col++] = "";
            } else {
                BankDto bankDto = getBankFac().bankFindByPrimaryKey(bvLF[0].getBankPartnerIId(), theClientDto);
                rows[row][col++] = bankDto.getPartnerDto().getCName1nachnamefirmazeile1();
            }
            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.eingangsrechnung.fastlanereader.ZahlungsvorschlaglaufHandler.java

License:Open Source License

public QueryResult getPageAt(Integer rowIndex) throws EJBExceptionLP {
    QueryResult result = null;//from   w  ww  .j  av  a 2  s  .com
    SessionFactory factory = FLRSessionFactory.getFactory();
    Session session = null;
    try {
        int colCount = getTableInfo().getColumnClasses().length;
        int startIndex = Math.max(rowIndex.intValue() - (PAGE_SIZE / 2), 0);
        int endIndex = startIndex + PAGE_SIZE - 1;

        session = factory.openSession();
        String queryString = this.getFromClause() + this.buildWhereClause() + this.buildOrderByClause();
        Query query = session.createQuery(queryString);
        query.setFirstResult(startIndex);
        query.setMaxResults(PAGE_SIZE);
        List<?> resultList = query.list();
        Iterator<?> resultListIterator = resultList.iterator();
        Object[][] rows = new Object[resultList.size()][colCount];
        int row = 0;
        int col = 0;
        while (resultListIterator.hasNext()) {
            FLRZahlungsvorschlaglauf zvLauf = (FLRZahlungsvorschlaglauf) resultListIterator.next();
            rows[row][col++] = zvLauf.getI_id();
            rows[row][col++] = new java.sql.Timestamp(zvLauf.getT_anlegen().getTime());
            rows[row][col++] = zvLauf.getT_zahlungsstichtag();
            rows[row][col++] = zvLauf.getT_naechsterzahlungslauf();
            rows[row][col++] = Helper.short2Boolean(zvLauf.getB_mitskonto());
            rows[row][col++] = zvLauf.getI_skontoueberziehungsfristintagen();
            if (zvLauf.getFlrbankverbindung().getC_bez() != null) {
                rows[row][col++] = zvLauf.getFlrbankverbindung().getC_bez();
            } else {
                rows[row][col++] = zvLauf.getFlrbankverbindung().getC_kontonummer() + " | " + zvLauf
                        .getFlrbankverbindung().getFlrbank().getFlrpartner().getC_name1nachnamefirmazeile1();
            }
            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.eingangsrechnung.fastlanereader.ZusatzkostenHandler.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 w w .  ja va 2  s  .c  o m*/
 * @see UseCaseHandler#getPageAt(java.lang.Integer)
 * @param rowIndex
 *            Integer
 * @throws EJBExceptionLP
 * @return QueryResult
 */
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 = PAGE_SIZE;
        int startIndex = Math.max(rowIndex.intValue() - (pageSize / 2), 0);
        int endIndex = startIndex + pageSize - 1;

        session = factory.openSession();
        String queryString = "SELECT eingangsrechnung,(SELECT count(*) FROM FLRFinanzBelegbuchung as bb WHERE bb.belegart_c_nr='"
                + LocaleFac.BELEGART_EINGANGSRECHNUNG
                + "' AND bb.i_belegiid=eingangsrechnung.i_id  ) from FLREingangsrechnung as eingangsrechnung "
                + " left join eingangsrechnung.flrlieferant.flrpartner.flrlandplzort as flrlandplzort "
                + " left join eingangsrechnung.flrlieferant.flrpartner.flrlandplzort.flrort as flrort "
                + " left join eingangsrechnung.flrlieferant.flrpartner.flrlandplzort.flrland as flrland "
                + this.buildWhereClause() + this.buildOrderByClause();
        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()) {
            // ortimhandler: 8 da kommt jetzt ein Array zurueck, das an
            // index 0 brauch ich

            Object[] o = (Object[]) resultListIterator.next();
            FLREingangsrechnung eingangsrechnung = (FLREingangsrechnung) o[0];

            long lVerbucht = (Long) o[1];

            rows[row][col++] = eingangsrechnung.getI_id();
            rows[row][col++] = eingangsrechnung.getEingangsrechnungart_c_nr() == null ? null
                    : eingangsrechnung.getEingangsrechnungart_c_nr().substring(0, 1);
            rows[row][col++] = eingangsrechnung.getC_nr();
            rows[row][col++] = eingangsrechnung.getFlrlieferant().getFlrpartner()
                    .getC_name1nachnamefirmazeile1();
            // ortimhandler: 1 wenn vorhanden, dann im Format A-5020
            // Salzburg
            FLRLandplzort anschrift = eingangsrechnung.getFlrlieferant().getFlrpartner().getFlrlandplzort();
            if (anschrift != null) {
                rows[row][col++] = anschrift.getFlrland().getC_lkz() + "-" + anschrift.getC_plz() + " "
                        + anschrift.getFlrort().getC_name();
            } else {
                rows[row][col++] = "";
            }
            rows[row][col++] = eingangsrechnung.getT_belegdatum();
            String sStatus = eingangsrechnung.getStatus_c_nr();
            if (eingangsrechnung.getT_gedruckt() != null) {
                rows[row][col++] = getStatusMitUebersetzung(sStatus, eingangsrechnung.getT_gedruckt(),
                        "DRUCKER");
            } else {
                rows[row][col++] = getStatusMitUebersetzung(sStatus);
            }

            if (eingangsrechnung.getT_wiederholenderledigt() != null) {
                rows[row][col++] = new Boolean(true);
            } else {
                rows[row][col++] = new Boolean(false);
            }

            String lrnText = "";
            if (eingangsrechnung.getC_lieferantenrechnungsnummer() != null) {
                lrnText = eingangsrechnung.getC_lieferantenrechnungsnummer();
                if (eingangsrechnung.getC_text() != null) {
                    lrnText = lrnText + " " + eingangsrechnung.getC_text();
                }

            } else if (eingangsrechnung.getC_text() != null) {
                lrnText = eingangsrechnung.getC_text();
            } else {
                lrnText = "";
            }
            rows[row][col++] = lrnText;
            if (bBruttoStattNetto == false) {
                if (eingangsrechnung.getN_betragfw() != null && eingangsrechnung.getN_ustbetragfw() != null) {
                    rows[row][col++] = eingangsrechnung.getN_betragfw()
                            .subtract(eingangsrechnung.getN_ustbetragfw());
                } else {
                    rows[row][col++] = null;
                }

            } else {
                rows[row][col++] = eingangsrechnung.getN_betragfw();
            }
            rows[row][col++] = eingangsrechnung.getWaehrung_c_nr();

            if (bHatFibu == true) {
                if (lVerbucht > 0) {
                    rows[row][col++] = new Boolean(true);
                } else {
                    rows[row][col++] = new Boolean(false);
                }

            } else {
                rows[row][col++] = new Boolean(eingangsrechnung.getT_fibuuebernahme() != null);

            }

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

From source file:com.lp.server.fertigung.fastlanereader.InternebestellungHandler.java

License:Open Source License

public QueryResult getPageAt(Integer rowIndex) throws EJBExceptionLP {
    QueryResult result = null;/*from  w  w  w.ja v a  2 s. c  o m*/
    SessionFactory factory = FLRSessionFactory.getFactory();
    Session session = null;
    try {
        int colCount = getTableInfo().getColumnClasses().length;
        int pageSize = 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);
        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()) {
            FLRInternebestellung intbest = (FLRInternebestellung) resultListIterator.next();
            rows[row][col++] = intbest.getI_id();
            rows[row][col++] = intbest.getFlrstueckliste().getFlrartikel().getC_nr();
            ArtikelDto artikelDto = getArtikelFac().artikelFindByPrimaryKeySmall(
                    intbest.getFlrstueckliste().getFlrartikel().getI_id(), theClientDto);
            rows[row][col++] = artikelDto.getArtikelsprDto().getCBez();
            rows[row][col++] = intbest.getN_menge();
            rows[row][col++] = artikelDto.getEinheitCNr().trim();
            rows[row][col++] = intbest.getT_liefertermin();
            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;
}