Example usage for org.hibernate Criteria createCriteria

List of usage examples for org.hibernate Criteria createCriteria

Introduction

In this page you can find the example usage for org.hibernate Criteria createCriteria.

Prototype

public Criteria createCriteria(String associationPath) throws HibernateException;

Source Link

Document

Create a new Criteria, "rooted" at the associated entity.

Usage

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

License:Open Source License

/**
 * Alle offenen Lieferscheine fuer einen bestimmten Mandanten drucken.
 * //w w  w .jav a  2 s.c om
 * @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  www. j ava2s .co 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.KundeFacBean.java

License:Open Source License

private KundeDto[] findAllKundeByDebitorennr(KundeDto kundeDtoI, TheClientDto theClientDto)
        throws EJBExceptionLP {
    ArrayList<KundeDto> list = new ArrayList<KundeDto>();
    if (kundeDtoI.getIDebitorenkontoAsIntegerNotiId() != null) {
        Session session = null;// w  w w.java  2s  .c o m
        try {
            SessionFactory factory = FLRSessionFactory.getFactory();
            session = factory.openSession();
            // Kunden finden
            Criteria c = session.createCriteria(FLRKunde.class);
            // alle mit diesem Debitorenkonto
            c.createCriteria(KundeFac.FLR_KONTO).add(Restrictions.eq(FinanzFac.FLR_KONTO_C_NR,
                    kundeDtoI.getIDebitorenkontoAsIntegerNotiId().toString()));
            // aber nicht denselben
            c.add(Restrictions.not(Restrictions.eq(KundeFac.FLR_KUNDE_I_ID, kundeDtoI.getIId())));
            c.add(Restrictions.eq(KundeFac.FLR_KUNDE_MANDANT_C_NR, theClientDto.getMandant()));
            // query ausfuehren
            List<?> resultList = c.list();
            for (Iterator<?> iter = resultList.iterator(); iter.hasNext();) {
                FLRKunde item = (FLRKunde) iter.next();
                list.add(kundeFindByPrimaryKey(item.getI_id(), theClientDto));
            }
        } finally {
            if (session != null) {
                session.close();
            }
        }
    }
    KundeDto[] returnArray = new KundeDto[list.size()];
    return (KundeDto[]) list.toArray(returnArray);
}

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

License:Open Source License

private LieferantDto[] findAllLieferantenByKreditorennr(LieferantDto lieferantDtoI, TheClientDto theClientDto)
        throws EJBExceptionLP {
    ArrayList<LieferantDto> list = new ArrayList<LieferantDto>();
    if (lieferantDtoI.getIKreditorenkontoAsIntegerNotiId() != null) {
        Session session = null;//from   w  w w .  ja v a  2  s.c om
        try {
            SessionFactory factory = FLRSessionFactory.getFactory();
            session = factory.openSession();
            // Lieferanten finden
            Criteria c = session.createCriteria(FLRLieferant.class);
            // alle mit diesem Kreditorenkonto
            c.createCriteria(LieferantFac.FLR_KONTO).add(Restrictions.eq(FinanzFac.FLR_KONTO_C_NR,
                    lieferantDtoI.getIKreditorenkontoAsIntegerNotiId().toString()));
            // aber nicht denselben
            c.add(Restrictions.not(Restrictions.eq(LieferantFac.FLR_LIEFERANT_I_ID, lieferantDtoI.getIId())));
            c.add(Restrictions.eq(LieferantFac.FLR_LIEFERANT_MANDANT_C_NR, theClientDto.getMandant()));
            // query ausfuehren
            List<?> resultList = c.list();
            for (Iterator<?> iter = resultList.iterator(); iter.hasNext();) {
                FLRLieferant item = (FLRLieferant) iter.next();
                list.add(lieferantFindByPrimaryKey(item.getI_id(), theClientDto));
            }
        } finally {
            if (session != null) {
                session.close();
            }
        }
    }
    LieferantDto[] returnArray = new LieferantDto[list.size()];
    return (LieferantDto[]) list.toArray(returnArray);
}

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

License:Open Source License

public JasperPrintLP printProjekt(Integer iIdProjektI, Integer iAnzahlKopienI, Boolean bMitLogo,
        TheClientDto theClientDto) throws EJBExceptionLP, RemoteException {
    JasperPrintLP aJasperPrint = null;//  w  w w  . java 2s  .  c o m

    try {
        ProjektDto projektDto = getProjektFac().projektFindByPrimaryKey(iIdProjektI);
        PartnerDto partnerDto = getPartnerFac().partnerFindByPrimaryKey(projektDto.getPartnerIId(),
                theClientDto);
        MandantDto mandantDto = getMandantFac().mandantFindByPrimaryKey(projektDto.getMandantCNr(),
                theClientDto);
        cAktuellerReport = ProjektReportFac.REPORT_PROJEKT;
        // dem Report seine Parameter setzen
        HashMap<String, Object> parameter = new HashMap<String, Object>();

        Locale locDruck = Helper.string2Locale(partnerDto.getLocaleCNrKommunikation());

        if (partnerDto.getPartnerklasseIId() != null) {
            parameter.put("P_PARTNERKLASSE",
                    getPartnerFac()
                            .partnerklasseFindByPrimaryKey(partnerDto.getPartnerklasseIId(), theClientDto)
                            .getBezeichnung());
        }

        parameter.put("P_BEREICH",
                getProjektServiceFac().bereichFindByPrimaryKey(projektDto.getBereichIId()).getCBez());

        if (partnerDto.getBrancheIId() != null) {
            parameter.put("P_BRANCHE", getPartnerServicesFac()
                    .brancheFindByPrimaryKey(partnerDto.getBrancheIId(), theClientDto).getBezeichnung());
        }
        parameter.put("P_MANDANTADRESSE", Helper.formatMandantAdresse(mandantDto));

        parameter.put("P_TITEL", projektDto.getCTitel());
        parameter.put("P_PROJEKTNUMMER", projektDto.getCNr());
        parameter.put("P_KOPFTEXT", Helper.formatStyledTextForJasper(projektDto.getXFreetext()));
        parameter.put("P_KATEGORIE", projektDto.getKategorieCNr());

        parameter.put("P_WAHRSCHEINLICHKEIT", projektDto.getIWahrscheinlichkeit());
        parameter.put("P_UMSATZGEPLANT", projektDto.getNUmsatzgeplant());

        parameter.put("P_ZIELTERMIN", "" + Helper.formatDatum(projektDto.getTZielwunschdatum(), locDruck));
        parameter.put("P_ERLEDIGUNGSDATUM", "" + Helper.formatDatum(projektDto.getTErledigt(), locDruck));
        parameter.put("P_BELEGDATUM", "" + Helper.formatDatum(projektDto.getTAnlegen(), locDruck));
        parameter.put("P_KUNDE_ADRESSBLOCK", formatAdresseFuerAusdruck(partnerDto, null, mandantDto, locDruck));

        if (projektDto.getAnsprechpartnerIId() != null) {
            AnsprechpartnerDto ansprechpartnerDto = getAnsprechpartnerFac()
                    .ansprechpartnerFindByPrimaryKey(projektDto.getAnsprechpartnerIId(), theClientDto);
            parameter.put(LPReport.P_ANSPRECHPARTNER, ansprechpartnerDto.getPartnerDto().formatFixName1Name2());

            parameter.put(LPReport.P_ANSPRECHPARTNERHANDY, ansprechpartnerDto.getCHandy());

            parameter.put(LPReport.P_ANSPRECHPARTNERDW, ansprechpartnerDto.getCTelefon());

            parameter.put(LPReport.P_ANSPRECHPARTNEREMAIL, ansprechpartnerDto.getCEmail());

            parameter.put(LPReport.P_ANSPRECHPARTNERFAX, ansprechpartnerDto.getCDirektfax());

            String sTelefon = getPartnerFac().partnerkommFindRespectPartnerAsStringOhneExec(
                    ansprechpartnerDto.getIId(), partnerDto, PartnerFac.KOMMUNIKATIONSART_TELEFON,
                    theClientDto.getMandant(), theClientDto);

            parameter.put(LPReport.P_ANSPRECHPARTNERTELEFON, sTelefon != null ? sTelefon : "");

        }
        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(FLRHistory.class);

            crit.createCriteria(ProjektFac.FLR_HISTORY_FLRPROJEKT)
                    .add(Restrictions.eq(ProjektFac.FLR_PROJEKT_I_ID, projektDto.getIId()));
            crit.addOrder(Order.desc(ProjektFac.FLR_HISTORY_T_BELEGDATUM));
            List<?> resultList = crit.list();
            if (resultList.size() == 0) {
                data = new Object[1][ProjektReportFac.REPORT_PROJEKT_JOURNAL_ALLE_ANZAHL_SPALTEN];
                parameter.put("P_OHNEPOSITION", new Boolean(true));
            } else {
                parameter.put("P_OHNEPOSITION", new Boolean(false));
                Iterator<?> it = resultList.iterator();
                int i = 0;
                data = new Object[resultList
                        .size()][ProjektReportFac.REPORT_PROJEKT_JOURNAL_ALLE_ANZAHL_SPALTEN];
                while (it.hasNext()) {
                    FLRHistory history = (FLRHistory) it.next();
                    data[i][ProjektReportFac.REPORT_PROJEKT_POSITION] = i;
                    data[i][ProjektReportFac.REPORT_PROJEKT_ERZEUGER] = history.getFlrpersonal().getFlrpartner()
                            .getC_name1nachnamefirmazeile1();
                    data[i][ProjektReportFac.REPORT_PROJEKT_HISTORY_BELEGDATUM] = Helper
                            .formatDatum(history.getT_belegdatum(), locDruck);
                    data[i][ProjektReportFac.REPORT_PROJEKT_HISTORY_TEXT] = history.getX_text();
                    data[i][ProjektReportFac.REPORT_PROJEKT_TITEL] = history.getC_titel();

                    if (history.getFlrhistoryart() != null) {
                        data[i][ProjektReportFac.REPORT_PROJEKT_HISTORYART] = history.getFlrhistoryart()
                                .getC_bez();

                        data[i][ProjektReportFac.REPORT_PROJEKT_ROT] = history.getFlrhistoryart().getI_rot();
                        data[i][ProjektReportFac.REPORT_PROJEKT_BLAU] = history.getFlrhistoryart().getI_blau();
                        data[i][ProjektReportFac.REPORT_PROJEKT_GRUEN] = history.getFlrhistoryart()
                                .getI_gruen();
                    }
                    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);
            }
        }

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

        aJasperPrint = getReportPrint();

    } catch (RemoteException ex) {
        throwEJBExceptionLPRespectOld(ex);
    } catch (Throwable t) {
        throw new EJBExceptionLP(EJBExceptionLP.FEHLER_BEIM_DRUCKEN, new Exception(t));
    }

    return aJasperPrint;
}

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;/*www.j a va  2 s .  co 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;
}

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

License:Open Source License

public JasperPrintLP printProjektErledigt(ReportJournalKriterienDto reportJournalKriterienDtoI, Date dStichtag,
        Integer bereichIId, boolean interneErledigungBeruecksichtigen, TheClientDto theClientDto)
        throws EJBExceptionLP, RemoteException {
    JasperPrintLP oPrint = null;//from  www .  j a v  a 2  s  . com

    cAktuellerReport = ProjektReportFac.REPORT_PROJEKT_JOURNAL_ERLEDIGT;
    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 crit = session.createCriteria(FLRProjekt.class);
        // Einschraenkung auf den aktuellen Mandanten
        crit.add(Restrictions.eq(ProjektFac.FLR_PROJEKT_MANDANT_C_NR, theClientDto.getMandant()));
        crit.add(Restrictions.not(Restrictions.eq(ProjektFac.FLR_PROJEKT_STATUS_C_NR,
                ProjektServiceFac.PROJEKT_STATUS_STORNIERT)));

        crit.add(Restrictions.eq(ProjektFac.FLR_PROJEKT_BEREICH_I_ID, bereichIId));
        // Einschraenkung nach Status Offen, Erledigt

        if (interneErledigungBeruecksichtigen == false) {
            Collection<String> cStati = new LinkedList<String>();
            cStati.add(ProjektServiceFac.PROJEKT_STATUS_ERLEDIGT);
            crit.add(Restrictions.in(ProjektFac.FLR_PROJEKT_STATUS_C_NR, cStati));
        }

        if (reportJournalKriterienDtoI.dVon != null) {

            if (interneErledigungBeruecksichtigen == true) {

                crit.add(Restrictions.or(
                        Restrictions.and(Restrictions.isNotNull(ProjektFac.FLR_PROJEKT_T_INTERNERLEDIGT),
                                Restrictions.ge(ProjektFac.FLR_PROJEKT_T_INTERNERLEDIGT,
                                        reportJournalKriterienDtoI.dVon)),
                        Restrictions.ge(ProjektFac.FLR_PROJEKT_T_ERLEDIGUNGSDATUM,
                                reportJournalKriterienDtoI.dVon)));

            } else {
                crit.add(Restrictions.ge(ProjektFac.FLR_PROJEKT_T_ERLEDIGUNGSDATUM,
                        reportJournalKriterienDtoI.dVon));
            }
        }

        if (reportJournalKriterienDtoI.dBis != null) {

            Date d = Helper.addiereTageZuDatum(reportJournalKriterienDtoI.dBis, 1);

            if (interneErledigungBeruecksichtigen == true) {
                crit.add(Restrictions.or(
                        Restrictions.and(Restrictions.isNotNull(ProjektFac.FLR_PROJEKT_T_INTERNERLEDIGT),
                                Restrictions.lt(ProjektFac.FLR_PROJEKT_T_INTERNERLEDIGT, d)),
                        Restrictions.lt(ProjektFac.FLR_PROJEKT_T_ERLEDIGUNGSDATUM, d)));
            } else {
                crit.add(Restrictions.lt(ProjektFac.FLR_PROJEKT_T_ERLEDIGUNGSDATUM, d));
            }

        }
        // Einschraenkung nach einer bestimmten Perosn
        if (reportJournalKriterienDtoI.personalIId != null) {
            crit.add(Restrictions.eq(ProjektFac.FLR_PROJEKT_PERSONAL_I_ID_ERLEDIGER,
                    reportJournalKriterienDtoI.personalIId));
        }
        // Sortierung nach Partner,
        if (reportJournalKriterienDtoI.iSortierung == ReportJournalKriterienDto.KRIT_SORT_NACH_PARTNER) {
            crit.createCriteria(ProjektFac.FLR_PROJEKT_FLRPARTNER)
                    .addOrder(Order.asc(PartnerFac.FLR_PARTNER_NAME1NACHNAMEFIRMAZEILE1));
            crit.addOrder(Order.asc(ProjektFac.FLR_PROJEKT_T_ERLEDIGUNGSDATUM));
            crit.addOrder(Order.asc(ProjektFac.FLR_PROJEKT_C_NR));

        }

        crit.addOrder(Order.asc(ProjektFac.FLR_PROJEKT_KATEGORIE_C_NR));
        List<?> list = crit.list();
        ArrayList<Object[]> alDaten = new ArrayList<Object[]>();
        Iterator<?> it = list.iterator();

        while (it.hasNext()) {
            FLRProjekt projekt = (FLRProjekt) it.next();
            Object[] oZeile = new Object[ProjektReportFac.REPORT_PROJEKT_JOURNAL_ERLEDIGT_ANZAHL_SPALTEN];

            if (interneErledigungBeruecksichtigen == true && projekt.getT_internerledigt() != null
                    && projekt.getT_erledigungsdatum() != null) {

                // Wenn intern-Erledigt und normal erledigt, dann gilt jenes
                // Datum, das frueher war

                if (projekt.getT_internerledigt().getTime() <= projekt.getT_erledigungsdatum().getTime()) {
                    if (reportJournalKriterienDtoI.dVon != null && projekt.getT_internerledigt()
                            .getTime() < reportJournalKriterienDtoI.dVon.getTime()) {
                        continue;
                    }

                    if (reportJournalKriterienDtoI.dBis != null && projekt.getT_internerledigt()
                            .getTime() > reportJournalKriterienDtoI.dBis.getTime()) {
                        continue;
                    }

                }

            }

            oZeile[ProjektReportFac.REPORT_PROJEKT_JOURNAL_ERLEDIGT_PROJEKTTITEL] = projekt.getC_titel();
            oZeile[ProjektReportFac.REPORT_PROJEKT_JOURNAL_ERLEDIGT_PROJEKTKATEGORIE] = projekt
                    .getKategorie_c_nr();
            oZeile[ProjektReportFac.REPORT_PROJEKT_JOURNAL_ERLEDIGT_PROJEKTCNR] = projekt.getC_nr();
            oZeile[ProjektReportFac.REPORT_PROJEKT_JOURNAL_ERLEDIGT_TYP] = projekt.getTyp_c_nr();
            oZeile[ProjektReportFac.REPORT_PROJEKT_JOURNAL_ERLEDIGT_KUNDECNAME1] = projekt.getFlrpartner()
                    .getC_name1nachnamefirmazeile1();

            oZeile[ProjektReportFac.REPORT_PROJEKT_JOURNAL_ERLEDIGT_WAHRSCHEINLICHKEIT] = projekt
                    .getI_wahrscheinlichkeit();
            oZeile[ProjektReportFac.REPORT_PROJEKT_JOURNAL_ERLEDIGT_GEPLANTERUMSATZ] = projekt
                    .getN_umsatzgeplant();
            if (projekt.getPersonal_i_id_internerledigt() != null) {
                PersonalDto personalDto = getPersonalFac()
                        .personalFindByPrimaryKey(projekt.getPersonal_i_id_internerledigt(), theClientDto);
                oZeile[ProjektReportFac.REPORT_PROJEKT_JOURNAL_ERLEDIGT_INTERNERLEDIGT_PERSON] = personalDto
                        .getPartnerDto().formatAnrede();
                oZeile[ProjektReportFac.REPORT_PROJEKT_JOURNAL_ERLEDIGT_INTERNERLEDIGT_ZEIT] = projekt
                        .getT_internerledigt();
            }
            locDruck = Helper.string2Locale(projekt.getFlrpartner().getLocale_c_nr_kommunikation());
            oZeile[ProjektReportFac.REPORT_PROJEKT_JOURNAL_ERLEDIGT_ZIELTERMIN] = Helper
                    .formatDatum(projekt.getT_zielwunschdatum(), locDruck);
            oZeile[ProjektReportFac.REPORT_PROJEKT_JOURNAL_ERLEDIGT_BELEGDATUM] = Helper
                    .formatDatum(projekt.getT_anlegen(), locDruck);
            oZeile[ProjektReportFac.REPORT_PROJEKT_JOURNAL_ERLEDIGT_ERLEDIGUNGSDATUM] = Helper
                    .formatDatumZeit(projekt.getT_erledigungsdatum(), locDruck);
            if (projekt.getB_verrechenbar().equals(new Integer(1).shortValue())) {
                oZeile[ProjektReportFac.REPORT_PROJEKT_JOURNAL_ERLEDIGT_B_VERRECHENBAR] = "verrechenbar";
            } else {
                oZeile[ProjektReportFac.REPORT_PROJEKT_JOURNAL_ERLEDIGT_B_VERRECHENBAR] = null;
            }
            if (projekt.getB_freigegeben().equals(new Integer(1).shortValue())) {
                oZeile[ProjektReportFac.REPORT_PROJEKT_JOURNAL_ERLEDIGT_FREIGEGEBEN] = "freigegeben";
            } else {
                oZeile[ProjektReportFac.REPORT_PROJEKT_JOURNAL_ERLEDIGT_FREIGEGEBEN] = null;
            }

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

            oZeile[ProjektReportFac.REPORT_PROJEKT_JOURNAL_ERLEDIGT_ZIELWOCHE] = "" + KW;

            oZeile[ProjektReportFac.REPORT_PROJEKT_JOURNAL_ERLEDIGT_PRIO] = projekt.getI_prio();
            oZeile[ProjektReportFac.REPORT_PROJEKT_JOURNAL_ERLEDIGT_TEXT] = Helper
                    .formatStyledTextForJasper(projekt.getX_freetext());
            oZeile[ProjektReportFac.REPORT_PROJEKT_JOURNAL_ERLEDIGT_ERZEUGER] = projekt.getFlrpersonalErzeuger()
                    .getFlrpartner().getC_name1nachnamefirmazeile1();
            oZeile[ProjektReportFac.REPORT_PROJEKT_JOURNAL_ERLEDIGT_ZUGEWIESENER] = projekt
                    .getFlrpersonalZugewiesener().getFlrpartner().getC_name1nachnamefirmazeile1();
            if (projekt.getPersonal_i_id_erlediger() != null) {
                oZeile[ProjektReportFac.REPORT_PROJEKT_JOURNAL_ERLEDIGT_ERLEDIGER] = projekt
                        .getFlrpersonalErlediger().getFlrpartner().getC_name1nachnamefirmazeile1();
            }
            oZeile[ProjektReportFac.REPORT_PROJEKT_JOURNAL_ERLEDIGT_ZEIT] = projekt.getT_zeit();
            oZeile[ProjektReportFac.REPORT_PROJEKT_JOURNAL_ERLEDIGT_DAUER] = projekt.getD_dauer();

            // Gesamte Dauer eines Projektes
            Double ddArbeitszeitist = getZeiterfassungFac().getSummeZeitenEinesBeleges(
                    LocaleFac.BELEGART_PROJEKT, projekt.getI_id(), null, null, null, null, theClientDto);
            oZeile[ProjektReportFac.REPORT_PROJEKT_JOURNAL_ERLEDIGT_GESAMTDAUER] = ddArbeitszeitist;

            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();
            alDaten.add(oZeile);
            while (itHistory.hasNext()) {
                FLRHistory history = (FLRHistory) itHistory.next();

                oZeile = new Object[ProjektReportFac.REPORT_PROJEKT_JOURNAL_ERLEDIGT_ANZAHL_SPALTEN];

                oZeile[ProjektReportFac.REPORT_PROJEKT_JOURNAL_ERLEDIGT_PROJEKTCNR] = projekt.getC_nr();
                oZeile[ProjektReportFac.REPORT_PROJEKT_JOURNAL_ERLEDIGT_ZUGEWIESENER] = projekt
                        .getFlrpersonalZugewiesener().getFlrpartner().getC_name1nachnamefirmazeile1();
                oZeile[ProjektReportFac.REPORT_PROJEKT_JOURNAL_ERLEDIGT_HISTORY_MITARBEITER] = history
                        .getFlrpersonal().getFlrpartner().getC_name1nachnamefirmazeile1();
                oZeile[ProjektReportFac.REPORT_PROJEKT_JOURNAL_ERLEDIGT_HISTORY_BELEGDATUM] = Helper
                        .formatDatum(history.getT_belegdatum(), locDruck);
                oZeile[ProjektReportFac.REPORT_PROJEKT_JOURNAL_ERLEDIGT_HISTORY_TEXT] = history.getX_text();
                alDaten.add(oZeile);

            }
        }
        Object[][] returnArray = new Object[alDaten
                .size()][ProjektReportFac.REPORT_PROJEKT_JOURNAL_ERLEDIGT_ANZAHL_SPALTEN];
        data = (Object[][]) alDaten.toArray(returnArray);

    } catch (RemoteException e) {
        throw new EJBExceptionLP(EJBExceptionLP.FEHLER_IN_ZEITDATEN, new Exception(e));
    } 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_FILTER, buildFilterProjektErledigt(reportJournalKriterienDtoI, theClientDto));
    parameter.put("P_BEREICH", getProjektServiceFac().bereichFindByPrimaryKey(bereichIId).getCBez());
    parameter.put("P_INTERNEERLEDIGUNGBERUECKSICHTIGEN", interneErledigungBeruecksichtigen);
    parameter.put("P_TITLE",
            getTextRespectUISpr("proj.print.erledigt", theClientDto.getMandant(), theClientDto.getLocUi()));
    initJRDS(parameter, ProjektReportFac.REPORT_MODUL, cAktuellerReport, theClientDto.getMandant(),
            theClientDto.getLocUi(), theClientDto);
    oPrint = getReportPrint();
    return oPrint;
}

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

License:Open Source License

@TransactionAttribute(TransactionAttributeType.NEVER)
public JasperPrintLP printProjektOffene(ReportJournalKriterienDto reportJournalKriterienDtoI, Date dStichtag,
        Integer bereichIId, TheClientDto theClientDto) throws EJBExceptionLP, RemoteException {

    JasperPrintLP oPrint = null;//  ww w  . ja  v a 2s  . com
    int iAnzahlZeilen = 0;
    cAktuellerReport = ProjektReportFac.REPORT_PROJEKT_JOURNAL_OFFENE;
    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)));
        critProjekt.add(Restrictions.eq(ProjektFac.FLR_PROJEKT_BEREICH_I_ID, bereichIId));
        // Einschraenkung nach Status Offen, Erledigt
        Collection<String> cStati = new LinkedList<String>();
        cStati.add(ProjektServiceFac.PROJEKT_STATUS_OFFEN);
        cStati.add(ProjektServiceFac.PROJEKT_STATUS_ANGELEGT);
        critProjekt.add(Restrictions.in(ProjektFac.FLR_PROJEKT_STATUS_C_NR, cStati));

        // Das Belegdatum muss vor dem Stichtag liegen
        critProjekt.add(Restrictions.le(ProjektFac.FLR_PROJEKT_T_ANLEGEN, dStichtag));

        // 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));
            critProjekt.addOrder(Order.asc(ProjektFac.FLR_PROJEKT_TYP_C_NR));
            critProjekt.addOrder(Order.asc(ProjektFac.FLR_PROJEKT_I_PRIO));
            critProjekt.addOrder(Order.asc(ProjektFac.FLR_PROJEKT_KATEGORIE_C_NR));
        }
        // es wird in jedem Fall nach der Belegnummer 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_OFFENE_ANZAHL_SPALTEN];
        int i = 0;
        it = list.iterator();
        while (it.hasNext()) {
            FLRProjekt projekt = (FLRProjekt) it.next();
            if (projekt.getI_id() == 7689) {
                System.out.println("x");
            }
            data[i][ProjektReportFac.REPORT_PROJEKT_JOURNAL_OFFENE_PROJEKTTITEL] = projekt.getC_titel();
            data[i][ProjektReportFac.REPORT_PROJEKT_JOURNAL_OFFENE_PROJEKTKATEGORIE] = projekt
                    .getKategorie_c_nr();
            data[i][ProjektReportFac.REPORT_PROJEKT_JOURNAL_OFFENE_PROJEKTCNR] = projekt.getC_nr();
            data[i][ProjektReportFac.REPORT_PROJEKT_JOURNAL_OFFENE_STATUS] = projekt.getStatus_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_OFFENE_INTERNERLEDIGT_PERSON] = personalDto
                        .getPartnerDto().formatAnrede();
                data[i][ProjektReportFac.REPORT_PROJEKT_JOURNAL_OFFENE_INTERNERLEDIGT_ZEIT] = projekt
                        .getT_internerledigt();
            }
            data[i][ProjektReportFac.REPORT_PROJEKT_JOURNAL_OFFENE_WAHRSCHEINLICHKEIT] = projekt
                    .getI_wahrscheinlichkeit();
            data[i][ProjektReportFac.REPORT_PROJEKT_JOURNAL_OFFENE_GEPLANTERUMSATZ] = projekt
                    .getN_umsatzgeplant();
            // Gesamte Dauer eines Projektes
            Double ddArbeitszeitist = getZeiterfassungFac().getSummeZeitenEinesBeleges(
                    LocaleFac.BELEGART_PROJEKT, projekt.getI_id(), null, null, null, null, theClientDto);
            data[i][ProjektReportFac.REPORT_PROJEKT_JOURNAL_OFFENE_GESAMTDAUER] = ddArbeitszeitist;
            data[i][ProjektReportFac.REPORT_PROJEKT_JOURNAL_OFFENE_KUNDECNAME1] = projekt.getFlrpartner()
                    .getC_name1nachnamefirmazeile1();
            locDruck = Helper.string2Locale(projekt.getFlrpartner().getLocale_c_nr_kommunikation());
            data[i][ProjektReportFac.REPORT_PROJEKT_JOURNAL_OFFENE_ZIELTERMIN] = Helper
                    .formatDatum(projekt.getT_zielwunschdatum(), locDruck);
            data[i][ProjektReportFac.REPORT_PROJEKT_JOURNAL_OFFENE_BELEGDATUM] = Helper
                    .formatDatum(projekt.getT_anlegen(), 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_OFFENE_ZIELWOCHE] = "" + KW;

            data[i][ProjektReportFac.REPORT_PROJEKT_JOURNAL_OFFENE_PRIO] = projekt.getI_prio();
            data[i][ProjektReportFac.REPORT_PROJEKT_JOURNAL_OFFENE_TEXT] = projekt.getX_freetext();
            data[i][ProjektReportFac.REPORT_PROJEKT_JOURNAL_OFFENE_ERZEUGER] = projekt.getFlrpersonalErzeuger()
                    .getFlrpartner().getC_name1nachnamefirmazeile1();
            data[i][ProjektReportFac.REPORT_PROJEKT_JOURNAL_OFFENE_ZUGEWIESENER] = projekt
                    .getFlrpersonalZugewiesener().getFlrpartner().getC_name1nachnamefirmazeile1();
            data[i][ProjektReportFac.REPORT_PROJEKT_JOURNAL_OFFENE_ZEIT] = projekt.getT_zeit();
            data[i][ProjektReportFac.REPORT_PROJEKT_JOURNAL_OFFENE_DAUER] = projekt.getD_dauer();
            data[i][ProjektReportFac.REPORT_PROJEKT_JOURNAL_OFFENE_B_VERRECHENBAR] = Helper
                    .short2Boolean(projekt.getB_verrechenbar());
            data[i][ProjektReportFac.REPORT_PROJEKT_JOURNAL_OFFENE_B_FREIGEGEBEN] = Helper
                    .short2Boolean(projekt.getB_freigegeben());
            data[i][ProjektReportFac.REPORT_PROJEKT_JOURNAL_OFFENE_DATEINAME] = projekt.getC_dateiname();
            // try {
            if (projekt.getFlransprechpartner() != null
                    && (projekt.getFlransprechpartner().getI_id() != null)) {
                if (projekt.getFlransprechpartner().getFlrpartneransprechpartner() != null
                        && projekt.getFlransprechpartner().getFlrpartneransprechpartner().getI_id() != null) {
                    data[i][ProjektReportFac.REPORT_PROJEKT_JOURNAL_OFFENE_ANSPRECHPARTNERCNAME1] = projekt
                            .getFlransprechpartner().getFlrpartneransprechpartner()
                            .getC_name1nachnamefirmazeile1();
                    data[i][ProjektReportFac.REPORT_PROJEKT_JOURNAL_OFFENE_ANSPRECHPARTNER] = (projekt
                            .getFlransprechpartner().getFlrpartneransprechpartner()
                            .getC_name1nachnamefirmazeile1()
                            + " "
                            + (projekt.getFlransprechpartner().getFlrpartneransprechpartner()
                                    .getC_name2vornamefirmazeile2() == null
                                            ? ""
                                            : projekt.getFlransprechpartner().getFlrpartneransprechpartner()
                                                    .getC_name2vornamefirmazeile2())
                            + " "
                            + (projekt.getFlransprechpartner().getFlrpartneransprechpartner()
                                    .getC_name3vorname2abteilung() == null ? ""
                                            : projekt.getFlransprechpartner().getFlrpartneransprechpartner()
                                                    .getC_name3vorname2abteilung())).trim();
                }
            }
            // } catch (Exception e) {
            // e.printStackTrace();
            // }
            //
            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_OFFENE_PROJEKTCNR] = projekt.getC_nr();
                data[i][ProjektReportFac.REPORT_PROJEKT_JOURNAL_OFFENE_ZUGEWIESENER] = projekt
                        .getFlrpersonalZugewiesener().getFlrpartner().getC_name1nachnamefirmazeile1();
                data[i][ProjektReportFac.REPORT_PROJEKT_JOURNAL_OFFENE_HISTORY_MITARBEITER] = history
                        .getFlrpersonal().getFlrpartner().getC_name1nachnamefirmazeile1();
                data[i][ProjektReportFac.REPORT_PROJEKT_JOURNAL_OFFENE_HISTORY_BELEGDATUM] = Helper
                        .formatDatum(history.getT_belegdatum(), locDruck);
                data[i][ProjektReportFac.REPORT_PROJEKT_JOURNAL_OFFENE_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,
            buildSortierungProjektOffene(reportJournalKriterienDtoI, theClientDto));
    parameter.put("P_BEREICH", getProjektServiceFac().bereichFindByPrimaryKey(bereichIId).getCBez());
    parameter.put(LPReport.P_FILTER, buildFilterProjektOffene(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.offene", theClientDto.getMandant(), theClientDto.getLocUi()));

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

    oPrint = getReportPrint();

    return oPrint;
}

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

License:Open Source License

private Object[] projektFuerAktivitaetsuebersichtBefuellen(Integer projektIId, TheClientDto theClientDto) {

    Object[] oZeile = new Object[REPORT_AKTIVITAETSUEBERSICHT_ANZAHL_SPALTEN];

    ProjektDto projektDto = null;//from ww  w .j  a va  2  s. c om
    try {
        projektDto = getProjektFac().projektFindByPrimaryKey(projektIId);

        oZeile[ProjektReportFac.REPORT_AKTIVITAETSUEBERSICHT_VON] = projektDto.getTAnlegen();
        oZeile[ProjektReportFac.REPORT_AKTIVITAETSUEBERSICHT_BIS] = projektDto.getTZielwunschdatum();

        BereichDto bDto = getProjektServiceFac().bereichFindByPrimaryKey(projektDto.getBereichIId());
        oZeile[ProjektReportFac.REPORT_AKTIVITAETSUEBERSICHT_PROJEKT_BEREICH] = bDto.getCBez();

        oZeile[ProjektReportFac.REPORT_AKTIVITAETSUEBERSICHT_PROJEKT_PERSONAL_ERZEUGER] = getPersonalFac()
                .personalFindByPrimaryKey(projektDto.getPersonalIIdErzeuger(), theClientDto).getPartnerDto()
                .formatFixName1Name2();
        oZeile[ProjektReportFac.REPORT_AKTIVITAETSUEBERSICHT_PROJEKT_PERSONAL_MITARBEITER] = getPersonalFac()
                .personalFindByPrimaryKey(projektDto.getPersonalIIdZugewiesener(), theClientDto).getPartnerDto()
                .formatFixName1Name2();

        oZeile[ProjektReportFac.REPORT_AKTIVITAETSUEBERSICHT_BELEGART] = LocaleFac.BELEGART_PROJEKT;

        oZeile[ProjektReportFac.REPORT_AKTIVITAETSUEBERSICHT_BELEGNUMMER] = projektDto.getCNr();

        if (projektDto.getPersonalIIdInternerledigt() != null) {
            PersonalDto personalDto = getPersonalFac()
                    .personalFindByPrimaryKey(projektDto.getPersonalIIdInternerledigt(), theClientDto);
            oZeile[ProjektReportFac.REPORT_AKTIVITAETSUEBERSICHT_PROJEKT_INTERNERLEDIGT_PERSON] = personalDto
                    .getPartnerDto().formatAnrede();
            oZeile[ProjektReportFac.REPORT_AKTIVITAETSUEBERSICHT_PROJEKT_INTERNERLEDIGT_ZEIT] = projektDto
                    .getTInternerledigt();
        }

        oZeile[ProjektReportFac.REPORT_AKTIVITAETSUEBERSICHT_BELEGTEXT] = projektDto.getCTitel() + " "
                + projektDto.getXFreetext();

        PartnerDto pDto = getPartnerFac().partnerFindByPrimaryKey(projektDto.getPartnerIId(), theClientDto);

        oZeile[ProjektReportFac.REPORT_AKTIVITAETSUEBERSICHT_PARTNER] = pDto.formatTitelAnrede();
        if (pDto.getLandplzortDto() != null) {
            oZeile[ProjektReportFac.REPORT_AKTIVITAETSUEBERSICHT_PLZ] = pDto.getLandplzortDto().getCPlz();
            oZeile[ProjektReportFac.REPORT_AKTIVITAETSUEBERSICHT_LKZ] = pDto.getLandplzortDto().getLandDto()
                    .getCLkz();
            oZeile[ProjektReportFac.REPORT_AKTIVITAETSUEBERSICHT_ORT] = pDto.getLandplzortDto().getOrtDto()
                    .getCName();
        }

        SessionFactory factory = FLRSessionFactory.getFactory();
        Session session = factory.openSession();
        Criteria crit = session.createCriteria(FLRHistory.class);

        crit.createCriteria(ProjektFac.FLR_HISTORY_FLRPROJEKT)
                .add(Restrictions.eq(ProjektFac.FLR_PROJEKT_I_ID, projektDto.getIId()));
        crit.addOrder(Order.desc(ProjektFac.FLR_HISTORY_T_BELEGDATUM));
        List<?> resultListHistory = crit.list();

        Iterator<?> it = resultListHistory.iterator();

        ArrayList<Object[]> alSub = new ArrayList<Object[]>();
        while (it.hasNext()) {
            FLRHistory history = (FLRHistory) it.next();

            Object[] oSub = new Object[5];

            oSub[0] = history.getT_belegdatum();
            oSub[1] = history.getFlrpersonal().getFlrpartner().getC_name1nachnamefirmazeile1();
            oSub[2] = history.getX_text();
            if (history.getFlrhistoryart() != null) {
                oSub[3] = history.getFlrhistoryart().getC_bez();
            }
            oSub[4] = history.getC_titel();
            alSub.add(oSub);
        }

        String[] fieldnames = new String[] { "F_DATUM", "F_PERSONAL", "F_TEXT", "F_ART", "F_TITEL" };

        Object[][] dataSub = new Object[alSub.size()][fieldnames.length];
        dataSub = (Object[][]) alSub.toArray(dataSub);

        oZeile[ProjektReportFac.REPORT_AKTIVITAETSUEBERSICHT_BELEG_SUBREPORT] = new LPDatenSubreport(dataSub,
                fieldnames);

        session.close();
    } catch (RemoteException ex3) {
        throwEJBExceptionLPRespectOld(ex3);
    }
    return oZeile;

}

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

License:Open Source License

@TransactionAttribute(TransactionAttributeType.NEVER)
public JasperPrintLP printProjektOffeneAuswahlListe(TheClientDto theClientDto)
        throws EJBExceptionLP, RemoteException {

    JasperPrintLP oPrint = null;/*from w ww.ja  va2 s  .c om*/
    int iAnzahlZeilen = 0;
    cAktuellerReport = ProjektReportFac.REPORT_PROJEKT_JOURNAL_OFFENE;
    Locale locDruck;

    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

        Query query = session.createQuery(ProjektHandler.lastQuery);
        List<?> list = query.list();
        Iterator<?> it = list.iterator();
        while (it.hasNext()) {
            FLRProjekt projekt = (FLRProjekt) it.next();
            session = factory.openSession();
            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();
            if (resultList.size() != 0) {
                iAnzahlZeilen = iAnzahlZeilen + resultList.size();
            }
            iAnzahlZeilen++;
        }
        data = new Object[iAnzahlZeilen][ProjektReportFac.REPORT_PROJEKT_JOURNAL_OFFENE_ANZAHL_SPALTEN];
        int i = 0;
        it = list.iterator();
        while (it.hasNext()) {
            FLRProjekt projekt = (FLRProjekt) it.next();
            data[i][ProjektReportFac.REPORT_PROJEKT_JOURNAL_OFFENE_PROJEKTTITEL] = projekt.getC_titel();
            data[i][ProjektReportFac.REPORT_PROJEKT_JOURNAL_OFFENE_PROJEKTKATEGORIE] = projekt
                    .getKategorie_c_nr();
            data[i][ProjektReportFac.REPORT_PROJEKT_JOURNAL_OFFENE_PROJEKTCNR] = projekt.getC_nr();
            data[i][ProjektReportFac.REPORT_PROJEKT_JOURNAL_OFFENE_STATUS] = projekt.getStatus_c_nr();
            data[i][ProjektReportFac.REPORT_PROJEKT_JOURNAL_OFFENE_KUNDECNAME1] = projekt.getFlrpartner()
                    .getC_name1nachnamefirmazeile1();
            if (projekt.getFlrpartner().getFlrlandplzort() != null) {
                data[i][ProjektReportFac.REPORT_PROJEKT_JOURNAL_OFFENE_LKZ] = projekt.getFlrpartner()
                        .getFlrlandplzort().getFlrland().getC_lkz();
                data[i][ProjektReportFac.REPORT_PROJEKT_JOURNAL_OFFENE_PLZ] = projekt.getFlrpartner()
                        .getFlrlandplzort().getC_plz();
                data[i][ProjektReportFac.REPORT_PROJEKT_JOURNAL_OFFENE_ORT] = projekt.getFlrpartner()
                        .getFlrlandplzort().getFlrort().getC_name();
            }

            locDruck = Helper.string2Locale(projekt.getFlrpartner().getLocale_c_nr_kommunikation());
            data[i][ProjektReportFac.REPORT_PROJEKT_JOURNAL_OFFENE_ZIELTERMIN] = Helper
                    .formatDatum(projekt.getT_zielwunschdatum(), locDruck);
            data[i][ProjektReportFac.REPORT_PROJEKT_JOURNAL_OFFENE_BELEGDATUM] = Helper
                    .formatDatum(projekt.getT_anlegen(), locDruck);
            data[i][ProjektReportFac.REPORT_PROJEKT_JOURNAL_OFFENE_TYP] = projekt.getTyp_c_nr();

            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_OFFENE_ZIELWOCHE] = "" + KW;

            // Gesamte Dauer eines Projektes
            Double ddArbeitszeitist = getZeiterfassungFac().getSummeZeitenEinesBeleges(
                    LocaleFac.BELEGART_PROJEKT, projekt.getI_id(), null, null, null, null, theClientDto);
            data[i][ProjektReportFac.REPORT_PROJEKT_JOURNAL_OFFENE_GESAMTDAUER] = ddArbeitszeitist;

            data[i][ProjektReportFac.REPORT_PROJEKT_JOURNAL_OFFENE_PRIO] = projekt.getI_prio();
            data[i][ProjektReportFac.REPORT_PROJEKT_JOURNAL_OFFENE_TEXT] = projekt.getX_freetext();
            data[i][ProjektReportFac.REPORT_PROJEKT_JOURNAL_OFFENE_ERZEUGER] = projekt.getFlrpersonalErzeuger()
                    .getFlrpartner().getC_name1nachnamefirmazeile1();

            if (projekt.getPersonal_i_id_internerledigt() != null) {
                PersonalDto personalDto = getPersonalFac()
                        .personalFindByPrimaryKey(projekt.getPersonal_i_id_internerledigt(), theClientDto);
                data[i][ProjektReportFac.REPORT_PROJEKT_JOURNAL_OFFENE_INTERNERLEDIGT_PERSON] = personalDto
                        .getPartnerDto().formatAnrede();
                data[i][ProjektReportFac.REPORT_PROJEKT_JOURNAL_OFFENE_INTERNERLEDIGT_ZEIT] = projekt
                        .getT_internerledigt();
            }

            data[i][ProjektReportFac.REPORT_PROJEKT_JOURNAL_OFFENE_ZUGEWIESENER] = projekt
                    .getFlrpersonalZugewiesener().getFlrpartner().getC_name1nachnamefirmazeile1();
            data[i][ProjektReportFac.REPORT_PROJEKT_JOURNAL_OFFENE_ZEIT] = projekt.getT_zeit();
            data[i][ProjektReportFac.REPORT_PROJEKT_JOURNAL_OFFENE_WAHRSCHEINLICHKEIT] = projekt
                    .getI_wahrscheinlichkeit();
            data[i][ProjektReportFac.REPORT_PROJEKT_JOURNAL_OFFENE_GEPLANTERUMSATZ] = projekt
                    .getN_umsatzgeplant();

            data[i][ProjektReportFac.REPORT_PROJEKT_JOURNAL_OFFENE_DAUER] = projekt.getD_dauer();
            data[i][ProjektReportFac.REPORT_PROJEKT_JOURNAL_OFFENE_B_VERRECHENBAR] = Helper
                    .short2Boolean(projekt.getB_verrechenbar());
            data[i][ProjektReportFac.REPORT_PROJEKT_JOURNAL_OFFENE_B_FREIGEGEBEN] = Helper
                    .short2Boolean(projekt.getB_freigegeben());
            data[i][ProjektReportFac.REPORT_PROJEKT_JOURNAL_OFFENE_DATEINAME] = projekt.getC_dateiname();
            // try {
            if (projekt.getFlransprechpartner() != null
                    && (projekt.getFlransprechpartner().getI_id() != null)) {
                if (projekt.getFlransprechpartner().getFlrpartneransprechpartner() != null
                        && projekt.getFlransprechpartner().getFlrpartneransprechpartner().getI_id() != null) {
                    data[i][ProjektReportFac.REPORT_PROJEKT_JOURNAL_OFFENE_ANSPRECHPARTNERCNAME1] = projekt
                            .getFlransprechpartner().getFlrpartneransprechpartner()
                            .getC_name1nachnamefirmazeile1();
                    data[i][ProjektReportFac.REPORT_PROJEKT_JOURNAL_OFFENE_ANSPRECHPARTNER] = (projekt
                            .getFlransprechpartner().getFlrpartneransprechpartner()
                            .getC_name1nachnamefirmazeile1()
                            + " "
                            + (projekt.getFlransprechpartner().getFlrpartneransprechpartner()
                                    .getC_name2vornamefirmazeile2() == null
                                            ? ""
                                            : projekt.getFlransprechpartner().getFlrpartneransprechpartner()
                                                    .getC_name2vornamefirmazeile2())
                            + " "
                            + (projekt.getFlransprechpartner().getFlrpartneransprechpartner()
                                    .getC_name3vorname2abteilung() == null ? ""
                                            : projekt.getFlransprechpartner().getFlrpartneransprechpartner()
                                                    .getC_name3vorname2abteilung())).trim();
                }
            }
            //
            Criteria critHistory = session.createCriteria(FLRHistory.class);
            critHistory.createCriteria(ProjektFac.FLR_HISTORY_FLRPROJEKT)
                    .add(Restrictions.eq(ProjektFac.FLR_PROJEKT_I_ID, projekt.getI_id()));
            List<?> rlHistory = critHistory.list();
            Iterator<?> itHistory = rlHistory.iterator();
            i++;
            while (itHistory.hasNext()) {
                FLRHistory history = (FLRHistory) itHistory.next();
                data[i][ProjektReportFac.REPORT_PROJEKT_JOURNAL_OFFENE_PROJEKTCNR] = projekt.getC_nr();
                data[i][ProjektReportFac.REPORT_PROJEKT_JOURNAL_OFFENE_ZUGEWIESENER] = projekt
                        .getFlrpersonalZugewiesener().getFlrpartner().getC_name1nachnamefirmazeile1();
                data[i][ProjektReportFac.REPORT_PROJEKT_JOURNAL_OFFENE_HISTORY_MITARBEITER] = history
                        .getFlrpersonal().getFlrpartner().getC_name1nachnamefirmazeile1();
                data[i][ProjektReportFac.REPORT_PROJEKT_JOURNAL_OFFENE_HISTORY_BELEGDATUM] = Helper
                        .formatDatum(history.getT_belegdatum(), locDruck);
                data[i][ProjektReportFac.REPORT_PROJEKT_JOURNAL_OFFENE_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("P_TITLE",
            getTextRespectUISpr("proj.print.offene", theClientDto.getMandant(), theClientDto.getLocUi()));

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

    oPrint = getReportPrint();

    return oPrint;
}