Example usage for org.hibernate.criterion Restrictions le

List of usage examples for org.hibernate.criterion Restrictions le

Introduction

In this page you can find the example usage for org.hibernate.criterion Restrictions le.

Prototype

public static SimpleExpression le(String propertyName, Object value) 

Source Link

Document

Apply a "less than or equal" constraint to the named property

Usage

From source file:com.lp.server.finanz.ejbfac.FibuExportFacBean.java

License:Open Source License

private FLRRechnung[] getVerbuchbareRechnungen(java.sql.Date dStichtag, TheClientDto theClientDto)
        throws EJBExceptionLP {
    Session session = null;/*  ww w. ja v a 2s. com*/
    try {
        pruefeAufAngelegte(dStichtag, theClientDto, RechnungFac.RECHNUNGTYP_RECHNUNG);
        SessionFactory factory = FLRSessionFactory.getFactory();
        session = factory.openSession();
        Criteria c = session.createCriteria(FLRRechnung.class);
        // nur Rechnungen
        c.createCriteria(RechnungFac.FLR_RECHNUNG_FLRRECHNUNGART).add(Restrictions
                .eq(RechnungFac.FLR_RECHNUNGART_RECHNUNGTYP_C_NR, RechnungFac.RECHNUNGTYP_RECHNUNG));
        // Filter nach Mandant
        c.add(Restrictions.eq(RechnungFac.FLR_RECHNUNG_MANDANT_C_NR, theClientDto.getMandant()));
        // Noch nicht verbuchte
        c.add(Restrictions.isNull(RechnungFac.FLR_RECHNUNG_T_FIBUUEBERNAHME));
        // Stichtag
        c.add(Restrictions.le(RechnungFac.FLR_RECHNUNG_D_BELEGDATUM, dStichtag));
        // Und nach status
        Collection<String> coll = new LinkedList<String>();
        coll.add(RechnungFac.STATUS_BEZAHLT);
        coll.add(RechnungFac.STATUS_OFFEN);
        coll.add(RechnungFac.STATUS_TEILBEZAHLT);
        coll.add(RechnungFac.STATUS_VERBUCHT);
        c.add(Restrictions.in(RechnungFac.FLR_RECHNUNG_STATUS_C_NR, coll));
        c.addOrder(Property.forName("c_nr").asc());
        // zu exportierende Belege holen
        List<?> list = c.list();
        FLRRechnung[] reArray = new FLRRechnung[list.size()];
        int i = 0;
        for (Iterator<?> iter = list.iterator(); iter.hasNext(); i++) {
            FLRRechnung re = (FLRRechnung) iter.next();
            reArray[i] = re;
        }
        return reArray;
    } finally {
        if (session != null) {
            session.close();
        }
    }
}

From source file:com.lp.server.finanz.ejbfac.FibuExportFacBean.java

License:Open Source License

private void pruefeAufAngelegte(Date dStichtag, TheClientDto theClientDto, String sRechnungstyp)
        throws EJBExceptionLP {
    Session session = null;/*from  w  ww. j a  v  a  2  s. c  o  m*/
    try {
        SessionFactory factory = FLRSessionFactory.getFactory();
        session = factory.openSession();
        Criteria c = session.createCriteria(FLRRechnung.class);
        // nur Rechnungen
        c.createCriteria(RechnungFac.FLR_RECHNUNG_FLRRECHNUNGART)
                .add(Restrictions.eq(RechnungFac.FLR_RECHNUNGART_RECHNUNGTYP_C_NR, sRechnungstyp));
        // Filter nach Mandant
        c.add(Restrictions.eq(RechnungFac.FLR_RECHNUNG_MANDANT_C_NR, theClientDto.getMandant()));
        // Noch nicht verbuchte
        c.add(Restrictions.isNull(RechnungFac.FLR_RECHNUNG_T_FIBUUEBERNAHME));
        // Stichtag
        c.add(Restrictions.le(RechnungFac.FLR_RECHNUNG_D_BELEGDATUM, dStichtag));
        // Und nach status
        Collection<String> coll = new LinkedList<String>();
        // Zuerst schauen, ob es noch angelegte gibt, in diesem fall muss
        // der export abgebrochen werden
        coll.add(RechnungFac.STATUS_ANGELEGT);
        c.add(Restrictions.in(RechnungFac.FLR_RECHNUNG_STATUS_C_NR, coll));
        List<?> listAngelegte = c.list();
        if (!listAngelegte.isEmpty()) {
            StringBuffer sb = new StringBuffer();
            for (Iterator<?> iter = listAngelegte.iterator(); iter.hasNext();) {
                FLRRechnung re = (FLRRechnung) iter.next();
                sb.append(re.getC_nr());
                sb.append(" an ").append(re.getFlrkunde().getFlrpartner().getC_name1nachnamefirmazeile1());
                sb.append("\n");
            }
            EJBExceptionLP ex = new EJBExceptionLP(
                    EJBExceptionLP.FEHLER_FINANZ_EXPORT_BELEG_IST_NOCH_NICHT_AKTIVIERT,
                    new Exception("noch nicht aktivierte Belege"));
            // Kunden holen
            ArrayList<Object> a = new ArrayList<Object>();
            a.add(sb.toString());
            ex.setAlInfoForTheClient(a);
            throw ex;
        }
    } finally {
        if (session != null) {
            session.close();
        }
    }
}

From source file:com.lp.server.finanz.ejbfac.FibuExportFacBean.java

License:Open Source License

private FLRRechnung[] getVerbuchbareGutschriften(java.sql.Date dStichtag, TheClientDto theClientDto)
        throws EJBExceptionLP {
    Session session = null;//from  w  w w. j  av  a  2 s. com
    try {
        pruefeAufAngelegte(dStichtag, theClientDto, RechnungFac.RECHNUNGTYP_GUTSCHRIFT);
        SessionFactory factory = FLRSessionFactory.getFactory();
        session = factory.openSession();
        Criteria c = session.createCriteria(FLRRechnung.class);
        // nur Rechnungen
        c.createCriteria(RechnungFac.FLR_RECHNUNG_FLRRECHNUNGART).add(Restrictions
                .eq(RechnungFac.FLR_RECHNUNGART_RECHNUNGTYP_C_NR, RechnungFac.RECHNUNGTYP_GUTSCHRIFT));
        // Filter nach Mandant
        c.add(Restrictions.eq(RechnungFac.FLR_RECHNUNG_MANDANT_C_NR, theClientDto.getMandant()));
        // Noch nicht verbuchte
        c.add(Restrictions.isNull(RechnungFac.FLR_RECHNUNG_T_FIBUUEBERNAHME));
        // Stichtag
        c.add(Restrictions.le(RechnungFac.FLR_RECHNUNG_D_BELEGDATUM, dStichtag));
        // Und nach status
        Collection<String> coll = new LinkedList<String>();
        coll.add(RechnungFac.STATUS_BEZAHLT);
        coll.add(RechnungFac.STATUS_OFFEN);
        coll.add(RechnungFac.STATUS_TEILBEZAHLT);
        coll.add(RechnungFac.STATUS_VERBUCHT);
        c.add(Restrictions.in(RechnungFac.FLR_RECHNUNG_STATUS_C_NR, coll));
        // zu exportierende Belege holen
        List<?> list = c.list();
        FLRRechnung[] reArray = new FLRRechnung[list.size()];
        int i = 0;
        for (Iterator<?> iter = list.iterator(); iter.hasNext(); i++) {
            FLRRechnung re = (FLRRechnung) iter.next();
            reArray[i] = re;
        }
        return reArray;
    } finally {
        if (session != null) {
            session.close();
        }
    }
}

From source file:com.lp.server.lieferschein.ejbfac.LieferscheinReportFacBean.java

License:Open Source License

@TransactionAttribute(TransactionAttributeType.NEVER)
public JasperPrintLP printLieferscheinAlle(ReportLieferscheinJournalKriterienDto krit,
        TheClientDto theClientDto) {/*ww  w  .j a  v a 2 s .c  o m*/
    Session session = null;
    try {
        cAktuellerReport = LieferscheinReportFac.REPORT_LIEFERSCHEIN_ALLE;
        SessionFactory factory = FLRSessionFactory.getFactory();
        session = factory.openSession();
        // Kunde oder Statistikadresse verwenden
        final String critKundeIId;
        final String critFLRKunde;
        if (krit.getBVerwendeRechnungsAdresse()) {
            critKundeIId = LieferscheinFac.FLR_LIEFERSCHEIN_KUNDE_I_ID_RECHNUNGSADRESSE;
            critFLRKunde = LieferscheinFac.FLR_LIEFERSCHEIN_FLRKUNDERECHNUNGSADRESSE;
        } else {
            critKundeIId = LieferscheinFac.FLR_LIEFERSCHEIN_KUNDE_I_ID_LIEFERADRESSE;
            critFLRKunde = LieferscheinFac.FLR_LIEFERSCHEIN_FLRKUNDE;
        }

        Criteria c = session.createCriteria(FLRLieferschein.class);
        // Filter nach Mandant
        c.add(Restrictions.eq(LieferscheinFac.FLR_LIEFERSCHEIN_MANDANT_C_NR, theClientDto.getMandant()));

        // Filter nach Kostenstelle
        if (krit.kostenstelleIId != null) {
            c.add(Restrictions.eq(LieferscheinFac.FLR_LIEFERSCHEIN_KOSTENSTELLE_I_ID, krit.kostenstelleIId));
        }
        // Filter nach einem Kunden
        if (krit.kundeIId != null) {
            c.add(Restrictions.eq(critKundeIId, krit.kundeIId));
        }
        // Filter nach einem Vertrter
        if (krit.vertreterIId != null) {
            c.add(Restrictions.eq(LieferscheinFac.FLR_LIEFERSCHEIN_FLRVERTRETER + ".i_id", krit.vertreterIId));
        }
        // Filter nach Status (keine stornierten)
        c.add(Restrictions.not(Restrictions.eq(LieferscheinFac.FLR_LIEFERSCHEIN_LIEFERSCHEINSTATUS_STATUS_C_NR,
                LieferscheinFac.LSSTATUS_STORNIERT)));
        // Nur offene anzeigen?
        if (krit.getBNurOffene()) {
            Collection<String> cStati = new LinkedList<String>();
            cStati.add(LieferscheinFac.LSSTATUS_ANGELEGT);
            cStati.add(LieferscheinFac.LSSTATUS_OFFEN);
            c.add(Restrictions.in(LieferscheinFac.FLR_LIEFERSCHEIN_LIEFERSCHEINSTATUS_STATUS_C_NR, cStati));
        }
        // Datum von/bis
        String sVon = null;
        String sBis = null;
        if (krit.dVon != null) {
            c.add(Restrictions.ge(LieferscheinFac.FLR_LIEFERSCHEIN_D_BELEGDATUM, krit.dVon));
            sVon = Helper.formatDatum(krit.dVon, theClientDto.getLocUi());
        }
        if (krit.dBis != null) {
            c.add(Restrictions.le(LieferscheinFac.FLR_LIEFERSCHEIN_D_BELEGDATUM, krit.dBis));
            sBis = Helper.formatDatum(krit.dBis, theClientDto.getLocUi());
        }

        // Belegnummer von/bis
        LpBelegnummerFormat f = getBelegnummerGeneratorObj().getBelegnummernFormat(theClientDto.getMandant());
        Integer iGeschaeftsjahr = getParameterFac().getGeschaeftsjahr(theClientDto.getMandant());
        String sMandantKuerzel = getParameterFac().getMandantparameter(theClientDto.getMandant(),
                ParameterFac.KATEGORIE_ALLGEMEIN, ParameterFac.PARAMETER_BELEGNUMMER_MANDANTKENNUNG).getCWert();
        if (krit.sBelegnummerVon != null) {
            sVon = HelperServer.getBelegnummernFilterForHibernateCriterias(f, iGeschaeftsjahr, sMandantKuerzel,
                    krit.sBelegnummerVon);
            c.add(Restrictions.ge(LieferscheinFac.FLR_LIEFERSCHEIN_C_NR, sVon));
        }
        if (krit.sBelegnummerBis != null) {
            sBis = HelperServer.getBelegnummernFilterForHibernateCriterias(f, iGeschaeftsjahr, sMandantKuerzel,
                    krit.sBelegnummerBis);
            c.add(Restrictions.le(LieferscheinFac.FLR_LIEFERSCHEIN_C_NR, sBis));
        }
        // Sortierung nach Kostenstelle ist optional
        if (krit.bSortiereNachKostenstelle) {
            c.createCriteria(LieferscheinFac.FLR_LIEFERSCHEIN_FLRKOSTENSTELLE).addOrder(Order.asc("c_nr"));
        }
        // Sortierung nach Partner ist optional
        if (krit.iSortierung == ReportJournalKriterienDto.KRIT_SORT_NACH_PARTNER) {
            c.createCriteria(critFLRKunde).createCriteria(KundeFac.FLR_PARTNER)
                    .addOrder(Order.asc(PartnerFac.FLR_PARTNER_NAME1NACHNAMEFIRMAZEILE1));
        } else if (krit.iSortierung == ReportJournalKriterienDto.KRIT_SORT_NACH_BELEGNUMMER) {
            c.addOrder(Order.asc(LieferscheinFac.FLR_LIEFERSCHEIN_C_NR));
        }
        if (krit.iSortierung == ReportJournalKriterienDto.KRIT_SORT_NACH_VERTRETER) {
            c.createCriteria(LieferscheinFac.FLR_LIEFERSCHEIN_FLRVERTRETER)
                    .addOrder(Order.asc(PersonalFac.FLR_PERSONAL_C_KURZZEICHEN));
        }
        List<?> list = c.list();
        data = new Object[list.size()][REPORT_ALLE_ANZAHL_SPALTEN];

        int i = 0;
        for (Iterator<?> iter = list.iterator(); iter.hasNext();) {
            FLRLieferschein r = (FLRLieferschein) iter.next();
            data[i][FELD_ALLE_BELEGDATUM] = r.getD_belegdatum();
            data[i][FELD_ALLE_PROJEKT] = r.getC_bez_projektbezeichnung();
            data[i][FELD_ALLE_STATUS] = r.getLieferscheinstatus_status_c_nr();
            data[i][FELD_ALLE_BELEGDATUM] = r.getD_belegdatum();
            data[i][FELD_ALLE_LIEFERSCHEINNUMMER] = r.getC_nr();
            // Bezahlte Betraege

            BigDecimal bdWertmw = r.getN_gesamtwertinlieferscheinwaehrung();

            data[i][FELD_ALLE_BETRAG] = bdWertmw;
            // Kostenstelle
            if (r.getFlrkostenstelle() != null) {
                String sKostenstellen = "";
                KostenstelleDto k = null;
                RechnungkontierungDto[] rechnungkontierungsDto = getRechnungFac()
                        .rechnungkontierungFindByRechnungIId(r.getI_id());
                if (rechnungkontierungsDto.length != 0) {
                    for (int e = 0; e < rechnungkontierungsDto.length; e++) {
                        k = getSystemFac()
                                .kostenstelleFindByPrimaryKey(rechnungkontierungsDto[e].getKostenstelleIId());
                        sKostenstellen = sKostenstellen + k.getCNr() + " ";
                    }
                } else {
                    sKostenstellen = r.getFlrkostenstelle().getC_nr();
                }
                data[i][FELD_ALLE_KOSTENSTELLENUMMER] = sKostenstellen;
            } else {
                data[i][FELD_ALLE_KOSTENSTELLENUMMER] = null;
            }
            // Kundendaten
            FLRKunde flrKunde, flrKundeStatistik;
            if (krit.getBVerwendeRechnungsAdresse()) {
                flrKunde = r.getFlrkunderechnungsadresse();
            } else {
                flrKunde = r.getFlrkunde();

                // Statistikdaten wenn nicht Kriterium Rechnungsadresse
                flrKundeStatistik = r.getFlrkunderechnungsadresse();
                data[i][FELD_ALLE_KUNDE_RECHNUNG] = flrKundeStatistik.getFlrpartner()
                        .getC_name1nachnamefirmazeile1();
                if (flrKundeStatistik.getFlrpartner().getC_name2vornamefirmazeile2() != null) {
                    data[i][FELD_ALLE_KUNDE2_RECHNUNG] = flrKundeStatistik.getFlrpartner()
                            .getC_name2vornamefirmazeile2();
                } else {
                    data[i][FELD_ALLE_KUNDE2_RECHNUNG] = "";
                }
                PartnerDto partnerDtoStatistik = getPartnerFac()
                        .partnerFindByPrimaryKey(flrKundeStatistik.getFlrpartner().getI_id(), theClientDto);
                data[i][FELD_ALLE_ADRESSE_RECHNUNG] = partnerDtoStatistik.formatAdresse();

            }
            data[i][FELD_ALLE_KUNDE] = flrKunde.getFlrpartner().getC_name1nachnamefirmazeile1();
            if (r.getFlrvertreter() != null) {
                if (r.getFlrvertreter().getFlrpartner().getC_name2vornamefirmazeile2() != null) {
                    data[i][FELD_ALLE_VERTRETER] = r.getFlrvertreter().getFlrpartner()
                            .getC_name1nachnamefirmazeile1() + " "
                            + r.getFlrvertreter().getFlrpartner().getC_name2vornamefirmazeile2();
                } else {
                    data[i][FELD_ALLE_VERTRETER] = r.getFlrvertreter().getFlrpartner()
                            .getC_name1nachnamefirmazeile1();
                }
            }
            if (flrKunde.getFlrpartner().getC_name2vornamefirmazeile2() != null) {
                data[i][FELD_ALLE_KUNDE2] = flrKunde.getFlrpartner().getC_name2vornamefirmazeile2();
            } else {
                data[i][FELD_ALLE_KUNDE2] = "";
            }
            PartnerDto partnerDto = getPartnerFac().partnerFindByPrimaryKey(flrKunde.getFlrpartner().getI_id(),
                    theClientDto);
            data[i][FELD_ALLE_ADRESSE] = partnerDto.formatAdresse();
            data[i][FELD_ALLE_ORT] = partnerDto.formatAdresse();
            if (r.getFlrrechnung() != null) {
                data[i][FELD_ALLE_RECHNUNGSNUMMER] = r.getFlrrechnung().getC_nr();
            }

            // Debitorenkontonummer
            KontoDtoSmall kontoDtoDeb = null;
            if (flrKunde.getKonto_i_id_debitorenkonto() != null) {
                kontoDtoDeb = getFinanzFac()
                        .kontoFindByPrimaryKeySmallOhneExc(flrKunde.getKonto_i_id_debitorenkonto());
            }
            String sKontonummer;
            if (kontoDtoDeb != null) {
                sKontonummer = kontoDtoDeb.getCNr();
            } else {
                sKontonummer = "";
            }
            data[i][FELD_ALLE_DEBITORENKONTO] = sKontonummer;
            data[i][FELD_ALLE_WAEHRUNG] = r.getWaehrung_c_nr_lieferscheinwaehrung();
            data[i][FELD_ALLE_KURS] = new BigDecimal(r.getF_wechselkursmandantwaehrungzulieferscheinwaehrung());

            // 14217
            String sLaenderart = getFinanzServiceFac().getLaenderartZuPartner(partnerDto.getIId(),
                    theClientDto);
            data[i][FELD_ALLE_LAENDERART] = sLaenderart;
            i++;
        }
        Map<String, Object> mapParameter = new TreeMap<String, Object>();
        MandantDto mandantDto = getMandantFac().mandantFindByPrimaryKey(theClientDto.getMandant(),
                theClientDto);
        // Waehrung
        mapParameter.put(LPReport.P_WAEHRUNG, mandantDto.getWaehrungCNr());
        StringBuffer sSortierung = new StringBuffer();
        if (krit.bSortiereNachKostenstelle) {
            sSortierung.append(
                    getTextRespectUISpr("lp.kostenstelle", theClientDto.getMandant(), theClientDto.getLocUi()));
            sSortierung.append(", ");
        }
        if (krit.iSortierung == ReportJournalKriterienDto.KRIT_SORT_NACH_PARTNER) {
            if (krit.getBVerwendeRechnungsAdresse()) {
                sSortierung.append(getTextRespectUISpr("lp.rechnungsadresse", theClientDto.getMandant(),
                        theClientDto.getLocUi()));
            } else {
                sSortierung.append(
                        getTextRespectUISpr("lp.kunde", theClientDto.getMandant(), theClientDto.getLocUi()));
            }
        } else if (krit.iSortierung == ReportJournalKriterienDto.KRIT_SORT_NACH_BELEGNUMMER) {
            sSortierung.append(
                    getTextRespectUISpr("bes.belegnummer", theClientDto.getMandant(), theClientDto.getLocUi()));
        } else if (krit.iSortierung == ReportJournalKriterienDto.KRIT_SORT_NACH_VERTRETER) {
            sSortierung.append(
                    getTextRespectUISpr("lp.vertreter", theClientDto.getMandant(), theClientDto.getLocUi()));
        }
        StringBuffer sFilter = new StringBuffer();
        if (sVon != null) {
            sFilter.append(getTextRespectUISpr("lp.von", theClientDto.getMandant(), theClientDto.getLocUi()));
            sFilter.append(" " + sVon + " ");
        }
        if (sBis != null) {
            sFilter.append(getTextRespectUISpr("lp.bis", theClientDto.getMandant(), theClientDto.getLocUi()));
            sFilter.append(" " + sBis + " ");
        }
        if (krit.kostenstelleIId != null) {
            if (sFilter.length() > 0) {
                sFilter.append(", ");
            }
            KostenstelleDto kstDto = getSystemFac().kostenstelleFindByPrimaryKey(krit.kostenstelleIId);
            sFilter.append(
                    getTextRespectUISpr("lp.kostenstelle", theClientDto.getMandant(), theClientDto.getLocUi()));
            sFilter.append(" ");
            sFilter.append(kstDto.getCNr());
        }
        // Statistikadresse
        if (krit.getBVerwendeRechnungsAdresse()) {
            if (sFilter.length() > 0) {
                sFilter.append(", ");
            }
            sFilter.append(getTextRespectUISpr("lp.rechnungsadresse", theClientDto.getMandant(),
                    theClientDto.getLocUi()));
        }

        mapParameter.put(LPReport.P_SORTIERUNG, sSortierung.toString());
        mapParameter.put(LPReport.P_SORTIERENACHKOSTENSTELLE, new Boolean(krit.bSortiereNachKostenstelle));
        mapParameter.put(LPReport.P_SORTIERENACHKUNDE,
                new Boolean(krit.iSortierung == ReportJournalKriterienDto.KRIT_SORT_NACH_PARTNER));
        mapParameter.put(LPReport.P_SORTIERENACHVERTRETER,
                new Boolean(krit.iSortierung == ReportJournalKriterienDto.KRIT_SORT_NACH_VERTRETER));
        mapParameter.put(LPReport.P_FILTER, sFilter.toString());
        initJRDS(mapParameter, LieferscheinReportFac.REPORT_MODUL, cAktuellerReport, theClientDto.getMandant(),
                theClientDto.getLocUi(), theClientDto);
        return getReportPrint();

    } catch (RemoteException ex) {
        throwEJBExceptionLPRespectOld(ex);
        return null;
    } finally {
        if (session != null) {
            session.close();
        }
    }
}

From source file:com.lp.server.lieferschein.ejbfac.LieferscheinReportFacBean.java

License:Open Source License

/**
 * Alle offenen Lieferscheine fuer einen bestimmten Mandanten drucken.
 * //from   w  w w.j  a  va 2  s  . c o m
 * @param reportJournalKriterienDtoI
 *            die Filter- und Sortierkriterien
 * @param theClientDto
 *            der aktuelle Benutzer
 * @throws EJBExceptionLP
 *             Ausnahme
 * @return JasperPrint der Druck
 */

@TransactionAttribute(TransactionAttributeType.NEVER)
public JasperPrintLP printLieferscheinOffene(ReportJournalKriterienDto reportJournalKriterienDtoI, Integer iArt,
        boolean bMitDetails, TheClientDto theClientDto) throws EJBExceptionLP {
    if (reportJournalKriterienDtoI == null) {
        throw new EJBExceptionLP(EJBExceptionLP.FEHLER_PARAMETER_IS_NULL,
                new Exception("reportJournalKriterienDtoI == null"));
    }
    JasperPrintLP oPrintO = null;
    cAktuellerReport = LieferscheinReportFac.REPORT_LIEFERSCHEIN_OFFENE;
    int iIndex = 0;
    ArrayList<FLRLieferschein> oZeilen = new ArrayList();
    SessionFactory factory = FLRSessionFactory.getFactory();
    Session session = null;
    try {
        session = factory.openSession();
        // Hiberante Criteria fuer alle Tabellen ausgehend von meiner
        // Haupttabelle anlegen,
        // nach denen ich filtern und sortieren kann
        Criteria crit = session.createCriteria(FLRLieferschein.class);
        // Einschraenkung auf den aktuellen Mandanten
        crit.add(Restrictions.eq("mandant_c_nr", theClientDto.getMandant()));
        // Einschraenkung nach Status Offen
        crit.add(Restrictions.eq(LieferscheinFac.FLR_LIEFERSCHEIN_LIEFERSCHEINSTATUS_STATUS_C_NR,
                LieferscheinFac.LSSTATUS_GELIEFERT));
        if (iArt != null) {
            if (iArt == 1) {
                crit.add(Restrictions.eq(LieferscheinFac.FLR_LIEFERSCHEIN_B_VERRECHENBAR,
                        Helper.boolean2Short(true)));
            } else if (iArt == 2) {
                crit.add(Restrictions.eq(LieferscheinFac.FLR_LIEFERSCHEIN_B_VERRECHENBAR,
                        Helper.boolean2Short(false)));
            }
        }
        // Einschraenkung nach einer bestimmten Kostenstelle
        if (reportJournalKriterienDtoI.kostenstelleIId != null) {
            crit.add(Restrictions.eq(LieferscheinFac.FLR_LIEFERSCHEIN_KOSTENSTELLE_I_ID,
                    reportJournalKriterienDtoI.kostenstelleIId));
        }

        // Einschraenkung nach einem bestimmten Kunden
        if (reportJournalKriterienDtoI.kundeIId != null) {
            crit.add(Restrictions.eq(LieferscheinFac.FLR_LIEFERSCHEIN_KUNDE_I_ID_LIEFERADRESSE,
                    reportJournalKriterienDtoI.kundeIId));
        }

        // Einschraenkung nach Belegdatum von - bis
        String sVon = null;
        String sBis = null;

        if (reportJournalKriterienDtoI.dVon != null) {
            crit.add(Restrictions.ge(LieferscheinFac.FLR_LIEFERSCHEIN_D_BELEGDATUM,
                    reportJournalKriterienDtoI.dVon));
            sVon = Helper.formatDatum(reportJournalKriterienDtoI.dVon, theClientDto.getLocUi());
        }

        if (reportJournalKriterienDtoI.dBis != null) {
            crit.add(Restrictions.le(LieferscheinFac.FLR_LIEFERSCHEIN_D_BELEGDATUM,
                    reportJournalKriterienDtoI.dBis));
            sBis = Helper.formatDatum(reportJournalKriterienDtoI.dBis, theClientDto.getLocUi());
        }

        // Einschraenkung nach Belegnummer von - bis
        LpBelegnummerFormat f = getBelegnummerGeneratorObj().getBelegnummernFormat(theClientDto.getMandant());

        Integer iGeschaeftsjahr = getParameterFac().getGeschaeftsjahr(theClientDto.getMandant());

        String sMandantKuerzel = getParameterFac().getMandantparameter(theClientDto.getMandant(),
                ParameterFac.KATEGORIE_ALLGEMEIN, ParameterFac.PARAMETER_BELEGNUMMER_MANDANTKENNUNG).getCWert();

        if (reportJournalKriterienDtoI.sBelegnummerVon != null) {
            sVon = HelperServer.getBelegnummernFilterForHibernateCriterias(f, iGeschaeftsjahr, sMandantKuerzel,
                    reportJournalKriterienDtoI.sBelegnummerVon);
            crit.add(Restrictions.ge("c_nr", sVon));
        }

        if (reportJournalKriterienDtoI.sBelegnummerBis != null) {
            sBis = HelperServer.getBelegnummernFilterForHibernateCriterias(f, iGeschaeftsjahr, sMandantKuerzel,
                    reportJournalKriterienDtoI.sBelegnummerBis);
            crit.add(Restrictions.le("c_nr", sBis));
        }

        // Sortierung nach Kostenstelle ist immer die erste Sortierung
        if (reportJournalKriterienDtoI.bSortiereNachKostenstelle) {
            crit.createCriteria(LieferscheinFac.FLR_LIEFERSCHEIN_FLRKOSTENSTELLE).addOrder(Order.asc("c_nr"));
        }

        // Sortierung nach Kunde, eventuell innerhalb der Kostenstelle
        if (reportJournalKriterienDtoI.iSortierung == ReportJournalKriterienDto.KRIT_SORT_NACH_PARTNER) {
            crit.createCriteria(LieferscheinFac.FLR_LIEFERSCHEIN_FLRKUNDE).createCriteria(KundeFac.FLR_PARTNER)
                    .addOrder(Order.asc(PartnerFac.FLR_PARTNER_NAME1NACHNAMEFIRMAZEILE1));
        }

        // es wird in jedem Fall nach der Belegnummer sortiert
        crit.addOrder(Order.asc("c_nr"));
        List<?> list = crit.list();
        Iterator<?> it = list.iterator();
        while (it.hasNext()) {
            FLRLieferschein flrlieferschein = (FLRLieferschein) it.next();
            oZeilen.add(flrlieferschein);
            session = factory.openSession();
            Criteria critPosition = session.createCriteria(FLRLieferscheinposition.class);
            critPosition.add(Restrictions.eq(LieferscheinpositionFac.FLR_LIEFERSCHEINPOSITION_FLRLIEFERSCHEIN,
                    flrlieferschein));
            critPosition.add(Restrictions.or(
                    Restrictions.isNotNull(LieferscheinpositionFac.FLR_LIEFERSCHEINPOSITION_N_MENGE),
                    Restrictions.eq(
                            LieferscheinpositionFac.FLR_LIEFERSCHEINPOSITION_LIEFERSCHEINPOSITIONART_C_NR,
                            LieferscheinpositionFac.LIEFERSCHEINPOSITIONSART_TEXTEINGABE)));
            // critPosition
            // .add(Restrictions
            // .isNotNull(LieferscheinpositionFac.FLR_LIEFERSCHEINPOSITION_N_MENGE));
            List<?> posList = critPosition.list();
            for (Iterator<?> ipos = posList.iterator(); ipos.hasNext();) {
                FLRLieferscheinposition item = (FLRLieferscheinposition) ipos.next();
                iIndex++;
            }
            iIndex++;
        }
        data = new Object[iIndex][LieferscheinReportFac.REPORT_LIEFERSCHEIN_OFFENE_ANZAHL_ZEILEN]; // Anzahl
        // der
        // Spalten
        // in
        // der
        // Gruppe
        Iterator<?> itZeilen = oZeilen.iterator();
        int i = 0;
        while (itZeilen.hasNext()) {
            FLRLieferschein flrlieferschein = (FLRLieferschein) itZeilen.next();
            data[i][LieferscheinReportFac.REPORT_LIEFERSCHEIN_OFFENE_LIEFERSCHEINCNR] = flrlieferschein
                    .getC_nr();
            data[i][LieferscheinReportFac.REPORT_LIEFERSCHEIN_OFFENE_LIEFERSCHEINKUNDE] = flrlieferschein
                    .getFlrkunde().getFlrpartner().getC_name1nachnamefirmazeile1();
            data[i][LieferscheinReportFac.REPORT_LIEFERSCHEIN_OFFENE_KOSTENSTELLECNR] = flrlieferschein
                    .getFlrkostenstelle().getC_nr();
            data[i][LieferscheinReportFac.REPORT_LIEFERSCHEIN_OFFENE_ANLAGEDATUM] = flrlieferschein
                    .getD_belegdatum(); // todo
            data[i][LieferscheinReportFac.REPORT_LIEFERSCHEIN_OFFENE_LIEFERTERMIN] = flrlieferschein
                    .getT_liefertermin();
            data[i][LieferscheinReportFac.REPORT_LIEFERSCHEIN_OFFENE_ZAHLUNGSZIEL] = getMandantFac()
                    .zahlungszielFindByIIdLocaleOhneExc(flrlieferschein.getZahlungsziel_i_id(),
                            theClientDto.getLocMandant(), theClientDto);
            if (flrlieferschein.getFlrauftrag() != null) {
                data[i][LieferscheinReportFac.REPORT_LIEFERSCHEIN_OFFENE_AUFTRAGSNUMMER] = flrlieferschein
                        .getFlrauftrag().getC_nr();
                data[i][LieferscheinReportFac.REPORT_LIEFERSCHEIN_OFFENE_AUFTRAG_PROJEKT] = flrlieferschein
                        .getFlrauftrag().getC_bez();
                data[i][LieferscheinReportFac.REPORT_LIEFERSCHEIN_OFFENE_BESTELLNUMMER] = flrlieferschein
                        .getFlrauftrag().getC_bestellnummer();
            } else {
                data[i][LieferscheinReportFac.REPORT_LIEFERSCHEIN_OFFENE_AUFTRAGSNUMMER] = null;
                data[i][LieferscheinReportFac.REPORT_LIEFERSCHEIN_OFFENE_AUFTRAG_PROJEKT] = null;
                data[i][LieferscheinReportFac.REPORT_LIEFERSCHEIN_OFFENE_BESTELLNUMMER] = null;
            }
            data[i][LieferscheinReportFac.REPORT_LIEFERSCHEIN_OFFENE_LIEFERART] = getLocaleFac()
                    .lieferartFindByIIdLocaleOhneExc(flrlieferschein.getLieferart_i_id(),
                            theClientDto.getLocMandant(), theClientDto);

            data[i][LieferscheinReportFac.REPORT_LIEFERSCHEIN_OFFENE_LIEFERARTORT] = flrlieferschein
                    .getC_lieferartort();
            data[i][LieferscheinReportFac.REPORT_LIEFERSCHEIN_OFFENE_VERRECHENBAR] = Helper
                    .short2Boolean(flrlieferschein.getB_verrechenbar());
            if (flrlieferschein.getFlrziellager() != null) {
                data[i][LieferscheinReportFac.REPORT_LIEFERSCHEIN_OFFENE_ZIELLAGER] = flrlieferschein
                        .getFlrziellager().getC_nr();
            }
            if (flrlieferschein.getFlrlager() != null) {
                data[i][LieferscheinReportFac.REPORT_LIEFERSCHEIN_OFFENE_ABLAGER] = flrlieferschein
                        .getFlrlager().getC_nr();
            }

            data[i][LieferscheinReportFac.REPORT_LIEFERSCHEIN_OFFENE_RECHNUNGSADRESSE] = flrlieferschein
                    .getFlrkunderechnungsadresse().getFlrpartner().getC_name1nachnamefirmazeile1();

            data[i][LieferscheinReportFac.REPORT_LIEFERSCHEIN_OFFENE_VERRECHENBAR] = Helper
                    .short2Boolean(flrlieferschein.getB_verrechenbar());

            if (flrlieferschein.getSpediteur_i_id() != null) {
                data[i][LieferscheinReportFac.REPORT_LIEFERSCHEIN_OFFENE_SPEDITEUR] = getMandantFac()
                        .spediteurFindByPrimaryKey(flrlieferschein.getSpediteur_i_id()).getCNamedesspediteurs();
            } else {
                data[i][LieferscheinReportFac.REPORT_LIEFERSCHEIN_OFFENE_SPEDITEUR] = null;
            }
            data[i][LieferscheinReportFac.REPORT_LIEFERSCHEIN_OFFENE_PROJEKTBEZEICHNUNG] = flrlieferschein
                    .getC_bez_projektbezeichnung();
            session = factory.openSession();
            Criteria critPosition = session.createCriteria(FLRLieferscheinposition.class);
            critPosition.add(Restrictions.eq(LieferscheinpositionFac.FLR_LIEFERSCHEINPOSITION_FLRLIEFERSCHEIN,
                    flrlieferschein));

            critPosition.add(Restrictions.or(
                    Restrictions.isNotNull(LieferscheinpositionFac.FLR_LIEFERSCHEINPOSITION_N_MENGE),
                    Restrictions.eq(
                            LieferscheinpositionFac.FLR_LIEFERSCHEINPOSITION_LIEFERSCHEINPOSITIONART_C_NR,
                            LieferscheinpositionFac.LIEFERSCHEINPOSITIONSART_TEXTEINGABE)));

            // critPosition
            // .add(Restrictions
            // .isNotNull(LieferscheinpositionFac.FLR_LIEFERSCHEINPOSITION_N_MENGE));
            List<?> posList = critPosition.list();
            boolean darfVerkaufspreisSehen = getTheJudgeFac()
                    .hatRecht(RechteFac.RECHT_LP_DARF_PREISE_SEHEN_VERKAUF, theClientDto);

            for (Iterator<?> ipos = posList.iterator(); ipos.hasNext();) {
                FLRLieferscheinposition item = (FLRLieferscheinposition) ipos.next();
                i++;// in die naechste Zeile vorruecken
                // nur mengenbehaftete Positionen beruecksichtigen
                if (item.getN_menge() != null) {
                    String artikelCNr = null;
                    // TODO boeser Workaround ... PJ 4400
                    if (item.getFlrartikel().getC_nr().startsWith("~")) {
                        artikelCNr = AngebotReportFac.REPORT_VORKALKULATION_ZEICHEN_FUER_HANDEINGABE;
                    } else {
                        artikelCNr = item.getFlrartikel().getC_nr();
                    }
                    data[i][LieferscheinReportFac.REPORT_LIEFERSCHEIN_OFFENE_ARTIKELCNR] = artikelCNr;
                    String cArtikelBezeichnung = "";

                    if (item.getPositionsart_c_nr()
                            .equals(LieferscheinpositionFac.LIEFERSCHEINPOSITIONSART_IDENT)
                            || item.getPositionsart_c_nr()
                                    .equals(LieferscheinpositionFac.LIEFERSCHEINPOSITIONSART_HANDEINGABE)) {
                        cArtikelBezeichnung = getArtikelFac().baueArtikelBezeichnungMehrzeiligOhneExc(
                                item.getFlrartikel().getI_id(), item.getPositionsart_c_nr(), item.getC_bez(),
                                item.getC_zbez(), false, null, theClientDto);
                    }

                    data[i][LieferscheinReportFac.REPORT_LIEFERSCHEIN_OFFENE_ARTIKELBEZEICHNUNG] = cArtikelBezeichnung;
                    data[i][LieferscheinReportFac.REPORT_LIEFERSCHEIN_OFFENE_ARTIKELMENGE] = item.getN_menge();
                    data[i][LieferscheinReportFac.REPORT_LIEFERSCHEIN_OFFENE_ARTIKELEINHEIT] = item
                            .getEinheit_c_nr() == null ? null : item.getEinheit_c_nr().trim();

                    if (darfVerkaufspreisSehen) {
                        // Positionspreise sind in Belegwaehrung abgelegt
                        BigDecimal nPreisInBelegwaehrung = item
                                .getN_nettogesamtpreisplusversteckteraufschlagminusrabatt();

                        nPreisInBelegwaehrung = getBetragMalWechselkurs(nPreisInBelegwaehrung,
                                Helper.getKehrwert(new BigDecimal(
                                        flrlieferschein.getF_wechselkursmandantwaehrungzulieferscheinwaehrung()
                                                .doubleValue())));

                        data[i][LieferscheinReportFac.REPORT_LIEFERSCHEIN_OFFENE_ARTIKELNETTOGESAMTPREISPLUSVERSTECKTERAUFSCHLAGMINUSRABATT] = nPreisInBelegwaehrung;
                        data[i][LieferscheinReportFac.REPORT_LIEFERSCHEIN_OFFENE_ARTIKELOFFENERWERT] = item
                                .getN_menge().multiply(nPreisInBelegwaehrung);
                    } else {
                        data[i][LieferscheinReportFac.REPORT_LIEFERSCHEIN_OFFENE_ARTIKELNETTOGESAMTPREISPLUSVERSTECKTERAUFSCHLAGMINUSRABATT] = null;
                        data[i][LieferscheinReportFac.REPORT_LIEFERSCHEIN_OFFENE_ARTIKELOFFENERWERT] = null;
                    }

                    // Grundlage ist der positionsbezogene Gestehungspreis
                    // des Artikels.
                    BigDecimal bdGestehungspreis = Helper.getBigDecimalNull();

                    if (item.getPositionsart_c_nr()
                            .equals(LieferscheinpositionFac.LIEFERSCHEINPOSITIONSART_IDENT)) {
                        try {
                            BigDecimal bdGestehungswert = getLieferscheinFac()
                                    .berechneGestehungswertEinerLieferscheinposition(item.getI_id(),
                                            theClientDto);

                            // Gestehungspreis bezogen auf 1 Stueck wird
                            // gemittelt
                            bdGestehungspreis = bdGestehungswert.divide(item.getN_menge(), 4,
                                    BigDecimal.ROUND_HALF_EVEN);
                            bdGestehungspreis = Helper.rundeKaufmaennisch(bdGestehungspreis, 4);
                        } catch (Throwable t) {
                            // dieser Fall sollte nicht auftreten, bitte als
                            // moeglichen Fehler pruefen!
                        }
                    }

                    data[i][LieferscheinReportFac.REPORT_LIEFERSCHEIN_OFFENE_ARTIKELGESTEHUNGSPREIS] = bdGestehungspreis;
                    if (darfVerkaufspreisSehen) {
                        data[i][LieferscheinReportFac.REPORT_LIEFERSCHEIN_OFFENE_ARTIKELOFFENERDB] = item
                                .getN_menge().multiply(bdGestehungspreis);
                    } else {
                        data[i][LieferscheinReportFac.REPORT_LIEFERSCHEIN_OFFENE_ARTIKELOFFENERDB] = null;
                    }
                    // die Positionen brauchen alle Attribute, nach denen im
                    // Report gruppiert wird
                    data[i][LieferscheinReportFac.REPORT_LIEFERSCHEIN_OFFENE_LIEFERSCHEINCNR] = flrlieferschein
                            .getC_nr();
                    data[i][LieferscheinReportFac.REPORT_LIEFERSCHEIN_OFFENE_KOSTENSTELLECNR] = flrlieferschein
                            .getFlrkostenstelle().getC_nr();
                    data[i][LieferscheinReportFac.REPORT_LIEFERSCHEIN_OFFENE_LIEFERSCHEINKUNDE] = flrlieferschein
                            .getFlrkunde().getFlrpartner().getC_name1nachnamefirmazeile1();
                    data[i][LieferscheinReportFac.REPORT_LIEFERSCHEIN_OFFENE_LIEFERSCHEINCNR] = flrlieferschein
                            .getC_nr(); // fuer die Gruppierung
                } else if (item.getPositionsart_c_nr().equals(LocaleFac.POSITIONSART_TEXTEINGABE)) {
                    data[i][LieferscheinReportFac.REPORT_LIEFERSCHEIN_OFFENE_TEXTEINGABE] = item
                            .getC_textinhalt();
                    // die Positionen brauchen alle Attribute, nach denen im
                    // Report gruppiert wird
                    data[i][LieferscheinReportFac.REPORT_LIEFERSCHEIN_OFFENE_LIEFERSCHEINCNR] = flrlieferschein
                            .getC_nr();
                    data[i][LieferscheinReportFac.REPORT_LIEFERSCHEIN_OFFENE_KOSTENSTELLECNR] = flrlieferschein
                            .getFlrkostenstelle().getC_nr();
                    data[i][LieferscheinReportFac.REPORT_LIEFERSCHEIN_OFFENE_LIEFERSCHEINKUNDE] = flrlieferschein
                            .getFlrkunde().getFlrpartner().getC_name1nachnamefirmazeile1();
                    data[i][LieferscheinReportFac.REPORT_LIEFERSCHEIN_OFFENE_LIEFERSCHEINCNR] = flrlieferschein
                            .getC_nr(); // fuer die Gruppierung
                }
            }
            i++; // in die naechste Zeile vorruecken
        }
        // Erstellung des Report
        HashMap parameter = new HashMap<Object, Object>();
        // die Parameter dem Report uebergeben
        parameter.put(LPReport.P_SORTIERUNG,
                buildSortierungLieferscheinOffene(reportJournalKriterienDtoI, theClientDto));
        parameter.put(LPReport.P_FILTER,
                buildFilterLieferscheinOffene(reportJournalKriterienDtoI, theClientDto));
        // die Parameter zur Bildung von Zwischensummen uebergeben
        if (reportJournalKriterienDtoI.bSortiereNachKostenstelle) {
            parameter.put(LPReport.P_SORTIERENACHKOSTENSTELLE, new Boolean(true));
        } else {
            parameter.put(LPReport.P_SORTIERENACHKOSTENSTELLE, new Boolean(false));
        }
        if (reportJournalKriterienDtoI.iSortierung == ReportJournalKriterienDto.KRIT_SORT_NACH_PARTNER) {
            parameter.put(LPReport.P_SORTIERENACHKUNDE, new Boolean(true));
        } else {
            parameter.put(LPReport.P_SORTIERENACHKUNDE, new Boolean(false));
        }
        parameter.put("P_LIEFERSCHEINWAEHRUNG", theClientDto.getSMandantenwaehrung());
        parameter.put("P_DETAILS", new Boolean(bMitDetails));

        initJRDS(parameter, LieferscheinReportFac.REPORT_MODUL,
                LieferscheinReportFac.REPORT_LIEFERSCHEIN_OFFENE, theClientDto.getMandant(),
                theClientDto.getLocUi(), theClientDto);

        oPrintO = getReportPrint();
    } catch (RemoteException re) {
        throwEJBExceptionLPRespectOld(re);
    } finally {
        closeSession(session);
    }
    return oPrintO;
}

From source file:com.lp.server.lieferschein.ejbfac.LieferscheinReportFacBean.java

License:Open Source License

/**
 * Diese Methode liefert eine Liste von allen gelieferten Lieferscheine
 * eines Mandanten, die nach den eingegebenen Kriterien des Benutzers
 * zusammengestellt wird. <br>/*from   w  ww.  ja  v a 2s . c  o m*/
 * Achtung: Hibernate verwendet lazy initialization, d.h. der Zugriff auf
 * Collections muss innerhalb der Session erfolgen.
 * 
 * @param reportJournalKriterienDtoI
 *            die Kriterien des Benutzers
 * @param theClientDto
 *            der aktuelle Benutzer
 * @return ReportLieferscheinOffeneDto[] die Liste der Lieferscheine
 * @throws EJBExceptionLP
 *             Ausnahme
 */
private ReportLieferscheinOffeneDto[] getListeReportLieferscheinOffene(
        ReportJournalKriterienDto reportJournalKriterienDtoI, Integer iArt, boolean bMitDetails,
        TheClientDto theClientDto) throws EJBExceptionLP {

    ReportLieferscheinOffeneDto[] aResult = null;
    SessionFactory factory = FLRSessionFactory.getFactory();
    Session session = null;

    try {
        session = factory.openSession();

        // Hiberante Criteria fuer alle Tabellen ausgehend von meiner
        // Haupttabelle anlegen,
        // nach denen ich filtern und sortieren kann
        Criteria crit = session.createCriteria(FLRLieferschein.class);

        // Einschraenkung auf den aktuellen Mandanten
        crit.add(Restrictions.eq("mandant_c_nr", theClientDto.getMandant()));

        // Einschraenkung nach Status Offen
        crit.add(Restrictions.eq(LieferscheinFac.FLR_LIEFERSCHEIN_LIEFERSCHEINSTATUS_STATUS_C_NR,
                LieferscheinFac.LSSTATUS_GELIEFERT));
        if (iArt != null) {
            if (iArt == 1) {
                crit.add(Restrictions.eq(LieferscheinFac.FLR_LIEFERSCHEIN_B_VERRECHENBAR,
                        Helper.boolean2Short(true)));
            } else if (iArt == 2) {
                crit.add(Restrictions.eq(LieferscheinFac.FLR_LIEFERSCHEIN_B_VERRECHENBAR,
                        Helper.boolean2Short(false)));
            }
        }
        // Einschraenkung nach einer bestimmten Kostenstelle
        if (reportJournalKriterienDtoI.kostenstelleIId != null) {
            crit.add(Restrictions.eq(LieferscheinFac.FLR_LIEFERSCHEIN_KOSTENSTELLE_I_ID,
                    reportJournalKriterienDtoI.kostenstelleIId));
        }

        // Einschraenkung nach einem bestimmten Kunden
        if (reportJournalKriterienDtoI.kundeIId != null) {
            crit.add(Restrictions.eq(LieferscheinFac.FLR_LIEFERSCHEIN_KUNDE_I_ID_LIEFERADRESSE,
                    reportJournalKriterienDtoI.kundeIId));
        }

        // Einschraenkung nach Belegdatum von - bis
        String sVon = null;
        String sBis = null;

        if (reportJournalKriterienDtoI.dVon != null) {
            crit.add(Restrictions.ge(LieferscheinFac.FLR_LIEFERSCHEIN_D_BELEGDATUM,
                    reportJournalKriterienDtoI.dVon));
            sVon = Helper.formatDatum(reportJournalKriterienDtoI.dVon, theClientDto.getLocUi());
        }

        if (reportJournalKriterienDtoI.dBis != null) {
            crit.add(Restrictions.le(LieferscheinFac.FLR_LIEFERSCHEIN_D_BELEGDATUM,
                    reportJournalKriterienDtoI.dBis));
            sBis = Helper.formatDatum(reportJournalKriterienDtoI.dBis, theClientDto.getLocUi());
        }

        // Einschraenkung nach Belegnummer von - bis
        LpBelegnummerFormat f = getBelegnummerGeneratorObj().getBelegnummernFormat(theClientDto.getMandant());

        Integer iGeschaeftsjahr = getParameterFac().getGeschaeftsjahr(theClientDto.getMandant());

        String sMandantKuerzel = getParameterFac().getMandantparameter(theClientDto.getMandant(),
                ParameterFac.KATEGORIE_ALLGEMEIN, ParameterFac.PARAMETER_BELEGNUMMER_MANDANTKENNUNG).getCWert();

        if (reportJournalKriterienDtoI.sBelegnummerVon != null) {
            sVon = HelperServer.getBelegnummernFilterForHibernateCriterias(f, iGeschaeftsjahr, sMandantKuerzel,
                    reportJournalKriterienDtoI.sBelegnummerVon);
            crit.add(Restrictions.ge("c_nr", sVon));
        }

        if (reportJournalKriterienDtoI.sBelegnummerBis != null) {
            sBis = HelperServer.getBelegnummernFilterForHibernateCriterias(f, iGeschaeftsjahr, sMandantKuerzel,
                    reportJournalKriterienDtoI.sBelegnummerBis);
            crit.add(Restrictions.le("c_nr", sBis));
        }

        // Sortierung nach Kostenstelle ist immer die erste Sortierung
        if (reportJournalKriterienDtoI.bSortiereNachKostenstelle) {
            crit.createCriteria(LieferscheinFac.FLR_LIEFERSCHEIN_FLRKOSTENSTELLE).addOrder(Order.asc("c_nr"));
        }

        // Sortierung nach Kunde, eventuell innerhalb der Kostenstelle
        if (reportJournalKriterienDtoI.iSortierung == ReportJournalKriterienDto.KRIT_SORT_NACH_PARTNER) {
            crit.createCriteria(LieferscheinFac.FLR_LIEFERSCHEIN_FLRKUNDE).createCriteria(KundeFac.FLR_PARTNER)
                    .addOrder(Order.asc(PartnerFac.FLR_PARTNER_NAME1NACHNAMEFIRMAZEILE1));
        }

        // es wird in jedem Fall nach der Belegnummer sortiert
        crit.addOrder(Order.asc("c_nr"));

        List<?> list = crit.list();
        aResult = new ReportLieferscheinOffeneDto[list.size()];
        int iIndex = 0;
        Iterator<?> it = list.iterator();
        ReportLieferscheinOffeneDto reportDto = null;

        while (it.hasNext()) {
            FLRLieferschein flrlieferschein = (FLRLieferschein) it.next();

            reportDto = new ReportLieferscheinOffeneDto();
            reportDto.setIIdLieferschein(flrlieferschein.getI_id());
            reportDto.setCNrLieferschein(flrlieferschein.getC_nr());
            reportDto.setKundeCName1(
                    flrlieferschein.getFlrkunde().getFlrpartner().getC_name1nachnamefirmazeile1());
            reportDto.setKostenstelleCNr(flrlieferschein.getFlrkostenstelle().getC_nr());

            aResult[iIndex] = reportDto;
            iIndex++;
        }
    } catch (RemoteException re) {
        throwEJBExceptionLPRespectOld(re);
    } finally {
        closeSession(session);
    }
    return aResult;
}

From source file:com.lp.server.partner.ejbfac.LieferantFacBean.java

License:Open Source License

public ArrayList getWareneingangspositionen(StatistikParamDto statistikParamDtoI, String sWaehrungI,
        boolean bVerdichtetNachArtikel, boolean bEingeschraenkt, TheClientDto theClientDto)
        throws EJBExceptionLP {

    Session sessionWEPOS = null;/*  w  ww  .j  ava 2  s .  c  om*/
    ArrayList<WareneingangspositionenDto> alData = new ArrayList<WareneingangspositionenDto>(10);
    try {
        // in die gewuenschte Waehrung umrechnen
        SessionFactory factory = FLRSessionFactory.getFactory();

        sessionWEPOS = factory.openSession();
        Criteria cWEPOS = sessionWEPOS.createCriteria(FLRWareneingangspositionen.class);
        cWEPOS.createAlias(WareneingangFac.FLR_WEPOS_FLRWARENEINGANG, "we");

        if (statistikParamDtoI.getId() != null) {
            cWEPOS.createAlias("we." + WareneingangFac.FLR_WE_FLRBESTELLUNG, "b");
            cWEPOS.add(Restrictions.eq("b." + BestellungFac.FLR_BESTELLUNG_LIEFERANT_I_ID_BESTELLADRESSE,
                    statistikParamDtoI.getId()));
        }

        if (statistikParamDtoI.getDDatumVon() != null) {
            cWEPOS.add(Restrictions.ge("we." + WareneingangFac.FLRSPALTE_T_WARENEINGANGSDATUM,
                    Helper.cutDate(statistikParamDtoI.getDDatumVon())));
        }
        if (statistikParamDtoI.getDDatumBis() != null) {
            Calendar c = Calendar.getInstance();
            c.setTimeInMillis(statistikParamDtoI.getDDatumBis().getTime());
            c.set(Calendar.HOUR_OF_DAY, 23);
            c.set(Calendar.MINUTE, 59);
            c.set(Calendar.SECOND, 59);
            c.set(Calendar.MILLISECOND, 999);

            java.sql.Date dBis = new java.sql.Date(c.getTimeInMillis());

            cWEPOS.add(Restrictions.le("we." + WareneingangFac.FLRSPALTE_T_WARENEINGANGSDATUM, dBis));
        }

        cWEPOS.addOrder(Order.desc("we." + WareneingangFac.FLRSPALTE_T_WARENEINGANGSDATUM));

        WareneingangspositionenDto ks = null;

        if (bEingeschraenkt) {
            cWEPOS.setMaxResults(50);
        }

        List<?> lWEPOS = cWEPOS.list();

        // BSPOS
        for (int k = 0; k < lWEPOS.size(); k++) {
            FLRWareneingangspositionen wepos = ((FLRWareneingangspositionen) lWEPOS.get(k));
            ks = new WareneingangspositionenDto();

            ks.setSWas("WEPOS");
            ks.setBdMenge(wepos.getN_geliefertemenge());
            ks.setSIdent(wepos.getFlrbestellposition().getFlrartikel().getC_nr());

            com.lp.server.artikel.service.ArtikelDto artikelDto = getArtikelFac().artikelFindByPrimaryKeySmall(
                    wepos.getFlrbestellposition().getFlrartikel().getI_id(), theClientDto);
            String sHelp = wepos.getFlrbestellposition().getFlrbestellung().getC_nr();
            ks.setSNr(wepos.getFlrbestellposition().getFlrbestellung().getC_nr());
            ks.setDBelegdatum(wepos.getFlrwareneingang().getT_wareneingansdatum());
            ks.setSBezeichnung(artikelDto.formatBezeichnung());

            String sWaehrungBS = wepos.getFlrbestellposition().getFlrbestellung()
                    .getWaehrung_c_nr_bestellwaehrung();

            BigDecimal bDW = new BigDecimal(0);
            if (wepos.getN_gelieferterpreis() != null) {
                bDW = getLocaleFac().rechneUmInAndereWaehrungZuDatum(wepos.getN_gelieferterpreis(), sWaehrungBS,
                        sWaehrungI, new Date(System.currentTimeMillis()), theClientDto);
            }

            ks.setBdPreis(bDW);
            ks.setBdWert(wepos.getN_geliefertemenge().multiply(bDW));

            ks.setSEinheit(wepos.getFlrbestellposition().getEinheit_c_nr());
            if (bVerdichtetNachArtikel) {
                boolean bGefunden = false;
                for (int j = 0; j < alData.size(); j++) {
                    WareneingangspositionenDto temp = (WareneingangspositionenDto) alData.get(j);
                    if (temp.getSIdent().equals(ks.getSIdent())) {

                        BigDecimal wertNeu = ks.getBdWert().add(temp.getBdWert());
                        BigDecimal mengeNeu = ks.getBdMenge().add(temp.getBdMenge());
                        BigDecimal preisNeu = new BigDecimal(0);
                        if (mengeNeu.doubleValue() != 0) {
                            preisNeu = wertNeu.divide(mengeNeu, 4, BigDecimal.ROUND_HALF_EVEN);
                        }

                        temp.setBdWert(wertNeu);
                        temp.setBdMenge(mengeNeu);
                        temp.setBdPreis(preisNeu);
                        temp.setDBelegdatum(null);
                        temp.setSNr("");
                        temp.setSWas("");

                        alData.set(j, temp);
                        bGefunden = true;
                        break;
                    }
                }
                if (bGefunden == false) {
                    alData.add(ks);
                }
            } else {
                alData.add(ks);
            }
        }
        sessionWEPOS.close();
        sessionWEPOS = null;

    } catch (Exception e) {
        throw new EJBExceptionLP(e);
    } finally {

        if (sessionWEPOS != null) {
            sessionWEPOS.close();
        }
        sessionWEPOS = null;
    }
    return alData;
}

From source file:com.lp.server.personal.ejbfac.ZeiterfassungReportFacBean.java

License:Open Source License

public JasperPrintLP printMaschinenliste(java.sql.Timestamp tStichtag, boolean bMitVersteckten,
        TheClientDto theClientDto) {/*from w w  w .j a v a 2s. com*/
    sAktuellerReport = ZeiterfassungReportFac.REPORT_MASCHINENLISTE;

    SessionFactory factory = FLRSessionFactory.getFactory();
    Session session = factory.openSession();

    org.hibernate.Criteria crit = session
            .createCriteria(com.lp.server.personal.fastlanereader.generated.FLRMaschine.class)
            .add(Restrictions.eq("mandant_c_nr", theClientDto.getMandant()));
    if (bMitVersteckten == false) {
        crit.add(Restrictions.eq(ZeiterfassungFac.FLR_MASCHINE_B_VERSTECKT, Helper.boolean2Short(false)));
    }
    if (tStichtag != null) {
        crit.add(Restrictions.or(Restrictions.le(ZeiterfassungFac.FLR_MASCHINE_T_KAUFDATUM, tStichtag),
                Restrictions.isNull(ZeiterfassungFac.FLR_MASCHINE_T_KAUFDATUM)));
    }

    crit.createAlias(ZeiterfassungFac.FLR_MASCHINE_FLR_MASCHINENGRUPPE, "m").addOrder(Order.asc("m.c_bez"));
    crit.addOrder(Order.asc(ZeiterfassungFac.FLR_MASCHINE_C_INVENTARNUMMER));

    List<?> resultList = crit.list();

    data = new Object[resultList.size()][10];

    Iterator<?> resultListIterator = resultList.iterator();
    int row = 0;
    while (resultListIterator.hasNext()) {
        FLRMaschine flrmaschine = (FLRMaschine) resultListIterator.next();

        data[row][REPORT_MASCHINENLISTE_INVENTARNUMMER] = flrmaschine.getC_inventarnummer();
        data[row][REPORT_MASCHINENLISTE_BEZEICHNUNG] = flrmaschine.getC_bez();
        data[row][REPORT_MASCHINENLISTE_IDENTIFIKATIONSNUMMER] = flrmaschine.getC_identifikationsnr();
        data[row][REPORT_MASCHINENLISTE_KAUFDATUM] = flrmaschine.getT_kaufdatum();
        data[row][REPORT_MASCHINENLISTE_VERFUEGBARKEIT] = flrmaschine.getF_verfuegbarkeitinprozent();
        data[row][REPORT_MASCHINENLISTE_AUTOENDE] = new Boolean(
                Helper.short2Boolean(flrmaschine.getB_autoendebeigeht()));

        data[row][REPORT_MASCHINENLISTE_KOSTEN_ZUM_ZEITPUNKT] = getZeiterfassungFac()
                .getMaschinenKostenZumZeitpunkt(flrmaschine.getI_id(),
                        new Timestamp(System.currentTimeMillis()));

        data[row][REPORT_MASCHINENLISTE_MASCHINENGRUPPE] = flrmaschine.getFlrmaschinengruppe().getC_bez();

        Session s2 = FLRSessionFactory.getFactory().openSession();
        Query query2 = session.createQuery("FROM FLRMaschinenzeitdaten m WHERE m.maschine_i_id="
                + flrmaschine.getI_id() + " ORDER BY m.t_von DESC");
        query2.setMaxResults(1);
        List<?> resultListSub = query2.list();

        String starter = "";
        Timestamp tUm = null;

        if (resultListSub.size() > 0) {
            FLRMaschinenzeitdaten m = (FLRMaschinenzeitdaten) resultListSub.iterator().next();

            starter = m.getFlrpersonal_gestartet().getFlrpartner().getC_name1nachnamefirmazeile1();

            if (m.getFlrpersonal_gestartet().getFlrpartner().getC_name2vornamefirmazeile2() != null) {
                starter += " " + m.getFlrpersonal_gestartet().getFlrpartner().getC_name2vornamefirmazeile2();
            }
            tUm = new Timestamp(m.getT_von().getTime());
        }
        data[row][REPORT_MASCHINENLISTE_ZULETZT_GESTARTET_VON] = starter;
        data[row][REPORT_MASCHINENLISTE_ZULETZT_GESTARTET_UM] = tUm;

        row++;
    }

    HashMap<String, Object> parameter = new HashMap<String, Object>();
    parameter.put("T_STICHTAG", tStichtag);
    initJRDS(parameter, ZeiterfassungReportFac.REPORT_MODUL, ZeiterfassungReportFac.REPORT_MASCHINENLISTE,
            theClientDto.getMandant(), theClientDto.getLocUi(), theClientDto);
    return getReportPrint();

}

From source file:com.lp.server.personal.ejbfac.ZutrittscontrollerReportFacBean.java

License:Open Source License

public JasperPrintLP printZutrittsjournal(java.sql.Timestamp tVon, java.sql.Timestamp tBis,
        TheClientDto theClientDto) {//from   w  w w .j a  v a2s.com
    index = -1;
    sAktuellerReport = ZutrittscontrollerReportFac.REPORT_ZUTRITTSJOURNAL;

    Session session = FLRSessionFactory.getFactory().openSession();

    org.hibernate.Criteria crit = session
            .createCriteria(com.lp.server.personal.fastlanereader.generated.FLRZutrittslog.class)
            .add(Restrictions.eq("mandant_c_nr", theClientDto.getMandant()));
    crit.add(Restrictions.ge(ZutrittscontrollerFac.FLR_ZUTRITTSLOG_T_ZEITPUNKT, tVon));
    crit.add(Restrictions.le(ZutrittscontrollerFac.FLR_ZUTRITTSLOG_T_ZEITPUNKT, tBis));

    // Wenn Hauptmandant
    try {
        String hauptmandant = getMandantFac().mandantFindByPrimaryKey(theClientDto.getMandant(), theClientDto)
                .getAnwenderDto().getMandantCNrHauptmandant();
        if (!hauptmandant.equals(theClientDto.getMandant())) {

            crit.add(Restrictions.or(
                    Restrictions.isNull(ZutrittscontrollerFac.FLR_ZUTRITTSLOG_MANDANT_C_NR_OBJEKT),
                    Restrictions.or(
                            Restrictions.eq(ZutrittscontrollerFac.FLR_ZUTRITTSLOG_MANDANT_C_NR_OBJEKT,
                                    theClientDto.getMandant()),
                            Restrictions.eq(ZutrittscontrollerFac.FLR_ZUTRITTSLOG_FLRMANDANT + ".c_nr",
                                    theClientDto.getMandant()))));
        }
    } catch (RemoteException ex) {
        throwEJBExceptionLPRespectOld(ex);
    }

    crit.addOrder(Order.desc(ZutrittscontrollerFac.FLR_ZUTRITTSLOG_T_ZEITPUNKT));

    List<?> results = crit.list();
    Iterator<?> resultListIterator = results.iterator();
    data = new Object[results.size()][7];
    int row = 0;
    while (resultListIterator.hasNext()) {
        FLRZutrittslog log = (FLRZutrittslog) resultListIterator.next();
        data[row][REPORT_ZUTRITTSJOURNAL_AUSWEIS] = log.getC_ausweis();
        data[row][REPORT_ZUTRITTSJOURNAL_CONTROLLER] = log.getC_zutrittscontroller();
        data[row][REPORT_ZUTRITTSJOURNAL_ERLAUBT] = log.getB_erlaubt();
        data[row][REPORT_ZUTRITTSJOURNAL_MANDANT] = log.getMandant_c_nr();
        data[row][REPORT_ZUTRITTSJOURNAL_OBJEKT] = log.getC_zutrittsobjekt();
        data[row][REPORT_ZUTRITTSJOURNAL_PERSON] = log.getC_person();
        data[row][REPORT_ZUTRITTSJOURNAL_ZEITPUNKT] = new java.sql.Timestamp(log.getT_zeitpunkt().getTime());
        row++;
    }
    session.close();
    HashMap<String, Object> parameter = new HashMap<String, Object>();
    parameter.put("P_VON", tVon);
    parameter.put("P_BIS", tBis);
    initJRDS(parameter, ZutrittscontrollerReportFac.REPORT_MODUL,
            ZutrittscontrollerReportFac.REPORT_ZUTRITTSJOURNAL, theClientDto.getMandant(),
            theClientDto.getLocUi(), theClientDto);

    return getReportPrint();
}

From source file:com.lp.server.projekt.ejbfac.ProjektReportFacBean.java

License:Open Source License

public JasperPrintLP printProjektAlle(ReportJournalKriterienDto reportJournalKriterienDtoI, Date dStichtag,
        Integer bereichIId, boolean belegdatumStattZieltermin, TheClientDto theClientDto)
        throws EJBExceptionLP, RemoteException {
    JasperPrintLP oPrint = null;/* ww  w . j a v a  2 s . c  o  m*/
    int iAnzahlZeilen = 0;
    cAktuellerReport = ProjektReportFac.REPORT_PROJEKT_JOURNAL_ALLE;
    Locale locDruck;

    SessionFactory factory = FLRSessionFactory.getFactory();
    Session session = null;
    // vom Stichtag die Uhrzeit abschneiden
    dStichtag = Helper.cutDate(dStichtag);

    try {
        session = factory.openSession();
        // Hiberante Criteria fuer alle Tabellen ausgehend von meiner
        // Haupttabelle anlegen,
        // nach denen ich filtern und sortieren kann
        Criteria critProjekt = session.createCriteria(FLRProjekt.class);

        // Einschraenkung auf den aktuellen Mandanten
        critProjekt.add(Restrictions.eq(ProjektFac.FLR_PROJEKT_MANDANT_C_NR, theClientDto.getMandant()));

        critProjekt.add(Restrictions.not(Restrictions.eq(ProjektFac.FLR_PROJEKT_STATUS_C_NR,
                ProjektServiceFac.PROJEKT_STATUS_STORNIERT)));

        // Einschraenkung nach Belegdatum von - bis
        String sVon = null;
        String sBis = null;

        if (reportJournalKriterienDtoI.dVon != null) {

            if (belegdatumStattZieltermin) {
                critProjekt.add(
                        Restrictions.ge(ProjektFac.FLR_PROJEKT_T_ANLEGEN, reportJournalKriterienDtoI.dVon));
            } else {
                critProjekt.add(
                        Restrictions.ge(ProjektFac.FLR_PROJEKT_T_ZIELDATUM, reportJournalKriterienDtoI.dVon));
            }

            sVon = Helper.formatDatum(reportJournalKriterienDtoI.dVon, theClientDto.getLocUi());
        }

        if (reportJournalKriterienDtoI.dBis != null) {
            if (belegdatumStattZieltermin) {
                critProjekt.add(
                        Restrictions.le(ProjektFac.FLR_PROJEKT_T_ANLEGEN, reportJournalKriterienDtoI.dBis));
            } else {
                critProjekt.add(
                        Restrictions.le(ProjektFac.FLR_PROJEKT_T_ZIELDATUM, reportJournalKriterienDtoI.dBis));
            }
            sBis = Helper.formatDatum(reportJournalKriterienDtoI.dBis, theClientDto.getLocUi());
        }

        if (reportJournalKriterienDtoI.sBelegnummerVon != null) {
            sVon = reportJournalKriterienDtoI.sBelegnummerVon;
            critProjekt.add(Restrictions.ge(ProjektFac.FLR_PROJEKT_C_NR, new Integer(sVon)));
        }

        critProjekt.add(Restrictions.eq(ProjektFac.FLR_PROJEKT_BEREICH_I_ID, bereichIId));

        if (reportJournalKriterienDtoI.sBelegnummerBis != null) {
            sBis = reportJournalKriterienDtoI.sBelegnummerBis;
            critProjekt.add(Restrictions.le(ProjektFac.FLR_PROJEKT_C_NR, new Integer(sBis)));
        }

        // Einschraenkung nach einer bestimmten Perosn
        if (reportJournalKriterienDtoI.personalIId != null) {
            critProjekt.add(Restrictions.eq(ProjektFac.FLR_PROJEKT_PERSONAL_I_ID_ZUGEWIESENER,
                    reportJournalKriterienDtoI.personalIId));
        }

        // Sortierung nach Personal ist immer die erste Sortierung
        if (reportJournalKriterienDtoI.bSortiereNachPersonal) {
            critProjekt.createCriteria(ProjektFac.FLR_PROJEKT_FLRPERSONALZUGEWIESENER)
                    .createCriteria(KundeFac.FLR_PARTNER)
                    .addOrder(Order.asc(PartnerFac.FLR_PARTNER_NAME1NACHNAMEFIRMAZEILE1));
        }

        // Sortierung nach Partner,
        if (reportJournalKriterienDtoI.iSortierung == ReportJournalKriterienDto.KRIT_SORT_NACH_PARTNER) {
            critProjekt.createCriteria(ProjektFac.FLR_PROJEKT_FLRPARTNER)
                    .addOrder(Order.asc(PartnerFac.FLR_PARTNER_NAME1NACHNAMEFIRMAZEILE1));
        }
        // es wird in jedem Fall nach der Iid sortiert
        critProjekt.addOrder(Order.asc(ProjektFac.FLR_PROJEKT_C_NR));

        List<?> list = critProjekt.list();
        Iterator<?> it = list.iterator();

        while (it.hasNext()) {
            FLRProjekt projekt = (FLRProjekt) it.next();
            session = factory.openSession();
            Criteria critHistory = session.createCriteria(FLRHistory.class);
            critHistory.createCriteria(ProjektFac.FLR_HISTORY_FLRPROJEKT)
                    .add(Restrictions.eq(ProjektFac.FLR_PROJEKT_I_ID, projekt.getI_id()));
            List<?> historyList = critHistory.list();
            if (historyList.size() != 0) {
                iAnzahlZeilen = iAnzahlZeilen + historyList.size();
            }
            iAnzahlZeilen++;
        }
        data = new Object[iAnzahlZeilen][ProjektReportFac.REPORT_PROJEKT_JOURNAL_ALLE_ANZAHL_SPALTEN];
        int i = 0;
        it = list.iterator();

        while (it.hasNext()) {
            FLRProjekt projekt = (FLRProjekt) it.next();
            data[i][ProjektReportFac.REPORT_PROJEKT_JOURNAL_ALLE_PROJEKTTITEL] = projekt.getC_titel();
            data[i][ProjektReportFac.REPORT_PROJEKT_JOURNAL_ALLE_PROJEKTKATEGORIE] = projekt
                    .getKategorie_c_nr();
            data[i][ProjektReportFac.REPORT_PROJEKT_JOURNAL_ALLE_PROJEKTCNR] = projekt.getC_nr();
            data[i][ProjektReportFac.REPORT_PROJEKT_JOURNAL_ALLE_KUNDECNAME1] = projekt.getFlrpartner()
                    .getC_name1nachnamefirmazeile1();
            data[i][ProjektReportFac.REPORT_PROJEKT_JOURNAL_ALLE_STATUS] = projekt.getStatus_c_nr();
            data[i][ProjektReportFac.REPORT_PROJEKT_JOURNAL_ALLE_TYP] = projekt.getTyp_c_nr();
            if (projekt.getPersonal_i_id_internerledigt() != null) {
                PersonalDto personalDto = getPersonalFac()
                        .personalFindByPrimaryKey(projekt.getPersonal_i_id_internerledigt(), theClientDto);
                data[i][ProjektReportFac.REPORT_PROJEKT_JOURNAL_ALLE_INTERNERLEDIGT_PERSON] = personalDto
                        .getPartnerDto().formatAnrede();
                data[i][ProjektReportFac.REPORT_PROJEKT_JOURNAL_ALLE_INTERNERLEDIGT_ZEIT] = projekt
                        .getT_internerledigt();
            }
            data[i][ProjektReportFac.REPORT_PROJEKT_JOURNAL_ALLE_WAHRSCHEINLICHKEIT] = projekt
                    .getI_wahrscheinlichkeit();
            data[i][ProjektReportFac.REPORT_PROJEKT_JOURNAL_ALLE_GEPLANTERUMSATZ] = projekt
                    .getN_umsatzgeplant();

            locDruck = Helper.string2Locale(projekt.getFlrpartner().getLocale_c_nr_kommunikation());
            data[i][ProjektReportFac.REPORT_PROJEKT_JOURNAL_ALLE_ZIELTERMIN] = Helper
                    .formatDatum(projekt.getT_zielwunschdatum(), locDruck);
            data[i][ProjektReportFac.REPORT_PROJEKT_JOURNAL_ALLE_BELEGDATUM] = Helper
                    .formatDatum(projekt.getT_anlegen(), locDruck);
            data[i][ProjektReportFac.REPORT_PROJEKT_JOURNAL_ALLE_ERLEDIGUNGSDATUM] = Helper
                    .formatDatumZeit(projekt.getT_erledigungsdatum(), locDruck);

            Calendar calendar = new GregorianCalendar();
            calendar.setTime(new Date(projekt.getT_zielwunschdatum().getTime()));
            int KW = calendar.get(Calendar.WEEK_OF_YEAR); // Kalendarwochen

            data[i][ProjektReportFac.REPORT_PROJEKT_JOURNAL_ALLE_ZIELWOCHE] = "" + KW;

            data[i][ProjektReportFac.REPORT_PROJEKT_JOURNAL_ALLE_PRIO] = projekt.getI_prio();
            data[i][ProjektReportFac.REPORT_PROJEKT_JOURNAL_ALLE_TEXT] = projekt.getX_freetext();
            data[i][ProjektReportFac.REPORT_PROJEKT_JOURNAL_ALLE_ERZEUGER] = projekt.getFlrpersonalErzeuger()
                    .getFlrpartner().getC_name1nachnamefirmazeile1();
            data[i][ProjektReportFac.REPORT_PROJEKT_JOURNAL_ALLE_ZUGEWIESENER] = projekt
                    .getFlrpersonalZugewiesener().getFlrpartner().getC_name1nachnamefirmazeile1();
            data[i][ProjektReportFac.REPORT_PROJEKT_JOURNAL_ALLE_ZEIT] = projekt.getT_zeit();
            data[i][ProjektReportFac.REPORT_PROJEKT_JOURNAL_ALLE_DAUER] = projekt.getD_dauer();
            //
            //

            Criteria crit1 = session.createCriteria(FLRHistory.class);
            crit1.createCriteria(ProjektFac.FLR_HISTORY_FLRPROJEKT)
                    .add(Restrictions.eq(ProjektFac.FLR_PROJEKT_I_ID, projekt.getI_id()));
            List<?> resultList = crit1.list();
            Iterator<?> itHistory = resultList.iterator();
            i++;

            while (itHistory.hasNext()) {
                FLRHistory history = (FLRHistory) itHistory.next();
                data[i][ProjektReportFac.REPORT_PROJEKT_JOURNAL_ALLE_PROJEKTCNR] = projekt.getC_nr();
                data[i][ProjektReportFac.REPORT_PROJEKT_JOURNAL_ALLE_ZUGEWIESENER] = projekt
                        .getFlrpersonalZugewiesener().getFlrpartner().getC_name1nachnamefirmazeile1();
                data[i][ProjektReportFac.REPORT_PROJEKT_JOURNAL_ALLE_HISTORY_MITARBEITER] = history
                        .getFlrpersonal().getFlrpartner().getC_name1nachnamefirmazeile1();
                data[i][ProjektReportFac.REPORT_PROJEKT_JOURNAL_ALLE_HISTORY_BELEGDATUM] = Helper
                        .formatDatum(history.getT_belegdatum(), locDruck);
                data[i][ProjektReportFac.REPORT_PROJEKT_JOURNAL_ALLE_HISTORY_TEXT] = history.getX_text();
                i++;
            }

        }

    } catch (Throwable t) {
        throw new EJBExceptionLP(EJBExceptionLP.FEHLER_FLR, new Exception(t));
    } finally {
        try {
            session.close();
        } catch (HibernateException he) {
            throw new EJBExceptionLP(EJBExceptionLP.FEHLER_HIBERNATE, he);
        }
    }
    // die Parameter dem Report uebergeben
    HashMap<String, Object> parameter = new HashMap<String, Object>();

    parameter.put(LPReport.P_SORTIERUNG, buildSortierungProjektAlle(reportJournalKriterienDtoI, theClientDto));

    parameter.put("P_BEREICH", getProjektServiceFac().bereichFindByPrimaryKey(bereichIId).getCBez());
    parameter.put("P_BELEGDATUM_STATT_ZIELTERMIN", new Boolean(belegdatumStattZieltermin));

    parameter.put(LPReport.P_FILTER, buildFilterProjektAlle(reportJournalKriterienDtoI, theClientDto));

    if (reportJournalKriterienDtoI.personalIId != null) {
        parameter.put(LPReport.P_SORTIERENACHPERSONAL, new Boolean(true));
    } else {
        parameter.put(LPReport.P_SORTIERENACHPERSONAL, new Boolean(false));
    }

    parameter.put("P_TITLE",
            getTextRespectUISpr("proj.print.alle", theClientDto.getMandant(), theClientDto.getLocUi()));

    initJRDS(parameter, ProjektReportFac.REPORT_MODUL, cAktuellerReport, theClientDto.getMandant(),
            theClientDto.getLocUi(), theClientDto);

    oPrint = getReportPrint();

    return oPrint;
}