Example usage for com.itextpdf.text Paragraph Paragraph

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

Introduction

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

Prototype

public Paragraph(Phrase phrase) 

Source Link

Document

Constructs a Paragraph with a certain Phrase.

Usage

From source file:bouttime.report.team.TeamReport.java

License:Open Source License

/**
 * Generate a summary report of the teams in the tournament.
 * This report lists the teams and the number of wresters on the team.
 * @param dao Dao object to use to retrieve data.
 * @return True if the report was generated.
 */// w  w w  . ja v a 2s  .  c  o  m
public static boolean doSummary(Dao dao) {
    if (!dao.isOpen()) {
        return false;
    }

    // step 1: creation of a document-object
    Document document = new Document();

    try {

        // step 2: creation of the writer
        FileOutputStream fos = createOutputFile();
        if (fos == null) {
            return false;
        }
        PdfWriter.getInstance(document, fos);

        // step 3: we open the document
        document.open();

        // step 4: create and add content

        // create and add the header
        Paragraph p1 = new Paragraph(new Paragraph(
                String.format("%s    %s %s, %s", dao.getName(), dao.getMonth(), dao.getDay(), dao.getYear()),
                FontFactory.getFont(FontFactory.HELVETICA, 10)));
        document.add(p1);

        Paragraph p2 = new Paragraph(
                new Paragraph("Team Summary Report", FontFactory.getFont(FontFactory.HELVETICA, 14)));
        p2.setAlignment(Paragraph.ALIGN_CENTER);
        document.add(p2);

        int cols = 2; // Team name and Total
        String classVals = dao.getClassificationValues();
        String[] classes = null;
        if (classVals != null) {
            if (classVals.length() > 0) {
                classes = classVals.split(",");
                cols += classes.length;
            }
        }

        // create and add the table
        PdfPTable datatable = new PdfPTable(cols);
        //int colWidths[] = { 55, 15, 15, 15 };   // percentage
        //datatable.setWidths(colWidths);
        datatable.getDefaultCell().setPadding(3);
        datatable.getDefaultCell().setBorderWidth(2);
        datatable.getDefaultCell().setHorizontalAlignment(Element.ALIGN_CENTER);

        datatable.addCell("Team Name");

        // Make a column for each classification value
        int[] classesTotals = null;
        if (classes != null) {
            for (String c : classes) {
                datatable.addCell(c.trim());
            }
            classesTotals = new int[classes.length];
            for (int i = 0; i < classesTotals.length; i++) {
                classesTotals[i] = 0;
            }
        }
        datatable.addCell("Total");
        datatable.setHeaderRows(1); // this is the end of the table header

        datatable.getDefaultCell().setBorderWidth(1);

        List<String> teams = dao.getTeams();

        int total = 0; // total count of all wrestlers in this method
        int i = 0;
        for (String t : teams) {
            if ((i++ % 2) == 0) {
                datatable.getDefaultCell().setGrayFill(0.9f);
            } else {
                datatable.getDefaultCell().setGrayFill(1);
            }

            List<Wrestler> wrestlers = dao.getWrestlersByTeam(t);
            int count = wrestlers.size();
            int rowTotal = 0;
            total += count;

            datatable.getDefaultCell().setHorizontalAlignment(Element.ALIGN_LEFT);
            datatable.addCell(t);
            if (classes != null) {
                //for (String c : classes) {
                for (int idx = 0; idx < classes.length; idx++) {
                    String c = classes[idx].trim();
                    List<Wrestler> wrestlers2 = dao.getWrestlersByTeamClass(t, c);
                    datatable.getDefaultCell().setHorizontalAlignment(Element.ALIGN_CENTER);
                    int count2 = wrestlers2.size();
                    datatable.addCell(Integer.toString(count2));
                    classesTotals[idx] += count2;
                    rowTotal += count2;
                }
            }

            datatable.getDefaultCell().setHorizontalAlignment(Element.ALIGN_CENTER);
            datatable.addCell(Integer.toString(count));

            // Check if there is an error in the counts.
            if ((classes != null) && (rowTotal != count)) {
                JFrame mainFrame = BoutTimeApp.getApplication().getMainFrame();
                JOptionPane.showMessageDialog(mainFrame,
                        "There is an error" + " with the total count for team '" + t + "'.\n" + "This is "
                                + "most likely due to an incorrect classification value\nfor "
                                + "one or more wrestlers.",
                        "Team count error", JOptionPane.WARNING_MESSAGE);
            }
        }

        // Add totals row
        datatable.getDefaultCell().setGrayFill(0.7f);
        datatable.getDefaultCell().setHorizontalAlignment(Element.ALIGN_LEFT);
        datatable.addCell("Total");
        datatable.getDefaultCell().setHorizontalAlignment(Element.ALIGN_CENTER);
        if (classes != null) {
            for (int idx = 0; idx < classesTotals.length; idx++) {
                datatable.addCell(Integer.toString(classesTotals[idx]));
            }
        }

        datatable.addCell(Integer.toString(total));

        datatable.setSpacingBefore(15f);
        document.add(datatable);

    } catch (DocumentException de) {
        logger.error("Document Exception", de);
        return false;
    }

    // step 5: we close the document
    document.close();

    return true;
}

From source file:bouttime.report.team.TeamReport.java

License:Open Source License

/**
 * Generate a detail report of the teams in the tournament.
 * This report includes the teams and all of the wrestlers on the team.
 * @param dao Dao object to use to retrieve data.
 * @return True if the report was generated.
 *//*from   w w  w  .j a  v a 2  s  . c o  m*/
public static boolean doDetail(Dao dao) {
    if (!dao.isOpen()) {
        return false;
    }

    // step 1: creation of a document-object
    Document document = new Document();

    try {

        // step 2: creation of the writer
        FileOutputStream fos = createOutputFile();
        if (fos == null) {
            return false;
        }
        PdfWriter.getInstance(document, fos);

        // step 3: we open the document
        document.open();

        // step 4: create and add content

        // create and add the header
        Paragraph p1 = new Paragraph(new Paragraph(
                String.format("%s    %s %s, %s", dao.getName(), dao.getMonth(), dao.getDay(), dao.getYear()),
                FontFactory.getFont(FontFactory.HELVETICA, 10)));
        document.add(p1);

        Paragraph p2 = new Paragraph(
                new Paragraph("Team Detail Report", FontFactory.getFont(FontFactory.HELVETICA, 14)));
        p2.setAlignment(Paragraph.ALIGN_CENTER);
        document.add(p2);

        Font headerFont = new Font(Font.FontFamily.TIMES_ROMAN, 12);
        Font detailFont = new Font(Font.FontFamily.TIMES_ROMAN, 10);
        PdfPCell headerCell = new PdfPCell();
        headerCell.setVerticalAlignment(Element.ALIGN_MIDDLE);
        headerCell.setPadding(3);
        headerCell.setBorderWidth(2);

        List<String> teams = dao.getTeams();

        for (String t : teams) {

            List<Wrestler> wrestlers = dao.getWrestlersByTeam(t);
            int count = wrestlers.size();

            // create and add the table
            PdfPTable datatable = new PdfPTable(5);
            int colWidths[] = { 30, 30, 20, 10, 10 }; // percentage
            datatable.setWidths(colWidths);
            datatable.setWidthPercentage(100);
            datatable.getDefaultCell().setPadding(3);
            datatable.getDefaultCell().setBorderWidth(2);
            datatable.getDefaultCell().setHorizontalAlignment(Element.ALIGN_CENTER);

            // The header has the team name and the number of entries
            headerCell.setPhrase(new Phrase(t, headerFont));
            headerCell.setColspan(3);
            datatable.addCell(headerCell);

            headerCell.setPhrase(new Phrase(String.format("Entries : %d", count), headerFont));
            headerCell.setColspan(2);
            datatable.addCell(headerCell);

            datatable.setHeaderRows(1); // this is the end of the table header

            datatable.getDefaultCell().setBorderWidth(1);
            datatable.getDefaultCell().setVerticalAlignment(Element.ALIGN_MIDDLE);

            int i = 0;
            for (Wrestler w : wrestlers) {
                if ((i++ % 2) == 0) {
                    datatable.getDefaultCell().setGrayFill(0.9f);
                } else {
                    datatable.getDefaultCell().setGrayFill(1);
                }

                datatable.getDefaultCell().setHorizontalAlignment(Element.ALIGN_LEFT);
                datatable.addCell(new Phrase(w.getFirstName(), detailFont));
                datatable.addCell(new Phrase(w.getLastName(), detailFont));
                datatable.addCell(new Phrase(w.getClassification(), detailFont));
                datatable.getDefaultCell().setHorizontalAlignment(Element.ALIGN_CENTER);
                datatable.addCell(new Phrase(w.getAgeDivision(), detailFont));
                datatable.addCell(new Phrase(w.getWeightClass(), detailFont));
            }

            datatable.setSpacingBefore(5f);
            datatable.setSpacingAfter(15f);
            document.add(datatable);
        }

    } catch (DocumentException de) {
        logger.error("Document Exception", de);
        return false;
    }

    // step 5: we close the document
    document.close();

    return true;
}

From source file:bouttime.report.weighin.WeighInReport.java

License:Open Source License

/**
 * Generate a report of the entries in the tournament for weigh-in.
 * @param sections List of sections for the report.  Each section will start
 *     on a new page./*from w  ww . j  ava2s. c o  m*/
 * @param headerString String to be used for the header of each page of the report.
 * @return True if the report was generated.
 */
public static boolean doReport(List<List<Wrestler>> sections, String headerString) {
    // step 1: creation of a document-object
    Document document = new Document();

    try {

        // step 2: creation of the writer
        FileOutputStream fos = createOutputFile();
        if (fos == null) {
            return false;
        }
        PdfWriter.getInstance(document, fos);

        // step 3: we open the document
        document.open();

        // step 4: create and add content

        // create and add the header
        if (headerString != null) {
            Paragraph p1 = new Paragraph(
                    new Paragraph(headerString, FontFactory.getFont(FontFactory.HELVETICA, 10)));
            document.add(p1);
        }

        Font detailFont = new Font(Font.FontFamily.TIMES_ROMAN, 10);

        for (List<Wrestler> wrestlers : sections) {
            // create and add the table
            PdfPTable datatable = new PdfPTable(7);
            int colWidths[] = { 20, 20, 20, 10, 10, 10, 10 }; // percentage
            datatable.setWidths(colWidths);
            datatable.setWidthPercentage(100);
            datatable.getDefaultCell().setPadding(3);
            datatable.getDefaultCell().setBorderWidth(2);
            datatable.getDefaultCell().setHorizontalAlignment(Element.ALIGN_CENTER);

            //datatable.setHeaderRows(1); // this is the end of the table header

            datatable.getDefaultCell().setBorderWidth(1);
            datatable.getDefaultCell().setVerticalAlignment(Element.ALIGN_MIDDLE);

            int i = 0;
            for (Wrestler w : wrestlers) {
                if ((i++ % 2) == 0) {
                    datatable.getDefaultCell().setGrayFill(0.9f);
                } else {
                    datatable.getDefaultCell().setGrayFill(1);
                }

                datatable.getDefaultCell().setHorizontalAlignment(Element.ALIGN_LEFT);
                datatable.addCell(new Phrase(w.getLastName(), detailFont));
                datatable.addCell(new Phrase(w.getFirstName(), detailFont));
                datatable.addCell(new Phrase(w.getTeamName(), detailFont));
                datatable.addCell(new Phrase(w.getClassification(), detailFont));
                datatable.getDefaultCell().setHorizontalAlignment(Element.ALIGN_CENTER);
                datatable.addCell(new Phrase(w.getAgeDivision(), detailFont));
                datatable.addCell(new Phrase(w.getWeightClass(), detailFont));
                datatable.addCell(new Phrase()); // actual weight
            }

            datatable.setSpacingBefore(5f);
            datatable.setSpacingAfter(15f);
            document.add(datatable);
            document.newPage();
        }

    } catch (DocumentException de) {
        logger.error("Document Exception", de);
        return false;
    }

    // step 5: we close the document
    document.close();

    return true;
}

From source file:br.com.bikefood.model.PdfGenerator.java

public File menuGenerator(File a, Bikefood bike) throws BadElementException, IOException {
    try {//ww w . jav  a2  s  . co  m
        Document doc = new Document();
        PdfWriter.getInstance(doc, new FileOutputStream(a.getAbsolutePath()));

        doc.open();

        doc.add(new Paragraph("Cardpio do Bike Food: " + bike.getName()));
        doc.add(new Paragraph("Especialidade em: " + bike.getType().getType()));
        doc.add(new Paragraph("\n"));
        doc.add(new Paragraph("\n"));

        Dal dal = new Dal();

        List<Product> cardapio = dal.getProducts((int) bike.getId());

        for (int x = 0; x < cardapio.size(); x++) {

            String image;

            if (cardapio.get(x).getImg().contains("br/com/bikefood")) {
                image = "C:\\Users\\Aluno\\Documents\\NetBeansProjects\\Bikefood\\src\\br\\com\\bikefood\\image\\product.png";

            } else {
                image = cardapio.get(x).getImg();

            }

            Image img = Image.getInstance(image);
            img.scaleAbsolute(125, 125);
            doc.add(img);

            doc.add(new Paragraph("Nome do Prato: " + cardapio.get(x).getName()));
            doc.add(new Paragraph("Preo do Prato: " + cardapio.get(x).getPrice()));
            doc.add(new Paragraph("Ingredientes: " + cardapio.get(x).getIngredients()));
            doc.add(new Paragraph("\n"));
            System.out.println(cardapio.get(x).getImg());
        }

        doc.close();

        return a;

    } catch (FileNotFoundException ex) {
        Logger.getLogger(PdfGenerator.class.getName()).log(Level.SEVERE, null, ex);
    } catch (DocumentException ee) {
        Logger.getLogger(PdfGenerator.class.getName()).log(Level.SEVERE, null, ee);
    }

    return a;
}

From source file:br.com.gerarpdf.view.ViewGerarPDF.java

private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton1ActionPerformed
    // TODO add your handling code here:

    Document document = new Document();

    try {/*from   ww w.  j  ava  2s  . co m*/
        PdfWriter.getInstance(document, new FileOutputStream("documento.pdf"));

        document.open();
        document.add(new Paragraph("#Teste_GERARDO_PDF https://github.com/Heverton"));

    } catch (DocumentException ex) {
        System.out.println("Error:" + ex);
    } catch (FileNotFoundException ex) {
        System.out.println("Error:" + ex);
    } finally {
        document.close();
    }

    try {
        Desktop.getDesktop().open(new File("documento.pdf"));
    } catch (IOException ex) {
        System.out.println("Error:" + ex);
    }

}

From source file:br.com.tcc.relat.BalancoAnual.java

public static void main(String[] args) throws Exception {
    /* Create Connection objects */
    Connection con = new ConnectionFactory().getConnection();
    Statement stmt = con.createStatement();
    /* Define the SQL query */
    ResultSet query = stmt.executeQuery(
            "SELECT produto.ID, produto.descricao, produto.numEstoque, produto.numEstoqueCritico, unidade.descricao, fornecedor.nome FROM produto as produto INNER JOIN unidade as unidade ON (produto.idUnidade = unidade.id) INNER JOIN fornecedor as fornecedor ON (produto.idFornecedor = fornecedor.id)");
    /* Step-2: Initialize PDF documents - logical objects */
    Document PDFLogReport = new Document();
    //PdfWriter.getInstance(PDFLogReport, new FileOutputStream("C:\\Users\\Leonardo P Souza\\Desktop\\Relat\\Balanco.pdf"));
    PdfWriter.getInstance(PDFLogReport, new FileOutputStream("../../RelatBalanco.pdf"));
    PDFLogReport.open();/*w  ww . jav  a2  s . co  m*/

    Paragraph cabecalho = new Paragraph(
            "AGRO EMPRESARIAL - SISTEMA DE GERENCIAMENTO\n" + "RUA GONALVES CHAVES, 602 PELOTAS/RS\n"
                    + "FONE:(53) 3232-3232 BAIRRO: CENTRO\n" + "CNPJ: 12.345.678/1011-12\n\n\n");
    cabecalho.setAlignment(Element.ALIGN_CENTER);
    PDFLogReport.add(cabecalho);
    //we have two columns in our table  
    PdfPTable LogTable = new PdfPTable(6);

    // Ttulo para a tabela
    Paragraph tableHeader = new Paragraph("Balano Anual");

    PdfPCell header = new PdfPCell(tableHeader);

    // Definindo que o header vai ocupar as 2 colunas
    header.setColspan(6);
    // Definindo alinhamento do header
    header.setHorizontalAlignment(Paragraph.ALIGN_CENTER);
    // Adicionando o header  tabela

    Font fonte = new Font(Font.FontFamily.HELVETICA, 7, Font.BOLD, BaseColor.BLACK);
    Font fonteDados = new Font(Font.FontFamily.TIMES_ROMAN, 6, Font.NORMAL, BaseColor.BLACK);
    LogTable.addCell(header);
    LogTable.addCell(new Paragraph("Produto ", fonte));
    LogTable.addCell(new Paragraph("Fornecedor", fonte));
    LogTable.addCell(new Paragraph("Unidade", fonte));
    LogTable.addCell(new Paragraph("Estoque", fonte));
    LogTable.addCell(new Paragraph("Estoque Crtico", fonte));
    LogTable.addCell(new Paragraph("Quantidade", fonte));
    //create a cell object  
    //         PdfPCell table_cell;  
    while (query.next()) {
        String produto = query.getString("descricao");
        LogTable.addCell(new Paragraph(produto, fonteDados));
        String fornecedor = query.getString("nome");
        LogTable.addCell(new Paragraph(fornecedor, fonteDados));
        String unidade = query.getString("unidade.descricao");
        LogTable.addCell(new Paragraph(unidade, fonteDados));
        String estoque = query.getString("numEstoque");
        LogTable.addCell(new Paragraph(estoque, fonteDados));
        String critico = query.getString("numEstoqueCritico");
        LogTable.addCell(new Paragraph(critico, fonteDados));
        LogTable.addCell(new Paragraph("       ", fonteDados));
    }
    /* Attach report table to PDF */
    PDFLogReport.add(LogTable);
    PDFLogReport.close();
    /* Close all DB related objects */
    query.close();
    stmt.close();
    con.close();
    String file;
    file = "C:\\Users\\Leonardo P Souza\\Desktop\\Relat\\Balanco.pdf";
    //Runtime.getRuntime().exec("rundll32 SHELL32.DLL,ShellExec_RunDLL " + file);

    File pdf = new File("../../RelatBalanco.pdf");
    try {
        Desktop.getDesktop().open(pdf);
    } catch (Exception ex) {
        ex.printStackTrace();
        JOptionPane.showMessageDialog(null, "Erro ao abrir relatrio: " + ex);
    }
}

From source file:br.com.tcc.relat.ConsultarVendas.java

public void relat(String sql) throws SQLException, DocumentException, FileNotFoundException, IOException {
    /* Create Connection objects */
    Connection con = new ConnectionFactory().getConnection();
    Statement stmt = con.createStatement();
    /* Define the SQL query */
    //         sql = "SELECT cliente.nome, funcionario.nome, tipopagamento.descricao, vendaregistro.dataVenda, vendaregistro.vlrSugerido, vendaregistro.totalVenda, vendaregistro.parcela, vendaregistro.1vencimento, vendaregistro.ativo FROM vendaregistro as vendaregistro INNER JOIN cliente as cliente ON (vendaregistro.idCliente = cliente.id) \n" +
    //"INNER JOIN funcionario as funcionario ON (vendaregistro.idFuncionario = funcionario.id) INNER JOIN tipopagamento as tipopagamento ON (vendaregistro.idTipoPagamento = tipopagamento.id) WHERE  dataVenda = CURRENT_DATE";
    ResultSet query = stmt.executeQuery(sql);
    /* Step-2: Initialize PDF documents - logical objects */
    Document PDFLogReport = new Document();
    PdfWriter.getInstance(PDFLogReport, new FileOutputStream("../../VendaDoDia.pdf"));
    PDFLogReport.open();/*from  w  w  w .j a  v a  2  s .c  o m*/

    Paragraph cabecalho = new Paragraph(
            "AGRO EMPRESARIAL - SISTEMA DE GERENCIAMENTO\n" + "RUA GONALVES CHAVES, 602 PELOTAS/RS\n"
                    + "FONE:(53) 3232-3232 BAIRRO: CENTRO\n" + "CNPJ: 12.345.678/1011-12\n\n\n");
    cabecalho.setAlignment(Element.ALIGN_CENTER);
    PDFLogReport.add(cabecalho);
    //we have two columns in our table  
    PdfPTable LogTable = new PdfPTable(9);

    // Ttulo para a tabela
    Paragraph tableHeader = new Paragraph("Relatrio Venda do Dia");

    PdfPCell header = new PdfPCell(tableHeader);

    // Definindo que o header vai ocupar as 2 colunas
    header.setColspan(9);
    // Definindo alinhamento do header
    header.setHorizontalAlignment(Paragraph.ALIGN_CENTER);
    // Adicionando o header  tabela

    Font fonte = new Font(Font.FontFamily.HELVETICA, 7, Font.BOLD, BaseColor.BLACK);
    Font fonteDados = new Font(Font.FontFamily.TIMES_ROMAN, 6, Font.NORMAL, BaseColor.BLACK);

    LogTable.addCell(header);
    LogTable.addCell(new Paragraph("Cliente ", fonte));
    LogTable.addCell(new Paragraph("Funcionario", fonte));
    LogTable.addCell(new Paragraph("Tipo Pagamento", fonte));
    LogTable.addCell(new Paragraph("Data Compra", fonte));
    LogTable.addCell(new Paragraph("Valor Sugerido", fonte));
    LogTable.addCell(new Paragraph("Valor da Venda", fonte));
    LogTable.addCell(new Paragraph("Parcelas", fonte));
    LogTable.addCell(new Paragraph("1 Vencimento", fonte));
    LogTable.addCell(new Paragraph("Status da Compra", fonte));
    //create a cell object  
    //         PdfPCell table_cell;  
    while (query.next()) {
        String cliente = query.getString("cliente.nome");
        LogTable.addCell(new Paragraph(cliente, fonteDados));
        String funcionario = query.getString("funcionario.nome");
        LogTable.addCell(new Paragraph(funcionario, fonteDados));
        String tipoPagamento = query.getString("tipopagamento.descricao");
        LogTable.addCell(new Paragraph(tipoPagamento, fonteDados));
        String dataVenda = query.getString("dataVenda");
        LogTable.addCell(new Paragraph(dataVenda, fonteDados));
        String vlrSugerido = query.getString("vlrSugerido");
        LogTable.addCell(new Paragraph(vlrSugerido, fonteDados));
        String totalVenda = query.getString("totalVenda");
        LogTable.addCell(new Paragraph(totalVenda, fonteDados));
        String parcela = query.getString("parcela");
        LogTable.addCell(new Paragraph(parcela, fonteDados));
        String vencimento = query.getString("1vencimento");
        LogTable.addCell(new Paragraph(vencimento, fonteDados));
        String ativo = query.getString("ativo");
        LogTable.addCell(new Paragraph(ativo, fonteDados));
    }
    /* Attach report table to PDF */
    PDFLogReport.add(LogTable);
    PDFLogReport.close();
    /* Close all DB related objects */
    query.close();
    stmt.close();
    con.close();
    String file;
    file = "C:\\Users\\Leonardo P Souza\\Desktop\\Relat\\VendaDoDia.pdf";
    //Runtime.getRuntime().exec("rundll32 SHELL32.DLL,ShellExec_RunDLL " + file);
    File pdf = new File("../../VendaDoDia.pdf");
    try {
        Desktop.getDesktop().open(pdf);
    } catch (Exception ex) {
        ex.printStackTrace();
        JOptionPane.showMessageDialog(null, "Erro ao abrir relatrio: " + ex);
    }
}

From source file:br.com.tcc.relat.MaisVendidos.java

public static void main(String[] args) throws Exception {
    /* Create Connection objects */
    Connection con = new ConnectionFactory().getConnection();
    Statement stmt = con.createStatement();
    /* Define the SQL query */
    ResultSet query = stmt.executeQuery(
            "SELECT produto.descricao , SUM(vendadetalhe.qtde) AS qtde FROM produto INNER JOIN vendadetalhe"
                    + " ON produto.ID = vendadetalhe.idProduto GROUP BY produto.descricao"
                    + " ORDER BY qtde DESC LIMIT 30");
    /* Step-2: Initialize PDF documents - logical objects */
    Document PDFLogReport = new Document();
    PdfWriter.getInstance(PDFLogReport, new FileOutputStream("../../MaisVendidos.pdf"));
    PDFLogReport.open();/*from w w  w.  j  av  a 2s.  c om*/

    Paragraph cabecalho = new Paragraph(
            "AGRO EMPRESARIAL - SISTEMA DE GERENCIAMENTO\n" + "RUA GONALVES CHAVES, 602 PELOTAS/RS\n"
                    + "FONE:(53) 3232-3232 BAIRRO: CENTRO\n" + "CNPJ: 12.345.678/1011-12\n\n\n");
    cabecalho.setAlignment(Element.ALIGN_CENTER);
    PDFLogReport.add(cabecalho);
    //we have two columns in our table  
    PdfPTable LogTable = new PdfPTable(2);

    // Ttulo para a tabela
    Paragraph tableHeader = new Paragraph("30 Mais vendidos");

    PdfPCell header = new PdfPCell(tableHeader);

    // Definindo que o header vai ocupar as 2 colunas
    header.setColspan(2);
    // Definindo alinhamento do header
    header.setHorizontalAlignment(Paragraph.ALIGN_CENTER);
    // Adicionando o header  tabela

    Font fonte = new Font(Font.FontFamily.HELVETICA, 14, Font.BOLD, BaseColor.BLACK);

    LogTable.addCell(header);
    LogTable.addCell(new Paragraph("Produto ", fonte));
    LogTable.addCell(new Paragraph("Vendidos", fonte));
    //create a cell object  
    //         PdfPCell table_cell;  
    while (query.next()) {
        String produto = query.getString("descricao");
        LogTable.addCell(new Paragraph(produto));
        String quantidade = query.getString("qtde");
        LogTable.addCell(new Paragraph(quantidade));
    }
    /* Attach report table to PDF */
    PDFLogReport.add(LogTable);
    PDFLogReport.close();
    /* Close all DB related objects */
    query.close();
    stmt.close();
    con.close();
    String file;
    file = "C:\\Users\\Leonardo P Souza\\Desktop\\Relat\\MaisVendidos.pdf";
    //Runtime.getRuntime().exec("rundll32 SHELL32.DLL,ShellExec_RunDLL " + file);
    File pdf = new File("../../MaisVendidos.pdf");
    try {
        Desktop.getDesktop().open(pdf);
    } catch (Exception ex) {
        ex.printStackTrace();
        JOptionPane.showMessageDialog(null, "Erro ao abrir relatrio: " + ex);
    }
}

From source file:br.com.tcc.relat.ProdutosRelat.java

public static void main(String[] args) throws Exception {
    /* Create Connection objects */
    Connection con = new ConnectionFactory().getConnection();
    Statement stmt = con.createStatement();
    /* Define the SQL query */
    ResultSet query = stmt.executeQuery(
            "SELECT produto.ID, produto.descricao, produto.vlrCompra, produto.vlrVenda, produto.numEstoque, produto.numEstoqueCritico, unidade.descricao, fornecedor.nome FROM produto as produto INNER JOIN unidade as unidade ON (produto.idUnidade = unidade.id) INNER JOIN fornecedor as fornecedor ON (produto.idFornecedor = fornecedor.id)");
    /* Step-2: Initialize PDF documents - logical objects */
    Document PDFLogReport = new Document();
    PdfWriter.getInstance(PDFLogReport, new FileOutputStream("../../TesteProdutos.pdf"));
    PDFLogReport.open();/*  ww  w.  j  av  a  2s .  co  m*/

    Paragraph cabecalho = new Paragraph(
            "AGRO EMPRESARIAL - SISTEMA DE GERENCIAMENTO\n" + "RUA GONALVES CHAVES, 602 PELOTAS/RS\n"
                    + "FONE:(53) 3232-3232 BAIRRO: CENTRO\n" + "CNPJ: 12.345.678/1011-12\n\n\n");
    cabecalho.setAlignment(Element.ALIGN_CENTER);
    PDFLogReport.add(cabecalho);
    //we have two columns in our table  
    PdfPTable LogTable = new PdfPTable(7);

    // Ttulo para a tabela
    Paragraph tableHeader = new Paragraph("Relatrio de Produtos");

    PdfPCell header = new PdfPCell(tableHeader);

    // Definindo que o header vai ocupar as 2 colunas
    header.setColspan(7);
    // Definindo alinhamento do header
    header.setHorizontalAlignment(Paragraph.ALIGN_CENTER);
    // Adicionando o header  tabela

    Font fonte = new Font(Font.FontFamily.HELVETICA, 7, Font.BOLD, BaseColor.BLACK);
    Font fonteDados = new Font(Font.FontFamily.TIMES_ROMAN, 6, Font.NORMAL, BaseColor.BLACK);
    LogTable.addCell(header);
    LogTable.addCell(new Paragraph("Produto ", fonte));
    LogTable.addCell(new Paragraph("Fornecedor", fonte));
    LogTable.addCell(new Paragraph("Unidade", fonte));
    LogTable.addCell(new Paragraph("Valor Compra", fonte));
    LogTable.addCell(new Paragraph("Valor Venda", fonte));
    LogTable.addCell(new Paragraph("Estoque", fonte));
    LogTable.addCell(new Paragraph("Estoque Crtico", fonte));
    //create a cell object  
    //         PdfPCell table_cell;  
    while (query.next()) {
        String produto = query.getString("descricao");
        LogTable.addCell(new Paragraph(produto, fonteDados));
        String fornecedor = query.getString("nome");
        LogTable.addCell(new Paragraph(fornecedor, fonteDados));
        String unidade = query.getString("unidade.descricao");
        LogTable.addCell(new Paragraph(unidade, fonteDados));
        String compra = query.getString("vlrCompra");
        LogTable.addCell(new Paragraph(compra, fonteDados));
        String venda = query.getString("vlrVenda");
        LogTable.addCell(new Paragraph(venda, fonteDados));
        String estoque = query.getString("numEstoque");
        LogTable.addCell(new Paragraph(estoque, fonteDados));
        String critico = query.getString("numEstoqueCritico");
        LogTable.addCell(new Paragraph(critico, fonteDados));
    }
    /* Attach report table to PDF */
    PDFLogReport.add(LogTable);
    PDFLogReport.close();
    /* Close all DB related objects */
    query.close();
    stmt.close();
    con.close();
    String file;
    file = "C:\\Users\\Leonardo P Souza\\Desktop\\Relat\\TesteProdutos.pdf";
    //Runtime.getRuntime().exec("rundll32 SHELL32.DLL,ShellExec_RunDLL " + file);
    File pdf = new File("../../TesteProdutos.pdf");
    try {
        Desktop.getDesktop().open(pdf);
    } catch (Exception ex) {
        ex.printStackTrace();
        JOptionPane.showMessageDialog(null, "Erro ao abrir relatrio: " + ex);
    }
}

From source file:br.com.tcc.relat.VendasDoAno.java

public static void main(String[] args) throws Exception {
    /* Create Connection objects */
    Connection con = new ConnectionFactory().getConnection();
    Statement stmt = con.createStatement();
    /* Define the SQL query */
    ResultSet query = stmt.executeQuery(
            "SELECT YEAR(dataVenda) as ano, SUM(totalVenda) as total FROM vendaregistro GROUP BY ano");
    /* Step-2: Initialize PDF documents - logical objects */
    Document PDFLogReport = new Document();
    PdfWriter.getInstance(PDFLogReport, new FileOutputStream("../../VendaDoAno.pdf"));
    PDFLogReport.open();/*from   ww  w  .  ja v a  2  s .co  m*/

    Paragraph cabecalho = new Paragraph(
            "AGRO EMPRESARIAL - SISTEMA DE GERENCIAMENTO\n" + "RUA GONALVES CHAVES, 602 PELOTAS/RS\n"
                    + "FONE:(53) 3232-3232 BAIRRO: CENTRO\n" + "CNPJ: 12.345.678/1011-12\n\n\n");
    cabecalho.setAlignment(Element.ALIGN_CENTER);
    PDFLogReport.add(cabecalho);
    //we have two columns in our table  
    PdfPTable LogTable = new PdfPTable(2);

    // Ttulo para a tabela
    Paragraph tableHeader = new Paragraph("Relatrio Anual");

    PdfPCell header = new PdfPCell(tableHeader);

    // Definindo que o header vai ocupar as 2 colunas
    header.setColspan(2);
    // Definindo alinhamento do header
    header.setHorizontalAlignment(Paragraph.ALIGN_CENTER);
    // Adicionando o header  tabela

    Font fonte = new Font(Font.FontFamily.HELVETICA, 7, Font.BOLD, BaseColor.BLACK);
    Font fonteDados = new Font(Font.FontFamily.TIMES_ROMAN, 6, Font.NORMAL, BaseColor.BLACK);

    LogTable.addCell(header);
    LogTable.addCell(new Paragraph("Ano ", fonte));
    LogTable.addCell(new Paragraph("Total", fonte));
    //create a cell object  
    //         PdfPCell table_cell;  
    while (query.next()) {
        String ano = query.getString("ano");
        LogTable.addCell(new Paragraph(ano, fonteDados));
        String total = query.getString("total");
        LogTable.addCell(new Paragraph(total, fonteDados));
    }
    /* Attach report table to PDF */
    PDFLogReport.add(LogTable);
    PDFLogReport.close();
    /* Close all DB related objects */
    query.close();
    stmt.close();
    con.close();
    String file;
    file = "C:\\Users\\Leonardo P Souza\\Desktop\\Relat\\VendaDoAno.pdf";
    //Runtime.getRuntime().exec("rundll32 SHELL32.DLL,ShellExec_RunDLL " + file);
    File pdf = new File("../../VendaDoAno.pdf");
    try {
        Desktop.getDesktop().open(pdf);
    } catch (Exception ex) {
        ex.printStackTrace();
        JOptionPane.showMessageDialog(null, "Erro ao abrir relatrio: " + ex);
    }
}