Example usage for com.itextpdf.text Font NORMAL

List of usage examples for com.itextpdf.text Font NORMAL

Introduction

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

Prototype

int NORMAL

To view the source code for com.itextpdf.text Font NORMAL.

Click Source Link

Document

this is a possible style.

Usage

From source file:utils.PrintUtils.java

public static void printInsolventStudent(Annee annee, List<Solvabilite> eleves, Classe classe, Tranche tranche)
        throws Exception {
    SimpleDateFormat sdf = new SimpleDateFormat("dd-MM-yyyy");
    String fichier = "liste_des_insolvables" + "_" + tranche.getNom() + "_" + classe.getNom() + ".pdf";
    Document rapport = new Document();
    PdfWriter.getInstance(rapport, new FileOutputStream(
            Utilitaires.path + "/" + Utilitaires.repertoireParDefautInsolvavle + "/" + fichier));
    rapport.open();//w  w  w  .j  a va 2s. co  m

    rapport.add(new Paragraph("Anne Scolaire : " + annee.getCode() + " / " + annee.getCodefin()));
    rapport.add(new Paragraph("Classe : " + classe.getNom()));
    rapport.add(new Paragraph("Motif : " + tranche.getNom()));
    rapport.add(new Paragraph("Montant : " + tranche.getPrix()));
    rapport.add(new Paragraph("Echance : " + sdf.format(tranche.getDatefin())));
    rapport.add(new Paragraph("  "));

    PdfPTable table = new PdfPTable(5);
    table.setWidthPercentage(100);

    table.addCell(PrintUtils.createPdfPCell("Liste des lves insolvable ", 5, true,
            new Font(Font.FontFamily.TIMES_ROMAN, 11, Font.NORMAL)));

    table.addCell(PrintUtils.createPdfPCell("Matricule", true,
            new Font(Font.FontFamily.TIMES_ROMAN, 11, Font.NORMAL)));
    table.addCell(
            PrintUtils.createPdfPCell("Nom", true, new Font(Font.FontFamily.TIMES_ROMAN, 11, Font.NORMAL)));
    table.addCell(
            PrintUtils.createPdfPCell("Prnom", true, new Font(Font.FontFamily.TIMES_ROMAN, 11, Font.NORMAL)));
    table.addCell(PrintUtils.createPdfPCell("Pay (Fcfa)", true,
            new Font(Font.FontFamily.TIMES_ROMAN, 11, Font.NORMAL)));
    table.addCell(PrintUtils.createPdfPCell("Reste (Fcfa)", true,
            new Font(Font.FontFamily.TIMES_ROMAN, 11, Font.NORMAL)));

    for (Solvabilite object : eleves) {
        table.addCell(PrintUtils.createPdfPCell("" + object.getEleve().getMatricule(), true,
                new Font(Font.FontFamily.TIMES_ROMAN, 11, Font.NORMAL)));
        table.addCell(PrintUtils.createPdfPCell("" + object.getEleve().getNom(), true,
                new Font(Font.FontFamily.TIMES_ROMAN, 11, Font.NORMAL)));
        table.addCell(PrintUtils.createPdfPCell("" + object.getEleve().getPrenom(), true,
                new Font(Font.FontFamily.TIMES_ROMAN, 11, Font.NORMAL)));
        table.addCell(PrintUtils.createPdfPCell("" + object.getPaye(), true,
                new Font(Font.FontFamily.TIMES_ROMAN, 11, Font.NORMAL)));
        table.addCell(PrintUtils.createPdfPCell("" + object.getReste(), true,
                new Font(Font.FontFamily.TIMES_ROMAN, 11, Font.NORMAL)));
    }
    rapport.add(table);
    rapport.close();

}

From source file:utils.PrintUtils.java

public static void printInsolventStudent(Annee annee, List<Solvabilite> eleves, Classe classe,
        Catanneeprix catanneeprix) throws Exception {

    String fichier = "liste_des_insolvables_" + classe.getNom() + ".pdf";
    Document rapport = new Document();
    PdfWriter.getInstance(rapport, new FileOutputStream(
            Utilitaires.path + "/" + Utilitaires.repertoireParDefautInsolvavle + "/" + fichier));
    rapport.open();/*from w  w  w .ja  v  a2s  .co  m*/

    rapport.add(new Paragraph("Anne Scolaire : " + annee.getCode() + " / " + annee.getCodefin()));
    rapport.add(new Paragraph("Classe : " + classe.getNom()));
    rapport.add(new Paragraph("Motif : Toutes les tranches"));
    rapport.add(new Paragraph("Montant : " + catanneeprix.getPrix()));
    rapport.add(new Paragraph("Echance : "));
    rapport.add(new Paragraph("  "));

    PdfPTable table = new PdfPTable(5);
    table.setWidthPercentage(100);
    table.addCell(PrintUtils.createPdfPCell("Liste des lves insolvable", 5, true,
            new Font(Font.FontFamily.TIMES_ROMAN, 11, Font.NORMAL)));

    table.addCell(PrintUtils.createPdfPCell("Matricule", true,
            new Font(Font.FontFamily.TIMES_ROMAN, 11, Font.NORMAL)));
    table.addCell(
            PrintUtils.createPdfPCell("Nom", true, new Font(Font.FontFamily.TIMES_ROMAN, 11, Font.NORMAL)));
    table.addCell(
            PrintUtils.createPdfPCell("Prnom", true, new Font(Font.FontFamily.TIMES_ROMAN, 11, Font.NORMAL)));
    table.addCell(PrintUtils.createPdfPCell("Pay (Fcfa)", true,
            new Font(Font.FontFamily.TIMES_ROMAN, 11, Font.NORMAL)));
    table.addCell(PrintUtils.createPdfPCell("Reste (Fcfa)", true,
            new Font(Font.FontFamily.TIMES_ROMAN, 11, Font.NORMAL)));

    for (Solvabilite object : eleves) {
        table.addCell(PrintUtils.createPdfPCell("" + object.getEleve().getMatricule(), true,
                new Font(Font.FontFamily.TIMES_ROMAN, 11, Font.NORMAL)));
        table.addCell(PrintUtils.createPdfPCell("" + object.getEleve().getNom(), true,
                new Font(Font.FontFamily.TIMES_ROMAN, 11, Font.NORMAL)));
        table.addCell(PrintUtils.createPdfPCell("" + object.getEleve().getPrenom(), true,
                new Font(Font.FontFamily.TIMES_ROMAN, 11, Font.NORMAL)));
        table.addCell(PrintUtils.createPdfPCell("" + object.getPaye(), true,
                new Font(Font.FontFamily.TIMES_ROMAN, 11, Font.NORMAL)));
        table.addCell(PrintUtils.createPdfPCell("" + object.getReste(), true,
                new Font(Font.FontFamily.TIMES_ROMAN, 11, Font.NORMAL)));
    }
    rapport.add(table);
    rapport.close();

}

From source file:utils.PrintUtils.java

public static void printSolventStudent(Annee annee, List<Solvabilite> eleves, Classe classe, Tranche tranche)
        throws Exception {
    SimpleDateFormat sdf = new SimpleDateFormat("dd-MM-yyyy");
    String fichier = "liste_des_solvables" + "_" + tranche.getNom() + "_" + classe.getNom() + ".pdf";
    Document rapport = new Document();
    PdfWriter.getInstance(rapport, new FileOutputStream(
            Utilitaires.path + "/" + Utilitaires.repertoireParDefautSolvable + "/" + fichier));
    rapport.open();/*www  .j a va 2 s  . c  om*/

    rapport.add(new Paragraph("Anne Scolaire : " + annee.getCode() + " / " + annee.getCodefin()));
    rapport.add(new Paragraph("Classe : " + classe.getNom()));
    rapport.add(new Paragraph("Motif : " + tranche.getNom()));
    rapport.add(new Paragraph("Montant : " + tranche.getPrix()));
    rapport.add(new Paragraph("Echance : " + sdf.format(tranche.getDatefin())));
    rapport.add(new Paragraph("  "));

    PdfPTable table = new PdfPTable(5);
    table.setWidthPercentage(100);

    table.addCell(PrintUtils.createPdfPCell("Liste des lves solvable ", 5, true,
            new Font(Font.FontFamily.TIMES_ROMAN, 11, Font.NORMAL)));

    table.addCell(PrintUtils.createPdfPCell("Matricule", true,
            new Font(Font.FontFamily.TIMES_ROMAN, 11, Font.NORMAL)));
    table.addCell(
            PrintUtils.createPdfPCell("Nom", true, new Font(Font.FontFamily.TIMES_ROMAN, 11, Font.NORMAL)));
    table.addCell(
            PrintUtils.createPdfPCell("Prnom", true, new Font(Font.FontFamily.TIMES_ROMAN, 11, Font.NORMAL)));
    table.addCell(PrintUtils.createPdfPCell("Pay (Fcfa)", true,
            new Font(Font.FontFamily.TIMES_ROMAN, 11, Font.NORMAL)));
    table.addCell(PrintUtils.createPdfPCell("Reste (Fcfa)", true,
            new Font(Font.FontFamily.TIMES_ROMAN, 11, Font.NORMAL)));

    for (Solvabilite object : eleves) {
        table.addCell(PrintUtils.createPdfPCell("" + object.getEleve().getMatricule(), true,
                new Font(Font.FontFamily.TIMES_ROMAN, 11, Font.NORMAL)));
        table.addCell(PrintUtils.createPdfPCell("" + object.getEleve().getNom(), true,
                new Font(Font.FontFamily.TIMES_ROMAN, 11, Font.NORMAL)));
        table.addCell(PrintUtils.createPdfPCell("" + object.getEleve().getPrenom(), true,
                new Font(Font.FontFamily.TIMES_ROMAN, 11, Font.NORMAL)));
        table.addCell(PrintUtils.createPdfPCell("" + object.getPaye(), true,
                new Font(Font.FontFamily.TIMES_ROMAN, 11, Font.NORMAL)));
        table.addCell(PrintUtils.createPdfPCell("" + object.getReste(), true,
                new Font(Font.FontFamily.TIMES_ROMAN, 11, Font.NORMAL)));
    }
    rapport.add(table);
    rapport.close();

}

From source file:utils.PrintUtils.java

public static void printSolventStudent(Annee annee, List<Solvabilite> eleves, Classe classe,
        Catanneeprix catanneeprix) throws Exception {

    String fichier = "liste_des_solvables_" + classe.getNom() + ".pdf";
    Document rapport = new Document();
    PdfWriter.getInstance(rapport, new FileOutputStream(
            Utilitaires.path + "/" + Utilitaires.repertoireParDefautSolvable + "/" + fichier));
    rapport.open();/*from  w w w .j a v a  2s.c o  m*/

    rapport.add(new Paragraph("Anne Scolaire : " + annee.getCode() + " / " + annee.getCodefin()));
    rapport.add(new Paragraph("Classe : " + classe.getNom()));
    rapport.add(new Paragraph("Motif : Toutes les tranches"));
    rapport.add(new Paragraph("Montant : " + catanneeprix.getPrix()));
    rapport.add(new Paragraph("Echance : "));
    rapport.add(new Paragraph("  "));

    PdfPTable table = new PdfPTable(5);
    table.setWidthPercentage(100);
    table.addCell(PrintUtils.createPdfPCell("Liste des lves insolvable", 5, true,
            new Font(Font.FontFamily.TIMES_ROMAN, 11, Font.NORMAL)));

    table.addCell(PrintUtils.createPdfPCell("Matricule", true,
            new Font(Font.FontFamily.TIMES_ROMAN, 11, Font.NORMAL)));
    table.addCell(
            PrintUtils.createPdfPCell("Nom", true, new Font(Font.FontFamily.TIMES_ROMAN, 11, Font.NORMAL)));
    table.addCell(
            PrintUtils.createPdfPCell("Prnom", true, new Font(Font.FontFamily.TIMES_ROMAN, 11, Font.NORMAL)));
    table.addCell(PrintUtils.createPdfPCell("Pay (Fcfa)", true,
            new Font(Font.FontFamily.TIMES_ROMAN, 11, Font.NORMAL)));
    table.addCell(PrintUtils.createPdfPCell("Reste (Fcfa)", true,
            new Font(Font.FontFamily.TIMES_ROMAN, 11, Font.NORMAL)));

    for (Solvabilite object : eleves) {
        table.addCell(PrintUtils.createPdfPCell("" + object.getEleve().getMatricule(), true,
                new Font(Font.FontFamily.TIMES_ROMAN, 11, Font.NORMAL)));
        table.addCell(PrintUtils.createPdfPCell("" + object.getEleve().getNom(), true,
                new Font(Font.FontFamily.TIMES_ROMAN, 11, Font.NORMAL)));
        table.addCell(PrintUtils.createPdfPCell("" + object.getEleve().getPrenom(), true,
                new Font(Font.FontFamily.TIMES_ROMAN, 11, Font.NORMAL)));
        table.addCell(PrintUtils.createPdfPCell("" + object.getPaye(), true,
                new Font(Font.FontFamily.TIMES_ROMAN, 11, Font.NORMAL)));
        table.addCell(PrintUtils.createPdfPCell("" + object.getReste(), true,
                new Font(Font.FontFamily.TIMES_ROMAN, 11, Font.NORMAL)));
    }
    rapport.add(table);
    rapport.close();

}

From source file:utils.PrintUtils.java

public static void printLentBook(List<Elevelivreemprunte> list, Annee annee) {
    String file = "documents_empruntes.pdf";
    Document rapport = new Document();
    try {/*from  w ww  . j a  v  a 2s  . c o m*/
        PdfWriter.getInstance(rapport, new FileOutputStream(
                Utilitaires.path + "/" + Utilitaires.repertoireParDocEmpruntes + "/" + file));
        rapport.open();
        PdfPTable table = new PdfPTable(5);

        table.addCell(PrintUtils.createPdfPCell(
                "COLLEGE POZAM , Anne Scolaire " + annee.getCode() + " - " + (annee.getCode() + 1), 5, true,
                new Font(Font.FontFamily.TIMES_ROMAN, 11, Font.NORMAL)));
        table.addCell(PrintUtils.createPdfPCell("Liste des Documents emprunts  la Bibliotheque", 5, true,
                new Font(Font.FontFamily.TIMES_ROMAN, 11, Font.NORMAL)));

        table.addCell(
                PrintUtils.createPdfPCell("Nom", true, new Font(Font.FontFamily.TIMES_ROMAN, 11, Font.NORMAL)));
        table.addCell(PrintUtils.createPdfPCell("Prnom", true,
                new Font(Font.FontFamily.TIMES_ROMAN, 11, Font.NORMAL)));
        table.addCell(PrintUtils.createPdfPCell("Code du livre", true,
                new Font(Font.FontFamily.TIMES_ROMAN, 11, Font.NORMAL)));
        table.addCell(PrintUtils.createPdfPCell("Titre", true,
                new Font(Font.FontFamily.TIMES_ROMAN, 11, Font.NORMAL)));
        table.addCell(PrintUtils.createPdfPCell("Date emprunt", true,
                new Font(Font.FontFamily.TIMES_ROMAN, 11, Font.NORMAL)));

        for (Elevelivreemprunte object : list) {
            table.addCell(PrintUtils.createPdfPCell("" + object.getEleve().getNom(), true, normalFont));
            table.addCell(PrintUtils.createPdfPCell("" + object.getEleve().getPrenom(), true, normalFont));
            table.addCell(PrintUtils.createPdfPCell("" + object.getLivre().getCodeisbn(), true, normalFont));
            table.addCell(PrintUtils.createPdfPCell("" + object.getLivre().getTitre(), true, normalFont));
            table.addCell(PrintUtils.createPdfPCell("" + object.getDateemprunt(), true, normalFont));
        }
        rapport.add(table);
        rapport.close();
    } catch (DocumentException ex) {
        Logger.getLogger(PrintUtils.class.getName()).log(Level.SEVERE, null, ex);
    } catch (FileNotFoundException ex) {
        Logger.getLogger(PrintUtils.class.getName()).log(Level.SEVERE, null, ex);
    }
}

From source file:Valuacion.valuacion.java

private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton1ActionPerformed
     // TODO add your handling code here:
     //h=new Herramientas(user, 0);
     //h.session(sessionPrograma);
     Session session = HibernateUtil.getSessionFactory().openSession();
     try {// www .  ja  v  a2  s .c o  m
         DecimalFormat formatoPorcentaje = new DecimalFormat("#,##0.00");
         DecimalFormat formatoDecimal = new DecimalFormat("####0.0");
         formatoPorcentaje.setMinimumFractionDigits(2);
         session.beginTransaction().begin();
         BaseFont bf = BaseFont.createFont(BaseFont.HELVETICA, BaseFont.WINANSI, BaseFont.NOT_EMBEDDED);
         //Orden ord=buscaApertura();
         PDF reporte = new PDF();
         Date fecha = new Date();
         DateFormat dateFormat = new SimpleDateFormat("dd-MM-yyyyHH-mm-ss");//YYYY-MM-DD HH:MM:SS
         String valor = dateFormat.format(fecha);
         File folder = new File("reportes/" + ord.getIdOrden());
         folder.mkdirs();
         reporte.Abrir(PageSize.LETTER, "Valuacin",
                 "reportes/" + ord.getIdOrden() + "/" + valor + "-valuacion.pdf");
         Font font = new Font(Font.FontFamily.HELVETICA, 7, Font.NORMAL);
         BaseColor contenido = BaseColor.WHITE;
         int centro = Element.ALIGN_CENTER;
         int izquierda = Element.ALIGN_LEFT;
         int derecha = Element.ALIGN_RIGHT;
         float tam[] = new float[] { 15, 15, 60, 140, 14, 14, 14, 14, 14, 14, 25 };
         PdfPTable tabla = reporte.crearTabla(11, tam, 100, Element.ALIGN_LEFT);

         cabecera(reporte, bf, tabla);
         int ren = 0;
         double dm = 0d, cam = 0d, min = 0d, med = 0d, max = 0d, pin = 0d, tot = 0d;
         for (int i = 0; i < t_datos.getRowCount(); i++) {
             if (t_datos.getValueAt(i, 38).toString().compareTo("e") != 0) {
                 double suma = 0d;
                 double v = 0.0d;
                 tabla.addCell(reporte.celda("" + t_datos.getValueAt(i, 10).toString(), font, contenido,
                         izquierda, 0, 1, Rectangle.RECTANGLE));
                 tabla.addCell(reporte.celda(t_datos.getValueAt(i, 11).toString(), font, contenido, izquierda, 0,
                         1, Rectangle.RECTANGLE));
                 tabla.addCell(reporte.celda(t_datos.getValueAt(i, 2).toString(), font, contenido, izquierda, 0,
                         0, Rectangle.RECTANGLE));

                 tabla.addCell(reporte.celda(t_datos.getValueAt(i, 3).toString(), font, contenido, izquierda, 0,
                         0, Rectangle.RECTANGLE));

                 if (t_datos.getValueAt(i, 4) != null) {
                     v = Double.parseDouble(t_datos.getValueAt(i, 4).toString())
                             * Double.parseDouble(t_datos.getValueAt(i, 10).toString());
                     tabla.addCell(
                             reporte.celda(new BigDecimal(v).setScale(2, BigDecimal.ROUND_HALF_UP).toString(),
                                     font, contenido, derecha, 0, 1, Rectangle.RECTANGLE));
                     suma += Double.parseDouble(t_datos.getValueAt(i, 4).toString());
                     dm += v;
                 } else
                     tabla.addCell(reporte.celda("", font, contenido, derecha, 0, 1, Rectangle.RECTANGLE));

                 if (t_datos.getValueAt(i, 8) != null) {
                     v = Double.parseDouble(t_datos.getValueAt(i, 8).toString())
                             * Double.parseDouble(t_datos.getValueAt(i, 10).toString());
                     tabla.addCell(
                             reporte.celda(new BigDecimal(v).setScale(2, BigDecimal.ROUND_HALF_UP).toString(),
                                     font, contenido, derecha, 0, 1, Rectangle.RECTANGLE));
                     suma += Double.parseDouble(t_datos.getValueAt(i, 8).toString());
                     cam += v;
                 } else
                     tabla.addCell(reporte.celda("", font, contenido, derecha, 0, 1, Rectangle.RECTANGLE));

                 if (t_datos.getValueAt(i, 5) != null) {
                     v = Double.parseDouble(t_datos.getValueAt(i, 5).toString())
                             * Double.parseDouble(t_datos.getValueAt(i, 10).toString());
                     tabla.addCell(
                             reporte.celda(new BigDecimal(v).setScale(2, BigDecimal.ROUND_HALF_UP).toString(),
                                     font, contenido, derecha, 0, 1, Rectangle.RECTANGLE));
                     suma += Double.parseDouble(t_datos.getValueAt(i, 5).toString());
                     min += v;
                 } else
                     tabla.addCell(reporte.celda("", font, contenido, derecha, 0, 1, Rectangle.RECTANGLE));

                 if (t_datos.getValueAt(i, 6) != null) {
                     v = Double.parseDouble(t_datos.getValueAt(i, 6).toString())
                             * Double.parseDouble(t_datos.getValueAt(i, 10).toString());
                     tabla.addCell(
                             reporte.celda(new BigDecimal(v).setScale(2, BigDecimal.ROUND_HALF_UP).toString(),
                                     font, contenido, derecha, 0, 1, Rectangle.RECTANGLE));
                     suma += Double.parseDouble(t_datos.getValueAt(i, 6).toString());
                     med += v;
                 } else
                     tabla.addCell(reporte.celda("", font, contenido, derecha, 0, 1, Rectangle.RECTANGLE));

                 if (t_datos.getValueAt(i, 7) != null) {
                     v = Double.parseDouble(t_datos.getValueAt(i, 7).toString())
                             * Double.parseDouble(t_datos.getValueAt(i, 10).toString());
                     tabla.addCell(
                             reporte.celda(new BigDecimal(v).setScale(2, BigDecimal.ROUND_HALF_UP).toString(),
                                     font, contenido, derecha, 0, 1, Rectangle.RECTANGLE));
                     suma += Double.parseDouble(t_datos.getValueAt(i, 7).toString());
                     max += v;
                 } else
                     tabla.addCell(reporte.celda("", font, contenido, derecha, 0, 1, Rectangle.RECTANGLE));
                 if (t_datos.getValueAt(i, 9) != null) {
                     v = Double.parseDouble(t_datos.getValueAt(i, 9).toString())
                             * Double.parseDouble(t_datos.getValueAt(i, 10).toString());
                     tabla.addCell(
                             reporte.celda(new BigDecimal(v).setScale(2, BigDecimal.ROUND_HALF_UP).toString(),
                                     font, contenido, derecha, 0, 1, Rectangle.RECTANGLE));
                     suma += Double.parseDouble(t_datos.getValueAt(i, 9).toString());
                     pin += v;
                 } else
                     tabla.addCell(reporte.celda("", font, contenido, derecha, 0, 1, Rectangle.RECTANGLE));

                 suma *= ord.getCompania().getImporteHora();
                 suma *= Double.parseDouble(t_datos.getValueAt(i, 10).toString());
                 tabla.addCell(reporte.celda(formatoPorcentaje.format(suma), font, contenido, derecha, 0, 1,
                         Rectangle.RECTANGLE));
                 tot += suma;
                 /*if(ren==38)
                 {
                 reporte.agregaObjeto(tabla);
                 reporte.writer.newPage();
                        
                 tabla=reporte.crearTabla(11, tam, 100, Element.ALIGN_LEFT);
                 cabecera(reporte, bf, tabla);
                 ren=-1;
                 }
                 ren++;*/
             }
         }
         Double tot_horas = dm + cam + min + med + max + pin;
         tabla.addCell(reporte.celda(
                 "Costo M.O:$" + formatoPorcentaje.format(ord.getCompania().getImporteHora())
                         + "     Total de Horas:" + formatoDecimal.format(tot_horas),
                 font, contenido, derecha, 4, 1, Rectangle.RIGHT));
         tabla.addCell(reporte.celda("" + formatoDecimal.format(dm), font, contenido, derecha, 0, 1,
                 Rectangle.RECTANGLE));
         tabla.addCell(reporte.celda("" + formatoDecimal.format(cam), font, contenido, derecha, 0, 1,
                 Rectangle.RECTANGLE));
         tabla.addCell(reporte.celda("" + formatoDecimal.format(min), font, contenido, derecha, 0, 1,
                 Rectangle.RECTANGLE));
         tabla.addCell(reporte.celda("" + formatoDecimal.format(med), font, contenido, derecha, 0, 1,
                 Rectangle.RECTANGLE));
         tabla.addCell(reporte.celda("" + formatoDecimal.format(max), font, contenido, derecha, 0, 1,
                 Rectangle.RECTANGLE));
         tabla.addCell(reporte.celda("" + formatoDecimal.format(pin), font, contenido, derecha, 0, 1,
                 Rectangle.RECTANGLE));
         tabla.addCell(reporte.celda(formatoPorcentaje.format(tot), font, contenido, derecha, 0, 1,
                 Rectangle.RECTANGLE));
         tabla.addCell(reporte.celda(" ", font, contenido, izquierda, 4, 1, Rectangle.NO_BORDER));
         tabla.addCell(reporte.celda(" ", font, contenido, izquierda, 7, 1, Rectangle.TOP));
         tabla.setHeaderRows(2);

         PdfPTable tabla1 = reporte.crearTabla(11, tam, 100, Element.ALIGN_LEFT);
         tabla1.addCell(reporte.celda("OBSERVACIONES", font, contenido, izquierda, 11, 1, Rectangle.NO_BORDER));
         tabla1.addCell(reporte.celda(" ", font, contenido, izquierda, 11, 1, Rectangle.BOTTOM));
         tabla1.addCell(reporte.celda(" ", font, contenido, izquierda, 11, 1, Rectangle.BOTTOM));
         tabla1.addCell(reporte.celda(" ", font, contenido, izquierda, 11, 1, Rectangle.BOTTOM));
         tabla1.addCell(reporte.celda(" ", font, contenido, izquierda, 11, 1, Rectangle.BOTTOM));

         reporte.agregaObjeto(tabla);
         reporte.agregaObjeto(tabla1);
         reporte.cerrar();
         reporte.visualizar("reportes/" + ord.getIdOrden() + "/" + valor + "-valuacion.pdf");
     } catch (Exception e) {
         e.printStackTrace();
         JOptionPane.showMessageDialog(this, "No se pudo realizar el reporte si el archivo esta abierto.");
     }
     if (session != null)
         if (session.isOpen()) {
             session.flush();
             session.clear();
             session.close();
         }
 }

From source file:Valuacion.valuacion.java

private void jButton2ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton2ActionPerformed
     // TODO add your handling code here:
     //h=new Herramientas(user, 0);
     //h.session(sessionPrograma);
     Session session = HibernateUtil.getSessionFactory().openSession();
     try {/*from  w w  w  .  j ava 2 s  . c om*/
         DecimalFormat formatoPorcentaje = new DecimalFormat("#,##0.00");
         formatoPorcentaje.setMinimumFractionDigits(2);
         session.beginTransaction().begin();
         BaseFont bf = BaseFont.createFont(BaseFont.HELVETICA, BaseFont.WINANSI, BaseFont.NOT_EMBEDDED);
         PDF reporte = new PDF();
         Date fecha = new Date();
         DateFormat dateFormat = new SimpleDateFormat("dd-MM-yyyyHH-mm-ss");//YYYY-MM-DD HH:MM:SS
         String valor = dateFormat.format(fecha);
         File folder = new File("reportes/" + ord.getIdOrden());
         folder.mkdirs();
         reporte.Abrir(PageSize.LETTER.rotate(), "Valuacin",
                 "reportes/" + ord.getIdOrden() + "/" + valor + "-ref_precio.pdf");
         Font font = new Font(Font.FontFamily.HELVETICA, 7, Font.NORMAL);
         BaseColor contenido = BaseColor.WHITE;
         int centro = Element.ALIGN_CENTER;
         int izquierda = Element.ALIGN_LEFT;
         int derecha = Element.ALIGN_RIGHT;
         int ren = 0;
         double dm = 0d, cam = 0d, min = 0d, med = 0d, max = 0d, pin = 0d, tot = 0d;
         session.beginTransaction().begin();
         Orden ord = (Orden) session.get(Orden.class, Integer.parseInt(orden));
         Configuracion config = (Configuracion) session.get(Configuracion.class, 1);
         /*Todas Autorizadas Sin Autorizar*/
         Partida[] cuentas = new Partida[] {};

         switch (cb_partidas.getSelectedItem().toString()) {
         case "Todas":
             switch (cb_tipo.getSelectedItem().toString()) {
             case "Hojalateria":
                 cuentas = (Partida[]) session.createCriteria(Partida.class)
                         .add(Restrictions.eq("ordenByIdOrden.idOrden", Integer.parseInt(orden)))
                         .add(Restrictions.eq("espHoj", true)).addOrder(Order.asc("idEvaluacion"))
                         .addOrder(Order.asc("subPartida")).list().toArray(new Partida[0]);
                 break;
             case "Mecanica":
                 cuentas = (Partida[]) session.createCriteria(Partida.class)
                         .add(Restrictions.eq("ordenByIdOrden.idOrden", Integer.parseInt(orden)))
                         .add(Restrictions.eq("espMec", true)).addOrder(Order.asc("idEvaluacion"))
                         .addOrder(Order.asc("subPartida")).list().toArray(new Partida[0]);
                 break;
             case "Suspension":
                 cuentas = (Partida[]) session.createCriteria(Partida.class)
                         .add(Restrictions.eq("ordenByIdOrden.idOrden", Integer.parseInt(orden)))
                         .add(Restrictions.eq("espSus", true)).addOrder(Order.asc("idEvaluacion"))
                         .addOrder(Order.asc("subPartida")).list().toArray(new Partida[0]);
                 break;
             case "Electrico":
                 cuentas = (Partida[]) session.createCriteria(Partida.class)
                         .add(Restrictions.eq("ordenByIdOrden.idOrden", Integer.parseInt(orden)))
                         .add(Restrictions.eq("espEle", true)).addOrder(Order.asc("idEvaluacion"))
                         .addOrder(Order.asc("subPartida")).list().toArray(new Partida[0]);
                 break;
             case "Pintura":
                 cuentas = (Partida[]) session.createCriteria(Partida.class)
                         .add(Restrictions.eq("ordenByIdOrden.idOrden", Integer.parseInt(orden)))
                         .add(Restrictions.or(
                                 Restrictions.or(Restrictions.ne("intPinMin", -1.0d),
                                         Restrictions.ne("intPinMed", -1.0d)),
                                 Restrictions.ne("intPinMax", -1.0d)))
                         .addOrder(Order.asc("idEvaluacion")).addOrder(Order.asc("subPartida")).list()
                         .toArray(new Partida[0]);
                 break;

             case "Todas":
                 cuentas = (Partida[]) session.createCriteria(Partida.class)
                         .add(Restrictions.eq("ordenByIdOrden.idOrden", Integer.parseInt(orden)))
                         .addOrder(Order.asc("idEvaluacion")).addOrder(Order.asc("subPartida")).list()
                         .toArray(new Partida[0]);
                 break;
             }
             break;

         case "Autorizadas":
             cuentas = (Partida[]) session.createCriteria(Partida.class)
                     .add(Restrictions.eq("ordenByIdOrden.idOrden", Integer.parseInt(orden)))
                     .add(Restrictions.eq("autorizado", true)).addOrder(Order.asc("idEvaluacion"))
                     .addOrder(Order.asc("subPartida")).list().toArray(new Partida[0]);
             switch (cb_tipo.getSelectedItem().toString()) {
             case "Hojalateria":
                 cuentas = (Partida[]) session.createCriteria(Partida.class)
                         .add(Restrictions.eq("ordenByIdOrden.idOrden", Integer.parseInt(orden)))
                         .add(Restrictions.eq("autorizado", true)).add(Restrictions.eq("espHoj", true))
                         .addOrder(Order.asc("idEvaluacion")).addOrder(Order.asc("subPartida")).list()
                         .toArray(new Partida[0]);
                 break;
             case "Mecanica":
                 cuentas = (Partida[]) session.createCriteria(Partida.class)
                         .add(Restrictions.eq("ordenByIdOrden.idOrden", Integer.parseInt(orden)))
                         .add(Restrictions.eq("autorizado", true)).add(Restrictions.eq("espMec", true))
                         .addOrder(Order.asc("idEvaluacion")).addOrder(Order.asc("subPartida")).list()
                         .toArray(new Partida[0]);
                 break;
             case "Suspension":
                 cuentas = (Partida[]) session.createCriteria(Partida.class)
                         .add(Restrictions.eq("ordenByIdOrden.idOrden", Integer.parseInt(orden)))
                         .add(Restrictions.eq("autorizado", true)).add(Restrictions.eq("espSus", true))
                         .addOrder(Order.asc("idEvaluacion")).addOrder(Order.asc("subPartida")).list()
                         .toArray(new Partida[0]);
                 break;
             case "Electrico":
                 cuentas = (Partida[]) session.createCriteria(Partida.class)
                         .add(Restrictions.eq("ordenByIdOrden.idOrden", Integer.parseInt(orden)))
                         .add(Restrictions.eq("autorizado", true)).add(Restrictions.eq("espEle", true))
                         .addOrder(Order.asc("idEvaluacion")).addOrder(Order.asc("subPartida")).list()
                         .toArray(new Partida[0]);
                 break;
             case "Pintura":
                 cuentas = (Partida[]) session.createCriteria(Partida.class)
                         .add(Restrictions.eq("ordenByIdOrden.idOrden", Integer.parseInt(orden)))
                         .add(Restrictions.eq("autorizado", true))
                         .add(Restrictions.or(
                                 Restrictions.or(Restrictions.ne("intPinMin", -1.0d),
                                         Restrictions.ne("intPinMed", -1.0d)),
                                 Restrictions.ne("intPinMax", -1.0d)))
                         .addOrder(Order.asc("idEvaluacion")).addOrder(Order.asc("subPartida")).list()
                         .toArray(new Partida[0]);
                 break;

             case "Todas":
                 cuentas = (Partida[]) session.createCriteria(Partida.class)
                         .add(Restrictions.eq("ordenByIdOrden.idOrden", Integer.parseInt(orden)))
                         .add(Restrictions.eq("autorizado", true)).addOrder(Order.asc("idEvaluacion"))
                         .addOrder(Order.asc("subPartida")).list().toArray(new Partida[0]);
                 break;
             }
             break;
         case "Sin Autorizar":
             switch (cb_tipo.getSelectedItem().toString()) {
             case "Hojalateria":
                 cuentas = (Partida[]) session.createCriteria(Partida.class)
                         .add(Restrictions.eq("ordenByIdOrden.idOrden", Integer.parseInt(orden)))
                         .add(Restrictions.eq("autorizado", false)).add(Restrictions.eq("espHoj", true))
                         .addOrder(Order.asc("idEvaluacion")).addOrder(Order.asc("subPartida")).list()
                         .toArray(new Partida[0]);
                 break;
             case "Mecanica":
                 cuentas = (Partida[]) session.createCriteria(Partida.class)
                         .add(Restrictions.eq("ordenByIdOrden.idOrden", Integer.parseInt(orden)))
                         .add(Restrictions.eq("autorizado", false)).add(Restrictions.eq("espMec", true))
                         .addOrder(Order.asc("idEvaluacion")).addOrder(Order.asc("subPartida")).list()
                         .toArray(new Partida[0]);
                 break;
             case "Suspension":
                 cuentas = (Partida[]) session.createCriteria(Partida.class)
                         .add(Restrictions.eq("ordenByIdOrden.idOrden", Integer.parseInt(orden)))
                         .add(Restrictions.eq("autorizado", false)).add(Restrictions.eq("espSus", true))
                         .addOrder(Order.asc("idEvaluacion")).addOrder(Order.asc("subPartida")).list()
                         .toArray(new Partida[0]);
                 break;
             case "Electrico":
                 cuentas = (Partida[]) session.createCriteria(Partida.class)
                         .add(Restrictions.eq("ordenByIdOrden.idOrden", Integer.parseInt(orden)))
                         .add(Restrictions.eq("autorizado", false)).add(Restrictions.eq("espEle", true))
                         .addOrder(Order.asc("idEvaluacion")).addOrder(Order.asc("subPartida")).list()
                         .toArray(new Partida[0]);
                 break;
             case "Pintura":
                 cuentas = (Partida[]) session.createCriteria(Partida.class)
                         .add(Restrictions.eq("ordenByIdOrden.idOrden", Integer.parseInt(orden)))
                         .add(Restrictions.eq("autorizado", false))
                         .add(Restrictions.or(
                                 Restrictions.or(Restrictions.ne("intPinMin", -1.0d),
                                         Restrictions.ne("intPinMed", -1.0d)),
                                 Restrictions.ne("intPinMax", -1.0d)))
                         .addOrder(Order.asc("idEvaluacion")).addOrder(Order.asc("subPartida")).list()
                         .toArray(new Partida[0]);
                 break;
             case "Todas":
                 cuentas = (Partida[]) session.createCriteria(Partida.class)
                         .add(Restrictions.eq("ordenByIdOrden.idOrden", Integer.parseInt(orden)))
                         .add(Restrictions.eq("autorizado", false)).addOrder(Order.asc("idEvaluacion"))
                         .addOrder(Order.asc("subPartida")).list().toArray(new Partida[0]);
                 break;
             }
             break;

         case "Marcadas":
             if (t_datos.getSelectedRows().length > 0) {
                 String consulta = "from Partida where concat(idEvaluacion, subPartida) in (";
                 int[] selec = t_datos.getSelectedRows();
                 for (int x = 0; x < selec.length; x++) {
                     if (x > 0)
                         consulta += ", ";
                     consulta += t_datos.getValueAt(selec[x], 0).toString()
                             + t_datos.getValueAt(selec[x], 1).toString();
                 }
                 switch (cb_tipo.getSelectedItem().toString()) {
                 case "Hojalateria":
                     consulta += ") AND(espHoj=true) ";
                     break;
                 case "Mecanica":
                     consulta += ") AND(espMec=true) ";
                     break;
                 case "Suspension":
                     consulta += ") AND(espSus=true) ";
                     break;
                 case "Electrico":
                     consulta += ") AND(espEle=true) ";
                     break;
                 case "Pintura":
                     consulta += ")) AND(intPinMin>-1 OR intPinMed>-1 OR intPinMax>-1) ";
                     break;
                 case "Todas":
                     consulta += ") ";
                     break;
                 }
                 consulta += "AND (ordenByIdOrden.idOrden=" + orden
                         + ") order by idEvaluacion asc, subPartida asc";
                 Query q = session.createQuery(consulta);
                 cuentas = (Partida[]) q.list().toArray(new Partida[0]);
             } else
                 cuentas = new Partida[0];
             break;
         }
         /*if(this.cb_precio.getSelectedItem().toString().compareToIgnoreCase("Compra")!=0)
         {*/
         float tam[];
         if (this.cb_precio.getSelectedItem().toString().compareToIgnoreCase("Compra") == 0)
             tam = new float[] { 12, 12, 50, 110, 15, 15, 25, 25, 25, 25 };
         else
             tam = new float[] { 12, 12, 50, 110, 15, 15, 25, 25, 35, 12 };

         PdfPTable tabla = reporte.crearTabla(10, tam, 100, Element.ALIGN_LEFT);

         cabecera1(reporte, bf, tabla);

         for (int i = 0; i < cuentas.length; i++) {
             double suma = 0d;
             tabla.addCell(reporte.celda("" + cuentas[i].getIdEvaluacion(), font, contenido, derecha, 0, 1,
                     Rectangle.RECTANGLE));
             tabla.addCell(reporte.celda("" + cuentas[i].getSubPartida(), font, contenido, derecha, 0, 1,
                     Rectangle.RECTANGLE));
             if (cuentas[i].getEjemplar() != null)
                 tabla.addCell(reporte.celda(cuentas[i].getEjemplar().getIdParte(), font, contenido, centro, 0,
                         1, Rectangle.RECTANGLE));
             else
                 tabla.addCell(reporte.celda("S/N", font, contenido, centro, 0, 0, Rectangle.RECTANGLE));

             tabla.addCell(reporte.celda(cuentas[i].getCatalogo().getNombre(), font, contenido, izquierda, 0, 1,
                     Rectangle.RECTANGLE));
             tabla.addCell(reporte.celda("" + cuentas[i].getCant(), font, contenido, derecha, 0, 1,
                     Rectangle.RECTANGLE));
             tabla.addCell(
                     reporte.celda(cuentas[i].getMed(), font, contenido, derecha, 0, 1, Rectangle.RECTANGLE));
             if (this.cb_precio.getSelectedItem().toString().compareToIgnoreCase("Cotizado") == 0) {
                 tabla.addCell(reporte.celda(formatoPorcentaje.format(cuentas[i].getCU()), font, contenido,
                         derecha, 0, 1, Rectangle.RECTANGLE));
                 Double precio = cuentas[i].getCU() * cuentas[i].getCant();
                 tot += precio;
                 tabla.addCell(reporte.celda(formatoPorcentaje.format(precio), font, contenido, derecha, 0, 1,
                         Rectangle.RECTANGLE));

                 tabla.addCell(reporte.celda("", font, contenido, derecha, 0, 1, Rectangle.RECTANGLE));
                 if (cuentas[i].isOri() == true) {
                     tabla.addCell(reporte.celda("Ori", font, contenido, centro, 0, 1, Rectangle.RECTANGLE));
                 } else {
                     if (cuentas[i].isNal() == true)
                         tabla.addCell(reporte.celda("Nal", font, contenido, centro, 0, 1, Rectangle.RECTANGLE));
                     else {
                         if (cuentas[i].isDesm() == true)
                             tabla.addCell(
                                     reporte.celda("Des", font, contenido, centro, 0, 1, Rectangle.RECTANGLE));
                         else {
                             if (cuentas[i].isPd() == true)
                                 tabla.addCell(reporte.celda("Recon", font, contenido, centro, 0, 1,
                                         Rectangle.RECTANGLE));
                             else
                                 tabla.addCell(
                                         reporte.celda(" ", font, contenido, centro, 0, 1, Rectangle.RECTANGLE));
                         }
                     }
                 }
             }
             if (this.cb_precio.getSelectedItem().toString().compareToIgnoreCase("Autorizado") == 0) {
                 tabla.addCell(reporte.celda(formatoPorcentaje.format(cuentas[i].getPrecioAutCU()), font,
                         contenido, derecha, 0, 1, Rectangle.RECTANGLE));
                 Double precio = cuentas[i].getPrecioAutCU() * cuentas[i].getCant();
                 tot += precio;
                 tabla.addCell(reporte.celda(formatoPorcentaje.format(precio), font, contenido, derecha, 0, 1,
                         Rectangle.RECTANGLE));

                 tabla.addCell(reporte.celda("", font, contenido, derecha, 0, 1, Rectangle.RECTANGLE));
                 if (cuentas[i].isOri() == true)
                     tabla.addCell(reporte.celda("Ori", font, contenido, centro, 0, 1, Rectangle.RECTANGLE));
                 else {
                     if (cuentas[i].isNal() == true)
                         tabla.addCell(reporte.celda("Nal", font, contenido, centro, 0, 1, Rectangle.RECTANGLE));
                     else {
                         if (cuentas[i].isDesm() == true)
                             tabla.addCell(
                                     reporte.celda("Des", font, contenido, centro, 0, 1, Rectangle.RECTANGLE));
                         else {
                             if (cuentas[i].isPd() == true)
                                 tabla.addCell(reporte.celda("Recon", font, contenido, centro, 0, 1,
                                         Rectangle.RECTANGLE));
                             else
                                 tabla.addCell(
                                         reporte.celda(" ", font, contenido, centro, 0, 1, Rectangle.RECTANGLE));
                         }
                     }
                 }
             }
             if (this.cb_precio.getSelectedItem().toString().compareToIgnoreCase("Compaia") == 0) {
                 Double costo = 0.0 + Math.round(cuentas[i].getCU() / (1 - (cuentas[i].getPorcentaje() * 0.01)));
                 tabla.addCell(reporte.celda(formatoPorcentaje.format(costo), font, contenido, derecha, 0, 1,
                         Rectangle.RECTANGLE));
                 Double precio = costo * cuentas[i].getCant();
                 tot += precio;
                 tabla.addCell(reporte.celda(formatoPorcentaje.format(precio), font, contenido, derecha, 0, 1,
                         Rectangle.RECTANGLE));

                 tabla.addCell(reporte.celda("", font, contenido, derecha, 0, 1, Rectangle.RECTANGLE));
                 if (cuentas[i].isOri() == true)
                     tabla.addCell(reporte.celda("Ori", font, contenido, centro, 0, 1, Rectangle.RECTANGLE));
                 else {
                     if (cuentas[i].isNal() == true)
                         tabla.addCell(reporte.celda("Nal", font, contenido, centro, 0, 1, Rectangle.RECTANGLE));
                     else {
                         if (cuentas[i].isDesm() == true)
                             tabla.addCell(
                                     reporte.celda("Des", font, contenido, centro, 0, 1, Rectangle.RECTANGLE));
                         else {
                             if (cuentas[i].isPd() == true)
                                 tabla.addCell(reporte.celda("Recon", font, contenido, centro, 0, 1,
                                         Rectangle.RECTANGLE));
                             else
                                 tabla.addCell(
                                         reporte.celda(" ", font, contenido, centro, 0, 1, Rectangle.RECTANGLE));
                         }
                     }
                 }
             }
             if (this.cb_precio.getSelectedItem().toString().compareToIgnoreCase("Compra") == 0) {
                 //costo de cotizacion
                 tabla.addCell(reporte.celda(formatoPorcentaje.format(cuentas[i].getCU()), font, contenido,
                         derecha, 0, 1, Rectangle.RECTANGLE));
                 //costo de compra si ya fue comprado
                 //PartidaPedido pc = (PartidaPedido)session.createCriteria(PartidaPedido.class).add(Restrictions.eq("partida.idPartida", cuentas[i].getIdPartida())).add(Restrictions.ne("pedido", null)).addOrder(Order.desc("idPartidaPedido")).setMaxResults(1).uniqueResult();
                 double pcom = 0d;
                 if (cuentas[i].getPedido() != null) {
                     pcom = cuentas[i].getPcp();
                     tabla.addCell(reporte.celda(formatoPorcentaje.format(pcom), font, contenido, derecha, 0, 1,
                             Rectangle.RECTANGLE));
                     Double precio = pcom * cuentas[i].getCantPcp();
                     tot += precio;
                 } else
                     tabla.addCell(reporte.celda("0.00", font, contenido, derecha, 0, 1, Rectangle.RECTANGLE));
                 //cosoto autorizado
                 tabla.addCell(reporte.celda(formatoPorcentaje.format(cuentas[i].getPrecioAutCU()), font,
                         contenido, derecha, 0, 1, Rectangle.RECTANGLE));
                 //Utlidad
                 double util = cuentas[i].getPrecioAutCU() - pcom;
                 tabla.addCell(reporte.celda(formatoPorcentaje.format(util), font, contenido, derecha, 0, 1,
                         Rectangle.RECTANGLE));
             }

             /*if(ren==37)
             {
                 reporte.agregaObjeto(tabla);
                 reporte.writer.newPage();
                 tabla=reporte.crearTabla(10, tam, 100, Element.ALIGN_LEFT);
                 cabecera1(reporte, bf, tabla);
                 ren=-1;
             }
             ren++;*/
         }
         if (this.cb_precio.getSelectedItem().toString().compareToIgnoreCase("Compra") != 0) {
             tabla.addCell(reporte.celda(" ", font, contenido, derecha, 7, 1, Rectangle.TOP));
             tabla.addCell(reporte.celda(formatoPorcentaje.format(tot), font, contenido, derecha, 0, 1,
                     Rectangle.RECTANGLE));
             tabla.addCell(reporte.celda(" ", font, contenido, derecha, 2, 1, Rectangle.TOP));
         } else {
             tabla.addCell(reporte.celda(" ", font, contenido, derecha, 7, 1, Rectangle.TOP));
             tabla.addCell(reporte.celda(formatoPorcentaje.format(tot), font, contenido, derecha, 0, 1,
                     Rectangle.RECTANGLE));
             tabla.addCell(reporte.celda(" ", font, contenido, derecha, 2, 1, Rectangle.TOP));
         }
         tabla.setHeaderRows(1);
         reporte.agregaObjeto(tabla);
         //}
         reporte.cerrar();
         reporte.visualizar("reportes/" + ord.getIdOrden() + "/" + valor + "-ref_precio.pdf");
     } catch (Exception e) {
         e.printStackTrace();
         JOptionPane.showMessageDialog(this, "No se pudo realizar el reporte");
     }
     if (session != null)
         if (session.isOpen()) {
             session.flush();
             session.clear();
             session.close();
         }
 }

From source file:Valuacion.valuacion.java

private void jButton3ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton3ActionPerformed
     // TODO add your handling code here:
     h = new Herramientas(user, 0);
     h.session(sessionPrograma);//from   w  w  w .  java  2 s . com
     Session session = HibernateUtil.getSessionFactory().openSession();
     try {
         //NumberFormat formatoPorcentaje = NumberFormat.getCurrencyInstance();
         DecimalFormat formatoPorcentaje = new DecimalFormat("#,###.00");
         formatoPorcentaje.setMinimumFractionDigits(2);

         session.beginTransaction().begin();
         BaseFont bf = BaseFont.createFont(BaseFont.HELVETICA, BaseFont.WINANSI, BaseFont.NOT_EMBEDDED);
         //Orden ord=buscaApertura();
         PDF reporte = new PDF();
         Date fecha = new Date();
         DateFormat dateFormat = new SimpleDateFormat("dd-MM-yyyyHH-mm-ss");//YYYY-MM-DD HH:MM:SS
         String valor = dateFormat.format(fecha);
         File folder = new File("reportes/" + ord.getIdOrden());
         folder.mkdirs();
         reporte.Abrir(PageSize.LETTER.rotate(), "Valuacin",
                 "reportes/" + ord.getIdOrden() + "/" + valor + "-ref_sin_precio.pdf");
         Font font = new Font(Font.FontFamily.HELVETICA, 7, Font.NORMAL);
         BaseColor contenido = BaseColor.WHITE;
         int centro = Element.ALIGN_CENTER;
         int izquierda = Element.ALIGN_LEFT;
         int derecha = Element.ALIGN_RIGHT;
         int ren = 0;
         double dm = 0d, cam = 0d, min = 0d, med = 0d, max = 0d, pin = 0d, tot = 0d;
         session.beginTransaction().begin();
         Orden ord = (Orden) session.get(Orden.class, Integer.parseInt(orden));
         /*Todas Autorizadas Sin Autorizar*/
         Partida[] cuentas = new Partida[] {};

         switch (cb_partidas.getSelectedItem().toString()) {
         case "Todas":
             switch (cb_tipo.getSelectedItem().toString()) {
             case "Hojalateria":
                 cuentas = (Partida[]) session.createCriteria(Partida.class)
                         .add(Restrictions.eq("ordenByIdOrden.idOrden", Integer.parseInt(orden)))
                         .add(Restrictions.eq("espHoj", true)).add(Restrictions.eq("refCoti", true))
                         .addOrder(Order.asc("idEvaluacion")).addOrder(Order.asc("subPartida")).list()
                         .toArray(new Partida[0]);
                 break;
             case "Mecanica":
                 cuentas = (Partida[]) session.createCriteria(Partida.class)
                         .add(Restrictions.eq("ordenByIdOrden.idOrden", Integer.parseInt(orden)))
                         .add(Restrictions.eq("espMec", true)).add(Restrictions.eq("refCoti", true))
                         .addOrder(Order.asc("idEvaluacion")).addOrder(Order.asc("subPartida")).list()
                         .toArray(new Partida[0]);
                 break;
             case "Suspension":
                 cuentas = (Partida[]) session.createCriteria(Partida.class)
                         .add(Restrictions.eq("ordenByIdOrden.idOrden", Integer.parseInt(orden)))
                         .add(Restrictions.eq("espSus", true)).add(Restrictions.eq("refCoti", true))
                         .addOrder(Order.asc("idEvaluacion")).addOrder(Order.asc("subPartida")).list()
                         .toArray(new Partida[0]);
                 break;
             case "Electrico":
                 cuentas = (Partida[]) session.createCriteria(Partida.class)
                         .add(Restrictions.eq("ordenByIdOrden.idOrden", Integer.parseInt(orden)))
                         .add(Restrictions.eq("espEle", true)).add(Restrictions.eq("refCoti", true))
                         .addOrder(Order.asc("idEvaluacion")).addOrder(Order.asc("subPartida")).list()
                         .toArray(new Partida[0]);
                 break;
             case "Pintura":
                 cuentas = (Partida[]) session.createCriteria(Partida.class)
                         .add(Restrictions.eq("ordenByIdOrden.idOrden", Integer.parseInt(orden)))
                         .add(Restrictions.eq("refCoti", true))
                         .add(Restrictions.or(
                                 Restrictions.or(Restrictions.ne("intPinMin", -1.0d),
                                         Restrictions.ne("intPinMed", -1.0d)),
                                 Restrictions.ne("intPinMax", -1.0d)))
                         .addOrder(Order.asc("idEvaluacion")).addOrder(Order.asc("subPartida")).list()
                         .toArray(new Partida[0]);
                 break;
             case "Todas":
                 cuentas = (Partida[]) session.createCriteria(Partida.class)
                         .add(Restrictions.eq("ordenByIdOrden.idOrden", Integer.parseInt(orden)))
                         .add(Restrictions.eq("refCoti", true)).addOrder(Order.asc("idEvaluacion"))
                         .addOrder(Order.asc("subPartida")).list().toArray(new Partida[0]);
                 break;
             }
             break;

         case "Autorizadas":
             switch (cb_tipo.getSelectedItem().toString()) {
             case "Hojalateria":
                 cuentas = (Partida[]) session.createCriteria(Partida.class)
                         .add(Restrictions.eq("ordenByIdOrden.idOrden", Integer.parseInt(orden)))
                         .add(Restrictions.eq("espHoj", true)).add(Restrictions.eq("refCoti", true))
                         .add(Restrictions.eq("autorizado", true)).addOrder(Order.asc("idEvaluacion"))
                         .addOrder(Order.asc("subPartida")).list().toArray(new Partida[0]);
                 break;
             case "Mecanica":
                 cuentas = (Partida[]) session.createCriteria(Partida.class)
                         .add(Restrictions.eq("ordenByIdOrden.idOrden", Integer.parseInt(orden)))
                         .add(Restrictions.eq("espMec", true)).add(Restrictions.eq("refCoti", true))
                         .add(Restrictions.eq("autorizado", true)).addOrder(Order.asc("idEvaluacion"))
                         .addOrder(Order.asc("subPartida")).list().toArray(new Partida[0]);
                 break;
             case "Suspension":
                 cuentas = (Partida[]) session.createCriteria(Partida.class)
                         .add(Restrictions.eq("ordenByIdOrden.idOrden", Integer.parseInt(orden)))
                         .add(Restrictions.eq("espSus", true)).add(Restrictions.eq("refCoti", true))
                         .add(Restrictions.eq("autorizado", true)).addOrder(Order.asc("idEvaluacion"))
                         .addOrder(Order.asc("subPartida")).list().toArray(new Partida[0]);
                 break;
             case "Electrico":
                 cuentas = (Partida[]) session.createCriteria(Partida.class)
                         .add(Restrictions.eq("ordenByIdOrden.idOrden", Integer.parseInt(orden)))
                         .add(Restrictions.eq("espEle", true)).add(Restrictions.eq("refCoti", true))
                         .add(Restrictions.eq("autorizado", true)).addOrder(Order.asc("idEvaluacion"))
                         .addOrder(Order.asc("subPartida")).list().toArray(new Partida[0]);
                 break;
             case "Pintura":
                 cuentas = (Partida[]) session.createCriteria(Partida.class)
                         .add(Restrictions.eq("ordenByIdOrden.idOrden", Integer.parseInt(orden)))
                         .add(Restrictions.eq("refCoti", true)).add(Restrictions.eq("autorizado", true))
                         .add(Restrictions.or(
                                 Restrictions.or(Restrictions.ne("intPinMin", -1.0d),
                                         Restrictions.ne("intPinMed", -1.0d)),
                                 Restrictions.ne("intPinMax", -1.0d)))
                         .addOrder(Order.asc("idEvaluacion")).addOrder(Order.asc("subPartida")).list()
                         .toArray(new Partida[0]);
                 break;
             case "Todas":
                 cuentas = (Partida[]) session.createCriteria(Partida.class)
                         .add(Restrictions.eq("ordenByIdOrden.idOrden", Integer.parseInt(orden)))
                         .add(Restrictions.eq("refCoti", true)).addOrder(Order.asc("idEvaluacion"))
                         .add(Restrictions.eq("autorizado", true)).addOrder(Order.asc("subPartida")).list()
                         .toArray(new Partida[0]);
                 break;
             }
             break;

         case "Sin Autorizar":
             switch (cb_tipo.getSelectedItem().toString()) {
             case "Hojalateria":
                 cuentas = (Partida[]) session.createCriteria(Partida.class)
                         .add(Restrictions.eq("ordenByIdOrden.idOrden", Integer.parseInt(orden)))
                         .add(Restrictions.eq("espHoj", true)).add(Restrictions.eq("refCoti", true))
                         .add(Restrictions.eq("autorizado", false)).addOrder(Order.asc("idEvaluacion"))
                         .addOrder(Order.asc("subPartida")).list().toArray(new Partida[0]);
                 break;
             case "Mecanica":
                 cuentas = (Partida[]) session.createCriteria(Partida.class)
                         .add(Restrictions.eq("ordenByIdOrden.idOrden", Integer.parseInt(orden)))
                         .add(Restrictions.eq("espMec", true)).add(Restrictions.eq("refCoti", true))
                         .add(Restrictions.eq("autorizado", false)).addOrder(Order.asc("idEvaluacion"))
                         .addOrder(Order.asc("subPartida")).list().toArray(new Partida[0]);
                 break;
             case "Suspension":
                 cuentas = (Partida[]) session.createCriteria(Partida.class)
                         .add(Restrictions.eq("ordenByIdOrden.idOrden", Integer.parseInt(orden)))
                         .add(Restrictions.eq("espSus", true)).add(Restrictions.eq("refCoti", true))
                         .add(Restrictions.eq("autorizado", false)).addOrder(Order.asc("idEvaluacion"))
                         .addOrder(Order.asc("subPartida")).list().toArray(new Partida[0]);
                 break;
             case "Electrico":
                 cuentas = (Partida[]) session.createCriteria(Partida.class)
                         .add(Restrictions.eq("ordenByIdOrden.idOrden", Integer.parseInt(orden)))
                         .add(Restrictions.eq("espEle", true)).add(Restrictions.eq("refCoti", true))
                         .add(Restrictions.eq("autorizado", false)).addOrder(Order.asc("idEvaluacion"))
                         .addOrder(Order.asc("subPartida")).list().toArray(new Partida[0]);
                 break;
             case "Pintura":
                 cuentas = (Partida[]) session.createCriteria(Partida.class)
                         .add(Restrictions.eq("ordenByIdOrden.idOrden", Integer.parseInt(orden)))
                         .add(Restrictions.eq("espEle", true)).add(Restrictions.eq("refCoti", true))
                         .add(Restrictions.eq("autorizado", false))
                         .add(Restrictions.or(
                                 Restrictions.or(Restrictions.ne("intPinMin", -1.0d),
                                         Restrictions.ne("intPinMed", -1.0d)),
                                 Restrictions.ne("intPinMax", -1.0d)))
                         .addOrder(Order.asc("idEvaluacion")).addOrder(Order.asc("subPartida")).list()
                         .toArray(new Partida[0]);
                 break;
             case "Todas":
                 cuentas = (Partida[]) session.createCriteria(Partida.class)
                         .add(Restrictions.eq("ordenByIdOrden.idOrden", Integer.parseInt(orden)))
                         .add(Restrictions.eq("refCoti", true)).addOrder(Order.asc("idEvaluacion"))
                         .add(Restrictions.eq("autorizado", false)).addOrder(Order.asc("subPartida")).list()
                         .toArray(new Partida[0]);
                 break;
             }
             break;

         case "Marcadas":
             if (t_datos.getSelectedRows().length > 0) {
                 //cuentas= (Partida[]) session.createCriteria(Partida.class).add(Restrictions.eq("ordenByIdOrden.idOrden", Integer.parseInt(orden))).add(Restrictions.and(Restrictions.in("subPartida", seleccion(1)), Restrictions.in("idEvaluacion", seleccion(0)))).addOrder(Order.asc("idEvaluacion")).addOrder(Order.asc("subPartida")).list().toArray(new Partida[0]);
                 String consulta = "from Partida where concat(idEvaluacion, subPartida) in (";
                 int[] selec = t_datos.getSelectedRows();
                 for (int x = 0; x < selec.length; x++) {
                     if (x > 0)
                         consulta += ", ";
                     consulta += t_datos.getValueAt(selec[x], 0).toString()
                             + t_datos.getValueAt(selec[x], 1).toString();
                 }
                 switch (cb_tipo.getSelectedItem().toString()) {
                 case "Hojalateria":
                     consulta += ") AND(espHoj=true) ";
                     break;
                 case "Mecanica":
                     consulta += ") AND(espMec=true) ";
                     break;
                 case "Suspension":
                     consulta += ") AND(espSus=true) ";
                     break;
                 case "Electrico":
                     consulta += ") AND(espEle=true) ";
                     break;
                 case "Pintura":
                     consulta += ")) AND(intPinMin>-1 OR intPinMed>-1 OR intPinMax>-1) ";
                     break;
                 case "Todas":
                     consulta += ") ";
                     break;
                 }
                 consulta += "AND (ordenByIdOrden.idOrden=" + orden
                         + ") order by idEvaluacion asc, subPartida asc";
                 Query q = session.createQuery(consulta);
                 cuentas = (Partida[]) q.list().toArray(new Partida[0]);
             } else
                 cuentas = new Partida[0];
             break;
         }
         float tam[] = new float[] { 12, 12, 50, 110, 15, 15, 25, 25, 35, 12 };
         PdfPTable tabla = reporte.crearTabla(10, tam, 100, Element.ALIGN_LEFT);

         cabecera1(reporte, bf, tabla);

         for (int i = 0; i < cuentas.length; i++) {
             double suma = 0d;
             tabla.addCell(reporte.celda("" + cuentas[i].getIdEvaluacion(), font, contenido, derecha, 0, 1,
                     Rectangle.RECTANGLE));
             tabla.addCell(reporte.celda("" + cuentas[i].getSubPartida(), font, contenido, derecha, 0, 1,
                     Rectangle.RECTANGLE));
             if (cuentas[i].getEjemplar() != null)
                 tabla.addCell(reporte.celda(cuentas[i].getEjemplar().getIdParte(), font, contenido, centro, 0,
                         1, Rectangle.RECTANGLE));
             else
                 tabla.addCell(reporte.celda("S/N", font, contenido, centro, 0, 0, Rectangle.RECTANGLE));

             tabla.addCell(reporte.celda(cuentas[i].getCatalogo().getNombre(), font, contenido, izquierda, 0, 1,
                     Rectangle.RECTANGLE));
             tabla.addCell(reporte.celda("" + cuentas[i].getCant(), font, contenido, derecha, 0, 1,
                     Rectangle.RECTANGLE));
             tabla.addCell(
                     reporte.celda(cuentas[i].getMed(), font, contenido, derecha, 0, 1, Rectangle.RECTANGLE));
             tabla.addCell(reporte.celda("", font, contenido, derecha, 0, 1, Rectangle.RECTANGLE));

             tabla.addCell(reporte.celda("", font, contenido, derecha, 0, 1, Rectangle.RECTANGLE));
             tabla.addCell(reporte.celda("", font, contenido, derecha, 0, 1, Rectangle.RECTANGLE));
             if (cuentas[i].isOri() == true) {
                 tabla.addCell(reporte.celda("Ori", font, contenido, centro, 0, 1, Rectangle.RECTANGLE));
             } else {
                 if (cuentas[i].isNal() == true) {
                     tabla.addCell(reporte.celda("Nal", font, contenido, centro, 0, 1, Rectangle.RECTANGLE));
                 } else {
                     if (cuentas[i].isDesm() == true)
                         tabla.addCell(reporte.celda("Des", font, contenido, centro, 0, 1, Rectangle.RECTANGLE));
                     else {
                         if (cuentas[i].isPd() == true)
                             tabla.addCell(
                                     reporte.celda("Rec", font, contenido, centro, 0, 1, Rectangle.RECTANGLE));
                         else
                             tabla.addCell(
                                     reporte.celda(" ", font, contenido, centro, 0, 1, Rectangle.RECTANGLE));
                     }
                 }
             }

             /*if(ren==37)
             {
                 reporte.agregaObjeto(tabla);
                 reporte.writer.newPage();
                 tabla=reporte.crearTabla(10, tam, 100, Element.ALIGN_LEFT);
                 cabecera1(reporte, bf, tabla);
                 ren=-1;
             }
             ren++;*/
         }
         tabla.setHeaderRows(1);
         reporte.agregaObjeto(tabla);

         reporte.cerrar();
         reporte.visualizar("reportes/" + ord.getIdOrden() + "/" + valor + "-ref_sin_precio.pdf");
     } catch (Exception e) {
         e.printStackTrace();
         e.printStackTrace();
         JOptionPane.showMessageDialog(this, "No se pudo realizar el reporte si el archivo esta abierto.");
     }
     if (session != null)
         if (session.isOpen()) {
             session.flush();
             session.clear();
             session.close();
         }
 }

From source file:Valuacion.valuacion.java

private void jButton4ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton4ActionPerformed
     // TODO add your handling code here:
     //h=new Herramientas(user, 0);
     //h.session(sessionPrograma);
     Session session = HibernateUtil.getSessionFactory().openSession();
     try {//  w  w  w  . j  a  va2 s.  c o m
         session.beginTransaction().begin();
         DecimalFormat formatoPorcentaje = new DecimalFormat("#,##0.00");
         DecimalFormat formatoDecimal = new DecimalFormat("####0.0");
         formatoPorcentaje.setMinimumFractionDigits(2);
         BaseFont bf = BaseFont.createFont(BaseFont.HELVETICA, BaseFont.WINANSI, BaseFont.NOT_EMBEDDED);
         //Orden ord=buscaApertura();
         PDF reporte = new PDF();
         Date fecha = new Date();
         DateFormat dateFormat = new SimpleDateFormat("dd-MM-yyyyHH-mm-ss");//YYYY-MM-DD HH:MM:SS
         String valor = dateFormat.format(fecha);
         File folder = new File("reportes/" + ord.getIdOrden());
         folder.mkdirs();
         reporte.Abrir(PageSize.LETTER.rotate(), "Operaciones",
                 "reportes/" + ord.getIdOrden() + "/" + valor + "-operaciones.pdf");
         Font font = new Font(Font.FontFamily.HELVETICA, 7, Font.NORMAL);
         BaseColor contenido = BaseColor.WHITE;
         int centro = Element.ALIGN_CENTER;
         int izquierda = Element.ALIGN_LEFT;
         int derecha = Element.ALIGN_RIGHT;
         float tam[] = new float[] { 15, 12, 10, 10, 10, 10, 15, 15, 15, 10, 10, 10, 10, 10, 10, 10, 10, 140,
                 90 };
         PdfPTable tabla = reporte.crearTabla(19, tam, 100, Element.ALIGN_LEFT);

         cabecera2(reporte, bf, tabla, " Cambios ");
         Partida[] cuentas = new Partida[0];
         ;
         Criteria cr;
         switch (cb_partidas.getSelectedItem().toString()) {
         case "Marcadas":
             if (t_datos.getSelectedRows().length > 0) {
                 String consulta = "from Partida where (concat(idEvaluacion, subPartida) in (";
                 int[] selec = t_datos.getSelectedRows();
                 for (int x = 0; x < selec.length; x++) {
                     if (x > 0)
                         consulta += ", ";
                     consulta += t_datos.getValueAt(selec[x], 0).toString()
                             + t_datos.getValueAt(selec[x], 1).toString();
                 }
                 switch (cb_tipo.getSelectedItem().toString()) {
                 case "Hojalateria":
                     consulta += ")) AND(espHoj=true) ";
                     break;
                 case "Mecanica":
                     consulta += ")) AND(espMec=true) ";
                     break;
                 case "Suspension":
                     consulta += ")) AND(espSus=true) ";
                     break;
                 case "Electrico":
                     consulta += ")) AND(espEle=true) ";
                     break;
                 case "Pintura":
                     consulta += ")) AND(intPinMin>-1 OR intPinMed>-1 OR intPinMax>-1) ";
                     break;
                 case "Todas":
                     consulta += ")) ";
                     break;
                 }
                 consulta += "AND (ordenByIdOrden.idOrden=" + orden
                         + ") AND (autorizadoValuacion=true)  AND (intCamb>-1)  order by idEvaluacion asc, subPartida asc";
                 Query q = session.createQuery(consulta);
                 cuentas = (Partida[]) q.list().toArray(new Partida[0]);
             } else
                 cuentas = new Partida[0];
             break;
         case "Sin Autorizar":
             cr = session.createCriteria(Partida.class)
                     .add(Restrictions.eq("ordenByIdOrden.idOrden", ord.getIdOrden()))
                     .add(Restrictions.eq("autorizadoValuacion", true)).add(Restrictions.eq("autorizado", false))
                     .add(Restrictions.ne("intCamb", -1.0d));
             switch (cb_tipo.getSelectedItem().toString()) {
             case "Hojalateria":
                 cr.add(Restrictions.eq("espHoj", true));
                 break;
             case "Mecanica":
                 cr.add(Restrictions.eq("espMec", true));
                 break;
             case "Suspension":
                 cr.add(Restrictions.eq("espSus", true));
                 break;
             case "Electrico":
                 cr.add(Restrictions.eq("espEle", true));
                 break;
             case "Pintura":
                 cr.add(Restrictions.or(Restrictions.or(Restrictions.ne("intPinMin", -1.0d),
                         Restrictions.ne("intPinMed", -1.0d)), Restrictions.ne("intPinMax", -1.0d)));
                 break;
             }
             cr.addOrder(Order.asc("idEvaluacion"));
             cr.addOrder(Order.asc("subPartida"));
             cuentas = (Partida[]) cr.list().toArray(new Partida[0]);
             ;
             break;
         default:
             cr = session.createCriteria(Partida.class)
                     .add(Restrictions.eq("ordenByIdOrden.idOrden", ord.getIdOrden()))
                     .add(Restrictions.eq("autorizadoValuacion", true)).add(Restrictions.ne("intCamb", -1.0d));
             switch (cb_tipo.getSelectedItem().toString()) {
             case "Hojalateria":
                 cr.add(Restrictions.eq("espHoj", true));

                 break;
             case "Mecanica":
                 cr.add(Restrictions.eq("espMec", true));
                 break;
             case "Suspension":
                 cr.add(Restrictions.eq("espSus", true));
                 break;
             case "Electrico":
                 cr.add(Restrictions.eq("espEle", true));
                 break;
             case "Pintura":
                 cr.add(Restrictions.or(Restrictions.or(Restrictions.ne("intPinMin", -1.0d),
                         Restrictions.ne("intPinMed", -1.0d)), Restrictions.ne("intPinMax", -1.0d)));
                 break;
             }
             cr.addOrder(Order.asc("idEvaluacion"));
             cr.addOrder(Order.asc("subPartida"));
             cuentas = (Partida[]) cr.list().toArray(new Partida[0]);
             ;
             break;
         }

         int ren = 0;
         for (int i = 0; i < cuentas.length; i++) {
             double suma = 0d;
             tabla.addCell(reporte.celda("" + cuentas[i].getIdEvaluacion(), font, contenido, izquierda, 0, 1,
                     Rectangle.RECTANGLE));
             tabla.addCell(reporte.celda("" + cuentas[i].getSubPartida(), font, contenido, izquierda, 0, 1,
                     Rectangle.RECTANGLE));
             tabla.addCell(reporte.celda((cuentas[i].isEspHoj() == true ? "x" : ""), font, contenido, izquierda,
                     0, 0, Rectangle.RECTANGLE));
             tabla.addCell(reporte.celda((cuentas[i].isEspMec() == true ? "x" : ""), font, contenido, izquierda,
                     0, 0, Rectangle.RECTANGLE));
             tabla.addCell(reporte.celda((cuentas[i].isEspSus() == true ? "x" : ""), font, contenido, izquierda,
                     0, 0, Rectangle.RECTANGLE));
             tabla.addCell(reporte.celda((cuentas[i].isEspEle() == true ? "x" : ""), font, contenido, izquierda,
                     0, 0, Rectangle.RECTANGLE));
             tabla.addCell(reporte.celda("" + cuentas[i].getCant(), font, contenido, izquierda, 0, 1,
                     Rectangle.RECTANGLE));
             tabla.addCell(reporte.celda("" + cuentas[i].getCantidadAut(), font, contenido, izquierda, 0, 1,
                     Rectangle.RECTANGLE));
             tabla.addCell(
                     reporte.celda(cuentas[i].getMed(), font, contenido, izquierda, 0, 1, Rectangle.RECTANGLE));
             tabla.addCell(reporte.celda((cuentas[i].isRefCoti() == true ? "x" : ""), font, contenido, izquierda,
                     0, 0, Rectangle.RECTANGLE));
             tabla.addCell(reporte.celda((cuentas[i].getIntCamb() != -1 ? "x" : ""), font, contenido, izquierda,
                     0, 0, Rectangle.RECTANGLE));
             tabla.addCell(reporte.celda((cuentas[i].getIntRepMin() != -1 ? "x" : ""), font, contenido,
                     izquierda, 0, 0, Rectangle.RECTANGLE));
             tabla.addCell(reporte.celda((cuentas[i].getIntRepMed() != -1 ? "x" : ""), font, contenido,
                     izquierda, 0, 0, Rectangle.RECTANGLE));
             tabla.addCell(reporte.celda((cuentas[i].getIntRepMax() != -1 ? "x" : ""), font, contenido,
                     izquierda, 0, 0, Rectangle.RECTANGLE));
             tabla.addCell(reporte.celda((cuentas[i].getIntPinMin() != -1 ? "x" : ""), font, contenido,
                     izquierda, 0, 0, Rectangle.RECTANGLE));
             tabla.addCell(reporte.celda((cuentas[i].getIntPinMed() != -1 ? "x" : ""), font, contenido,
                     izquierda, 0, 0, Rectangle.RECTANGLE));
             tabla.addCell(reporte.celda((cuentas[i].getIntPinMax() != -1 ? "x" : ""), font, contenido,
                     izquierda, 0, 0, Rectangle.RECTANGLE));
             tabla.addCell(reporte.celda(cuentas[i].getCatalogo().getNombre(), font, contenido, izquierda, 0, 1,
                     Rectangle.RECTANGLE));
             tabla.addCell(
                     reporte.celda((cuentas[i].getInstruccion() != null ? cuentas[i].getInstruccion() : ""),
                             font, contenido, izquierda, 0, 1, Rectangle.RECTANGLE));
             /*if(ren==37)
             {
             reporte.agregaObjeto(tabla);
             reporte.writer.newPage();
             tabla=reporte.crearTabla(19, tam, 100, Element.ALIGN_LEFT);
             cabecera2(reporte, bf, tabla);
             ren=-1;
             }
             ren++;*/
         }
         tabla.setHeaderRows(3);
         reporte.agregaObjeto(tabla);
         reporte.cerrar();
         reporte.visualizar("reportes/" + ord.getIdOrden() + "/" + valor + "-operaciones.pdf");
     } catch (Exception e) {
         e.printStackTrace();
         e.printStackTrace();
         JOptionPane.showMessageDialog(this, "No se pudo realizar el reporte si el archivo esta abierto.");
     }
     if (session != null)
         if (session.isOpen())
             session.close();
 }

From source file:Valuacion.valuacion.java

private void jButton5ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton5ActionPerformed
     // TODO add your handling code here:
     Session session = HibernateUtil.getSessionFactory().openSession();
     try {//from  www.j a  v a 2s  .c o  m
         session.beginTransaction().begin();
         DecimalFormat formatoPorcentaje = new DecimalFormat("#,##0.00");
         DecimalFormat formatoDecimal = new DecimalFormat("####0.0");
         formatoPorcentaje.setMinimumFractionDigits(2);
         BaseFont bf = BaseFont.createFont(BaseFont.HELVETICA, BaseFont.WINANSI, BaseFont.NOT_EMBEDDED);
         //Orden ord=buscaApertura();
         PDF reporte = new PDF();
         Date fecha = new Date();
         DateFormat dateFormat = new SimpleDateFormat("dd-MM-yyyyHH-mm-ss");//YYYY-MM-DD HH:MM:SS
         String valor = dateFormat.format(fecha);
         File folder = new File("reportes/" + ord.getIdOrden());
         folder.mkdirs();
         reporte.Abrir(PageSize.LETTER.rotate(), "Operaciones",
                 "reportes/" + ord.getIdOrden() + "/" + valor + "-operaciones1.pdf");
         Font font = new Font(Font.FontFamily.HELVETICA, 7, Font.NORMAL);
         BaseColor contenido = BaseColor.WHITE;
         int centro = Element.ALIGN_CENTER;
         int izquierda = Element.ALIGN_LEFT;
         int derecha = Element.ALIGN_RIGHT;
         float tam[] = new float[] { 15, 12, 10, 10, 10, 10, 15, 15, 15, 10, 10, 10, 10, 10, 10, 10, 10, 140,
                 90 };
         PdfPTable tabla = reporte.crearTabla(19, tam, 100, Element.ALIGN_LEFT);

         cabecera2(reporte, bf, tabla, " Reparaciones ");
         Partida[] cuentas = new Partida[0];
         ;

         Criteria cr;
         switch (cb_partidas.getSelectedItem().toString()) {
         case "Marcadas":
             if (t_datos.getSelectedRows().length > 0) {
                 String consulta = "from Partida where (concat(idEvaluacion, subPartida) in (";
                 int[] selec = t_datos.getSelectedRows();
                 for (int x = 0; x < selec.length; x++) {
                     if (x > 0)
                         consulta += ", ";
                     consulta += t_datos.getValueAt(selec[x], 0).toString()
                             + t_datos.getValueAt(selec[x], 1).toString();
                 }
                 switch (cb_tipo.getSelectedItem().toString()) {
                 case "Hojalateria":
                     consulta += ")) AND(espHoj=true) ";
                     break;
                 case "Mecanica":
                     consulta += ")) AND(espMec=true) ";
                     break;
                 case "Suspension":
                     consulta += ")) AND(espSus=true) ";
                     break;
                 case "Electrico":
                     consulta += ")) AND(espEle=true) ";
                     break;
                 case "Pintura":
                     consulta += ")) AND(intPinMin>-1 OR intPinMed>-1 OR intPinMax>-1) ";
                     break;
                 case "Todas":
                     consulta += ")) ";
                     break;
                 }
                 consulta += "AND (ordenByIdOrden.idOrden=" + orden
                         + ") AND (autorizadoValuacion=true) AND (intCamb=-1)  order by idEvaluacion asc, subPartida asc";
                 Query q = session.createQuery(consulta);
                 cuentas = (Partida[]) q.list().toArray(new Partida[0]);
             } else
                 cuentas = new Partida[0];
             break;
         case "Sin Autorizar":
             cr = session.createCriteria(Partida.class)
                     .add(Restrictions.eq("ordenByIdOrden.idOrden", ord.getIdOrden()))
                     .add(Restrictions.eq("autorizadoValuacion", true)).add(Restrictions.eq("autorizado", false))
                     .add(Restrictions.eq("intCamb", -1.0d));
             switch (cb_tipo.getSelectedItem().toString()) {
             case "Hojalateria":
                 cr.add(Restrictions.eq("espHoj", true));
                 break;
             case "Mecanica":
                 cr.add(Restrictions.eq("espMec", true));
                 break;
             case "Suspension":
                 cr.add(Restrictions.eq("espSus", true));
                 break;
             case "Electrico":
                 cr.add(Restrictions.eq("espEle", true));
                 break;
             case "Pintura":
                 cr.add(Restrictions.or(Restrictions.or(Restrictions.ne("intPinMin", -1.0d),
                         Restrictions.ne("intPinMed", -1.0d)), Restrictions.ne("intPinMax", -1.0d)));
                 //cr.add(Restrictions.sqlRestriction(" AND(intPinMin>-1 OR intPinMed>-1 OR intPinMax>-1) "));
                 break;
             }
             cr.addOrder(Order.asc("idEvaluacion"));
             cr.addOrder(Order.asc("subPartida"));
             cuentas = (Partida[]) cr.list().toArray(new Partida[0]);
             break;
         case "Autorizadas":
             cr = session.createCriteria(Partida.class)
                     .add(Restrictions.eq("ordenByIdOrden.idOrden", ord.getIdOrden()))
                     .add(Restrictions.eq("autorizadoValuacion", true)).add(Restrictions.eq("autorizado", true))
                     .add(Restrictions.eq("intCamb", -1.0d));
             switch (cb_tipo.getSelectedItem().toString()) {
             case "Hojalateria":
                 cr.add(Restrictions.eq("espHoj", true));
                 break;
             case "Mecanica":
                 cr.add(Restrictions.eq("espMec", true));
                 break;
             case "Suspension":
                 cr.add(Restrictions.eq("espSus", true));
                 break;
             case "Electrico":
                 cr.add(Restrictions.eq("espEle", true));
                 break;
             case "Pintura":
                 cr.add(Restrictions.or(Restrictions.or(Restrictions.ne("intPinMin", -1.0d),
                         Restrictions.ne("intPinMed", -1.0d)), Restrictions.ne("intPinMax", -1.0d)));
                 //cr.add(Restrictions.sqlRestriction(" AND(intPinMin>-1 OR intPinMed>-1 OR intPinMax>-1) "));
                 break;
             }
             cr.addOrder(Order.asc("idEvaluacion"));
             cr.addOrder(Order.asc("subPartida"));
             cuentas = (Partida[]) cr.list().toArray(new Partida[0]);
             break;
         default:
             cr = session.createCriteria(Partida.class)
                     .add(Restrictions.eq("ordenByIdOrden.idOrden", ord.getIdOrden()))
                     .add(Restrictions.eq("autorizadoValuacion", true)).add(Restrictions.eq("intCamb", -1.0d));
             switch (cb_tipo.getSelectedItem().toString()) {
             case "Hojalateria":
                 cr.add(Restrictions.eq("espHoj", true));
                 break;
             case "Mecanica":
                 cr.add(Restrictions.eq("espMec", true));
                 break;
             case "Suspension":
                 cr.add(Restrictions.eq("espSus", true));
                 break;
             case "Electrico":
                 cr.add(Restrictions.eq("espEle", true));
                 break;
             case "Pintura":
                 cr.add(Restrictions.or(Restrictions.or(Restrictions.ne("intPinMin", -1.0d),
                         Restrictions.ne("intPinMed", -1.0d)), Restrictions.ne("intPinMax", -1.0d)));
                 break;
             }
             cr.addOrder(Order.asc("idEvaluacion"));
             cr.addOrder(Order.asc("subPartida"));
             cuentas = (Partida[]) cr.list().toArray(new Partida[0]);
             break;
         }

         int ren = 0;
         for (int i = 0; i < cuentas.length; i++) {
             double suma = 0d;
             tabla.addCell(reporte.celda("" + cuentas[i].getIdEvaluacion(), font, contenido, izquierda, 0, 1,
                     Rectangle.RECTANGLE));
             tabla.addCell(reporte.celda("" + cuentas[i].getSubPartida(), font, contenido, izquierda, 0, 1,
                     Rectangle.RECTANGLE));
             tabla.addCell(reporte.celda((cuentas[i].isEspHoj() == true ? "x" : ""), font, contenido, izquierda,
                     0, 0, Rectangle.RECTANGLE));
             tabla.addCell(reporte.celda((cuentas[i].isEspMec() == true ? "x" : ""), font, contenido, izquierda,
                     0, 0, Rectangle.RECTANGLE));
             tabla.addCell(reporte.celda((cuentas[i].isEspSus() == true ? "x" : ""), font, contenido, izquierda,
                     0, 0, Rectangle.RECTANGLE));
             tabla.addCell(reporte.celda((cuentas[i].isEspEle() == true ? "x" : ""), font, contenido, izquierda,
                     0, 0, Rectangle.RECTANGLE));
             tabla.addCell(reporte.celda("" + cuentas[i].getCant(), font, contenido, izquierda, 0, 1,
                     Rectangle.RECTANGLE));
             tabla.addCell(reporte.celda("" + cuentas[i].getCantidadAut(), font, contenido, izquierda, 0, 1,
                     Rectangle.RECTANGLE));
             tabla.addCell(
                     reporte.celda(cuentas[i].getMed(), font, contenido, izquierda, 0, 1, Rectangle.RECTANGLE));
             tabla.addCell(reporte.celda((cuentas[i].isRefCoti() == true ? "x" : ""), font, contenido, izquierda,
                     0, 0, Rectangle.RECTANGLE));
             tabla.addCell(reporte.celda((cuentas[i].getIntCamb() != -1 ? "x" : ""), font, contenido, izquierda,
                     0, 0, Rectangle.RECTANGLE));
             tabla.addCell(reporte.celda((cuentas[i].getIntRepMin() != -1 ? "x" : ""), font, contenido,
                     izquierda, 0, 0, Rectangle.RECTANGLE));
             tabla.addCell(reporte.celda((cuentas[i].getIntRepMed() != -1 ? "x" : ""), font, contenido,
                     izquierda, 0, 0, Rectangle.RECTANGLE));
             tabla.addCell(reporte.celda((cuentas[i].getIntRepMax() != -1 ? "x" : ""), font, contenido,
                     izquierda, 0, 0, Rectangle.RECTANGLE));
             tabla.addCell(reporte.celda((cuentas[i].getIntPinMin() != -1 ? "x" : ""), font, contenido,
                     izquierda, 0, 0, Rectangle.RECTANGLE));
             tabla.addCell(reporte.celda((cuentas[i].getIntPinMed() != -1 ? "x" : ""), font, contenido,
                     izquierda, 0, 0, Rectangle.RECTANGLE));
             tabla.addCell(reporte.celda((cuentas[i].getIntPinMax() != -1 ? "x" : ""), font, contenido,
                     izquierda, 0, 0, Rectangle.RECTANGLE));
             tabla.addCell(reporte.celda(cuentas[i].getCatalogo().getNombre(), font, contenido, izquierda, 0, 1,
                     Rectangle.RECTANGLE));
             tabla.addCell(
                     reporte.celda((cuentas[i].getInstruccion() != null ? cuentas[i].getInstruccion() : ""),
                             font, contenido, izquierda, 0, 1, Rectangle.RECTANGLE));
         }
         tabla.setHeaderRows(3);
         reporte.agregaObjeto(tabla);
         reporte.cerrar();
         reporte.visualizar("reportes/" + ord.getIdOrden() + "/" + valor + "-operaciones1.pdf");
     } catch (Exception e) {
         e.printStackTrace();
         JOptionPane.showMessageDialog(this, "No se pudo realizar el reporte si el archivo esta abierto.");
     }
     if (session != null)
         if (session.isOpen()) {
             session.flush();
             session.clear();
             session.close();
         }
 }