Example usage for com.itextpdf.text Element ALIGN_RIGHT

List of usage examples for com.itextpdf.text Element ALIGN_RIGHT

Introduction

In this page you can find the example usage for com.itextpdf.text Element ALIGN_RIGHT.

Prototype

int ALIGN_RIGHT

To view the source code for com.itextpdf.text Element ALIGN_RIGHT.

Click Source Link

Document

A possible value for paragraph alignment.

Usage

From source file:de.jost_net.JVerein.gui.action.SpendenbescheinigungPrintAction.java

License:Open Source License

/**
 * Generierung des Standard-Dokumentes zu verwenden fr Spendenbescheinigungen
 * ab 01.01.2014// ww w. ja va 2 s  .c o m
 * 
 * @param spb
 *          Die Spendenbescheinigung aus der Datenbank
 * @param fileName
 *          Der Dateiname, wohin das Dokument geschrieben werden soll
 * @throws IOException
 * @throws DocumentException
 */
private void generiereSpendenbescheinigungStandardAb2014(Spendenbescheinigung spb, String fileName)
        throws IOException, DocumentException {
    final File file = new File(fileName);
    FileOutputStream fos = new FileOutputStream(file);

    Map<String, Object> map = spb.getMap(null);
    map = new AllgemeineMap().getMap(map);

    boolean isSammelbestaetigung = spb.isSammelbestaetigung();

    Reporter rpt = new Reporter(fos, 80, 50, 50, 50);
    rpt.addHeaderColumn("Aussteller (Bezeichnung und Anschrift der steuerbegnstigten Einrichtung)",
            Element.ALIGN_CENTER, 100, BaseColor.LIGHT_GRAY);

    rpt.createHeader();

    rpt.addColumn("\n" + getAussteller() + "\n ", Element.ALIGN_LEFT);
    rpt.closeTable();

    if (isSammelbestaetigung) {
        rpt.add("Sammelbesttigung ber " + map.get(SpendenbescheinigungVar.SPENDEART.getName()), 13);
    } else {
        rpt.add("Besttigung ber " + map.get(SpendenbescheinigungVar.SPENDEART.getName()), 13);
    }

    rpt.add("im Sinne des  10b des Einkommenssteuergesetzes an eine der in  5 Abs. 1 Nr. 9 des Krperschaftssteuergesetzes "
            + "bezeichneten Krperschaften, Personenvereinigungen oder Vermgensmassen\n", 10);

    rpt.addHeaderColumn("Name und Anschrift des Zuwendenden", Element.ALIGN_CENTER, 100, BaseColor.LIGHT_GRAY);
    rpt.createHeader();
    rpt.addColumn((String) map.get(SpendenbescheinigungVar.EMPFAENGER.getName()), Element.ALIGN_LEFT);
    rpt.closeTable();

    switch (spb.getSpendenart()) {
    case Spendenart.GELDSPENDE:
        rpt.addHeaderColumn("Betrag der Zuwendung -in Ziffern-", Element.ALIGN_CENTER, 100,
                BaseColor.LIGHT_GRAY);
        break;
    case Spendenart.SACHSPENDE:
        rpt.addHeaderColumn("Wert der Zuwendung -in Ziffern-", Element.ALIGN_CENTER, 100, BaseColor.LIGHT_GRAY);
        break;
    }
    rpt.addHeaderColumn("-in Buchstaben-", Element.ALIGN_CENTER, 250, BaseColor.LIGHT_GRAY);
    if (!isSammelbestaetigung) {
        rpt.addHeaderColumn("Tag der Zuwendung", Element.ALIGN_CENTER, 50, BaseColor.LIGHT_GRAY);
    } else {
        rpt.addHeaderColumn("Zeitraum der Sammelbesttigung", Element.ALIGN_CENTER, 75, BaseColor.LIGHT_GRAY);
    }
    rpt.createHeader();
    rpt.addColumn(
            "*" + Einstellungen.DECIMALFORMAT.format(map.get(SpendenbescheinigungVar.BETRAG.getName())) + "*",
            Element.ALIGN_CENTER);
    rpt.addColumn((String) map.get(SpendenbescheinigungVar.BETRAGINWORTEN.getName()), Element.ALIGN_CENTER);
    if (!isSammelbestaetigung) {
        rpt.addColumn((String) map.get(SpendenbescheinigungVar.SPENDEDATUM.getName()), Element.ALIGN_CENTER);
    } else {
        rpt.addColumn((String) map.get(SpendenbescheinigungVar.SPENDENZEITRAUM.getName()),
                Element.ALIGN_CENTER);
    }
    rpt.closeTable();

    switch (spb.getSpendenart()) {
    case Spendenart.SACHSPENDE:
        rpt.addHeaderColumn("Genaue Bezeichnung der Sachzuwendung mit Alter, Zustand, Kaufpreis usw.",
                Element.ALIGN_CENTER, 100, BaseColor.LIGHT_GRAY);
        rpt.createHeader();
        rpt.addColumn(spb.getBezeichnungSachzuwendung(), Element.ALIGN_LEFT);
        rpt.closeTable();
        switch (spb.getHerkunftSpende()) {
        case HerkunftSpende.BETRIEBSVERMOEGEN:
            rpt.add("Die Sachzuwendung stammt nach den Angaben des Zuwendenden aus dem Betriebsvermgen. "
                    + "Die Zuwendung wurde mit dem Wert der Entnahme (ggf. mit dem niedrigeren gemeinen "
                    + "Wert) und nach der Umsatzsteuer, die auf die Entnahme entfllt, bewertet.\n\n", 9);
            break;
        case HerkunftSpende.PRIVATVERMOEGEN:
            rpt.add("Die Sachzuwendung stammt nach den Angaben des Zuwendenden aus dem Privatvermgen.\n\n", 9);
            break;
        case HerkunftSpende.KEINEANGABEN:
            rpt.add("Der Zuwendende hat trotz Aufforderung keine Angaben zur Herkunft der Sachzuwendung gemacht.\n\n",
                    9);
            break;
        }
        if (spb.getUnterlagenWertermittlung()) {
            rpt.add("Geeignete Unterlagen, die zur Wertermittlung gedient haben, z. B. Rechnung, Gutachten, liegen vor.\n\n",
                    9);
        }
    }

    /*
     * Bei Sammelbesttigungen ist der Verweis auf Verzicht in der Anlage
     * vermerkt
     */
    String verzicht = "";
    char verzichtJa = (char) 113; // box leer
    char verzichtNein = (char) 53; // X

    if (spb.getAutocreate()) {
        if (!isSammelbestaetigung && spb.getSpendenart() == Spendenart.GELDSPENDE) {
            if (spb.getBuchungen().get(0).getVerzicht().booleanValue()) {
                verzichtJa = (char) 53; // X
                verzichtNein = (char) 113; // box leer
            }
        }
    } else {
        if (spb.getErsatzAufwendungen()) {
            verzichtJa = (char) 53; // X
            verzichtNein = (char) 113; // box leer
        }
    }

    if (!isSammelbestaetigung) {
        Paragraph p = new Paragraph();
        p.setFont(Reporter.getFreeSans(8));
        p.setAlignment(Element.ALIGN_LEFT);
        p.add(new Chunk("Es handelt sich um den Verzicht auf Erstattung von Aufwendungen: "));
        p.add(new Chunk(" Ja ", Reporter.getFreeSansBold(9)));
        p.add(new Chunk(verzichtJa, FontFactory.getFont(FontFactory.ZAPFDINGBATS, 10)));
        p.add(new Chunk("   Nein ", Reporter.getFreeSansBold(9)));
        p.add(new Chunk(verzichtNein, FontFactory.getFont(FontFactory.ZAPFDINGBATS, 10)));
        p.add(new Chunk("\n\n"));
        rpt.add(p);
    } else {
        rpt.add(new Paragraph(" ", Reporter.getFreeSans(12)));
    }
    if (Einstellungen.getEinstellung().getVorlaeufig()) {
        // Verein neu gegrndet, hat noch keinen Bescheid
        String txt = "Die Einhaltung der satzungsgemen Voraussetzungen nach den  51, 59, 60 und 61 "
                + "AO wurde vom Finanzamt " + Einstellungen.getEinstellung().getFinanzamt() + ", StNr. "
                + Einstellungen.getEinstellung().getSteuernummer() + ", mit Bescheid vom "
                + new JVDateFormatTTMMJJJJ().format(Einstellungen.getEinstellung().getBescheiddatum())
                + " nach  60a AO gesondert festgestellt. Wir frdern nach unserer Satzung "
                + Einstellungen.getEinstellung().getBeguenstigterzweck();
        rpt.add(txt, 8);
    } else {
        // Verein existiert und hat einen Bescheid bekommen
        String txt = "Wir sind wegen " + Einstellungen.getEinstellung().getBeguenstigterzweck()
                + " nach dem Freistellungsbescheid bzw. nach der Anlage zum Krperschaftssteuerbescheid "
                + "des Finanzamtes " + Einstellungen.getEinstellung().getFinanzamt() + ", StNr. "
                + Einstellungen.getEinstellung().getSteuernummer() + ", vom "
                + new JVDateFormatTTMMJJJJ().format(Einstellungen.getEinstellung().getBescheiddatum())
                + " fr den letzten Veranlagungszeitraum "
                + new JVDateFormatJJJJ().format(Einstellungen.getEinstellung().getVeranlagungVon()) + " bis "
                + new JVDateFormatJJJJ().format(Einstellungen.getEinstellung().getVeranlagungBis())
                + " nach  5 Abs. 1 Nr. 9 des Krperschaftsteuergesetzes von der Krperschaftsteuer und nach "
                + " 3 Nr. 6 des Gewerbesteuergesetzes von der Gewerbesteuer befreit.";
        rpt.add(txt, 8);
    }
    rpt.add("\nEs wird besttigt, dass die Zuwendung nur zur "
            + Einstellungen.getEinstellung().getBeguenstigterzweck() + " verwendet wird.\n", 8);
    if (spb.getSpendenart() == Spendenart.GELDSPENDE) {
        char mitgliedBetraege = (char) 113; // box leer
        if (!Einstellungen.getEinstellung().getMitgliedsbetraege()) {
            mitgliedBetraege = (char) 53; // X
        }
        Paragraph p = new Paragraph();
        p.setFont(Reporter.getFreeSans(8));
        p.setAlignment(Element.ALIGN_LEFT);
        p.add(new Chunk("\n"));
        p.add(new Chunk(
                "Nur fr steuerbegnstigte Einrichtungen, bei denen die Mitgliedsbeitrge steuerlich nicht abziehbar sind:"));
        rpt.add(p);
        p = new Paragraph();
        p.setFont(Reporter.getFreeSans(8));
        p.setAlignment(Element.ALIGN_JUSTIFIED);
        p.setFirstLineIndent((float) -18.5);
        p.setIndentationLeft((float) 18.5);
        p.add(new Chunk(mitgliedBetraege, FontFactory.getFont(FontFactory.ZAPFDINGBATS, 10)));
        p.add(new Chunk(
                "   Es wird besttigt, dass es sich nicht um einen Mitgliedsbeitrag handelt, dessen Abzug nach  10b Abs. 1 des Einkommensteuergesetzes ausgeschlossen ist."));
        rpt.add(p);
    }

    if (isSammelbestaetigung) {
        rpt.add(new Paragraph(" ", Reporter.getFreeSans(12)));
        rpt.add("Es wird besttigt, dass ber die in der Gesamtsumme enthaltenen Zuwendungen keine weiteren Besttigungen, weder formelle Zuwendungsbesttigungen noch Beitragsquittungen oder hnliches ausgestellt wurden und werden.\n",
                8);
        rpt.add("Ob es sich um den Verzicht auf Erstattung von Aufwendungen handelt, ist der Anlage zur Sammelbesttigung zu entnehmen.",
                8);
    } else {
        rpt.add(new Paragraph(" ", Reporter.getFreeSans(12)));
        rpt.add("\n\n", 8);
        rpt.add("\n", 9);

    }

    rpt.add("\n\n" + Einstellungen.getEinstellung().getOrt() + ", "
            + new JVDateFormatTTMMJJJJ().format(spb.getBescheinigungsdatum()), 9);

    rpt.add("\n\n\n\n.................................................................................\nUnterschrift des Zuwendungsempfngers",
            8);

    rpt.add("\nHinweis:", 8);
    rpt.add("Wer vorstzlich oder grob fahrlssig eine unrichtige Zuwendungsbesttigung erstellt "
            + "oder veranlasst, dass Zuwendungen nicht zu den in der Zuwendungsbesttigung "
            + "angegebenen steuerbegnstigten Zwecken verwendet werden, haftet fr die entgangene "
            + "Steuer ( 10b Absatz 4 EStG,  9 Absatz 3 KStG,  9 Nummer 5 GewStG).\n" + "\n"
            + "Diese Besttigung wird nicht als Nachweis fr die steuerliche Bercksichtigung der "
            + "Zuwendung anerkannt, wenn das Datum des Freistellungsbescheides lnger als 5 Jahre "
            + "bzw. das Datum der Feststellung der Einhaltung der satzungsmigen Voraussetzungen "
            + "nach  60a Abs. 1 AO lnger als 3 Jahre seit Ausstellung des Bescheides zurckliegt "
            + "( 63 Abs. 5 AO).", 7);

    /* Es sind mehrere Spenden fr diese Spendenbescheinigung vorhanden */
    if (isSammelbestaetigung) {
        List<Buchung> buchungen = spb.getBuchungen();

        rpt.newPage();
        rpt.add(getAussteller(), 13);
        rpt.add(new Paragraph(" ", Reporter.getFreeSans(12)));
        rpt.add("Anlage zur Sammelbesttigung vom "
                + (String) map.get(SpendenbescheinigungVar.BESCHEINIGUNGDATUM.getName()), 11);
        rpt.add("fr den Zeitraum vom " + (String) map.get(SpendenbescheinigungVar.SPENDENZEITRAUM.getName()),
                11);

        rpt.add(new Paragraph(" ", Reporter.getFreeSans(12)));

        /* Kopfzeile */
        rpt.addHeaderColumn("Datum der\nZuwendung", Element.ALIGN_LEFT, 150, BaseColor.LIGHT_GRAY);
        rpt.addHeaderColumn("Art der\nZuwendung", Element.ALIGN_LEFT, 400, BaseColor.LIGHT_GRAY);
        rpt.addHeaderColumn("Verzicht auf die\nErstattung von Aufwendungen", Element.ALIGN_LEFT, 300,
                BaseColor.LIGHT_GRAY);
        rpt.addHeaderColumn("Betrag", Element.ALIGN_RIGHT, 150, BaseColor.LIGHT_GRAY);
        rpt.createHeader();

        boolean printBuchungsart = Einstellungen.getEinstellung().getSpendenbescheinigungPrintBuchungsart();

        /* Buchungszeilen */
        for (Buchung buchung : buchungen) {
            rpt.addColumn(buchung.getDatum(), Element.ALIGN_RIGHT);
            String verwendung = "";
            if (printBuchungsart) {
                verwendung = buchung.getBuchungsart().getBezeichnung();
            } else {
                verwendung = buchung.getZweck();
            }
            rpt.addColumn(verwendung, Element.ALIGN_LEFT);
            if (buchung.getVerzicht().booleanValue()) {
                verzicht = "ja";
            } else {
                verzicht = "nein";
            }
            rpt.addColumn(verzicht, Element.ALIGN_CENTER);
            rpt.addColumn(Double.valueOf(buchung.getBetrag()));
        }

        /* Summenzeile */
        // String sumString =
        // Einstellungen.DECIMALFORMAT.format(spb.getBetrag());
        rpt.addColumn("Gesamtsumme", Element.ALIGN_LEFT, BaseColor.LIGHT_GRAY);
        rpt.addColumn("", Element.ALIGN_LEFT, BaseColor.LIGHT_GRAY);
        rpt.addColumn("", Element.ALIGN_LEFT, BaseColor.LIGHT_GRAY);
        rpt.addColumn(Double.valueOf(spb.getBetrag()));
        // rpt.addColumn(sumString, Element.ALIGN_RIGHT,
        // BaseColor.LIGHT_GRAY);

        rpt.closeTable();

        // // Etwas Abstand
        // rpt.add(new Paragraph(" "));
        // // Nun noch die Legende
        // rpt.add("Legende:", 8);
        // rpt.add(
        // "(a): Es handelt sich nicht um den Verzicht auf Erstattung von
        // Aufwendungen",
        // 8);
        // rpt.add(
        // "(b): Es handelt sich um den Verzicht auf Erstattung von Aufwendungen",
        // 8);
    }

    rpt.close();
    fos.close();
}

From source file:de.jost_net.JVerein.gui.control.ArbeitseinsatzControl.java

License:Open Source License

private void startePDFAuswertung() throws RemoteException {
    FileDialog fd = new FileDialog(GUI.getShell(), SWT.SAVE);
    fd.setText("Ausgabedatei whlen.");
    String path = settings.getString("lastdir", System.getProperty("user.home"));
    if (path != null && path.length() > 0) {
        fd.setFilterPath(path);/*from  w w w . j av  a 2s. com*/
    }
    fd.setFileName(
            new Dateiname("arbeitseinsaetze", "", Einstellungen.getEinstellung().getDateinamenmuster(), "PDF")
                    .get());
    fd.setFilterExtensions(new String[] { "*.PDF" });

    String s = fd.open();
    if (s == null || s.length() == 0) {
        return;
    }
    if (!s.endsWith(".PDF")) {
        s = s + ".PDF";
    }
    final File file = new File(s);
    final GenericIterator it = getIterator();
    final int jahr = (Integer) getSuchJahr().getValue();
    final String sub = getAuswertungSchluessel().getText();
    settings.setAttribute("lastdir", file.getParent());
    BackgroundTask t = new BackgroundTask() {

        @Override
        public void run(ProgressMonitor monitor) throws ApplicationException {
            try {
                FileOutputStream fos = new FileOutputStream(file);
                Reporter reporter = new Reporter(fos, String.format("Arbeitseinstze %d", jahr), sub,
                        it.size());
                reporter.addHeaderColumn("Mitglied", Element.ALIGN_LEFT, 60, BaseColor.LIGHT_GRAY);
                reporter.addHeaderColumn("Sollstunden", Element.ALIGN_RIGHT, 30, BaseColor.LIGHT_GRAY);
                reporter.addHeaderColumn("Iststunden", Element.ALIGN_RIGHT, 30, BaseColor.LIGHT_GRAY);
                reporter.addHeaderColumn("Differenz", Element.ALIGN_RIGHT, 30, BaseColor.LIGHT_GRAY);
                reporter.addHeaderColumn("Stundensatz", Element.ALIGN_RIGHT, 30, BaseColor.LIGHT_GRAY);
                reporter.addHeaderColumn("Gesamtbetrag", Element.ALIGN_RIGHT, 30, BaseColor.LIGHT_GRAY);
                reporter.createHeader();
                while (it.hasNext()) {
                    ArbeitseinsatzZeile z = (ArbeitseinsatzZeile) it.next();
                    reporter.addColumn((String) z.getAttribute("namevorname"), Element.ALIGN_LEFT);
                    reporter.addColumn((Double) z.getAttribute("soll"));
                    reporter.addColumn((Double) z.getAttribute("ist"));
                    reporter.addColumn((Double) z.getAttribute("differenz"));
                    reporter.addColumn((Double) z.getAttribute("stundensatz"));
                    reporter.addColumn((Double) z.getAttribute("gesamtbetrag"));
                }
                reporter.closeTable();
                reporter.close();
                fos.close();
                GUI.getStatusBar().setSuccessText("Auswertung gestartet");
                GUI.getCurrentView().reload();
            } catch (Exception e) {
                Logger.error("Fehler", e);
                GUI.getStatusBar().setErrorText(e.getMessage());
                throw new ApplicationException(e);
            }
            FileViewer.show(file);
        }

        @Override
        public void interrupt() {
            //
        }

        @Override
        public boolean isInterrupted() {
            return false;
        }
    };
    Application.getController().start(t);
}

From source file:de.jost_net.JVerein.gui.control.BuchungsartControl.java

License:Open Source License

private void starteAuswertung() throws RemoteException {
    FileDialog fd = new FileDialog(GUI.getShell(), SWT.SAVE);
    fd.setText("Ausgabedatei whlen.");
    String path = settings.getString("lastdir", System.getProperty("user.home"));
    if (path != null && path.length() > 0) {
        fd.setFilterPath(path);//from w  w  w  . j  a v  a  2  s .c  om
    }
    fd.setFileName(
            new Dateiname("buchungsarten", "", Einstellungen.getEinstellung().getDateinamenmuster(), "PDF")
                    .get());
    fd.setFilterExtensions(new String[] { "*.PDF" });

    String s = fd.open();
    if (s == null || s.length() == 0) {
        return;
    }
    if (!s.endsWith(".PDF")) {
        s = s + ".PDF";
    }
    final File file = new File(s);
    final DBIterator<Buchungsart> it = Einstellungen.getDBService().createList(Buchungsart.class);
    it.setOrder("ORDER BY nummer");
    settings.setAttribute("lastdir", file.getParent());
    BackgroundTask t = new BackgroundTask() {
        @Override
        public void run(ProgressMonitor monitor) throws ApplicationException {
            try {
                FileOutputStream fos = new FileOutputStream(file);
                Reporter reporter = new Reporter(fos, "Buchungsarten", "", it.size());
                reporter.addHeaderColumn("Nummer", Element.ALIGN_LEFT, 20, BaseColor.LIGHT_GRAY);
                reporter.addHeaderColumn("Bezeichnung", Element.ALIGN_LEFT, 80, BaseColor.LIGHT_GRAY);
                reporter.addHeaderColumn("Art", Element.ALIGN_LEFT, 25, BaseColor.LIGHT_GRAY);
                reporter.addHeaderColumn("Buchungsklasse", Element.ALIGN_LEFT, 80, BaseColor.LIGHT_GRAY);
                reporter.addHeaderColumn("Spende", Element.ALIGN_CENTER, 20, BaseColor.LIGHT_GRAY);
                reporter.createHeader();
                while (it.hasNext()) {
                    Buchungsart b = it.next();
                    reporter.addColumn(b.getNummer() + "", Element.ALIGN_RIGHT);
                    reporter.addColumn(b.getBezeichnung(), Element.ALIGN_LEFT);
                    String arttxt = "";
                    switch (b.getArt()) {
                    case 0:
                        arttxt = "Einnahme";
                        break;
                    case 1:
                        arttxt = "Ausgabe";
                        break;
                    case 2:
                        arttxt = "Umbuchung";
                        break;
                    }
                    reporter.addColumn(arttxt, Element.ALIGN_LEFT);
                    if (b.getBuchungsklasse() != null) {
                        reporter.addColumn(b.getBuchungsklasse().getBezeichnung(), Element.ALIGN_LEFT);
                    } else {
                        reporter.addColumn("", Element.ALIGN_LEFT);
                    }
                    reporter.addColumn(b.getSpende());
                }
                reporter.closeTable();
                reporter.close();
                fos.close();
                GUI.getStatusBar().setSuccessText("Auswertung gestartet");
                GUI.getCurrentView().reload();
            } catch (Exception e) {
                Logger.error("Fehler", e);
                GUI.getStatusBar().setErrorText(e.getMessage());
                throw new ApplicationException(e);
            }
            FileViewer.show(file);
        }

        @Override
        public void interrupt() {
            //
        }

        @Override
        public boolean isInterrupted() {
            return false;
        }
    };
    Application.getController().start(t);

}

From source file:de.jost_net.JVerein.gui.control.ZusatzbetragControl.java

License:Open Source License

private void starteAuswertung() throws RemoteException {
    FileDialog fd = new FileDialog(GUI.getShell(), SWT.SAVE);
    fd.setText("Ausgabedatei whlen.");
    String path = settings.getString("lastdir", System.getProperty("user.home"));
    if (path != null && path.length() > 0) {
        fd.setFilterPath(path);//from  w  w w .jav  a  2  s  .c o m
    }
    fd.setFileName(
            new Dateiname("zusatzbetraege", "", Einstellungen.getEinstellung().getDateinamenmuster(), "PDF")
                    .get());
    fd.setFilterExtensions(new String[] { "*.PDF" });

    String s = fd.open();
    if (s == null || s.length() == 0) {
        return;
    }
    if (!s.endsWith(".PDF")) {
        s = s + ".PDF";
    }
    final File file = new File(s);
    final DBIterator<Zusatzbetrag> it = getIterator();
    settings.setAttribute("lastdir", file.getParent());
    BackgroundTask t = new BackgroundTask() {

        @Override
        public void run(ProgressMonitor monitor) throws ApplicationException {
            try {
                FileOutputStream fos = new FileOutputStream(file);
                Reporter reporter = new Reporter(fos, "Zusatzbetrge", "", it.size());
                reporter.addHeaderColumn("Mitglied", Element.ALIGN_LEFT, 60, BaseColor.LIGHT_GRAY);
                reporter.addHeaderColumn("Startdatum", Element.ALIGN_LEFT, 30, BaseColor.LIGHT_GRAY);
                reporter.addHeaderColumn("nchste Flligkeit", Element.ALIGN_LEFT, 30, BaseColor.LIGHT_GRAY);
                reporter.addHeaderColumn("letzte Ausfhrung", Element.ALIGN_LEFT, 30, BaseColor.LIGHT_GRAY);
                reporter.addHeaderColumn("Intervall", Element.ALIGN_LEFT, 30, BaseColor.LIGHT_GRAY);
                reporter.addHeaderColumn("Endedatum", Element.ALIGN_LEFT, 30, BaseColor.LIGHT_GRAY);
                reporter.addHeaderColumn("Buchungstext", Element.ALIGN_LEFT, 50, BaseColor.LIGHT_GRAY);
                reporter.addHeaderColumn("Betrag", Element.ALIGN_RIGHT, 30, BaseColor.LIGHT_GRAY);
                reporter.createHeader();
                while (it.hasNext()) {
                    Zusatzbetrag z = (Zusatzbetrag) it.next();
                    reporter.addColumn(Adressaufbereitung.getNameVorname(z.getMitglied()), Element.ALIGN_LEFT);
                    reporter.addColumn(z.getStartdatum(), Element.ALIGN_LEFT);
                    reporter.addColumn(z.getFaelligkeit(), Element.ALIGN_LEFT);
                    reporter.addColumn(z.getAusfuehrung(), Element.ALIGN_LEFT);
                    reporter.addColumn(z.getIntervallText(), Element.ALIGN_LEFT);
                    reporter.addColumn(z.getEndedatum(), Element.ALIGN_LEFT);
                    reporter.addColumn(z.getBuchungstext(), Element.ALIGN_LEFT);
                    reporter.addColumn(z.getBetrag());
                }
                reporter.closeTable();
                reporter.close();
                fos.close();
                GUI.getCurrentView().reload();
            } catch (Exception e) {
                Logger.error("Fehler", e);
                GUI.getStatusBar().setErrorText(e.getMessage());
                throw new ApplicationException(e);
            }
            FileViewer.show(file);
        }

        @Override
        public void interrupt() {
            //
        }

        @Override
        public boolean isInterrupted() {
            return false;
        }
    };
    Application.getController().start(t);
}

From source file:de.jost_net.JVerein.io.BuchungsjournalPDF.java

License:Open Source License

public BuchungsjournalPDF(BuchungQuery query, final File file) throws ApplicationException {
    try {//from  www .  j  a v a2  s . c o m
        FileOutputStream fos = new FileOutputStream(file);
        Reporter reporter = new Reporter(fos, "Buchungsjournal", query.getSubtitle(), 1);

        double einnahmen = 0;
        double ausgaben = 0;
        double umbuchungen = 0;
        double nichtzugeordnet = 0;

        createTableHeader(reporter);

        for (Buchung b : query.get()) {
            reporter.addColumn(b.getID(), Element.ALIGN_RIGHT);
            reporter.addColumn(new JVDateFormatTTMMJJJJ().format(b.getDatum()), Element.ALIGN_LEFT);
            reporter.addColumn(b.getKonto().getNummer(), Element.ALIGN_RIGHT);
            if (b.getAuszugsnummer() != null) {
                reporter.addColumn(
                        b.getAuszugsnummer() + "/" + (b.getBlattnummer() != null ? b.getBlattnummer() : "-"),
                        Element.ALIGN_LEFT);
            } else {
                reporter.addColumn("", Element.ALIGN_LEFT);
            }
            reporter.addColumn(b.getName(), Element.ALIGN_LEFT);
            reporter.addColumn(b.getZweck(), Element.ALIGN_LEFT);
            reporter.addColumn(b.getBuchungsart() != null ? b.getBuchungsart().getBezeichnung() : "",
                    Element.ALIGN_LEFT);
            reporter.addColumn(b.getBetrag());
            if (b.getBuchungsart() != null) {
                int buchungsartart = b.getBuchungsart().getArt();
                switch (buchungsartart) {
                case ArtBuchungsart.EINNAHME: {
                    einnahmen += b.getBetrag();
                    break;
                }
                case ArtBuchungsart.AUSGABE: {
                    ausgaben += b.getBetrag();
                    break;
                }
                case ArtBuchungsart.UMBUCHUNG: {
                    umbuchungen += b.getBetrag();
                    break;
                }
                }
            } else {
                nichtzugeordnet += b.getBetrag();
            }
        }

        for (int i = 0; i < 5; i++) {
            reporter.addColumn("", Element.ALIGN_LEFT);
        }
        reporter.addColumn("Summe Einnahmen", Element.ALIGN_LEFT);
        reporter.addColumn("", Element.ALIGN_LEFT);
        reporter.addColumn(einnahmen);

        for (int i = 0; i < 5; i++) {
            reporter.addColumn("", Element.ALIGN_LEFT);
        }
        reporter.addColumn("Summe Ausgaben", Element.ALIGN_LEFT);
        reporter.addColumn("", Element.ALIGN_LEFT);
        reporter.addColumn(ausgaben);

        for (int i = 0; i < 5; i++) {
            reporter.addColumn("", Element.ALIGN_LEFT);
        }
        reporter.addColumn("Summe Umbuchungen", Element.ALIGN_LEFT);
        reporter.addColumn("", Element.ALIGN_LEFT);
        reporter.addColumn(umbuchungen);

        if (nichtzugeordnet != 0) {
            for (int i = 0; i < 5; i++) {
                reporter.addColumn("", Element.ALIGN_LEFT);
            }
            reporter.addColumn("Summe nicht zugeordnet", Element.ALIGN_LEFT);
            reporter.addColumn("", Element.ALIGN_LEFT);
            reporter.addColumn(nichtzugeordnet);
        }

        reporter.closeTable();
        GUI.getStatusBar().setSuccessText("Auswertung fertig.");

        reporter.close();
        fos.close();
        FileViewer.show(file);
    } catch (Exception e) {
        Logger.error("error while creating report", e);
        throw new ApplicationException("Fehler", e);
    }
}

From source file:de.jost_net.JVerein.io.BuchungsjournalPDF.java

License:Open Source License

private void createTableHeader(Reporter reporter) throws DocumentException {
    reporter.addHeaderColumn("Nr", Element.ALIGN_RIGHT, 20, BaseColor.LIGHT_GRAY);
    reporter.addHeaderColumn("Datum", Element.ALIGN_CENTER, 45, BaseColor.LIGHT_GRAY);
    reporter.addHeaderColumn("Konto", Element.ALIGN_CENTER, 40, BaseColor.LIGHT_GRAY);
    reporter.addHeaderColumn("Auszug", Element.ALIGN_CENTER, 20, BaseColor.LIGHT_GRAY);
    reporter.addHeaderColumn("Name", Element.ALIGN_CENTER, 100, BaseColor.LIGHT_GRAY);
    reporter.addHeaderColumn("Zahlungsgrund", Element.ALIGN_CENTER, 100, BaseColor.LIGHT_GRAY);
    reporter.addHeaderColumn("Buchungsart", Element.ALIGN_CENTER, 60, BaseColor.LIGHT_GRAY);
    reporter.addHeaderColumn("Betrag", Element.ALIGN_CENTER, 50, BaseColor.LIGHT_GRAY);
    reporter.createHeader();/*  w w  w  .  j  a va  2  s  .c o  m*/
}

From source file:de.jost_net.JVerein.io.BuchungsklassesaldoPDF.java

License:Open Source License

public BuchungsklassesaldoPDF(ArrayList<BuchungsklasseSaldoZeile> zeile, final File file, Date datumvon,
        Date datumbis) throws ApplicationException {
    try {//  w  w w .ja v  a  2 s  .c o  m
        FileOutputStream fos = new FileOutputStream(file);
        String subtitle = new JVDateFormatTTMMJJJJ().format(datumvon) + " - "
                + new JVDateFormatTTMMJJJJ().format(datumbis);
        Reporter reporter = new Reporter(fos, "Buchungsklassen-Saldo", subtitle, zeile.size());
        makeHeader(reporter);

        for (BuchungsklasseSaldoZeile bkz : zeile) {
            switch (bkz.getStatus()) {
            case BuchungsklasseSaldoZeile.HEADER: {
                reporter.addColumn((String) bkz.getAttribute("buchungsklassenbezeichnung"), Element.ALIGN_LEFT,
                        new BaseColor(220, 220, 220), 4);
                break;
            }
            case BuchungsklasseSaldoZeile.DETAIL: {
                reporter.addColumn((String) bkz.getAttribute("buchungsartbezeichnung"), Element.ALIGN_LEFT);
                reporter.addColumn((Double) bkz.getAttribute("einnahmen"));
                reporter.addColumn((Double) bkz.getAttribute("ausgaben"));
                reporter.addColumn((Double) bkz.getAttribute("umbuchungen"));
                break;
            }
            case BuchungsklasseSaldoZeile.SALDOFOOTER: {
                reporter.addColumn((String) bkz.getAttribute("buchungsklassenbezeichnung"),
                        Element.ALIGN_RIGHT);
                reporter.addColumn((Double) bkz.getAttribute("einnahmen"));
                reporter.addColumn((Double) bkz.getAttribute("ausgaben"));
                reporter.addColumn((Double) bkz.getAttribute("umbuchungen"));
                break;
            }
            case BuchungsklasseSaldoZeile.GESAMTSALDOFOOTER: {
                reporter.addColumn("Gesamt", Element.ALIGN_LEFT, 4);
                reporter.addColumn((String) bkz.getAttribute("buchungsklassenbezeichnung"),
                        Element.ALIGN_RIGHT);
                reporter.addColumn((Double) bkz.getAttribute("einnahmen"));
                reporter.addColumn((Double) bkz.getAttribute("ausgaben"));
                reporter.addColumn((Double) bkz.getAttribute("umbuchungen"));
                break;
            }
            case BuchungsklasseSaldoZeile.GESAMTGEWINNVERLUST:
            case BuchungsklasseSaldoZeile.SALDOGEWINNVERLUST: {
                reporter.addColumn((String) bkz.getAttribute("buchungsklassenbezeichnung"),
                        Element.ALIGN_RIGHT);
                reporter.addColumn((Double) bkz.getAttribute("einnahmen"));
                reporter.addColumn("", Element.ALIGN_LEFT, 2);
                break;
            }
            case BuchungsklasseSaldoZeile.NICHTZUGEORDNETEBUCHUNGEN: {
                reporter.addColumn((String) bkz.getAttribute("buchungsklassenbezeichnung"), Element.ALIGN_LEFT);
                reporter.addColumn((Integer) bkz.getAttribute("anzahlbuchungen"));
                reporter.addColumn("", Element.ALIGN_LEFT, 2);
                break;
            }
            }
        }
        GUI.getStatusBar().setSuccessText("Auswertung fertig.");
        reporter.closeTable();
        reporter.close();
        fos.close();
        FileViewer.show(file);
    } catch (Exception e) {
        Logger.error("error while creating report", e);
        throw new ApplicationException("Fehler", e);
    }
}

From source file:de.jost_net.JVerein.io.Kontoauszug.java

License:Open Source License

private void generiereMitglied(Mitglied m, Date von, Date bis) throws RemoteException, DocumentException {
    rpt.newPage();//from   w  ww. j a v a 2 s  .  c o  m
    rpt.add(Einstellungen.getEinstellung().getName(), 20);
    rpt.add(String.format("Kontoauszug %s", Adressaufbereitung.getVornameName(m)), 18);
    JVDateFormatTTMMJJJJ jv = new JVDateFormatTTMMJJJJ();
    rpt.add(String.format("Stand: %s", jv.format(new Date())), 16);

    rpt.addHeaderColumn(" ", Element.ALIGN_CENTER, 20, BaseColor.LIGHT_GRAY);
    rpt.addHeaderColumn("Datum", Element.ALIGN_CENTER, 20, BaseColor.LIGHT_GRAY);
    rpt.addHeaderColumn("Zweck", Element.ALIGN_LEFT, 50, BaseColor.LIGHT_GRAY);
    rpt.addHeaderColumn("Zahlungsweg", Element.ALIGN_LEFT, 20, BaseColor.LIGHT_GRAY);
    rpt.addHeaderColumn("Soll", Element.ALIGN_RIGHT, 20, BaseColor.LIGHT_GRAY);
    rpt.addHeaderColumn("Ist", Element.ALIGN_RIGHT, 20, BaseColor.LIGHT_GRAY);
    rpt.addHeaderColumn("Differenz", Element.ALIGN_RIGHT, 20, BaseColor.LIGHT_GRAY);
    rpt.createHeader();

    MitgliedskontoNode node = new MitgliedskontoNode(m, von, bis);
    generiereZeile(node);
    GenericIterator gi1 = node.getChildren();
    while (gi1.hasNext()) {
        MitgliedskontoNode n1 = (MitgliedskontoNode) gi1.next();
        generiereZeile(n1);
        GenericIterator gi2 = n1.getChildren();
        while (gi2.hasNext()) {
            MitgliedskontoNode n2 = (MitgliedskontoNode) gi2.next();
            generiereZeile(n2);
        }
    }
    rpt.closeTable();
}

From source file:de.jost_net.JVerein.io.Kontoauszug.java

License:Open Source License

private void generiereZeile(MitgliedskontoNode node) {
    switch (node.getType()) {
    case MitgliedskontoNode.MITGLIED:
        rpt.addColumn("Gesamt", Element.ALIGN_LEFT);
        break;/*from w ww . j a  v a 2s  .  co  m*/
    case MitgliedskontoNode.SOLL:
        rpt.addColumn("Soll", Element.ALIGN_CENTER);
        break;
    case MitgliedskontoNode.IST:
        rpt.addColumn("Ist", Element.ALIGN_RIGHT);
        break;
    }
    rpt.addColumn((Date) node.getAttribute("datum"), Element.ALIGN_CENTER);
    rpt.addColumn((String) node.getAttribute("zweck1"), Element.ALIGN_LEFT);
    rpt.addColumn(Zahlungsweg.get((Integer) node.getAttribute("zahlungsweg")), Element.ALIGN_LEFT);
    rpt.addColumn((Double) node.getAttribute("soll"));
    rpt.addColumn((Double) node.getAttribute("ist"));
    rpt.addColumn((Double) node.getAttribute("differenz"));
}

From source file:de.jost_net.JVerein.io.MitgliedAuswertungPDF.java

License:Open Source License

@Override
public void go(ArrayList<Mitglied> list, final File file) throws ApplicationException {
    try {//from  www . j a  v a  2 s .c o m
        FileOutputStream fos = new FileOutputStream(file);

        Reporter report = new Reporter(fos, adresstyp.getBezeichnungPlural(), subtitle, list.size(), 50, 10, 20,
                25);

        report.addHeaderColumn("Name", Element.ALIGN_CENTER, 100, BaseColor.LIGHT_GRAY);
        report.addHeaderColumn("Anschrift\nKommunikation", Element.ALIGN_CENTER, 130, BaseColor.LIGHT_GRAY);
        report.addHeaderColumn("Geburts- datum", Element.ALIGN_CENTER, 30, BaseColor.LIGHT_GRAY);
        if (adresstyp.getJVereinid() == 1) {
            report.addHeaderColumn(
                    "Eintritt / \nAustritt / \nKndigung"
                            + (Einstellungen.getEinstellung().getSterbedatum() ? ("/\n" + "Sterbedatum") : ""),
                    Element.ALIGN_CENTER, 30, BaseColor.LIGHT_GRAY);
        }
        report.addHeaderColumn(

                "Beitragsgruppe /\nEigenschaften"
                        + (Einstellungen.getEinstellung().getExterneMitgliedsnummer() ? "\nMitgliedsnummer"
                                : ""),
                Element.ALIGN_CENTER, 60, BaseColor.LIGHT_GRAY);
        report.createHeader(100, Element.ALIGN_CENTER);

        for (int i = 0; i < list.size(); i++) {
            Mitglied m = list.get(i);
            report.addColumn(Adressaufbereitung.getNameVorname(m), Element.ALIGN_LEFT);
            String anschriftkommunikation = Adressaufbereitung.getAnschrift(m);
            if (m.getTelefonprivat() != null && m.getTelefonprivat().length() > 0) {
                anschriftkommunikation += "\n" + "Tel. priv: " + m.getTelefonprivat();
            }
            if (m.getTelefondienstlich() != null && m.getTelefondienstlich().length() > 0) {
                anschriftkommunikation += "\n" + "Tel. dienstl: " + m.getTelefondienstlich();
            }
            if (m.getHandy() != null && m.getHandy().length() > 0) {
                anschriftkommunikation += "\n" + "Handy: " + m.getHandy();
            }
            if (m.getEmail() != null && m.getEmail().length() > 0) {
                anschriftkommunikation += "\n" + "EMail: " + m.getEmail();
            }
            report.addColumn(anschriftkommunikation, Element.ALIGN_LEFT);
            report.addColumn(m.getGeburtsdatum(), Element.ALIGN_LEFT);

            Date d = m.getEintritt();
            if (d.equals(Einstellungen.NODATE)) {
                d = null;
            }
            String zelle = "";
            if (d != null) {
                zelle = new JVDateFormatTTMMJJJJ().format(d);
            }

            if (m.getAustritt() != null) {
                zelle += "\n" + new JVDateFormatTTMMJJJJ().format(m.getAustritt());
            }
            if (m.getKuendigung() != null) {
                zelle += "\n" + new JVDateFormatTTMMJJJJ().format(m.getKuendigung());
            }
            if (m.getSterbetag() != null) {
                zelle += "\n" + new JVDateFormatTTMMJJJJ().format(m.getSterbetag());
            }
            if (adresstyp.getJVereinid() == 1) {
                report.addColumn(zelle, Element.ALIGN_LEFT);
            }
            StringBuilder beitragsgruppebemerkung = new StringBuilder();
            if (m.getBeitragsgruppe() != null) {
                beitragsgruppebemerkung.append(m.getBeitragsgruppe().getBezeichnung());
            }
            StringBuilder eigenschaften = new StringBuilder();
            ArrayList<String> eig = new EigenschaftenTool().getEigenschaften(m.getID());
            for (int i2 = 0; i2 < eig.size(); i2 = i2 + 2) {
                if (i2 == 0) {
                    beitragsgruppebemerkung.append("\n");
                }
                eigenschaften.append(eig.get(i2));
                eigenschaften.append(": ");
                eigenschaften.append(eig.get(i2 + 1));
                eigenschaften.append("\n");
            }

            zelle = "";
            if (Einstellungen.getEinstellung().getExterneMitgliedsnummer()) {
                zelle += (m.getExterneMitgliedsnummer() != null ? m.getExterneMitgliedsnummer() : "");
            }

            report.addColumn(beitragsgruppebemerkung.toString() + " " + eigenschaften.toString() + " " + zelle,
                    Element.ALIGN_LEFT);
        }
        report.closeTable();

        report.add(new Paragraph(String.format("Anzahl %d: %s", list.size(), adresstyp.getBezeichnungPlural()),
                Reporter.getFreeSans(8)));

        report.add(new Paragraph("Parameter", Reporter.getFreeSans(12)));

        report.addHeaderColumn("Parameter", Element.ALIGN_RIGHT, 100, BaseColor.LIGHT_GRAY);
        report.addHeaderColumn("Wert", Element.ALIGN_LEFT, 200, BaseColor.LIGHT_GRAY);
        report.createHeader(75f, Element.ALIGN_LEFT);
        for (String key : params.keySet()) {
            report.addColumn(key, Element.ALIGN_RIGHT);
            report.addColumn(params.get(key), Element.ALIGN_LEFT);
        }
        report.closeTable();
        report.close();
        GUI.getStatusBar().setSuccessText(String.format("Auswertung fertig. %d Stze.", list.size()));
    } catch (Exception e) {
        Logger.error("error while creating report", e);
        throw new ApplicationException("Fehler", e);
    }
}