Example usage for com.itextpdf.text Phrase Phrase

List of usage examples for com.itextpdf.text Phrase Phrase

Introduction

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

Prototype

public Phrase(final float leading, final String string) 

Source Link

Document

Constructs a Phrase with a certain leading and a certain String.

Usage

From source file:com.tomasz.drag.triballocommanderro.controller.MakerPDF.java

public static PdfPTable createTable(Person person, EventGig event) throws DocumentException, IOException {
    int a = 0;//  w  w  w.j av a  2 s  . c om
    if (person.getZaladunekScenaDachWyplata() > 0) {
        a++;
    }
    if (person.getZaladunekTechnikiWyplata() > 0) {
        a++;
    }

    if (person.getMontazDachuWyplata() > 0) {
        a++;
    }
    if (person.getMontazDzwiekuWyplata() > 0) {
        a++;
    }

    if (person.getMontazScenyWyplata() > 0) {
        a++;
    }
    if (person.getMontazSwiatlaWyplata() > 0) {
        a++;
    }

    if (person.getMontazTechnikiWyplata() > 0) {
        a++;
    }

    if (person.getDemontazDachuWyplata() > 0) {
        a++;
    }
    if (person.getDemontazDzwiekuWyplata() > 0) {
        a++;
    }

    if (person.getDemontazScenyWyplata() > 0) {
        a++;
    }
    if (person.getDemontazSwiatlaWyplata() > 0) {
        a++;
    }

    if (person.getDemontazTechnikiWyplata() > 0) {
        a++;
    }

    if (person.getRozladunekScenaDachWyplata() > 0) {
        a++;
    }
    if (person.getRozladunekTechnikiWyplata() > 0) {
        a++;
    }
    if (person.getDyzurWyplata() > 0) {
        a++;
    }
    if (person.getTechnikScenyWyplata() > 0) {
        a++;
    }
    if (person.getRealizacjaFOHWyplata() > 0) {
        a++;
    }
    if (person.getRealizacjaMONWyplata() > 0) {
        a++;
    }
    if (person.getRealizacjaSwiatlaWyplata() > 0) {
        a++;
    }

    if (person.getPremia() > 0) {
        a++;
    }

    System.out.println(a);
    BaseFont bf;
    bf = BaseFont.createFont("src\\main\\resources\\font\\arialuni.ttf", BaseFont.IDENTITY_H,
            BaseFont.EMBEDDED);
    // bf = BaseFont.createFont("arialuni.ttf", BaseFont.IDENTITY_H, BaseFont.EMBEDDED);
    com.itextpdf.text.Font ft = new com.itextpdf.text.Font(bf);
    PdfPTable table = new PdfPTable(2);
    table.setTotalWidth(new float[] { 90, 190 });
    table.setLockedWidth(true);
    PdfPCell cell;
    cell = new PdfPCell(new Phrase(person.getName() + " " + person.getSurName(), ft));
    cell.setColspan(1);
    table.addCell(cell);
    cell = new PdfPCell(new Phrase(event.getName() + " " + event.getData(), ft));
    cell.setColspan(2);
    table.addCell(cell);
    cell = new PdfPCell(new Phrase(""));

    cell.setRowspan(a);

    table.addCell(cell);

    if (person.getZaladunekScenaDachWyplata() > 0) {
        table.addCell(new Phrase("Zaadunek Scena/Dach", ft));

    }
    if (person.getZaladunekTechnikiWyplata() > 0) {
        table.addCell(new Phrase("Zaadunek Techniki", ft));
    }

    if (person.getMontazDachuWyplata() > 0) {
        table.addCell(new Phrase("Monta Dachu", ft));

    }
    if (person.getMontazDzwiekuWyplata() > 0) {
        table.addCell(new Phrase("Monta Dwieku", ft));
    }

    if (person.getMontazScenyWyplata() > 0) {
        table.addCell(new Phrase("Monta Sceny", ft));

    }
    if (person.getMontazSwiatlaWyplata() > 0) {
        table.addCell(new Phrase("Monta wiata", ft));
    }

    if (person.getMontazTechnikiWyplata() > 0) {
        table.addCell(new Phrase("Monta Techniki", ft));
    }

    if (person.getDemontazDachuWyplata() > 0) {
        table.addCell(new Phrase("Demonta Dachu", ft));

    }
    if (person.getDemontazDzwiekuWyplata() > 0) {
        table.addCell(new Phrase("Demonta Dwieku", ft));
    }

    if (person.getDemontazScenyWyplata() > 0) {
        table.addCell(new Phrase("Demonta Sceny", ft));

    }
    if (person.getDemontazSwiatlaWyplata() > 0) {
        table.addCell(new Phrase("Demonta wiata", ft));
    }

    if (person.getDemontazTechnikiWyplata() > 0) {
        table.addCell(new Phrase("Demonta Techniki", ft));
    }

    if (person.getRozladunekScenaDachWyplata() > 0) {
        table.addCell(new Phrase("Rozadunek Scena/Dach", ft));

    }
    if (person.getRozladunekTechnikiWyplata() > 0) {
        table.addCell(new Phrase("Rozadunek Techniki", ft));
    }

    if (person.getDyzurWyplata() > 0) {
        table.addCell(new Phrase("Dyur", ft));
    }

    if (person.getTechnikScenyWyplata() > 0) {
        table.addCell(new Phrase("Technik Sceny", ft));
    }

    if (person.getRealizacjaFOHWyplata() > 0) {
        table.addCell(new Phrase("Realizacja FOH", ft));
    }

    if (person.getRealizacjaMONWyplata() > 0) {
        table.addCell(new Phrase("Realizacja MON", ft));
    }

    if (person.getRealizacjaSwiatlaWyplata() > 0) {
        table.addCell(new Phrase("Realizacja wiata", ft));
    }

    if (person.getPremia() > 0) {
        table.addCell(new Phrase("Premia", ft));
    }

    cell = new PdfPCell(new Phrase("Suma: "));
    cell.setColspan(1);
    table.addCell(cell);
    //cell = new PdfPCell(new Phrase(Double.toString(person.getSumaWyplata())));//String.format("%.2f", tempPerson.getRealizacjaSwiatlaWyplata())
    cell = new PdfPCell(new Phrase(String.format("%.2f", person.getSumaWyplata()) + " z", ft));//String.format("%.2f", tempPerson.getRealizacjaSwiatlaWyplata())
    table.addCell(cell);

    cell = new PdfPCell(new Phrase(" "));
    cell.setColspan(1);
    cell.setBorder(Rectangle.NO_BORDER);
    table.addCell(cell);
    //cell = new PdfPCell(new Phrase(Double.toString(person.getSumaWyplata())));//String.format("%.2f", tempPerson.getRealizacjaSwiatlaWyplata())
    cell = new PdfPCell(new Phrase("  "));//String.format("%.2f", tempPerson.getRealizacjaSwiatlaWyplata())
    cell.setBorder(Rectangle.NO_BORDER);
    table.addCell(cell);
    table.setBreakPoints(2 + a);

    return table;

}

From source file:com.vectorprint.report.itext.Help.java

License:Open Source License

public static void printStylerHelp(Document document, com.itextpdf.text.Font f)
        throws IOException, FileNotFoundException, ClassNotFoundException, InstantiationException,
        IllegalAccessException, DocumentException, NoSuchMethodException, InvocationTargetException {
    for (BaseStyler s : getParameterizables(AbstractStyler.class.getPackage(), BaseStyler.class)) {
        document.add(Chunk.NEWLINE);//from   ww w. j a  v  a 2s. c  o  m
        document.add(
                new Chunk(s.getClass().getSimpleName(), f).setLocalDestination(s.getClass().getSimpleName()));
        document.add(new Phrase(":  " + s.getHelp() + "\n  parameters available:", f));

        ByteArrayOutputStream o = new ByteArrayOutputStream(400);
        PrintStream out = new PrintStream(o);
        printParamInfo(s, out);
        out.println("  able to style: " + s.getSupportedClasses());
        addStylerForClass(s);
        if (s.creates()) {
            out.println("  creates supported Class");
        }
        out.flush();
        document.add(new Paragraph(o.toString(), f));
    }
    printStylersPerClass(document, f);
}

From source file:com.vectorprint.report.itext.Help.java

License:Open Source License

public static void printConditionrHelp(Document document, com.itextpdf.text.Font f)
        throws IOException, FileNotFoundException, ClassNotFoundException, InstantiationException,
        IllegalAccessException, DocumentException, NoSuchMethodException, InvocationTargetException {
    document.add(new Paragraph(
            "\nAvailable conditions for stylers that can be configured in a properties file, together with parameters that may be used."
                    + "---------------------------------------------------------------------------------------------------------\n"
                    + "  All parameters mentioned below can take defaults through properties in the form <(Parent)Class.getSimpleName().parameterName>=<value>\n",
            f));//w  w w  .jav  a2  s  .c om
    for (StylingCondition s : getParameterizables(AbstractCondition.class.getPackage(),
            StylingCondition.class)) {
        document.add(Chunk.NEWLINE);
        document.add(
                new Chunk(s.getClass().getSimpleName(), f).setLocalDestination(s.getClass().getSimpleName()));
        document.add(new Phrase(":  " + s.getHelp() + "\n  parameters available:", f));

        ByteArrayOutputStream o = new ByteArrayOutputStream(400);
        PrintStream out = new PrintStream(o);
        printParamInfo(s, out);
        out.flush();
        document.add(new Paragraph(o.toString(), f));
    }
}

From source file:com.vectorprint.report.itext.Help.java

License:Open Source License

public static void printStylersPerClass(Document document, com.itextpdf.text.Font f) throws DocumentException {
    document.add(Chunk.NEWLINE);//from ww  w  .  ja v a2s  .  c om
    document.add(new Phrase("Overview of stylers available per iText Class (and its subclasses)", f));
    document.add(Chunk.NEWLINE);
    for (Map.Entry<Class, Set<Class<? extends BaseStyler>>> e : stylersForClass.entrySet()) {
        document.add(Chunk.NEWLINE);
        document.add(new Chunk("stylers for " + e.getKey().getSimpleName() + ": ", f));
        for (Class bs : e.getValue()) {
            document.add(
                    new Chunk(bs.getSimpleName(), f).setLocalGoto(bs.getSimpleName()).setUnderline(0.3f, -1f));
            document.add(new Chunk(", ", f));
        }
    }
}

From source file:comisionesafis.informes.CintaComisiones.java

public boolean generar() {

    // Abrimos el fichero de comisiones
    String sSQL = "";
    Statement stmt;/*  ww w.j  a va  2s  .c o m*/
    ResultSet rsComisiones;
    ResultSet rsBanco;
    String cuenta;

    // Generamos la sentencia de Seleccin de Datos
    try {

        // Generamos el PDF
        Document documento = new Document(PageSize.A4, 80, 80, 50, 50);
        FileOutputStream salida = new FileOutputStream(FICHERO_PDF);
        PdfWriter writer = PdfWriter.getInstance(documento, salida);
        writer.setInitialLeading(0);

        //  Obtenemos una instancia de nuestro manejador de eventos
        CintaComisionesPie pie = new CintaComisionesPie();
        //Asignamos el manejador de eventos al escritor.
        writer.setPageEvent(pie);

        // Abrimos el Documento
        documento.open();

        sSQL = "SELECT * ";
        sSQL += "  FROM ResumenComisiones";
        sSQL += " ORDER BY CodAgente";
        stmt = conexion.createStatement();
        rsComisiones = stmt.executeQuery(sSQL);

        Paragraph Titulo = new Paragraph();
        Titulo.setAlignment(Element.ALIGN_CENTER);
        Titulo.add("CINTA COMISIONES");

        float[] anchuras = { 1f, 1.5f, 3f, 4f, 1f, 1.5f };
        PdfPTable table = new PdfPTable(anchuras);
        table.setWidthPercentage(100);
        table.setSpacingBefore(15f);
        table.setSpacingAfter(10f);
        PdfPCell celda;

        // Tipo de letra para la tabla
        Font font = new Font(Font.FontFamily.COURIER, 8, Font.NORMAL);

        celda = new PdfPCell(new Phrase("Agente", font));
        celda.setBorder(Rectangle.NO_BORDER);
        celda.setHorizontalAlignment(Element.ALIGN_CENTER);
        table.addCell(celda);
        celda = new PdfPCell(new Phrase("Importe", font));
        celda.setBorder(Rectangle.NO_BORDER);
        celda.setHorizontalAlignment(Element.ALIGN_CENTER);
        table.addCell(celda);
        celda = new PdfPCell(new Phrase("Cuenta Bancaria", font));
        celda.setBorder(Rectangle.NO_BORDER);
        celda.setHorizontalAlignment(Element.ALIGN_CENTER);
        table.addCell(celda);
        celda = new PdfPCell(new Phrase("Nombre", font));
        celda.setBorder(Rectangle.NO_BORDER);
        celda.setHorizontalAlignment(Element.ALIGN_CENTER);
        table.addCell(celda);
        celda = new PdfPCell(new Phrase("Irpf", font));
        celda.setBorder(Rectangle.NO_BORDER);
        celda.setHorizontalAlignment(Element.ALIGN_CENTER);
        table.addCell(celda);
        celda = new PdfPCell(new Phrase("Total", font));
        celda.setBorder(Rectangle.NO_BORDER);
        celda.setHorizontalAlignment(Element.ALIGN_CENTER);
        table.addCell(celda);

        while (rsComisiones.next()) {

            // Buscamos la Cuenta Bancaria
            sSQL = "SELECT * ";
            sSQL += "  FROM Agentes";
            sSQL += " WHERE CodAgente='" + rsComisiones.getString("CodAgente") + "'";
            stmt = conexion.createStatement();
            rsBanco = stmt.executeQuery(sSQL);
            if (!rsBanco.next()) {
                cuenta = "                    ";
            } else {
                cuenta = rsBanco.getString("Banco");
                cuenta += rsBanco.getString("Sucursal");
                cuenta += rsBanco.getString("DC");
                cuenta += rsBanco.getString("Cuenta");
            }

            // Datos del agente
            celda = new PdfPCell(new Phrase(rsComisiones.getString("CodAgente"), font));
            celda.setBorder(Rectangle.NO_BORDER);
            celda.setHorizontalAlignment(Element.ALIGN_CENTER);
            table.addCell(celda);

            celda = new PdfPCell(new Phrase(
                    Numeros.formateaDosDecimales(Double.parseDouble(rsComisiones.getString("TotalComisiones"))),
                    font));
            celda.setBorder(Rectangle.NO_BORDER);
            celda.setHorizontalAlignment(Element.ALIGN_RIGHT);
            table.addCell(celda);

            celda = new PdfPCell(new Phrase(cuenta, font));
            celda.setBorder(Rectangle.NO_BORDER);
            celda.setHorizontalAlignment(Element.ALIGN_CENTER);
            table.addCell(celda);

            celda = new PdfPCell(new Phrase(rsComisiones.getString("Nombre"), font));
            celda.setBorder(Rectangle.NO_BORDER);
            table.addCell(celda);

            celda = new PdfPCell(new Phrase(
                    Numeros.formateaDosDecimales(Double.parseDouble(rsComisiones.getString("TotalRetencion"))),
                    font));
            celda.setBorder(Rectangle.NO_BORDER);
            celda.setHorizontalAlignment(Element.ALIGN_RIGHT);
            table.addCell(celda);

            celda = new PdfPCell(new Phrase(
                    Numeros.formateaDosDecimales(Double.parseDouble(rsComisiones.getString("TotalPagar"))),
                    font));
            celda.setBorder(Rectangle.NO_BORDER);
            celda.setHorizontalAlignment(Element.ALIGN_RIGHT);
            table.addCell(celda);

        }

        documento.add(Titulo);
        documento.add(new Paragraph(" "));

        // Agregamos la tabla al documento            
        documento.add(table);

        documento.close();

        return true;

    } catch (Exception e) {
        return false;
    }
}

From source file:comisionesafis.informes.CintaComisionesPie.java

@Override
public void onEndPage(PdfWriter writer, Document document) {
    //Rectangle rect = writer.getBoxSize("art");
    Font font = new Font(Font.FontFamily.COURIER, 10, Font.NORMAL);
    Phrase texto = new Phrase("Pgina " + Integer.toString(document.getPageNumber()), font);
    ColumnText.showTextAligned(writer.getDirectContent(), Element.ALIGN_CENTER, texto, 300, 30, 0);
}

From source file:comisionesafis.informes.FacturasComisionesAgentes.java

public boolean generar() {

    // Abrimos el fichero de comisiones
    Periodos periodos = new Periodos(pb.getFicheroComisiones());
    String sSQL = "";
    Statement stmt;/*w  ww . ja  v a 2 s  . c o  m*/
    ResultSet rsComisiones;
    String sFactura1;
    String sFactura2;

    // Generamos la sentencia de Seleccin de Datos
    try {

        // Generamos el PDF
        Document documento = new Document(PageSize.A4, 80, 80, 50, 50);
        FileOutputStream salida = new FileOutputStream("FacturasComisionesAgentes.pdf");
        PdfWriter writer = PdfWriter.getInstance(documento, salida);
        writer.setInitialLeading(0);

        //  Obtenemos una instancia de nuestro manejador de eventos
        FacturasComisionesAgentesPie pie = new FacturasComisionesAgentesPie();
        //Asignamos el manejador de eventos al escritor.
        writer.setPageEvent(pie);

        // Abrimos el Documento
        documento.open();

        sSQL = "SELECT * ";
        sSQL += "  FROM ResumenComisiones";
        sSQL += " ORDER BY CodAgente";
        stmt = conexion.createStatement();
        rsComisiones = stmt.executeQuery(sSQL);

        while (rsComisiones.next()) {

            // Generamos los prrafos
            // Datos del agente
            Paragraph pAgente[] = new Paragraph[5];
            pAgente[0] = new Paragraph();
            pAgente[0].add(rsComisiones.getString("Nombre"));
            pAgente[0].setAlignment(Paragraph.ALIGN_LEFT);
            pAgente[1] = new Paragraph();
            pAgente[1].add(rsComisiones.getString("Direccion"));
            pAgente[1].setAlignment(Paragraph.ALIGN_LEFT);
            pAgente[2] = new Paragraph();
            pAgente[2].add(rsComisiones.getString("CodPostal") + "  " + rsComisiones.getString("Poblacion"));
            pAgente[2].setAlignment(Paragraph.ALIGN_LEFT);
            pAgente[3] = new Paragraph();
            pAgente[3].add(rsComisiones.getString("Provincia"));
            pAgente[3].setAlignment(Paragraph.ALIGN_LEFT);
            pAgente[4] = new Paragraph();
            pAgente[4].add(rsComisiones.getString("NIF"));
            pAgente[4].setAlignment(Paragraph.ALIGN_LEFT);

            // creating separators
            LineSeparator separador = new LineSeparator(1, 100, null, Element.ALIGN_CENTER, -2);

            // Datos fijos
            Paragraph pPelayo[] = new Paragraph[5];
            pPelayo[0] = new Paragraph();
            pPelayo[0].add("PELAYO VIDA");
            pPelayo[0].setAlignment(Paragraph.ALIGN_RIGHT);
            pPelayo[1] = new Paragraph();
            pPelayo[1].add("CL SANTA ENGRACIA 69");
            pPelayo[1].setAlignment(Paragraph.ALIGN_RIGHT);
            pPelayo[2] = new Paragraph();
            pPelayo[2].add("28010  MADRID");
            pPelayo[2].setAlignment(Paragraph.ALIGN_RIGHT);
            pPelayo[3] = new Paragraph();
            pPelayo[3].add("MADRID");
            pPelayo[3].setAlignment(Paragraph.ALIGN_RIGHT);
            pPelayo[4] = new Paragraph();
            pPelayo[4].add("06422");
            pPelayo[4].setAlignment(Paragraph.ALIGN_RIGHT);

            // Fecha
            Paragraph pFecha = new Paragraph();
            pFecha = new Paragraph("Madrid, a " + periodos.extraeFechaLarga());
            pFecha.setAlignment(Paragraph.ALIGN_RIGHT);

            // Lnea 1 de FACTURA
            Paragraph pFactura1 = new Paragraph();
            sFactura1 = "FACTURA: n factura ";
            sFactura1 += rsComisiones.getString("CodAgente") + " - ";
            sFactura1 += periodos.extraePeriodoMY("MM-YYYY");
            pFactura1 = new Paragraph(sFactura1);

            // Lnea 2 de FACTURA
            Paragraph pFactura2 = new Paragraph();
            sFactura2 = "Factura por la prestacin de servicios relativos a las operaciones ";
            sFactura2 += "de intermediacin de seguros realizadas para su entidad del mes de ";
            sFactura2 += periodos.extraePeriodoMY("MM YYYY");
            ;
            pFactura2 = new Paragraph(sFactura2);

            // Datos Econmicos
            float[] anchuras = { 5f, 2f };
            PdfPTable table = new PdfPTable(anchuras);
            table.getDefaultCell().setBorder(0);

            // Tipo de letra para la tabla
            Font font = new Font(Font.FontFamily.COURIER, 11, Font.NORMAL);

            PdfPCell celda = new PdfPCell();

            celda = new PdfPCell(new Phrase("Comisiones pagadas", font));
            celda.setBorder(Rectangle.NO_BORDER);
            celda.setHorizontalAlignment(Element.ALIGN_LEFT);
            table.addCell(celda);

            celda = new PdfPCell(
                    new Phrase(Double.toString(rsComisiones.getDouble("TotalComisiones")) + " ", font));
            celda.setBorder(Rectangle.NO_BORDER);
            celda.setHorizontalAlignment(Element.ALIGN_RIGHT);
            table.addCell(celda);

            celda = new PdfPCell(new Phrase("Otros conceptos", font));
            celda.setBorder(Rectangle.NO_BORDER);
            celda.setHorizontalAlignment(Element.ALIGN_LEFT);
            table.addCell(celda);

            celda = new PdfPCell(new Phrase(" ", font));
            celda.setBorder(Rectangle.NO_BORDER);
            celda.setHorizontalAlignment(Element.ALIGN_RIGHT);
            table.addCell(celda);

            celda = new PdfPCell(new Phrase(
                    "Retencin (" + Double.toString(rsComisiones.getDouble("RetencionPorcentaje")) + "%)",
                    font));
            celda.setBorder(Rectangle.NO_BORDER);
            celda.setHorizontalAlignment(Element.ALIGN_LEFT);
            table.addCell(celda);

            Double dblRetencion = rsComisiones.getDouble("TotalComisiones")
                    * (rsComisiones.getDouble("RetencionPorcentaje") / 100);
            celda = new PdfPCell(new Phrase(Numeros.formateaDosDecimales(dblRetencion) + " ", font));
            celda.setBorder(Rectangle.NO_BORDER);
            celda.setHorizontalAlignment(Element.ALIGN_RIGHT);
            table.addCell(celda);

            celda = new PdfPCell(new Phrase("Conceptos no sujetos", font));
            celda.setBorder(Rectangle.NO_BORDER);
            celda.setHorizontalAlignment(Element.ALIGN_LEFT);
            table.addCell(celda);

            celda = new PdfPCell(new Phrase(" ", font));
            celda.setBorder(Rectangle.NO_BORDER);
            celda.setHorizontalAlignment(Element.ALIGN_RIGHT);
            table.addCell(celda);

            celda = new PdfPCell(new Phrase("Total a pagar", font));
            celda.setBorder(Rectangle.NO_BORDER);
            celda.setHorizontalAlignment(Element.ALIGN_LEFT);
            table.addCell(celda);

            Double dblTotalPagar = rsComisiones.getDouble("TotalComisiones") - dblRetencion;
            celda = new PdfPCell(new Phrase(Numeros.formateaDosDecimales(dblTotalPagar) + " ", font));
            celda.setBorder(Rectangle.NO_BORDER);
            celda.setHorizontalAlignment(Element.ALIGN_RIGHT);
            table.addCell(celda);

            // Literal: Operacin exenta de IVA
            Paragraph pColetilla = new Paragraph();
            pColetilla.add("Operacin exenta de IVA");

            // Aadimos los prrafos al Documento
            for (int i = 0; i < 5; i++)
                documento.add(pAgente[i]);

            documento.add(new Paragraph(" "));
            documento.add(separador);

            for (int i = 0; i < 5; i++)
                documento.add(pPelayo[i]);

            documento.add(new Paragraph(" "));

            documento.add(pFecha);
            documento.add(new Paragraph(" "));

            documento.add(pFactura1);
            documento.add(separador);
            documento.add(pFactura2);

            // Agregamos la tabla al documento    
            documento.add(new Paragraph(" "));
            documento.add(table);

            documento.add(new Paragraph(" "));
            documento.add(new Paragraph(" "));
            documento.add(pColetilla);
            documento.newPage();
        }
        documento.close();
        return true;
    } catch (Exception e) {
        return false;
    }
}

From source file:comisionesafis.informes.FacturasComisionesAgentesPie.java

@Override
public void onEndPage(PdfWriter writer, Document document) {

    Font font = new Font(Font.FontFamily.COURIER, 8, Font.NORMAL);
    ColumnText.showTextAligned(writer.getDirectContent(), Element.ALIGN_LEFT,
            new Phrase("FacturasAgentes", font), 100, 80, 0);
}

From source file:comisionesafis.informes.LiquidacionComisiones.java

public boolean generar() {

    // Abrimos el fichero de comisiones
    String sSQL = "";
    Statement stmt;/*  w  w  w.j a  v  a2 s .  c om*/
    ResultSet rsAgentes;
    ResultSet rsRecibos;
    PdfPCell celda;
    boolean cabeceraColumnas;
    int filasPorPagina = 0;
    int fila = 0;
    PdfPTable table;
    Double dblTotal = 0.0;

    // Generamos la sentencia de Seleccin de Datos
    try {

        // Generamos el PDF
        Document documento = new Document(PageSize.A4, 80, 80, 50, 50);
        FileOutputStream salida = new FileOutputStream("LiquidacionComisiones.pdf");
        PdfWriter writer = PdfWriter.getInstance(documento, salida);
        writer.setInitialLeading(0);

        //  Obtenemos una instancia de nuestro manejador de eventos
        LiquidacionComisionesPie pie = new LiquidacionComisionesPie();
        //Asignamos el manejador de eventos al escritor.
        writer.setPageEvent(pie);

        // Abrimos el Documento
        documento.open();

        // SELECT para extraer todos los cdigos de los agentes con Recibos
        sSQL = "SELECT DISTINCT (CodAgente) AS Agente ";
        sSQL += "  FROM ResumenComisiones";
        sSQL += " ORDER BY CodAgente";
        stmt = conexion.createStatement();
        rsAgentes = stmt.executeQuery(sSQL);

        while (rsAgentes.next()) {

            if (sumaComisiones(rsAgentes.getString("Agente")) != 0) {
                paginaNum = 0;
                printCabecera1(documento);
                printCabeceraPelayo(documento);
                printCabecera2(documento, rsAgentes);

                // SELECT para extraer todos los Recibos de un agente
                sSQL = "SELECT * ";
                sSQL += "  FROM Recibos";
                sSQL += " WHERE CodAgente = '" + rsAgentes.getString("Agente") + "'";
                stmt = conexion.createStatement();
                rsRecibos = stmt.executeQuery(sSQL);

                //                if(rsAgentes.getString("Agente").equals("10803")){
                //                    System.out.println("");
                //                }

                // Creamos la tabla formateada
                table = creaTabla();

                cabeceraColumnas = true;
                filasPorPagina = 42;
                dblTotal = 0.0;
                while (rsRecibos.next()) {
                    if (Double.parseDouble(rsRecibos.getString("ImpComision")) != 0) {
                        if (fila >= filasPorPagina) {
                            // Salto de pgina
                            // Imprimimos el contenido de la tabla
                            documento.add(table);
                            documento.newPage();
                            table = creaTabla();
                            saltoDePagina(documento, table, rsAgentes);
                            fila = 1;
                            filasPorPagina = 47;
                        } else if (cabeceraColumnas) {
                            // Primera pgina
                            printCabeceraColumnas(table);
                            cabeceraColumnas = false;
                            fila = 1;
                        }
                        Font font = new Font(Font.FontFamily.COURIER, 8, Font.NORMAL);
                        celda = new PdfPCell(new Phrase(rsRecibos.getString("NPoliza"), font));
                        celda.setBorder(Rectangle.NO_BORDER);
                        celda.setHorizontalAlignment(Element.ALIGN_LEFT);
                        table.addCell(celda);
                        celda = new PdfPCell(
                                new Phrase(Fechas.fechaVencimiento(rsRecibos.getString("Fecha")), font));
                        celda.setBorder(Rectangle.NO_BORDER);
                        celda.setHorizontalAlignment(Element.ALIGN_LEFT);
                        table.addCell(celda);
                        celda = new PdfPCell(new Phrase(fondoRecibo(rsRecibos.getString("Descripcion")), font));
                        celda.setBorder(Rectangle.NO_BORDER);
                        celda.setHorizontalAlignment(Element.ALIGN_LEFT);
                        table.addCell(celda);
                        celda = new PdfPCell(new Phrase(rsRecibos.getString("Importe"), font));
                        celda.setBorder(Rectangle.NO_BORDER);
                        celda.setHorizontalAlignment(Element.ALIGN_RIGHT);
                        table.addCell(celda);
                        celda = new PdfPCell(new Phrase(Numeros.formateaDosDecimales(
                                Double.parseDouble(rsRecibos.getString("ImpComision"))), font));
                        celda.setBorder(Rectangle.NO_BORDER);
                        celda.setHorizontalAlignment(Element.ALIGN_RIGHT);
                        table.addCell(celda);
                        dblTotal += Double.parseDouble(rsRecibos.getString("ImpComision"));
                        fila++;
                    }
                }
                if (fila >= filasPorPagina - 5) {
                    documento.add(table);
                    documento.newPage();
                    table = creaTabla();
                }
                printResumenContable(table, dblTotal, rsAgentes.getString("Agente"));
                documento.add(table);
                documento.newPage();
            }
        }
        documento.close();
        return true;
    } catch (Exception e) {
        return false;
    }
}

From source file:comisionesafis.informes.LiquidacionComisiones.java

private void printCabecera2(Document documento, ResultSet rsAgentes) {

    String sSQL = "";
    Statement stmt;/* w  w w .ja va  2 s . com*/
    ResultSet rsDatosAgente;

    try {

        // SELECT para extraer todos los cdigos de los agentes con Recibos
        sSQL = "SELECT * ";
        sSQL += "  FROM Agentes";
        sSQL += " WHERE CodAgente='" + rsAgentes.getString("Agente") + "'";
        stmt = conexion.createStatement();
        rsDatosAgente = stmt.executeQuery(sSQL);

        if (!rsDatosAgente.next()) {
            // Este error no debera darse
            System.out.println("Error: No hay datos para el agente " + rsAgentes.getString("Agente"));
            return;
        }

        // Generamos la cabecera
        //Font fuenteCabecera = new Font(Font.FontFamily.COURIER, 8, Font.NORMAL);
        float[] anchuras = { 3f, 1f, 5f };
        PdfPTable table1 = new PdfPTable(anchuras);

        // Tipo de letra para la tabla
        Font font = new Font(Font.FontFamily.COURIER, 9, Font.NORMAL);

        PdfPCell celda = new PdfPCell();

        // Sucursal/Delegacin
        celda = new PdfPCell(new Phrase("SUCURSAL/DELEGACIN", font));
        celda.setBorder(Rectangle.NO_BORDER);
        celda.setHorizontalAlignment(Element.ALIGN_LEFT);
        table1.addCell(celda);

        celda = new PdfPCell(new Phrase("02", font));
        celda.setBorder(Rectangle.NO_BORDER);
        celda.setHorizontalAlignment(Element.ALIGN_LEFT);
        table1.addCell(celda);

        celda = new PdfPCell(new Phrase("PELAYO MONDIALE VIDA", font));
        celda.setBorder(Rectangle.NO_BORDER);
        celda.setHorizontalAlignment(Element.ALIGN_LEFT);
        table1.addCell(celda);

        // No tenemos estos datos. Me pide Fernando que los quite
        //            // Inspeccin
        //            celda = new PdfPCell(new Phrase("INSPECCIN",font));
        //            celda.setBorder(Rectangle.NO_BORDER);
        //            celda.setHorizontalAlignment(Element.ALIGN_LEFT);
        //            table1.addCell(celda);
        //
        //            celda = new PdfPCell(new Phrase("000001",font));
        //            celda.setBorder(Rectangle.NO_BORDER);
        //            celda.setHorizontalAlignment(Element.ALIGN_LEFT);
        //            table1.addCell(celda);
        //
        //            celda = new PdfPCell(new Phrase("ACUERDO DE DISTRIBUCIN",font));
        //            celda.setBorder(Rectangle.NO_BORDER);
        //            celda.setHorizontalAlignment(Element.ALIGN_LEFT);
        //            table1.addCell(celda);

        // Agente
        celda = new PdfPCell(new Phrase("AGENTE", font));
        celda.setBorder(Rectangle.NO_BORDER);
        celda.setHorizontalAlignment(Element.ALIGN_LEFT);
        table1.addCell(celda);

        celda = new PdfPCell(new Phrase(rsDatosAgente.getString("CodAgente"), font));
        celda.setBorder(Rectangle.NO_BORDER);
        celda.setHorizontalAlignment(Element.ALIGN_LEFT);
        table1.addCell(celda);

        celda = new PdfPCell(new Phrase(rsDatosAgente.getString("Nombre"), font));
        celda.setBorder(Rectangle.NO_BORDER);
        celda.setHorizontalAlignment(Element.ALIGN_LEFT);
        table1.addCell(celda);

        documento.add(table1);

    } catch (Exception e) {
        System.out.println(e.getMessage());
    }

}