Example usage for com.itextpdf.text Element ALIGN_CENTER

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

Introduction

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

Prototype

int ALIGN_CENTER

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

Click Source Link

Document

A possible value for paragraph alignment.

Usage

From source file:de.drippinger.cytricHelper.CytricHelper.java

License:Open Source License

public void manipulatePdf(String sourceFile, String expenseID) throws IOException, DocumentException {
    PdfReader reader = new PdfReader(sourceFile);
    PdfStamper stamper = new PdfStamper(reader, new FileOutputStream(getOutputName(sourceFile)));

    PdfContentByte over = stamper.getOverContent(1);
    Phrase p = new Phrase(String.format("Cytric ID: %s", expenseID));
    ColumnText.showTextAligned(over, Element.ALIGN_CENTER, p, 500, reader.getPageSize(1).getHeight() - 30, 0);
    over.saveState();//  ww w .j ava2s. c om

    stamper.close();
    reader.close();
}

From source file:de.fau.osr.util.matrix.MatrixTools.java

License:Open Source License

/**
 * /**//from w  w  w.j  a v  a2 s.c  o m
 * saves matrix to {@code path} in pdf format
 * @param matrix matrix to save
 * @param path file where matrix will be saved
 */
public static boolean SaveMatrixToPdf(RequirementsTraceabilityMatrixByImpact matrix, File path,
        String matrixTitle) {
    Document document = new Document();
    try {
        PdfWriter.getInstance(document, new FileOutputStream(path));
        document.open();
        document.addTitle(matrixTitle);

        Paragraph headerPar = new Paragraph("Traceability Matrix");
        headerPar.add(new Paragraph(" ")); //new line
        document.add(headerPar);

        java.util.List<String> reqs = matrix.getRequirements();

        //table setup
        PdfPTable table = new PdfPTable(reqs.size() + 1); //reqs + "file name" col
        table.setHeaderRows(1);
        table.setHorizontalAlignment(Element.ALIGN_JUSTIFIED);
        table.setWidthPercentage(100);
        table.setSpacingBefore(0);
        table.setSpacingAfter(0);

        //file name col width/req col width 4:1
        float[] widths = new float[reqs.size() + 1];
        widths[0] = 4;
        for (int i = 0; i < reqs.size(); i++) {
            widths[i + 1] = 1;
        }
        table.setWidths(widths);

        //header row
        //add filename col to header
        addCell(table, "File name", 10, Element.ALIGN_LEFT);
        //add req cols to header
        for (String req : reqs) {
            addCell(table, "req-" + req, 8, Element.ALIGN_CENTER);
        }
        //content, row by row:
        for (int i = 0; i < matrix.getFiles().size(); i++) {
            //filename col
            String fileName = matrix.getFiles().get(i);
            addCell(table, fileName, 5, Element.ALIGN_LEFT, 18);

            //impact value cols
            for (String req : reqs) {
                RequirementFileImpactValue value = matrix
                        .getImpactValue(new RequirementFilePair(req, fileName));
                if (value == null) {
                    value = new RequirementFileImpactValue(0);
                }
                //round
                DecimalFormat df = new DecimalFormat("#.##");
                df.setRoundingMode(RoundingMode.CEILING);
                String valString = df.format(value.getImpactPercentage());

                addCell(table, valString, 10, Element.ALIGN_CENTER);
            }
        }

        document.add(table);

    } catch (DocumentException | FileNotFoundException e) {
        e.printStackTrace();
        return false;
    } finally {
        document.close();
    }
    return true;

}

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

License:Open Source License

/**
 * Generierung des Standard-Dokumentes zu verwenden fr Spendenbescheinigungen
 * bis 31.12.2012/*  w  w  w .j a v  a 2 s.com*/
 * 
 * @param spb
 *          Die Spendenbescheinigung aus der Datenbank
 * @param fileName
 *          Der Dateiname, wohin das Dokument geschrieben werden soll
 * @throws IOException
 * @throws DocumentException
 */
private void generiereSpendenbescheinigungStandard(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);
    rpt.addHeaderColumn("Tag der Zuwendung", Element.ALIGN_CENTER, 50, 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);
    rpt.addColumn((String) map.get(SpendenbescheinigungVar.SPENDEDATUM.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 und ist "
                    + "mit dem Entnahmewert (ggf. mit dem niedrigeren gemeinen Wert) 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 = "nein";
    boolean andruckVerzicht = false;

    if (spb.getAutocreate()) {
        if (!isSammelbestaetigung) {
            if (spb.getBuchungen().get(0).getVerzicht().booleanValue()) {
                verzicht = "ja";
            }
            andruckVerzicht = true;
        }
    } else {
        if (spb.getErsatzAufwendungen()) {
            verzicht = "ja";
        }
        andruckVerzicht = true;
    }

    if (!isSammelbestaetigung) {
        if (andruckVerzicht) {
            rpt.add("Es handelt sich um den Verzicht von Aufwendungen: " + verzicht + "\n\n", 9);
        } else {
            rpt.add("Es handelt sich nicht um den Verzicht auf Erstattung von Aufwendungen: " + "\n\n", 9);
        }
    }
    if (!Einstellungen.getEinstellung().getVorlaeufig()) {
        // rdc: "Frderung" entfernt, da in "Beguenstigterzweck" enthalten
        String txt = "Wir sind wegen " + Einstellungen.getEinstellung().getBeguenstigterzweck()
                + " nach dem letzten uns zugegangenen Freistellungsbescheid bzw. nach der Anlage zum Krperschaftssteuerbescheid des Finanzamtes "
                + Einstellungen.getEinstellung().getFinanzamt() + ", StNr. "
                + Einstellungen.getEinstellung().getSteuernummer() + ", vom "
                + new JVDateFormatTTMMJJJJ().format(Einstellungen.getEinstellung().getBescheiddatum())
                + " 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, 9);
    } else {
        // rdc: "Frderung" entfernt, da in "Beguenstigterzweck" enthalten
        String txt = "Wir sind wegen " + Einstellungen.getEinstellung().getBeguenstigterzweck()
                + " durch vorlufige Bescheinigung des Finanzamtes "
                + Einstellungen.getEinstellung().getFinanzamt() + ", StNr. "
                + Einstellungen.getEinstellung().getSteuernummer() + ", vom "
                + new JVDateFormatTTMMJJJJ().format(Einstellungen.getEinstellung().getBescheiddatum()) + " ab "
                + new JVDateFormatTTMMJJJJ().format(Einstellungen.getEinstellung().getVorlaeufigab())
                + " als steuerbegnstigten Zwecken dienend anerkannt.";
        rpt.add(txt, 9);
    }
    // rdc: "Frderung" entfernt, da in "Beguenstigterzweck" enthalten
    rpt.add("\n\nEs wird besttigt, dass die Zuwendung nur zur "
            + Einstellungen.getEinstellung().getBeguenstigterzweck() + " verwendet wird.\n", 9);
    if (!Einstellungen.getEinstellung().getMitgliedsbetraege()
            && spb.getSpendenart() == Spendenart.GELDSPENDE) {
        rpt.add("Es wird besttigt, dass es sich nicht um einen Mitgliedsbeitrag i.S.v  10b Abs. 1 Satz 2 Einkommensteuergesetzes handelt.",
                9);
    }

    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.",
                9);
    }

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

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

    rpt.add("\n\nHinweis:", 9);
    rpt.add("\nWer vorstzlich oder grob fahrlssig eine unrichtige Zuwendungsbesttigung erstellt oder wer veranlasst, dass "
            + "Zuwendungen nicht zu den in der Zuwendungsbesttigung angegebenen steuerbegnstigten Zwecken verwendet "
            + "werden, haftet fr die Steuer, die dem Fiskus durch einen etwaigen Abzug der Zuwendungen beim Zuwendenden "
            + "entgeht ( 10b Abs. 4 EStG,  9 Abs. 3 KStG,  9 Nr. 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 vorlufigen Bescheinigung lnger als 3 Jahre "
            + "seit Ausstellung der Besttigung zurckliegt (BMF vom 15.12.1994 - BStBl I S. 884).", 8);

    /* 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)));

        rpt.addHeaderColumn("Datum", Element.ALIGN_LEFT, 100, BaseColor.LIGHT_GRAY);
        rpt.addHeaderColumn("Betrag in EUR", Element.ALIGN_RIGHT, 100, BaseColor.LIGHT_GRAY);
        rpt.addHeaderColumn("Verwendung", Element.ALIGN_LEFT, 500, BaseColor.LIGHT_GRAY);
        rpt.createHeader();

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

        for (Buchung buchung : buchungen) {
            rpt.addColumn(buchung.getDatum(), Element.ALIGN_RIGHT);
            rpt.addColumn(Double.valueOf(buchung.getBetrag()));
            String verwendung = "";
            if (printBuchungsart) {
                verwendung = buchung.getBuchungsart().getBezeichnung();
                // rpt.addColumn(buchung.getBuchungsart().getBezeichnung(),
                // Element.ALIGN_LEFT);
            } else {
                verwendung = buchung.getZweck();
                // rpt.addColumn(buchung.getZweck(), Element.ALIGN_LEFT);
            }
            if (buchung.getVerzicht().booleanValue()) {
                verwendung = verwendung + " (b)";
                // rpt.addColumn("Verzicht auf Erstattung von Aufwendungen",
                // Element.ALIGN_LEFT);
            } else {
                verwendung = verwendung + " (a)";
                // rpt.addColumn("Kein Verzicht auf Erstattung von Aufwendungen",
                // Element.ALIGN_LEFT);
            }
            rpt.addColumn(verwendung, Element.ALIGN_LEFT);
        }

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

        rpt.closeTable();
        // Etwas Abstand
        rpt.add(new Paragraph(" ", Reporter.getFreeSans(12)));
        // 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.action.SpendenbescheinigungPrintAction.java

License:Open Source License

/**
 * Generierung des Standard-Dokumentes zu verwenden fr Spendenbescheinigungen
 * ab 01.01.2013/*www  .  jav a  2s  .  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 generiereSpendenbescheinigungStandardAb2013(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 und ist "
                    + "mit dem Entnahmewert (ggf. mit dem niedrigeren gemeinen Wert) 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(9));
        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()) {
        String txt = "Wir sind wegen " + Einstellungen.getEinstellung().getBeguenstigterzweck()
                + " nach dem letzten uns zugegangenen Freistellungsbescheid bzw. nach der Anlage zum Krperschaftssteuerbescheid des Finanzamtes "
                + Einstellungen.getEinstellung().getFinanzamt() + ", StNr. "
                + Einstellungen.getEinstellung().getSteuernummer() + ", vom "
                + new JVDateFormatTTMMJJJJ().format(Einstellungen.getEinstellung().getBescheiddatum())
                + " 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);
    } else {
        String txt = "Wir sind wegen " + Einstellungen.getEinstellung().getBeguenstigterzweck()
                + " durch vorlufige Bescheinigung des Finanzamtes "
                + Einstellungen.getEinstellung().getFinanzamt() + ", StNr. "
                + Einstellungen.getEinstellung().getSteuernummer() + ", vom "
                + new JVDateFormatTTMMJJJJ().format(Einstellungen.getEinstellung().getBescheiddatum()) + " ab "
                + new JVDateFormatTTMMJJJJ().format(Einstellungen.getEinstellung().getVorlaeufigab())
                + " als begnstigten Zwecken dienend anerkannt.";
        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(9));
        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(9));
        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:", 9);
    rpt.add("Wer vorstzlich oder grob fahrlssig eine unrichtige Zuwendungsbesttigung erstellt oder wer veranlasst, dass "
            + "Zuwendungen nicht zu den in der Zuwendungsbesttigung angegebenen steuerbegnstigten Zwecken verwendet "
            + "werden, haftet fr die entgangene Steuer ( 10b Abs. 4 EStG,  9 Abs. 3 KStG,  9 Nr. 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 vorlufigen Bescheinigung lnger als 3 Jahre "
            + "seit Ausstellung der Besttigung zurckliegt (BMF vom 15.12.1994 - BStBl I S. 884).", 8);

    /* 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.action.SpendenbescheinigungPrintAction.java

License:Open Source License

/**
 * Generierung des Standard-Dokumentes zu verwenden fr Spendenbescheinigungen
 * ab 01.01.2014/*w ww  . j a  v  a 2  s.c om*/
 * 
 * @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.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. ja va2s  .com
    }
    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.KursteilnehmerControl.java

License:Open Source License

private void starteAuswertung() {
    // Alle Kursteilnehmer lesen
    final DBIterator<Kursteilnehmer> list;
    try {//from w ww .  j a v  a  2  s.  com
        saveDefaults();
        String subtitle = "";
        list = Einstellungen.getDBService().createList(Kursteilnehmer.class);
        if (abbuchungsdatumvon.getValue() != null) {
            Date d = (Date) abbuchungsdatumvon.getValue();
            subtitle += "Abbuchungsdatum von" + " " + new JVDateFormatTTMMJJJJ().format(d) + "  ";
            list.addFilter("abbudatum >= ?", new Object[] { new java.sql.Date(d.getTime()) });
        }
        if (abbuchungsdatumbis.getValue() != null) {
            Date d = (Date) abbuchungsdatumbis.getValue();
            subtitle += " " + "bis" + " " + new JVDateFormatTTMMJJJJ().format(d) + "  ";
            list.addFilter("abbudatum <= ?", new Object[] { new java.sql.Date(d.getTime()) });
        }
        FileDialog fd = new FileDialog(GUI.getShell(), SWT.SAVE);
        fd.setText("Ausgabedatei whlen.");

        Settings settings = new Settings(this.getClass());

        String path = settings.getString("lastdir", System.getProperty("user.home"));
        if (path != null && path.length() > 0) {
            fd.setFilterPath(path);
        }
        fd.setFileName(
                new Dateiname("kursteilnehmer", "", Einstellungen.getEinstellung().getDateinamenmuster(), "PDF")
                        .get());

        final String s = fd.open();

        if (s == null || s.length() == 0) {
            // close();
            return;
        }

        final File file = new File(s);
        settings.setAttribute("lastdir", file.getParent());
        final String subtitle2 = subtitle;

        BackgroundTask t = new BackgroundTask() {

            @Override
            public void run(ProgressMonitor monitor) throws ApplicationException {
                try {
                    Reporter rpt = new Reporter(new FileOutputStream(file), "Kursteilnehmer", subtitle2,
                            list.size());

                    GUI.getCurrentView().reload();

                    rpt.addHeaderColumn("Datum", Element.ALIGN_LEFT, 50, BaseColor.LIGHT_GRAY);
                    rpt.addHeaderColumn("Name", Element.ALIGN_LEFT, 80, BaseColor.LIGHT_GRAY);
                    rpt.addHeaderColumn("Verwendungszweck", Element.ALIGN_LEFT, 80, BaseColor.LIGHT_GRAY);
                    rpt.addHeaderColumn("Betrag", Element.ALIGN_CENTER, 40, BaseColor.LIGHT_GRAY);
                    rpt.createHeader();
                    while (list.hasNext()) {
                        Kursteilnehmer kt = list.next();
                        rpt.addColumn(kt.getAbbudatum(), Element.ALIGN_LEFT);
                        rpt.addColumn(kt.getName(), Element.ALIGN_LEFT);
                        rpt.addColumn(kt.getVZweck1(), Element.ALIGN_LEFT);
                        rpt.addColumn(kt.getBetrag());
                    }
                    rpt.close();
                    FileViewer.show(file);
                } catch (ApplicationException ae) {
                    Logger.error("Fehler", ae);
                    GUI.getStatusBar().setErrorText(ae.getMessage());
                    throw ae;
                } catch (Exception re) {
                    Logger.error("Fehler", re);
                    GUI.getStatusBar().setErrorText(re.getMessage());
                    throw new ApplicationException(re);
                }
            }

            @Override
            public void interrupt() {
                //
            }

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

    } catch (RemoteException e) {
        Logger.error("Fehler", e);
    }
}

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

License:Open Source License

public AbrechnungslaufPDF(DBIterator<Mitgliedskonto> it, final File file, final Abrechnungslauf lauf)
        throws ApplicationException {
    try {/*  ww w  .j  a  v  a  2 s  .  c  o  m*/
        FileOutputStream fos = new FileOutputStream(file);
        String title = "Abrechnungslauf";
        String subtitle = "Nr. " + lauf.getNr() + " vom " + new JVDateFormatTTMMJJJJ().format(lauf.getDatum());
        Reporter reporter = new Reporter(fos, title, subtitle, it.size());

        reporter.addHeaderColumn("Flligkeit", Element.ALIGN_CENTER, 80, BaseColor.LIGHT_GRAY);
        reporter.addHeaderColumn("Name", Element.ALIGN_CENTER, 190, BaseColor.LIGHT_GRAY);
        reporter.addHeaderColumn("Zweck", Element.ALIGN_CENTER, 190, BaseColor.LIGHT_GRAY);
        reporter.addHeaderColumn("Betrag", Element.ALIGN_CENTER, 60, BaseColor.LIGHT_GRAY);
        reporter.addHeaderColumn("Eingang", Element.ALIGN_CENTER, 60, BaseColor.LIGHT_GRAY);
        reporter.addHeaderColumn("Zahlungsweg", Element.ALIGN_CENTER, 100, BaseColor.LIGHT_GRAY);
        reporter.createHeader();

        while (it.hasNext()) {
            Mitgliedskonto mk = it.next();

            reporter.addColumn(new JVDateFormatTTMMJJJJ().format(mk.getDatum()), Element.ALIGN_LEFT);
            reporter.addColumn(Adressaufbereitung.getNameVorname(mk.getMitglied()), Element.ALIGN_LEFT);
            reporter.addColumn(mk.getZweck1(), Element.ALIGN_LEFT);
            reporter.addColumn(mk.getBetrag());
            reporter.addColumn(mk.getIstSumme());
            reporter.addColumn(Zahlungsweg.get(mk.getZahlungsweg()), Element.ALIGN_LEFT);
        }
        reporter.closeTable();
        reporter.close();

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

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

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

License:Open Source License

@Override
protected void startJahrgang(int jahrgang) throws DocumentException {
    Logger.debug(String.format("Altersjubilum, Jahrgang=%d", jahrgang));
    Paragraph pHeader = new Paragraph("\n" + String.format("%d. Geburtstag", jahrgang),
            Reporter.getFreeSans(11));//from   w  w w.  j  a  v  a2s  . com
    reporter.add(pHeader);
    reporter.addHeaderColumn("Geburtsdatum", Element.ALIGN_CENTER, 50, BaseColor.LIGHT_GRAY);

    reporter.addHeaderColumn("Name, Vorname", Element.ALIGN_CENTER, 100, BaseColor.LIGHT_GRAY);
    reporter.addHeaderColumn("Anschrift", Element.ALIGN_CENTER, 120, BaseColor.LIGHT_GRAY);
    reporter.addHeaderColumn("Kommunikation", Element.ALIGN_CENTER, 80, BaseColor.LIGHT_GRAY);
    reporter.createHeader();
    anz = 0;
}

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

License:Open Source License

private void createTableHeaderEinzel(Reporter reporter) throws DocumentException {
    reporter.addHeaderColumn("Datum", 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("Betrag", Element.ALIGN_CENTER, 50, BaseColor.LIGHT_GRAY);
    reporter.createHeader();//from  ww w.  j a v  a 2s .  c o m

}