Example usage for org.hibernate Query list

List of usage examples for org.hibernate Query list

Introduction

In this page you can find the example usage for org.hibernate Query list.

Prototype

List<R> list();

Source Link

Document

Return the query results as a List.

Usage

From source file:ai.test.service.EmployeeService.java

public List<Employee> search(String employeeName, String departmentName) {
    StringBuilder query = new StringBuilder("FROM Employee e WHERE 1=1 ");
    if (!employeeName.isEmpty()) {
        query.append("AND e.name like '%").append(employeeName).append("%'");
    }//from w  ww  . j  a  va2 s. com

    if (!departmentName.isEmpty()) {
        query.append("AND e.department.name like '%").append(departmentName).append("%'");
    }
    try {
        Query q = session.createQuery(query.toString());

        List<Employee> resultList = q.list();
        return resultList;

    } catch (Exception ex) {
        ex.printStackTrace();
    }
    return null;
}

From source file:aish.vaishno.hibernatesample.FoodOrderDao.java

public void dummy() {
    Session session = HibernateUtil.getSessionFactory().openSession();
    Transaction transaction = session.beginTransaction();
    System.out.println("session: " + session);
    FoodOrder foodOrder = new FoodOrder();
    // foodOrder.setId(4l);
    // foodOrder.setItemName("Pongal");
    //  session.save(foodOrder);
    //  transaction.commit();
    //  session.flush();
    System.out.println("Insertion successful");
    Query query = session.createQuery("select c from FoodOrder c");
    System.out.println("size: " + query.list());
    session.close();/*from  www  . ja  va  2  s  .c o  m*/
    HibernateUtil.shutdown();
}

From source file:alma.acs.commandcenter.serviceshelper.TMCDBServicesHelper.java

License:Open Source License

/**
 * //w ww . java2 s. c  o m
 * @return The configuration names from the TMCDB
 * 
 * @throws HibernateException In case of error getting data from the TMCDB
 */
@SuppressWarnings("rawtypes")
public Collection getConfigurationNames() throws HibernateException {
    Query query = session.createQuery("from Configuration");
    List list = query.list();
    return list;
}

From source file:alma.acs.commandcenter.serviceshelper.TMCDBServicesHelper.java

License:Open Source License

/**
 * Queries the TMCDB and return the list of services to start for the 
 * passed configuration name./* ww w.  ja v a  2 s .  c om*/
 * 
 * @param configurationName The not <code>null</code> and not empty name of the configuration
 * @return The not <code>null</code> list of services to start for the passed configuration
 * @throws HibernateException In case of error getting data from the TMCDB
 */
@SuppressWarnings("rawtypes")
public List<AcsServiceToStart> getServicesList(String configurationName) throws HibernateException {
    if (configurationName == null || configurationName.isEmpty()) {
        throw new IllegalArgumentException("Invalid null or empty name of configuration");
    }
    logger.log(AcsLogLevel.DEBUG,
            "Getting the list of services from TMCDB and configuration " + configurationName);
    Query query = session.createSQLQuery(sqlQuery);
    query.setString(namedParameterName, configurationName);
    List svcs = query.list();
    List<AcsServiceToStart> ret = new ArrayList<TMCDBServicesHelper.AcsServiceToStart>();
    if (svcs != null) {
        AcsLogLevel lvl = (svcs.size() == 0) ? AcsLogLevel.WARNING : AcsLogLevel.DEBUG;
        logger.log(lvl, "Got " + svcs.size() + " services from TMCDB");
        for (Object s : svcs) {
            ret.add(AcsServiceToStart.instanceFromDBRow((Object[]) s));
        }
    } else {
        logger.log(AcsLogLevel.WARNING, "Got a NULL list of services from TMCDB");
    }
    return ret;
}

From source file:alma.acs.tmcdb.TestPojosPersistence.java

License:Open Source License

public void testHQL() throws Exception {

    createDB();/*from w w w.  j  av  a  2 s  .  c o m*/

    try {
        createConfigurationComputerAndTwoNetworkDevices();

        Configuration config = (Configuration) hibernateUtil.getList(Configuration.class).iterator().next();
        assertNotNull(config);

        // Now we test that using HQL queries
        Query q = hibernateUtil.getSession().createQuery("from NetworkDevice as nd where nd.name = ?");
        q.setParameter(0, "wall-e");
        assertEquals(2, q.list().size());

        q = hibernateUtil.getSession()
                .createQuery("from NetworkDevice as nd where nd.name = ? and nd.networkName = ?");
        q.setParameter(0, "wall-e");
        q.setParameter(1, "wall-e.eso.org");
        assertEquals(1, q.list().size());

        q = hibernateUtil.getSession().createQuery("from NetworkDevice as nd where nd.configuration = ?");
        q.setParameter(0, config);
        assertEquals(3, q.list().size());

        q = hibernateUtil.getSession().createQuery(
                "from Configuration as conf where conf.configurationName = ? and creationTime < ?");
        q.setParameter(0, "rtobarConfig");
        q.setParameter(1, new Date());
        assertEquals(1, q.list().size());

        try {
            // typo: should be configurationName
            q = hibernateUtil.getSession()
                    .createQuery("from Configuration as conf where conf.configuratioName = ?");
            q.setParameter(0, "rtobarConfig");
            q.list();
            fail("Should fail, property 'configuratioName' doesn't exist for Configuration objects");
        } catch (QueryException e) {
        }

    } finally {
        dropDB();
    }
}

From source file:Almacen.Conciliacion.java

private void buscaCuentas() {
     double imp = 0.0;
     if (orden != null) {
         Session session = HibernateUtil.getSessionFactory().openSession();
         try {/*  w w  w  .  j  av  a 2s .c  om*/
             session.beginTransaction().begin();
             ord = (Orden) session.get(Orden.class, Integer.parseInt(orden));
             user = (Usuario) session.get(Usuario.class, user.getIdUsuario());
             imp = ord.getCompania().getImporteHora();

             Query query = session.createSQLQuery(
                     "select id_partida, partida.tipo, catalogo.nombre, autorizado, facturado, partida.id_pedido as id, pedido.id_externo, Cantidad_aut, cant_pcp, d, r, m, med, id_parte, ori_con, \n"
                             + "Precio_aut_c_u, pcp, proveedor.nombre as prov, (select concat('[',tipo_documento,']',documento) from almacen where tipo_movimiento=1 and operacion in(1, 4) and id_pedido=id order by fecha limit 1) as factura  \n"
                             + "from partida inner join catalogo on partida.id_catalogo=catalogo.id_catalogo "
                             + "left join pedido on pedido.id_pedido=partida.id_pedido left join proveedor on pedido.id_proveedor = proveedor.id_proveedor "
                             + "where partida.id_orden=" + ord.getIdOrden()
                             + " and (partida.autorizado=true or partida.facturado=true or partida.id_pedido is not null) order by partida.id_evaluacion, partida.sub_partida desc;");
             query.setResultTransformer(Criteria.ALIAS_TO_ENTITY_MAP);
             ArrayList cuentas = (ArrayList) query.list();

             Query query2 = session.createSQLQuery(
                     "select id_partida_externa, 'AC'as tipo, descripcion, false, facturado, partida_externa.id_pedido as id, id_externo, 0.0, cantidad, d, r, m, unidad, noParte, ori_con, \n"
                             + "0.0, costo, proveedor.nombre as prov, (select concat('[',tipo_documento,']',documento) from almacen where tipo_movimiento=1 and operacion=3 and id_pedido=id order by fecha limit 1) as factura  \n"
                             + "from partida_externa left join pedido on partida_externa.id_pedido=pedido.id_pedido \n"
                             + "inner join proveedor on pedido.id_proveedor= proveedor.id_proveedor where pedido.id_orden="
                             + ord.getIdOrden() + " order by partida_externa.id_partida_externa");
             query2.setResultTransformer(Criteria.ALIAS_TO_ENTITY_MAP);
             ArrayList cuentas2 = (ArrayList) query2.list();

             int renglones = cuentas.size() + cuentas2.size();
             model = new MyModel(renglones, columnas, this.types);
             t_datos.setModel(model);

             if (cuentas.size() > 0) {
                 noPartida = new ArrayList();
                 int num_c = cuentas.size();
                 for (int i = 0; i < num_c; i++) {
                     java.util.HashMap map = (java.util.HashMap) cuentas.get(i);
                     noPartida.add(map.get("id_partida"));
                     model.setValueAt(map.get("id_partida"), i, 0);
                     model.setValueAt(map.get("tipo"), i, 1);
                     model.setValueAt(map.get("nombre"), i, 2);
                     model.setValueAt(map.get("autorizado"), i, 3);
                     model.setValueAt(map.get("facturado"), i, 4);
                     model.setValueAt(map.get("id"), i, 5);
                     model.setValueAt(map.get("id_externo"), i, 6);
                     model.setValueAt(map.get("Cantidad_aut"), i, 7);//cant Aut
                     if (map.get("cant_pcp") != null)
                         model.setValueAt(map.get("cant_pcp"), i, 8);//cant Com
                     else
                         model.setValueAt(0.00d, i, 8);//cant Com
                     model.setValueAt(map.get("ori_con"), i, 9);//origen
                     model.setCeldaEditable(i, 9, true);
                     model.setValueAt(map.get("d"), i, 10);//origen
                     model.setCeldaEditable(i, 10, true);
                     model.setValueAt(map.get("r"), i, 11);//origen
                     model.setCeldaEditable(i, 11, true);
                     model.setValueAt(map.get("m"), i, 12);//origen
                     model.setCeldaEditable(i, 12, true);
                     model.setValueAt(map.get("med"), i, 13);
                     model.setValueAt(map.get("id_parte"), i, 14);

                     model.setValueAt(map.get("Precio_aut_c_u"), i, 15);
                     if (map.get("pcp") != null)
                         model.setValueAt(map.get("pcp"), i, 16);//C/U Com
                     else
                         model.setValueAt(0.00d, i, 16);//C/U Com

                     double suma = 0.0d;
                     if (map.get("ori_con").toString().compareToIgnoreCase("-") != 0) {
                         if (map.get("cant_pcp") != null && map.get("pcp") != null)
                             suma = Double.parseDouble(map.get("cant_pcp").toString())
                                     * (Double.parseDouble(map.get("pcp").toString()) / 0.9d);
                     }
                     if (Double.parseDouble(map.get("d").toString()) > 0) {
                         if (map.get("Precio_aut_c_u") != null)
                             suma += Double.parseDouble(map.get("d").toString())
                                     * (Double.parseDouble(map.get("Precio_aut_c_u").toString()) * 0.72d);
                     }
                     if (Double.parseDouble(map.get("r").toString()) > 0) {
                         if (map.get("Precio_aut_c_u") != null)
                             suma += Double.parseDouble(map.get("r").toString())
                                     * (Double.parseDouble(map.get("Precio_aut_c_u").toString()) * 0.65d);
                     }
                     if (Double.parseDouble(map.get("m").toString()) > 0) {
                         if (map.get("Precio_aut_c_u") != null)
                             suma += Double.parseDouble(map.get("m").toString())
                                     * (Double.parseDouble(map.get("Precio_aut_c_u").toString()) * 0.65d);
                     }
                     model.setValueAt(suma, i, 17);

                     model.setValueAt(map.get("prov"), i, 18);//proveedor

                     model.setValueAt(map.get("factura"), i, 19);// no de factura

                 }
                 if (user.getGeneraPedidos() == false)
                     t_datos.setEnabled(false);
                 else
                     t_datos.setEnabled(false);

             }
             int num_c2 = cuentas2.size();
             if (num_c2 > 0) {
                 for (int i = 0; i < num_c2; i++) {
                     java.util.HashMap map = (java.util.HashMap) cuentas2.get(i);
                     model.setValueAt(map.get("id_partida_externa"), i + cuentas.size(), 0);
                     model.setValueAt(map.get("tipo"), i + cuentas.size(), 1);
                     model.setValueAt(map.get("descripcion"), i + cuentas.size(), 2);
                     model.setValueAt(false, i + cuentas.size(), 3);
                     model.setValueAt(map.get("facturado"), i + cuentas.size(), 4);
                     model.setCeldaEditable(i + cuentas.size(), 4, true);
                     model.setValueAt(map.get("id"), i + cuentas.size(), 5);
                     model.setValueAt(map.get("id_externo"), i + cuentas.size(), 6);
                     model.setValueAt(map.get("cantidad"), i + cuentas.size(), 7);
                     model.setValueAt(map.get("cantidad"), i + cuentas.size(), 8);
                     model.setValueAt(map.get("ori_con"), i + cuentas.size(), 9);//Origen
                     model.setCeldaEditable(i + cuentas.size(), 9, true);
                     model.setValueAt(map.get("d"), i + cuentas.size(), 10);//origen
                     model.setCeldaEditable(i + cuentas.size(), 10, true);
                     model.setValueAt(map.get("r"), i + cuentas.size(), 11);//origen
                     model.setCeldaEditable(i + cuentas.size(), 11, true);
                     model.setValueAt(map.get("m"), i + cuentas.size(), 12);//origen
                     model.setCeldaEditable(i + cuentas.size(), 12, true);
                     model.setValueAt(map.get("unidad"), i + cuentas.size(), 13);
                     model.setValueAt(map.get("noParte"), i + cuentas.size(), 14);
                     model.setValueAt(0.0, i + cuentas.size(), 15);
                     model.setValueAt(map.get("costo"), i + cuentas.size(), 16);
                     double suma = 0.0d;
                     if (map.get("ori_con").toString().compareToIgnoreCase("-") != 0)
                         suma = Double.parseDouble(map.get("costo").toString()) / 0.9;
                     model.setValueAt(suma, i + cuentas.size(), 17);
                     model.setValueAt(map.get("prov"), i + cuentas.size(), 18);
                     model.setValueAt(map.get("factura"), i + cuentas.size(), 19);// N factura
                 }
             }
             session.beginTransaction().rollback();
         } catch (Exception e) {
             e.printStackTrace();
         } finally {
             if (session.isOpen() == true)
                 session.close();
         }
     } else {
         model = new MyModel(0, columnas, this.types);
         t_datos.setModel(model);
     }
     formatoTabla();
     suma();
 }

From source file:Almacen.Conciliacion.java

private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton1ActionPerformed
     // TODO add your handling code here:
     try {//from   ww  w .  j a  v a  2  s.  c om
         javax.swing.JFileChooser archivo = new javax.swing.JFileChooser();
         archivo.setFileFilter(new ExtensionFileFilter("Excel document (*.xls)", new String[] { "xls" }));
         String ruta = null;

         if (archivo.showSaveDialog(null) == archivo.APPROVE_OPTION) {
             ruta = archivo.getSelectedFile().getAbsolutePath();
             if (ruta != null) {
                 File archivoXLS = new File(ruta + ".xls");
                 Session session = HibernateUtil.getSessionFactory().openSession();
                 ArrayList datos = new ArrayList();
                 Query query = session.createSQLQuery(
                         "select compania.nombre, orden.tipo_nombre, orden.modelo, orden.no_serie, clientes.nombre as nombres,orden.id_orden \n"
                                 + "from orden inner join compania on compania.id_compania=orden.id_compania inner join clientes on clientes.id_clientes=orden.id_cliente\n"
                                 + "where orden.id_orden=" + Integer.parseInt(orden) + "");
                 query.setResultTransformer(Criteria.ALIAS_TO_ENTITY_MAP);
                 datos = (ArrayList) query.list();

                 //
                 Path FROM = Paths.get("imagenes/plantillaConciliacion.xls");
                 Path TO = Paths.get(ruta + ".xls");
                 //sobreescribir el fichero de destino, si existe, y copiar
                 // los atributos, incluyendo los permisos rwx
                 CopyOption[] options = new CopyOption[] { StandardCopyOption.REPLACE_EXISTING,
                         StandardCopyOption.COPY_ATTRIBUTES };
                 Files.copy(FROM, TO, options);

                 FileInputStream miPlantilla = new FileInputStream(archivoXLS);
                 POIFSFileSystem fsFileSystem = new POIFSFileSystem(miPlantilla);
                 HSSFWorkbook libro = new HSSFWorkbook(fsFileSystem);
                 libro.getSheet("Conciliacion").getRow(0).getCell(6)
                         .setCellValue("CONCILIACIN PARA FACTURACIN");

                 for (int i = 0; i < datos.size(); i++) {
                     java.util.HashMap map = (java.util.HashMap) datos.get(i);

                     libro.getSheet("Conciliacion").getRow(1).getCell(2)
                             .setCellValue(map.get("nombre").toString());
                     libro.getSheet("Conciliacion").getRow(2).getCell(2)
                             .setCellValue(map.get("tipo_nombre").toString());
                     libro.getSheet("Conciliacion").getRow(3).getCell(2)
                             .setCellValue(map.get("modelo").toString());
                     libro.getSheet("Conciliacion").getRow(4).getCell(2)
                             .setCellValue(map.get("no_serie").toString());
                     libro.getSheet("Conciliacion").getRow(5).getCell(2)
                             .setCellValue(map.get("nombres").toString());
                     libro.getSheet("Conciliacion").getRow(2).getCell(12)
                             .setCellValue(map.get("id_orden").toString());
                 }
                 HSSFCellStyle borde_d = libro.createCellStyle();
                 borde_d.setBorderBottom(CellStyle.BORDER_THIN);
                 borde_d.setBorderTop(CellStyle.BORDER_THIN);
                 borde_d.setBorderRight(CellStyle.BORDER_THIN);
                 borde_d.setBorderLeft(CellStyle.BORDER_THIN);
                 borde_d.setAlignment(CellStyle.ALIGN_RIGHT);

                 HSSFCellStyle borde_i = libro.createCellStyle();
                 borde_i.setBorderBottom(CellStyle.BORDER_THIN);
                 borde_i.setBorderTop(CellStyle.BORDER_THIN);
                 borde_i.setBorderRight(CellStyle.BORDER_THIN);
                 borde_i.setBorderLeft(CellStyle.BORDER_THIN);
                 borde_i.setAlignment(CellStyle.ALIGN_LEFT);

                 HSSFCellStyle borde_c = libro.createCellStyle();
                 borde_c.setBorderBottom(CellStyle.BORDER_THIN);
                 borde_c.setBorderTop(CellStyle.BORDER_THIN);
                 borde_c.setBorderRight(CellStyle.BORDER_THIN);
                 borde_c.setBorderLeft(CellStyle.BORDER_THIN);
                 borde_c.setAlignment(CellStyle.ALIGN_CENTER);

                 HSSFCellStyle borde_dr = libro.createCellStyle();
                 borde_dr.setBorderBottom(CellStyle.BORDER_THIN);
                 borde_dr.setBorderTop(CellStyle.BORDER_THIN);
                 borde_dr.setBorderRight(CellStyle.BORDER_THIN);
                 borde_dr.setBorderLeft(CellStyle.BORDER_THIN);
                 borde_dr.setAlignment(CellStyle.ALIGN_RIGHT);
                 borde_dr.setFillPattern(HSSFCellStyle.SOLID_FOREGROUND);
                 borde_dr.setFillBackgroundColor(HSSFColor.LIGHT_BLUE.index);
                 borde_dr.setFillForegroundColor(HSSFColor.YELLOW.index);

                 HSSFCellStyle borde_ir = libro.createCellStyle();
                 borde_ir.setBorderBottom(CellStyle.BORDER_THIN);
                 borde_ir.setBorderTop(CellStyle.BORDER_THIN);
                 borde_ir.setBorderRight(CellStyle.BORDER_THIN);
                 borde_ir.setBorderLeft(CellStyle.BORDER_THIN);
                 borde_ir.setAlignment(CellStyle.ALIGN_LEFT);
                 borde_ir.setFillPattern(HSSFCellStyle.SOLID_FOREGROUND);
                 borde_ir.setFillBackgroundColor(HSSFColor.LIGHT_BLUE.index);
                 borde_ir.setFillForegroundColor(HSSFColor.YELLOW.index);

                 HSSFCellStyle borde_cr = libro.createCellStyle();
                 borde_cr.setBorderBottom(CellStyle.BORDER_THIN);
                 borde_cr.setBorderTop(CellStyle.BORDER_THIN);
                 borde_cr.setBorderRight(CellStyle.BORDER_THIN);
                 borde_cr.setBorderLeft(CellStyle.BORDER_THIN);
                 borde_cr.setAlignment(CellStyle.ALIGN_CENTER);
                 borde_cr.setFillPattern(HSSFCellStyle.SOLID_FOREGROUND);
                 borde_cr.setFillBackgroundColor(HSSFColor.LIGHT_BLUE.index);
                 borde_cr.setFillForegroundColor(HSSFColor.YELLOW.index);

                 DecimalFormat formatoPorcentaje = new DecimalFormat("#,##0.00");

                 int miRenglon = 9;
                 int num_tab = t_datos.getRowCount();
                 for (int i = 0; i < num_tab; i++) {
                     for (int j = 0; j < 4; j++) {
                         int renglon = 0;
                         switch (j) {
                         case 0:
                             renglon = 8;
                             break;
                         case 1:
                             renglon = 10;
                             break;
                         case 2:
                             renglon = 11;
                             break;
                         case 3:
                             renglon = 12;
                             break;
                         }
                         if ((Double.parseDouble(t_datos.getValueAt(i, renglon).toString()) > 0
                                 && t_datos.getValueAt(i, 9).toString().compareTo("N") == 0)
                                 || ((Double.parseDouble(t_datos.getValueAt(i, renglon).toString()) > 0
                                         && renglon >= 10))
                                 || (renglon == 8
                                         && Double.parseDouble(t_datos.getValueAt(i, 10).toString()) <= 0
                                         && Double.parseDouble(t_datos.getValueAt(i, 11).toString()) <= 0
                                         && Double.parseDouble(t_datos.getValueAt(i, 12).toString()) <= 0)) {
                             if ((boolean) t_datos.getValueAt(i, 3) == true
                                     || (boolean) t_datos.getValueAt(i, 4) == true) {
                                 libro.getSheet("Conciliacion").createRow(miRenglon);
                                 //columna0
                                 if (t_datos.getValueAt(i, 5) == null) {
                                     libro.getSheet("Conciliacion").getRow(miRenglon).createCell(0)
                                             .setCellValue("");
                                 } else {
                                     libro.getSheet("Conciliacion").getRow(miRenglon).createCell(0)
                                             .setCellValue(t_datos.getValueAt(i, 5).toString());
                                 }

                                 //columna1
                                 if (t_datos.getValueAt(i, 6) == null) {
                                     libro.getSheet("Conciliacion").getRow(miRenglon).createCell(1)
                                             .setCellValue("");
                                 } else {
                                     libro.getSheet("Conciliacion").getRow(miRenglon).createCell(1)
                                             .setCellValue(t_datos.getValueAt(i, 6).toString());
                                 }

                                 //columna2
                                 libro.getSheet("Conciliacion").getRow(miRenglon).createCell(2)
                                         .setCellValue(t_datos.getValueAt(i, renglon).toString());

                                 //columna3
                                 if (t_datos.getValueAt(i, 14) == null) {
                                     libro.getSheet("Conciliacion").getRow(miRenglon).createCell(3)
                                             .setCellValue("");
                                 } else {
                                     libro.getSheet("Conciliacion").getRow(miRenglon).createCell(3)
                                             .setCellValue(t_datos.getValueAt(i, 14).toString());
                                 }

                                 //columna4
                                 libro.getSheet("Conciliacion").getRow(miRenglon).createCell(4)
                                         .setCellValue(t_datos.getValueAt(i, 2).toString());

                                 //columna5
                                 if (renglon == 8 && t_datos.getValueAt(i, 9).toString().compareTo("-") == 0)
                                     libro.getSheet("Conciliacion").getRow(miRenglon).createCell(5)
                                             .setCellValue("");
                                 else {
                                     switch (renglon) {
                                     case 8:
                                         libro.getSheet("Conciliacion").getRow(miRenglon).createCell(5)
                                                 .setCellValue("N");
                                         break;
                                     case 10:
                                         libro.getSheet("Conciliacion").getRow(miRenglon).createCell(5)
                                                 .setCellValue("D");
                                         break;
                                     case 11:
                                         libro.getSheet("Conciliacion").getRow(miRenglon).createCell(5)
                                                 .setCellValue("R");
                                         break;
                                     case 12:
                                         libro.getSheet("Conciliacion").getRow(miRenglon).createCell(5)
                                                 .setCellValue("M");
                                         break;
                                     }
                                 }

                                 //columna6
                                 libro.getSheet("Conciliacion").getRow(miRenglon).createCell(6)
                                         .setCellValue(formatoPorcentaje.format(t_datos.getValueAt(i, 15)));

                                 //columna7 $tot aut.
                                 double n;
                                 n = BigDecimal
                                         .valueOf(Double.parseDouble(t_datos.getValueAt(i, renglon).toString())
                                                 * Double.parseDouble(t_datos.getValueAt(i, 15).toString()))
                                         .setScale(2, RoundingMode.UP).doubleValue();
                                 libro.getSheet("Conciliacion").getRow(miRenglon).createCell(7)
                                         .setCellValue(formatoPorcentaje.format(n));

                                 //columna8
                                 libro.getSheet("Conciliacion").getRow(miRenglon).createCell(8)
                                         .setCellValue(formatoPorcentaje.format(t_datos.getValueAt(i, 16)));

                                 //columna9 $tot com
                                 n = BigDecimal
                                         .valueOf(Double.parseDouble(t_datos.getValueAt(i, renglon).toString())
                                                 * Double.parseDouble(t_datos.getValueAt(i, 16).toString()))
                                         .setScale(2, RoundingMode.UP).doubleValue();
                                 libro.getSheet("Conciliacion").getRow(miRenglon).createCell(9)
                                         .setCellValue(formatoPorcentaje.format(n));

                                 //columna10 11
                                 if (renglon == 8 && t_datos.getValueAt(i, 9).toString().compareTo("-") == 0) {
                                     libro.getSheet("Conciliacion").getRow(miRenglon).createCell(10)
                                             .setCellValue("");
                                     libro.getSheet("Conciliacion").getRow(miRenglon).createCell(11)
                                             .setCellValue("");
                                 } else {
                                     switch (renglon) {
                                     case 8:
                                         n = BigDecimal.valueOf(
                                                 Double.parseDouble(t_datos.getValueAt(i, 16).toString()) / 0.9d)
                                                 .setScale(2, RoundingMode.UP).doubleValue();
                                         libro.getSheet("Conciliacion").getRow(miRenglon).createCell(11)
                                                 .setCellValue(formatoPorcentaje.format(n * Double.parseDouble(
                                                         t_datos.getValueAt(i, renglon).toString())));
                                         libro.getSheet("Conciliacion").getRow(miRenglon).createCell(10)
                                                 .setCellValue(formatoPorcentaje.format(n));
                                         break;
                                     case 10:
                                         n = BigDecimal
                                                 .valueOf(
                                                         Double.parseDouble(t_datos.getValueAt(i, 15).toString())
                                                                 * 0.72d)
                                                 .setScale(2, RoundingMode.UP).doubleValue();
                                         libro.getSheet("Conciliacion").getRow(miRenglon).createCell(11)
                                                 .setCellValue(formatoPorcentaje.format(n * Double.parseDouble(
                                                         t_datos.getValueAt(i, renglon).toString())));
                                         libro.getSheet("Conciliacion").getRow(miRenglon).createCell(10)
                                                 .setCellValue(formatoPorcentaje.format(n));
                                         break;
                                     case 11:
                                         n = BigDecimal
                                                 .valueOf(
                                                         Double.parseDouble(t_datos.getValueAt(i, 15).toString())
                                                                 * 0.65d)
                                                 .setScale(2, RoundingMode.UP).doubleValue();
                                         libro.getSheet("Conciliacion").getRow(miRenglon).createCell(11)
                                                 .setCellValue(formatoPorcentaje.format(n * Double.parseDouble(
                                                         t_datos.getValueAt(i, renglon).toString())));
                                         libro.getSheet("Conciliacion").getRow(miRenglon).createCell(10)
                                                 .setCellValue(formatoPorcentaje.format(n));
                                         break;
                                     case 12:
                                         n = BigDecimal
                                                 .valueOf(
                                                         Double.parseDouble(t_datos.getValueAt(i, 15).toString())
                                                                 * 0.65d)
                                                 .setScale(2, RoundingMode.UP).doubleValue();
                                         libro.getSheet("Conciliacion").getRow(miRenglon).createCell(11)
                                                 .setCellValue(formatoPorcentaje.format(n * Double.parseDouble(
                                                         t_datos.getValueAt(i, renglon).toString())));
                                         libro.getSheet("Conciliacion").getRow(miRenglon).createCell(10)
                                                 .setCellValue(formatoPorcentaje.format(n));
                                         break;
                                     }
                                 }

                                 //columna12
                                 if (t_datos.getValueAt(i, 18) == null) {
                                     libro.getSheet("Conciliacion").getRow(miRenglon).createCell(12)
                                             .setCellValue("");
                                 } else {
                                     libro.getSheet("Conciliacion").getRow(miRenglon).createCell(12)
                                             .setCellValue(t_datos.getValueAt(i, 18).toString());
                                 }

                                 //columna13
                                 if (t_datos.getValueAt(i, 19) == null) {
                                     libro.getSheet("Conciliacion").getRow(miRenglon).createCell(13)
                                             .setCellValue("");
                                 } else {
                                     libro.getSheet("Conciliacion").getRow(miRenglon).createCell(13)
                                             .setCellValue(t_datos.getValueAt(i, 19).toString());
                                 }

                                 //columna14
                                 libro.getSheet("Conciliacion").getRow(miRenglon).createCell(14)
                                         .setCellValue("V");

                                 if (renglon == 8 && t_datos.getValueAt(i, 9).toString().compareTo("-") == 0) {
                                     libro.getSheet("Conciliacion").getRow(miRenglon).getCell(0)
                                             .setCellStyle(borde_d);
                                     libro.getSheet("Conciliacion").getRow(miRenglon).getCell(1)
                                             .setCellStyle(borde_d);
                                     libro.getSheet("Conciliacion").getRow(miRenglon).getCell(2)
                                             .setCellStyle(borde_d);
                                     libro.getSheet("Conciliacion").getRow(miRenglon).getCell(3)
                                             .setCellStyle(borde_d);
                                     libro.getSheet("Conciliacion").getRow(miRenglon).getCell(4)
                                             .setCellStyle(borde_i);
                                     libro.getSheet("Conciliacion").getRow(miRenglon).getCell(5)
                                             .setCellStyle(borde_c);
                                     libro.getSheet("Conciliacion").getRow(miRenglon).getCell(6)
                                             .setCellStyle(borde_d);
                                     libro.getSheet("Conciliacion").getRow(miRenglon).getCell(7)
                                             .setCellStyle(borde_d);
                                     libro.getSheet("Conciliacion").getRow(miRenglon).getCell(8)
                                             .setCellStyle(borde_d);
                                     libro.getSheet("Conciliacion").getRow(miRenglon).getCell(9)
                                             .setCellStyle(borde_d);
                                     libro.getSheet("Conciliacion").getRow(miRenglon).getCell(10)
                                             .setCellStyle(borde_d);
                                     libro.getSheet("Conciliacion").getRow(miRenglon).getCell(11)
                                             .setCellStyle(borde_d);
                                     libro.getSheet("Conciliacion").getRow(miRenglon).getCell(12)
                                             .setCellStyle(borde_i);
                                     libro.getSheet("Conciliacion").getRow(miRenglon).getCell(13)
                                             .setCellStyle(borde_i);
                                     libro.getSheet("Conciliacion").getRow(miRenglon).getCell(14)
                                             .setCellStyle(borde_d);
                                 } else {
                                     libro.getSheet("Conciliacion").getRow(miRenglon).getCell(0)
                                             .setCellStyle(borde_dr);
                                     libro.getSheet("Conciliacion").getRow(miRenglon).getCell(1)
                                             .setCellStyle(borde_dr);
                                     libro.getSheet("Conciliacion").getRow(miRenglon).getCell(2)
                                             .setCellStyle(borde_dr);
                                     libro.getSheet("Conciliacion").getRow(miRenglon).getCell(3)
                                             .setCellStyle(borde_dr);
                                     libro.getSheet("Conciliacion").getRow(miRenglon).getCell(4)
                                             .setCellStyle(borde_ir);
                                     libro.getSheet("Conciliacion").getRow(miRenglon).getCell(5)
                                             .setCellStyle(borde_cr);
                                     libro.getSheet("Conciliacion").getRow(miRenglon).getCell(6)
                                             .setCellStyle(borde_dr);
                                     libro.getSheet("Conciliacion").getRow(miRenglon).getCell(7)
                                             .setCellStyle(borde_dr);
                                     libro.getSheet("Conciliacion").getRow(miRenglon).getCell(8)
                                             .setCellStyle(borde_dr);
                                     libro.getSheet("Conciliacion").getRow(miRenglon).getCell(9)
                                             .setCellStyle(borde_dr);
                                     libro.getSheet("Conciliacion").getRow(miRenglon).getCell(10)
                                             .setCellStyle(borde_dr);
                                     libro.getSheet("Conciliacion").getRow(miRenglon).getCell(11)
                                             .setCellStyle(borde_dr);
                                     libro.getSheet("Conciliacion").getRow(miRenglon).getCell(12)
                                             .setCellStyle(borde_ir);
                                     libro.getSheet("Conciliacion").getRow(miRenglon).getCell(13)
                                             .setCellStyle(borde_ir);
                                     libro.getSheet("Conciliacion").getRow(miRenglon).getCell(14)
                                             .setCellStyle(borde_dr);
                                 }
                                 miRenglon++;
                             }
                         }
                     }
                 }
                 //font1.setColor(BaseColor.WHITE);
                 libro.getSheet("Conciliacion").createRow(miRenglon);
                 libro.getSheet("Conciliacion")
                         .addMergedRegion(new CellRangeAddress(miRenglon, miRenglon, 0, 14));
                 libro.getSheet("Conciliacion").getRow(miRenglon).createCell(0)
                         .setCellValue("Faltante en Vales");
                 libro.getSheet("Conciliacion").getRow(miRenglon).getCell(0).setCellStyle(borde_c);
                 miRenglon++;

                 for (int i = 0; i < num_tab; i++) {
                     for (int j = 0; j < 4; j++) {
                         int renglon = 0;
                         switch (j) {
                         case 0:
                             renglon = 8;
                             break;
                         case 1:
                             renglon = 10;
                             break;
                         case 2:
                             renglon = 11;
                             break;
                         case 3:
                             renglon = 12;
                             break;
                         }
                         if ((Double.parseDouble(t_datos.getValueAt(i, renglon).toString()) > 0
                                 && t_datos.getValueAt(i, 9).toString().compareTo("N") == 0)
                                 || ((Double.parseDouble(t_datos.getValueAt(i, renglon).toString()) > 0
                                         && renglon >= 10))
                                 || (renglon == 8
                                         && Double.parseDouble(t_datos.getValueAt(i, 10).toString()) <= 0
                                         && Double.parseDouble(t_datos.getValueAt(i, 11).toString()) <= 0
                                         && Double.parseDouble(t_datos.getValueAt(i, 12).toString()) <= 0)) {
                             if ((boolean) t_datos.getValueAt(i, 3) == false
                                     && (boolean) t_datos.getValueAt(i, 4) == false
                                     && t_datos.getValueAt(i, 5) != null) {
                                 libro.getSheet("Conciliacion").createRow(miRenglon);
                                 //columna0
                                 if (t_datos.getValueAt(i, 5) == null) {
                                     libro.getSheet("Conciliacion").getRow(miRenglon).createCell(0)
                                             .setCellValue("");
                                 } else {
                                     libro.getSheet("Conciliacion").getRow(miRenglon).createCell(0)
                                             .setCellValue(t_datos.getValueAt(i, 5).toString());
                                 }

                                 //columna1
                                 if (t_datos.getValueAt(i, 6) == null) {
                                     libro.getSheet("Conciliacion").getRow(miRenglon).createCell(1)
                                             .setCellValue("");
                                 } else {
                                     libro.getSheet("Conciliacion").getRow(miRenglon).createCell(1)
                                             .setCellValue(t_datos.getValueAt(i, 6).toString());
                                 }

                                 //columna2
                                 libro.getSheet("Conciliacion").getRow(miRenglon).createCell(2)
                                         .setCellValue(t_datos.getValueAt(i, renglon).toString());

                                 //columna3
                                 if (t_datos.getValueAt(i, 14) == null) {
                                     libro.getSheet("Conciliacion").getRow(miRenglon).createCell(3)
                                             .setCellValue("");
                                 } else {
                                     libro.getSheet("Conciliacion").getRow(miRenglon).createCell(3)
                                             .setCellValue(t_datos.getValueAt(i, 14).toString());
                                 }

                                 //columna4
                                 libro.getSheet("Conciliacion").getRow(miRenglon).createCell(4)
                                         .setCellValue(t_datos.getValueAt(i, 2).toString());

                                 //columna5
                                 if (renglon == 8 && t_datos.getValueAt(i, 9).toString().compareTo("-") == 0)
                                     libro.getSheet("Conciliacion").getRow(miRenglon).createCell(5)
                                             .setCellValue("");
                                 else {
                                     switch (renglon) {
                                     case 8:
                                         libro.getSheet("Conciliacion").getRow(miRenglon).createCell(5)
                                                 .setCellValue("N");
                                         break;
                                     case 10:
                                         libro.getSheet("Conciliacion").getRow(miRenglon).createCell(5)
                                                 .setCellValue("D");
                                         break;
                                     case 11:
                                         libro.getSheet("Conciliacion").getRow(miRenglon).createCell(5)
                                                 .setCellValue("R");
                                         break;
                                     case 12:
                                         libro.getSheet("Conciliacion").getRow(miRenglon).createCell(5)
                                                 .setCellValue("M");
                                         break;
                                     }
                                 }
                                 //columna6
                                 libro.getSheet("Conciliacion").getRow(miRenglon).createCell(6)
                                         .setCellValue(formatoPorcentaje.format(t_datos.getValueAt(i, 15)));

                                 //columna7 $tot aut.
                                 double n;
                                 n = BigDecimal
                                         .valueOf(Double.parseDouble(t_datos.getValueAt(i, renglon).toString())
                                                 * Double.parseDouble(t_datos.getValueAt(i, 15).toString()))
                                         .setScale(2, RoundingMode.UP).doubleValue();
                                 libro.getSheet("Conciliacion").getRow(miRenglon).createCell(7)
                                         .setCellValue(formatoPorcentaje.format(n));

                                 //columna8
                                 libro.getSheet("Conciliacion").getRow(miRenglon).createCell(8)
                                         .setCellValue(formatoPorcentaje.format(t_datos.getValueAt(i, 16)));

                                 //columna9 $tot com
                                 n = BigDecimal
                                         .valueOf(Double.parseDouble(t_datos.getValueAt(i, renglon).toString())
                                                 * Double.parseDouble(t_datos.getValueAt(i, 16).toString()))
                                         .setScale(2, RoundingMode.UP).doubleValue();
                                 libro.getSheet("Conciliacion").getRow(miRenglon).createCell(9)
                                         .setCellValue(formatoPorcentaje.format(n));

                                 //columna10 11
                                 if (renglon == 8 && t_datos.getValueAt(i, 9).toString().compareTo("-") == 0) {
                                     libro.getSheet("Conciliacion").getRow(miRenglon).createCell(10)
                                             .setCellValue("");
                                     libro.getSheet("Conciliacion").getRow(miRenglon).createCell(11)
                                             .setCellValue("");
                                 } else {
                                     switch (renglon) {
                                     case 8:
                                         n = BigDecimal.valueOf(
                                                 Double.parseDouble(t_datos.getValueAt(i, 16).toString()) / 0.9d)
                                                 .setScale(2, RoundingMode.UP).doubleValue();
                                         libro.getSheet("Conciliacion").getRow(miRenglon).createCell(10)
                                                 .setCellValue(formatoPorcentaje.format(n * Double.parseDouble(
                                                         t_datos.getValueAt(i, renglon).toString())));
                                         libro.getSheet("Conciliacion").getRow(miRenglon).createCell(11)
                                                 .setCellValue(formatoPorcentaje.format(n));
                                         break;
                                     case 10:
                                         n = BigDecimal
                                                 .valueOf(
                                                         Double.parseDouble(t_datos.getValueAt(i, 15).toString())
                                                                 * 0.72d)
                                                 .setScale(2, RoundingMode.UP).doubleValue();
                                         libro.getSheet("Conciliacion").getRow(miRenglon).createCell(10)
                                                 .setCellValue(formatoPorcentaje.format(n * Double.parseDouble(
                                                         t_datos.getValueAt(i, renglon).toString())));
                                         libro.getSheet("Conciliacion").getRow(miRenglon).createCell(11)
                                                 .setCellValue(formatoPorcentaje.format(n));
                                         break;
                                     case 11:
                                         n = BigDecimal
                                                 .valueOf(
                                                         Double.parseDouble(t_datos.getValueAt(i, 15).toString())
                                                                 * 0.65d)
                                                 .setScale(2, RoundingMode.UP).doubleValue();
                                         libro.getSheet("Conciliacion").getRow(miRenglon).createCell(10)
                                                 .setCellValue(formatoPorcentaje.format(n * Double.parseDouble(
                                                         t_datos.getValueAt(i, renglon).toString())));
                                         libro.getSheet("Conciliacion").getRow(miRenglon).createCell(11)
                                                 .setCellValue(formatoPorcentaje.format(n));
                                         break;
                                     case 12:
                                         n = BigDecimal
                                                 .valueOf(
                                                         Double.parseDouble(t_datos.getValueAt(i, 15).toString())
                                                                 * 0.65d)
                                                 .setScale(2, RoundingMode.UP).doubleValue();
                                         libro.getSheet("Conciliacion").getRow(miRenglon).createCell(10)
                                                 .setCellValue(formatoPorcentaje.format(n * Double.parseDouble(
                                                         t_datos.getValueAt(i, renglon).toString())));
                                         libro.getSheet("Conciliacion").getRow(miRenglon).createCell(11)
                                                 .setCellValue(formatoPorcentaje.format(n));
                                         break;
                                     }
                                 }

                                 //columna12
                                 if (t_datos.getValueAt(i, 18) == null) {
                                     libro.getSheet("Conciliacion").getRow(miRenglon).createCell(12)
                                             .setCellValue("");
                                 } else {
                                     libro.getSheet("Conciliacion").getRow(miRenglon).createCell(12)
                                             .setCellValue(t_datos.getValueAt(i, 18).toString());
                                 }

                                 //columna13
                                 if (t_datos.getValueAt(i, 19) == null) {
                                     libro.getSheet("Conciliacion").getRow(miRenglon).createCell(13)
                                             .setCellValue("");
                                 } else {
                                     libro.getSheet("Conciliacion").getRow(miRenglon).createCell(13)
                                             .setCellValue(t_datos.getValueAt(i, 19).toString());
                                 }
                                 //columna14
                                 libro.getSheet("Conciliacion").getRow(miRenglon).createCell(14)
                                         .setCellValue("");
                                 if (renglon == 8 && t_datos.getValueAt(i, 9).toString().compareTo("-") == 0) {
                                     libro.getSheet("Conciliacion").getRow(miRenglon).getCell(0)
                                             .setCellStyle(borde_d);
                                     libro.getSheet("Conciliacion").getRow(miRenglon).getCell(1)
                                             .setCellStyle(borde_d);
                                     libro.getSheet("Conciliacion").getRow(miRenglon).getCell(2)
                                             .setCellStyle(borde_d);
                                     libro.getSheet("Conciliacion").getRow(miRenglon).getCell(3)
                                             .setCellStyle(borde_d);
                                     libro.getSheet("Conciliacion").getRow(miRenglon).getCell(4)
                                             .setCellStyle(borde_i);
                                     libro.getSheet("Conciliacion").getRow(miRenglon).getCell(5)
                                             .setCellStyle(borde_c);
                                     libro.getSheet("Conciliacion").getRow(miRenglon).getCell(6)
                                             .setCellStyle(borde_d);
                                     libro.getSheet("Conciliacion").getRow(miRenglon).getCell(7)
                                             .setCellStyle(borde_d);
                                     libro.getSheet("Conciliacion").getRow(miRenglon).getCell(8)
                                             .setCellStyle(borde_d);
                                     libro.getSheet("Conciliacion").getRow(miRenglon).getCell(9)
                                             .setCellStyle(borde_d);
                                     libro.getSheet("Conciliacion").getRow(miRenglon).getCell(10)
                                             .setCellStyle(borde_d);
                                     libro.getSheet("Conciliacion").getRow(miRenglon).getCell(11)
                                             .setCellStyle(borde_d);
                                     libro.getSheet("Conciliacion").getRow(miRenglon).getCell(12)
                                             .setCellStyle(borde_i);
                                     libro.getSheet("Conciliacion").getRow(miRenglon).getCell(13)
                                             .setCellStyle(borde_i);
                                     libro.getSheet("Conciliacion").getRow(miRenglon).getCell(14)
                                             .setCellStyle(borde_d);
                                 } else {
                                     libro.getSheet("Conciliacion").getRow(miRenglon).getCell(0)
                                             .setCellStyle(borde_dr);
                                     libro.getSheet("Conciliacion").getRow(miRenglon).getCell(1)
                                             .setCellStyle(borde_dr);
                                     libro.getSheet("Conciliacion").getRow(miRenglon).getCell(2)
                                             .setCellStyle(borde_dr);
                                     libro.getSheet("Conciliacion").getRow(miRenglon).getCell(3)
                                             .setCellStyle(borde_dr);
                                     libro.getSheet("Conciliacion").getRow(miRenglon).getCell(4)
                                             .setCellStyle(borde_ir);
                                     libro.getSheet("Conciliacion").getRow(miRenglon).getCell(5)
                                             .setCellStyle(borde_cr);
                                     libro.getSheet("Conciliacion").getRow(miRenglon).getCell(6)
                                             .setCellStyle(borde_dr);
                                     libro.getSheet("Conciliacion").getRow(miRenglon).getCell(7)
                                             .setCellStyle(borde_dr);
                                     libro.getSheet("Conciliacion").getRow(miRenglon).getCell(8)
                                             .setCellStyle(borde_dr);
                                     libro.getSheet("Conciliacion").getRow(miRenglon).getCell(9)
                                             .setCellStyle(borde_dr);
                                     libro.getSheet("Conciliacion").getRow(miRenglon).getCell(10)
                                             .setCellStyle(borde_dr);
                                     libro.getSheet("Conciliacion").getRow(miRenglon).getCell(11)
                                             .setCellStyle(borde_dr);
                                     libro.getSheet("Conciliacion").getRow(miRenglon).getCell(12)
                                             .setCellStyle(borde_ir);
                                     libro.getSheet("Conciliacion").getRow(miRenglon).getCell(13)
                                             .setCellStyle(borde_ir);
                                     libro.getSheet("Conciliacion").getRow(miRenglon).getCell(14)
                                             .setCellStyle(borde_dr);
                                 }
                                 miRenglon++;
                             }
                         }
                     }
                 }
                 FileOutputStream archivo1 = new FileOutputStream(archivoXLS);
                 libro.write(archivo1);
                 archivo1.close();
                 Desktop.getDesktop().open(archivoXLS);
             }
         }
     } catch (Exception e) {
         e.printStackTrace();
     }
 }

From source file:Almacen.Conciliacion.java

private void jButton2ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton2ActionPerformed
     // TODO add your handling code here:
     try {//w w  w  .j  ava2  s .c  o  m
         javax.swing.JFileChooser archivo = new javax.swing.JFileChooser();
         archivo.setFileFilter(new ExtensionFileFilter("pdf document (*.pdf)", new String[] { "PDF" }));
         String ruta = null;

         if (archivo.showSaveDialog(null) == archivo.APPROVE_OPTION) {
             ruta = archivo.getSelectedFile().getAbsolutePath();
             if (ruta != null) {
                 Session session = HibernateUtil.getSessionFactory().openSession();
                 ArrayList datos = new ArrayList();
                 Query query = session.createSQLQuery(
                         "select compania.nombre, orden.tipo_nombre, orden.modelo, orden.no_serie, clientes.nombre as nombres,orden.id_orden \n"
                                 + "from orden inner join compania on compania.id_compania=orden.id_compania inner join clientes on clientes.id_clientes=orden.id_cliente\n"
                                 + "where orden.id_orden=" + Integer.parseInt(orden) + "");
                 query.setResultTransformer(Criteria.ALIAS_TO_ENTITY_MAP);
                 datos = (ArrayList) query.list();

                 //
                 PDF reporte = new PDF();
                 reporte.Abrir2(PageSize.LEGAL.rotate(), "CONCILIACIN", ruta + ".pdf");
                 BaseFont bf = BaseFont.createFont(BaseFont.HELVETICA, BaseFont.WINANSI, BaseFont.NOT_EMBEDDED);
                 float[] nuevos = new float[] { 40, 40, 25, 40, 145, 20, 50, 50, 50, 50, 50, 50, 100, 50, 20 };
                 com.itextpdf.text.Font font = new com.itextpdf.text.Font(
                         com.itextpdf.text.Font.FontFamily.HELVETICA, 7, com.itextpdf.text.Font.NORMAL);
                 com.itextpdf.text.Font font1 = new com.itextpdf.text.Font(
                         com.itextpdf.text.Font.FontFamily.HELVETICA, 7, com.itextpdf.text.Font.NORMAL);
                 BaseColor contenido = BaseColor.WHITE;
                 BaseColor contenido1 = BaseColor.DARK_GRAY;
                 int centro = com.itextpdf.text.Element.ALIGN_CENTER;
                 int izquierda = com.itextpdf.text.Element.ALIGN_LEFT;
                 int derecha = com.itextpdf.text.Element.ALIGN_RIGHT;

                 reporte.inicioTexto();
                 reporte.agregaObjeto(reporte.crearImagen("imagenes/empresa300115.jpg", 730, -90, 45));
                 reporte.contenido.setFontAndSize(bf, 20);
                 reporte.contenido.setColorFill(BaseColor.BLACK);
                 reporte.contenido.showTextAligned(PdfContentByte.ALIGN_CENTER,
                         "CONCILIACIN PARA FACTURACIN", 395, 577, 0);

                 reporte.contenido.setFontAndSize(bf, 12);
                 reporte.contenido.setColorFill(BaseColor.BLACK);
                 reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT, "COMPAIA:", 38, 540, 0);
                 reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT, "TIPO DE UNIDAD:", 38, 520, 0);
                 reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT, "MODELO:", 38, 500, 0);
                 reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT, "SERIE VIN:", 38, 480, 0);
                 reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT, "CLIENTE:", 38, 460, 0);

                 reporte.contenido.roundRectangle(170, 540, 410, 0, 0);
                 reporte.contenido.roundRectangle(170, 520, 410, 0, 0);
                 reporte.contenido.roundRectangle(170, 500, 410, 0, 0);
                 reporte.contenido.roundRectangle(170, 480, 410, 0, 0);
                 reporte.contenido.roundRectangle(170, 460, 410, 0, 0);

                 reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT, "ORDEN DE TRABAJO SET.", 605, 540,
                         0);
                 reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT, "ORDEN DE SURTIDO", 620, 480, 0);

                 for (int i = 0; i < datos.size(); i++) {
                     java.util.HashMap map = (java.util.HashMap) datos.get(i);
                     reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT, map.get("nombre").toString(),
                             171, 540, 0);
                     reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT,
                             map.get("tipo_nombre").toString(), 171, 520, 0);
                     reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT, map.get("modelo").toString(),
                             171, 500, 0);
                     reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT, map.get("no_serie").toString(),
                             171, 480, 0);
                     reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT, map.get("nombres").toString(),
                             171, 460, 0);
                     reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT, map.get("id_orden").toString(),
                             657, 520, 0);
                 }
                 reporte.contenido.roundRectangle(640, 520, 80, 0, 0);
                 reporte.contenido.roundRectangle(640, 460, 80, 0, 0);

                 reporte.finTexto();

                 reporte.agregaObjeto(new Paragraph(" "));
                 reporte.agregaObjeto(new Paragraph(" "));
                 reporte.agregaObjeto(new Paragraph(" "));

                 reporte.agregaObjeto(new Paragraph(" "));
                 reporte.agregaObjeto(new Paragraph(" "));

                 reporte.agregaObjeto(new Paragraph(" "));
                 reporte.agregaObjeto(new Paragraph(" "));

                 PdfPTable tabla = reporte.crearTabla(nuevos.length, nuevos, 100, Element.ALIGN_CENTER);
                 cabecera(reporte, bf, tabla, "", 2);
                 DecimalFormat formatoPorcentaje = new DecimalFormat("#,##0.00");

                 int num_r = t_datos.getRowCount();
                 for (int i = 0; i < num_r; i++) {
                     for (int j = 0; j < 4; j++) {
                         int renglon = 0;
                         switch (j) {
                         case 0:
                             renglon = 8;
                             break;
                         case 1:
                             renglon = 10;
                             break;
                         case 2:
                             renglon = 11;
                             break;
                         case 3:
                             renglon = 12;
                             break;
                         }
                         if ((Double.parseDouble(t_datos.getValueAt(i, renglon).toString()) > 0
                                 && t_datos.getValueAt(i, 9).toString().compareTo("N") == 0)
                                 || ((Double.parseDouble(t_datos.getValueAt(i, renglon).toString()) > 0
                                         && renglon >= 10))
                                 || (renglon == 8
                                         && Double.parseDouble(t_datos.getValueAt(i, 10).toString()) <= 0
                                         && Double.parseDouble(t_datos.getValueAt(i, 11).toString()) <= 0
                                         && Double.parseDouble(t_datos.getValueAt(i, 12).toString()) <= 0)) {
                             if (renglon == 8 && t_datos.getValueAt(i, 9).toString().compareTo("-") == 0)
                                 contenido = BaseColor.WHITE;
                             else
                                 contenido = BaseColor.LIGHT_GRAY;

                             if ((boolean) t_datos.getValueAt(i, 3) == true
                                     || (boolean) t_datos.getValueAt(i, 4) == true) {
                                 //columna0
                                 if (t_datos.getValueAt(i, 5) == null) {
                                     tabla.addCell(reporte.celda("", font, contenido, centro, 0, 1,
                                             Rectangle.RECTANGLE));
                                 } else {
                                     tabla.addCell(reporte.celda(t_datos.getValueAt(i, 5).toString(), font,
                                             contenido, centro, 0, 1, Rectangle.RECTANGLE));
                                 }
                                 //columna1
                                 if (t_datos.getValueAt(i, 6) == null) {
                                     tabla.addCell(reporte.celda("", font, contenido, centro, 0, 1,
                                             Rectangle.RECTANGLE));
                                 } else {
                                     tabla.addCell(reporte.celda(t_datos.getValueAt(i, 6).toString(), font,
                                             contenido, centro, 0, 1, Rectangle.RECTANGLE));
                                 }
                                 //columna2
                                 tabla.addCell(reporte.celda(t_datos.getValueAt(i, renglon).toString(), font,
                                         contenido, centro, 0, 1, Rectangle.RECTANGLE));

                                 //columna3
                                 if (t_datos.getValueAt(i, 14) == null) {
                                     tabla.addCell(reporte.celda("", font, contenido, centro, 0, 1,
                                             Rectangle.RECTANGLE));
                                 } else {
                                     tabla.addCell(reporte.celda(t_datos.getValueAt(i, 14).toString(), font,
                                             contenido, centro, 0, 1, Rectangle.RECTANGLE));
                                 }
                                 //columna4
                                 tabla.addCell(reporte.celda(t_datos.getValueAt(i, 2).toString(), font,
                                         contenido, izquierda, 0, 1, Rectangle.RECTANGLE));
                                 //columna5
                                 if (renglon == 8 && t_datos.getValueAt(i, 9).toString().compareTo("-") == 0)
                                     tabla.addCell(reporte.celda("", font, contenido, centro, 0, 1,
                                             Rectangle.RECTANGLE));
                                 else {
                                     switch (renglon) {
                                     case 8:
                                         tabla.addCell(reporte.celda("N", font, contenido, centro, 0, 1,
                                                 Rectangle.RECTANGLE));
                                         break;
                                     case 10:
                                         tabla.addCell(reporte.celda("D", font, contenido, centro, 0, 1,
                                                 Rectangle.RECTANGLE));
                                         break;
                                     case 11:
                                         tabla.addCell(reporte.celda("R", font, contenido, centro, 0, 1,
                                                 Rectangle.RECTANGLE));
                                         break;
                                     case 12:
                                         tabla.addCell(reporte.celda("M", font, contenido, centro, 0, 1,
                                                 Rectangle.RECTANGLE));
                                         break;
                                     }
                                 }
                                 //columna6
                                 tabla.addCell(reporte.celda(formatoPorcentaje.format(t_datos.getValueAt(i, 15)),
                                         font, contenido, derecha, 0, 1, Rectangle.RECTANGLE));
                                 //columna7 $tot aut.
                                 double n;
                                 n = BigDecimal
                                         .valueOf(Double.parseDouble(t_datos.getValueAt(i, renglon).toString())
                                                 * Double.parseDouble(t_datos.getValueAt(i, 15).toString()))
                                         .setScale(2, RoundingMode.UP).doubleValue();
                                 tabla.addCell(reporte.celda(formatoPorcentaje.format(n), font, contenido,
                                         derecha, 0, 1, Rectangle.RECTANGLE));
                                 //columna8
                                 tabla.addCell(reporte.celda(formatoPorcentaje.format(t_datos.getValueAt(i, 16)),
                                         font, contenido, derecha, 0, 1, Rectangle.RECTANGLE));

                                 //columna9 $tot com
                                 n = BigDecimal
                                         .valueOf(Double.parseDouble(t_datos.getValueAt(i, renglon).toString())
                                                 * Double.parseDouble(t_datos.getValueAt(i, 16).toString()))
                                         .setScale(2, RoundingMode.UP).doubleValue();
                                 tabla.addCell(reporte.celda(formatoPorcentaje.format(n), font, contenido,
                                         derecha, 0, 1, Rectangle.RECTANGLE));

                                 //columna10 11
                                 if (renglon == 8 && t_datos.getValueAt(i, 9).toString().compareTo("-") == 0) {
                                     tabla.addCell(reporte.celda("", font, contenido, centro, 0, 1,
                                             Rectangle.RECTANGLE));
                                     tabla.addCell(reporte.celda("", font, contenido, centro, 0, 1,
                                             Rectangle.RECTANGLE));
                                 } else {
                                     switch (renglon) {
                                     case 8:
                                         n = BigDecimal.valueOf(
                                                 Double.parseDouble(t_datos.getValueAt(i, 16).toString()) / 0.9d)
                                                 .setScale(2, RoundingMode.UP).doubleValue();
                                         tabla.addCell(reporte.celda(
                                                 formatoPorcentaje.format(n * Double.parseDouble(
                                                         t_datos.getValueAt(i, renglon).toString())),
                                                 font, contenido, derecha, 0, 1, Rectangle.RECTANGLE));
                                         tabla.addCell(reporte.celda(formatoPorcentaje.format(n), font,
                                                 contenido, derecha, 0, 1, Rectangle.RECTANGLE));
                                         break;
                                     case 10:
                                         n = BigDecimal
                                                 .valueOf(
                                                         Double.parseDouble(t_datos.getValueAt(i, 15).toString())
                                                                 * 0.72d)
                                                 .setScale(2, RoundingMode.UP).doubleValue();
                                         tabla.addCell(reporte.celda(
                                                 formatoPorcentaje.format(n * Double.parseDouble(
                                                         t_datos.getValueAt(i, renglon).toString())),
                                                 font, contenido, derecha, 0, 1, Rectangle.RECTANGLE));
                                         tabla.addCell(reporte.celda(formatoPorcentaje.format(n), font,
                                                 contenido, derecha, 0, 1, Rectangle.RECTANGLE));
                                         break;
                                     case 11:
                                         n = BigDecimal
                                                 .valueOf(
                                                         Double.parseDouble(t_datos.getValueAt(i, 15).toString())
                                                                 * 0.65d)
                                                 .setScale(2, RoundingMode.UP).doubleValue();
                                         tabla.addCell(reporte.celda(
                                                 formatoPorcentaje.format(n * Double.parseDouble(
                                                         t_datos.getValueAt(i, renglon).toString())),
                                                 font, contenido, derecha, 0, 1, Rectangle.RECTANGLE));
                                         tabla.addCell(reporte.celda(formatoPorcentaje.format(n), font,
                                                 contenido, derecha, 0, 1, Rectangle.RECTANGLE));
                                         break;
                                     case 12:
                                         n = BigDecimal
                                                 .valueOf(
                                                         Double.parseDouble(t_datos.getValueAt(i, 15).toString())
                                                                 * 0.65d)
                                                 .setScale(2, RoundingMode.UP).doubleValue();
                                         tabla.addCell(reporte.celda(
                                                 formatoPorcentaje.format(n * Double.parseDouble(
                                                         t_datos.getValueAt(i, renglon).toString())),
                                                 font, contenido, derecha, 0, 1, Rectangle.RECTANGLE));
                                         tabla.addCell(reporte.celda(formatoPorcentaje.format(n), font,
                                                 contenido, derecha, 0, 1, Rectangle.RECTANGLE));
                                         break;
                                     }
                                 }
                                 //columna12
                                 if (t_datos.getValueAt(i, 18) == null) {
                                     tabla.addCell(reporte.celda("", font, contenido, izquierda, 0, 1,
                                             Rectangle.RECTANGLE));
                                 } else {
                                     tabla.addCell(reporte.celda(t_datos.getValueAt(i, 18).toString(), font,
                                             contenido, izquierda, 0, 1, Rectangle.RECTANGLE));
                                 }

                                 //columna13
                                 if (t_datos.getValueAt(i, 19) == null) {
                                     tabla.addCell(reporte.celda("", font, contenido, centro, 0, 1,
                                             Rectangle.RECTANGLE));
                                 } else {
                                     tabla.addCell(reporte.celda(t_datos.getValueAt(i, 19).toString(), font,
                                             contenido, centro, 0, 1, Rectangle.RECTANGLE));
                                 }
                                 //columna14
                                 tabla.addCell(
                                         reporte.celda("V", font, contenido, centro, 0, 1, Rectangle.RECTANGLE));
                             }
                         }
                     }
                 }
                 font1.setColor(BaseColor.WHITE);
                 tabla.addCell(reporte.celda("Faltante en Vales", font1, contenido1, centro, 15, 1,
                         Rectangle.RECTANGLE));

                 for (int i = 0; i < num_r; i++) {
                     for (int j = 0; j < 4; j++) {
                         int renglon = 0;
                         switch (j) {
                         case 0:
                             renglon = 8;
                             break;
                         case 1:
                             renglon = 10;
                             break;
                         case 2:
                             renglon = 11;
                             break;
                         case 3:
                             renglon = 12;
                             break;
                         }
                         if ((Double.parseDouble(t_datos.getValueAt(i, renglon).toString()) > 0
                                 && t_datos.getValueAt(i, 9).toString().compareTo("N") == 0)
                                 || ((Double.parseDouble(t_datos.getValueAt(i, renglon).toString()) > 0
                                         && renglon >= 10))
                                 || (renglon == 8
                                         && Double.parseDouble(t_datos.getValueAt(i, 10).toString()) <= 0
                                         && Double.parseDouble(t_datos.getValueAt(i, 11).toString()) <= 0
                                         && Double.parseDouble(t_datos.getValueAt(i, 12).toString()) <= 0)) {
                             if (renglon == 8 && t_datos.getValueAt(i, 9).toString().compareTo("-") == 0)
                                 contenido = BaseColor.WHITE;
                             else
                                 contenido = BaseColor.LIGHT_GRAY;

                             if ((boolean) t_datos.getValueAt(i, 3) == false
                                     && (boolean) t_datos.getValueAt(i, 4) == false
                                     && t_datos.getValueAt(i, 5) != null) {
                                 //columna0
                                 if (t_datos.getValueAt(i, 5) == null) {
                                     tabla.addCell(reporte.celda("", font, contenido, centro, 0, 1,
                                             Rectangle.RECTANGLE));
                                 } else {
                                     tabla.addCell(reporte.celda(t_datos.getValueAt(i, 5).toString(), font,
                                             contenido, centro, 0, 1, Rectangle.RECTANGLE));
                                 }
                                 //columna1
                                 if (t_datos.getValueAt(i, 6) == null) {
                                     tabla.addCell(reporte.celda("", font, contenido, centro, 0, 1,
                                             Rectangle.RECTANGLE));
                                 } else {
                                     tabla.addCell(reporte.celda(t_datos.getValueAt(i, 6).toString(), font,
                                             contenido, centro, 0, 1, Rectangle.RECTANGLE));
                                 }
                                 //columna2
                                 tabla.addCell(reporte.celda(t_datos.getValueAt(i, renglon).toString(), font,
                                         contenido, centro, 0, 1, Rectangle.RECTANGLE));

                                 //columna3
                                 if (t_datos.getValueAt(i, 14) == null) {
                                     tabla.addCell(reporte.celda("", font, contenido, centro, 0, 1,
                                             Rectangle.RECTANGLE));
                                 } else {
                                     tabla.addCell(reporte.celda(t_datos.getValueAt(i, 14).toString(), font,
                                             contenido, centro, 0, 1, Rectangle.RECTANGLE));
                                 }
                                 //columna4
                                 tabla.addCell(reporte.celda(t_datos.getValueAt(i, 2).toString(), font,
                                         contenido, izquierda, 0, 1, Rectangle.RECTANGLE));
                                 //columna5
                                 if (renglon == 8 && t_datos.getValueAt(i, 9).toString().compareTo("-") == 0)
                                     tabla.addCell(reporte.celda("", font, contenido, centro, 0, 1,
                                             Rectangle.RECTANGLE));
                                 else {
                                     switch (renglon) {
                                     case 8:
                                         tabla.addCell(reporte.celda("N", font, contenido, centro, 0, 1,
                                                 Rectangle.RECTANGLE));
                                         break;
                                     case 10:
                                         tabla.addCell(reporte.celda("D", font, contenido, centro, 0, 1,
                                                 Rectangle.RECTANGLE));
                                         break;
                                     case 11:
                                         tabla.addCell(reporte.celda("R", font, contenido, centro, 0, 1,
                                                 Rectangle.RECTANGLE));
                                         break;
                                     case 12:
                                         tabla.addCell(reporte.celda("M", font, contenido, centro, 0, 1,
                                                 Rectangle.RECTANGLE));
                                         break;
                                     }
                                 }
                                 //columna6
                                 tabla.addCell(reporte.celda(formatoPorcentaje.format(t_datos.getValueAt(i, 15)),
                                         font, contenido, derecha, 0, 1, Rectangle.RECTANGLE));
                                 //columna7 $tot aut.
                                 double n;
                                 n = BigDecimal
                                         .valueOf(Double.parseDouble(t_datos.getValueAt(i, renglon).toString())
                                                 * Double.parseDouble(t_datos.getValueAt(i, 15).toString()))
                                         .setScale(2, RoundingMode.UP).doubleValue();
                                 tabla.addCell(reporte.celda(formatoPorcentaje.format(n), font, contenido,
                                         derecha, 0, 1, Rectangle.RECTANGLE));
                                 //columna8
                                 tabla.addCell(reporte.celda(formatoPorcentaje.format(t_datos.getValueAt(i, 16)),
                                         font, contenido, derecha, 0, 1, Rectangle.RECTANGLE));

                                 //columna9 $tot com
                                 n = BigDecimal
                                         .valueOf(Double.parseDouble(t_datos.getValueAt(i, renglon).toString())
                                                 * Double.parseDouble(t_datos.getValueAt(i, 16).toString()))
                                         .setScale(2, RoundingMode.UP).doubleValue();
                                 tabla.addCell(reporte.celda(formatoPorcentaje.format(n), font, contenido,
                                         derecha, 0, 1, Rectangle.RECTANGLE));

                                 //columna10 11
                                 if (renglon == 8 && t_datos.getValueAt(i, 9).toString().compareTo("-") == 0) {
                                     tabla.addCell(reporte.celda("", font, contenido, centro, 0, 1,
                                             Rectangle.RECTANGLE));
                                     tabla.addCell(reporte.celda("", font, contenido, centro, 0, 1,
                                             Rectangle.RECTANGLE));
                                 } else {
                                     switch (renglon) {
                                     case 8:
                                         n = BigDecimal.valueOf(
                                                 Double.parseDouble(t_datos.getValueAt(i, 16).toString()) / 0.9d)
                                                 .setScale(2, RoundingMode.UP).doubleValue();
                                         tabla.addCell(reporte.celda(
                                                 formatoPorcentaje.format(n * Double.parseDouble(
                                                         t_datos.getValueAt(i, renglon).toString())),
                                                 font, contenido, derecha, 0, 1, Rectangle.RECTANGLE));
                                         tabla.addCell(reporte.celda(formatoPorcentaje.format(n), font,
                                                 contenido, derecha, 0, 1, Rectangle.RECTANGLE));
                                         break;
                                     case 10:
                                         n = BigDecimal
                                                 .valueOf(
                                                         Double.parseDouble(t_datos.getValueAt(i, 15).toString())
                                                                 * 0.72d)
                                                 .setScale(2, RoundingMode.UP).doubleValue();
                                         tabla.addCell(reporte.celda(
                                                 formatoPorcentaje.format(n * Double.parseDouble(
                                                         t_datos.getValueAt(i, renglon).toString())),
                                                 font, contenido, derecha, 0, 1, Rectangle.RECTANGLE));
                                         tabla.addCell(reporte.celda(formatoPorcentaje.format(n), font,
                                                 contenido, derecha, 0, 1, Rectangle.RECTANGLE));
                                         break;
                                     case 11:
                                         n = BigDecimal
                                                 .valueOf(
                                                         Double.parseDouble(t_datos.getValueAt(i, 15).toString())
                                                                 * 0.65d)
                                                 .setScale(2, RoundingMode.UP).doubleValue();
                                         tabla.addCell(reporte.celda(
                                                 formatoPorcentaje.format(n * Double.parseDouble(
                                                         t_datos.getValueAt(i, renglon).toString())),
                                                 font, contenido, derecha, 0, 1, Rectangle.RECTANGLE));
                                         tabla.addCell(reporte.celda(formatoPorcentaje.format(n), font,
                                                 contenido, derecha, 0, 1, Rectangle.RECTANGLE));
                                         break;
                                     case 12:
                                         n = BigDecimal
                                                 .valueOf(
                                                         Double.parseDouble(t_datos.getValueAt(i, 15).toString())
                                                                 * 0.65d)
                                                 .setScale(2, RoundingMode.UP).doubleValue();
                                         tabla.addCell(reporte.celda(
                                                 formatoPorcentaje.format(n * Double.parseDouble(
                                                         t_datos.getValueAt(i, renglon).toString())),
                                                 font, contenido, derecha, 0, 1, Rectangle.RECTANGLE));
                                         tabla.addCell(reporte.celda(formatoPorcentaje.format(n), font,
                                                 contenido, derecha, 0, 1, Rectangle.RECTANGLE));
                                         break;
                                     }
                                 }
                                 //columna12
                                 if (t_datos.getValueAt(i, 18) == null) {
                                     tabla.addCell(reporte.celda("", font, contenido, izquierda, 0, 1,
                                             Rectangle.RECTANGLE));
                                 } else {
                                     tabla.addCell(reporte.celda(t_datos.getValueAt(i, 18).toString(), font,
                                             contenido, izquierda, 0, 1, Rectangle.RECTANGLE));
                                 }

                                 //columna13
                                 if (t_datos.getValueAt(i, 19) == null) {
                                     tabla.addCell(reporte.celda("", font, contenido, centro, 0, 1,
                                             Rectangle.RECTANGLE));
                                 } else {
                                     tabla.addCell(reporte.celda(t_datos.getValueAt(i, 19).toString(), font,
                                             contenido, centro, 0, 1, Rectangle.RECTANGLE));
                                 }
                                 //columna14
                                 tabla.addCell(
                                         reporte.celda("", font, contenido, centro, 0, 1, Rectangle.RECTANGLE));
                             }
                         }
                     }
                 }
                 tabla.addCell(reporte.celda("Total", font, contenido, derecha, 11, 1, Rectangle.NO_BORDER));
                 tabla.addCell(
                         reporte.celda(formatoPorcentaje.format(Double.parseDouble(total.getValue().toString())),
                                 font, contenido, derecha, 0, 1, Rectangle.RECTANGLE));
                 tabla.addCell(reporte.celda(" ", font, contenido, centro, 3, 1, Rectangle.NO_BORDER));
                 tabla.setHeaderRows(1);
                 reporte.agregaObjeto(tabla);
                 reporte.cerrar();
                 reporte.visualizar2(ruta + ".pdf");
             }
         }
     } catch (Exception e) {
         e.printStackTrace();
     }
 }

From source file:Almacen.consultaPartidaOrden.java

public void busca(String tipo, String valor, String movimiento, String complemento, String complemento2) {
    Session session = HibernateUtil.getSessionFactory().openSession();
    try {// www.  j a va  2s  .  co  m
        session.beginTransaction().begin();
        if (tipo.compareTo("Compaa") == 0) {
            Class[] types = new Class[] { java.lang.String.class, java.lang.String.class,
                    java.lang.String.class, java.lang.String.class, java.lang.String.class,
                    java.lang.String.class, java.lang.Double.class, java.lang.Double.class,
                    java.lang.Double.class };
            if (t_orden.getText().compareTo("") != 0) {
                if (movimiento.compareTo("Entrada") == 0) {
                    String[] columnas = new String[] { "Id", "N", "#", "N Parte", "Descripcin", "Medida",
                            "Autorizados", "X Surtir", "Entrada" };
                    Query query = session.createQuery(
                            "SELECT DISTINCT part FROM Partida part " + "where part.ordenByIdOrden.idOrden="
                                    + Integer.parseInt(t_orden.getText()) + " and part.so=" + true);
                    List partidas = query.list();

                    model = new MyModel(partidas.size(), columnas, types);
                    t_datos.setModel(model);
                    for (int a = 0; a < partidas.size(); a++) {
                        Partida par = (Partida) partidas.get(a);
                        Movimiento[] mov = (Movimiento[]) par.getMovimientos().toArray(new Movimiento[0]);
                        double entradas = 0, devoluciones = 0;
                        for (int b = 0; b < mov.length; b++) {
                            Almacen alm = mov[b].getAlmacen();
                            if (alm.getTipoMovimiento() == 1 && alm.getOperacion() == 4)
                                entradas += mov[b].getCantidad();
                            if (alm.getTipoMovimiento() == 2 && alm.getOperacion() == 4)
                                devoluciones += mov[b].getCantidad();
                        }
                        double total_almacen = entradas - devoluciones;
                        double total = par.getCantidadAut() - total_almacen;
                        model.setValueAt(par.getIdPartida(), a, 0);
                        model.setValueAt(par.getIdEvaluacion(), a, 1);
                        model.setValueAt(par.getSubPartida(), a, 2);
                        if (par.getEjemplar() != null)
                            model.setValueAt(par.getEjemplar().getIdParte(), a, 3);
                        else
                            model.setValueAt("", a, 3);
                        model.setValueAt(par.getCatalogo().getNombre(), a, 4);
                        model.setValueAt(par.getMed(), a, 5);
                        model.setValueAt(par.getCantidadAut(), a, 6);
                        model.setValueAt(total, a, 7);
                        model.setValueAt(0.0d, a, 8);
                    }
                }
                if (movimiento.compareTo("Salida") == 0) {
                    String[] columnas = new String[] { "Id", "N", "#", "N Parte", "Descripcin", "Medida",
                            "Autorizados", "En almacen", "Devolucin" };
                    Query query = session.createQuery("SELECT DISTINCT part FROM Partida part "
                            + "LEFT JOIN FETCH part.movimientos movPart " + "LEFT JOIN movPart.almacen alm "
                            + "where alm.operacion=4 and part.ordenByIdOrden.idOrden="
                            + Integer.parseInt(t_orden.getText()));
                    List partidas = query.list();
                    model = new MyModel(partidas.size(), columnas, types);
                    t_datos.setModel(model);
                    for (int a = 0; a < partidas.size(); a++) {
                        Partida par = (Partida) partidas.get(a);
                        Movimiento[] mov = (Movimiento[]) session.createCriteria(Movimiento.class)
                                .add(Restrictions.eq("partida.idPartida", par.getIdPartida())).list()
                                .toArray(new Movimiento[0]);
                        double entradas = 0, devoluciones = 0, entregadas = 0, devueltas = 0;
                        ;
                        for (int b = 0; b < mov.length; b++) {
                            Almacen alm = mov[b].getAlmacen();
                            if (alm.getTipoMovimiento() == 1 && alm.getOperacion() == 4)
                                entradas += mov[b].getCantidad();
                            if (alm.getTipoMovimiento() == 2 && alm.getOperacion() == 4)
                                devoluciones += mov[b].getCantidad();
                            if (alm.getTipoMovimiento() == 1 && alm.getOperacion() == 5)
                                devueltas += mov[b].getCantidad();
                            if (alm.getTipoMovimiento() == 2 && alm.getOperacion() == 5)
                                entregadas += mov[b].getCantidad();
                        }
                        double total_Pedido = entradas - devoluciones;
                        double total_operario = entregadas - devueltas;
                        double total = total_Pedido - total_operario;
                        model.setValueAt(par.getIdPartida(), a, 0);
                        model.setValueAt(par.getIdEvaluacion(), a, 1);
                        model.setValueAt(par.getSubPartida(), a, 2);
                        if (par.getEjemplar() != null)
                            model.setValueAt(par.getEjemplar().getIdParte(), a, 3);
                        else
                            model.setValueAt("", a, 3);
                        model.setValueAt(par.getCatalogo().getNombre(), a, 4);
                        model.setValueAt(par.getMed(), a, 5);
                        model.setValueAt(par.getCantidadAut(), a, 6);
                        model.setValueAt(total, a, 7);
                        model.setValueAt(0.0d, a, 8);
                    }
                }
            }
        }
        if (tipo.compareTo("Operarios") == 0) {
            if (t_orden != null) {
                if (movimiento.compareTo("Entrada") == 0) {
                    Class[] types = new Class[] { java.lang.String.class, java.lang.String.class,
                            java.lang.String.class, java.lang.String.class, java.lang.String.class,
                            java.lang.String.class, java.lang.String.class, java.lang.Double.class,
                            java.lang.Double.class };
                    String[] columnas = new String[] { "Id", "Partida", "Tipo", "N Parte", "Descripcin",
                            "Medida", "Operario", "Entregadas" };
                    /*Query query = session.createQuery("SELECT DISTINCT part FROM Partida part "
                        + "LEFT JOIN FETCH part.movimientos movPart "
                        + "LEFT JOIN movPart.almacen alm "
                        + "where alm.operacion=5 and part.ordenByIdOrden.idOrden="+Integer.parseInt(t_orden.getText()));
                    List partidas = query.list();
                            
                    Query query1 = session.createQuery("SELECT DISTINCT partEx FROM PartidaExterna partEx "
                        + "LEFT JOIN FETCH partEx.movimientos movEx "
                        + "LEFT JOIN movEx.almacen alm "
                        + "where alm.operacion=5 and partEx.pedido.partida.ordenByIdOrden.idOrden="+Integer.parseInt(t_orden.getText()));
                    List partidasExternas = query1.list();*/
                    String q1 = "SELECT DISTINCT part FROM Partida part "
                            + "LEFT JOIN FETCH part.movimientos movPart " + "LEFT JOIN movPart.almacen alm "
                            + "where alm.operacion=5 and part.ordenByIdOrden.idOrden="
                            + Integer.parseInt(t_orden.getText()) + complemento;

                    /*String q2="SELECT DISTINCT partEx FROM PartidaExterna partEx "
                        + "LEFT JOIN FETCH partEx.movimientos movEx "
                        + "LEFT JOIN movEx.almacen alm "
                        + "where alm.operacion=5 and partEx.pedido.partida.ordenByIdOrden.idOrden="+Integer.parseInt(t_orden.getText())+complemento2;*/
                    String q2 = "SELECT DISTINCT partEx FROM PartidaExterna partEx "
                            + "LEFT JOIN FETCH partEx.movimientos movEx " + "LEFT JOIN movEx.almacen alm "
                            + "where alm.operacion in (3, 5) and partEx.pedido.orden.idOrden="
                            + Integer.parseInt(t_orden.getText()) + complemento2;

                    Query query = session.createQuery(q1);
                    List partidas = query.list();

                    Query query1 = session.createQuery(q2);
                    List partidasExternas = query1.list();

                    model = new MyModel(partidas.size() + partidasExternas.size(), columnas, types);
                    t_datos.setModel(model);

                    for (int a = 0; a < partidas.size(); a++) {
                        Partida par = (Partida) partidas.get(a);
                        Movimiento[] mov = (Movimiento[]) par.getMovimientos().toArray(new Movimiento[0]);
                        double entregadas = 0, devueltas = 0;
                        for (int b = 0; b < mov.length; b++) {
                            Almacen alm = mov[b].getAlmacen();
                            if (alm.getTipoMovimiento() == 1 && alm.getOperacion() == 5)
                                devueltas += mov[b].getCantidad();
                            if (alm.getTipoMovimiento() == 2 && alm.getOperacion() == 5)
                                entregadas += mov[b].getCantidad();
                        }
                        double total = entregadas - devueltas;
                        model.setValueAt(par.getIdPartida(), a, 0);
                        model.setValueAt(par.getIdEvaluacion() + "-" + par.getSubPartida(), a, 1);
                        if (par.getPedido() == null)
                            model.setValueAt("COM.", a, 2);
                        else
                            model.setValueAt("PED.", a, 2);
                        if (par.getEjemplar() != null)
                            model.setValueAt(par.getEjemplar().getIdParte(), a, 3);
                        else
                            model.setValueAt("", a, 3);
                        model.setValueAt(par.getCatalogo().getNombre(), a, 4);
                        model.setValueAt(par.getMed(), a, 5);
                        model.setValueAt(total, a, 6);
                        model.setValueAt(0.0d, a, 7);
                    }

                    for (int a = 0; a < partidasExternas.size(); a++) {
                        PartidaExterna par = (PartidaExterna) partidasExternas.get(a);
                        Movimiento[] mov = (Movimiento[]) par.getMovimientos().toArray(new Movimiento[0]);
                        double entregadas = 0, devueltas = 0;
                        for (int b = 0; b < mov.length; b++) {
                            Almacen alm = mov[b].getAlmacen();
                            if (alm.getTipoMovimiento() == 1 && alm.getOperacion() == 5)
                                devueltas += mov[b].getCantidad();
                            if (alm.getTipoMovimiento() == 2 && alm.getOperacion() == 5)
                                entregadas += mov[b].getCantidad();
                        }
                        double total = entregadas - devueltas;
                        model.setValueAt(par.getIdPartidaExterna(), a + partidas.size(), 0);
                        //model.setValueAt(par.getPedido().getPartida().getIdEvaluacion()+"-"+par.getPedido().getPartida().getSubPartida(), a+partidas.size(), 1);
                        model.setValueAt("-", a + partidas.size(), 1);
                        model.setValueAt("ADI.", a + partidas.size(), 2);
                        if (par.getNoParte() != null)
                            model.setValueAt(par.getNoParte(), a + partidas.size(), 3);
                        else
                            model.setValueAt("", a + partidas.size(), 3);
                        //model.setValueAt(par.getPedido().getPartida().getCatalogo().getNombre()+"/"+par.getDescripcion(), a+partidas.size(), 4);
                        model.setValueAt(par.getDescripcion(), a + partidas.size(), 4);
                        model.setValueAt(par.getUnidad(), a + partidas.size(), 5);
                        model.setValueAt(total, a + partidas.size(), 6);
                        model.setValueAt(0.0d, a + partidas.size(), 7);
                    }
                }
                if (movimiento.compareTo("Salida") == 0) {
                    Class[] types = new Class[] { java.lang.String.class, java.lang.String.class,
                            java.lang.String.class, java.lang.String.class, java.lang.String.class,
                            java.lang.String.class, java.lang.Double.class, java.lang.Double.class,
                            java.lang.Double.class, java.lang.Boolean.class };
                    String[] columnas = new String[] { "Id", "Partida", "Tipo", "N Parte", "Descripcin",
                            "Medida", "Existencias", "Operario", "Entregadas", "Solicita" };
                    /*Query query = session.createQuery("SELECT DISTINCT part FROM Partida part "
                        + "LEFT JOIN FETCH part.movimientos movPart "
                        + "LEFT JOIN movPart.almacen alm "
                        + "where part.ordenByIdOrden.idOrden="+Integer.parseInt(t_orden.getText())
                        + " and alm!="+null);
                    List partidas = query.list();
                            
                    Query query1 = session.createQuery("SELECT DISTINCT partEx FROM PartidaExterna partEx "
                        + "LEFT JOIN FETCH partEx.movimientos movEx "
                        + "LEFT JOIN movEx.almacen alm "
                        + "where alm.operacion in (3, 5) and partEx.pedido.partida.ordenByIdOrden.idOrden="+Integer.parseInt(t_orden.getText()));
                    List partidasExternas = query1.list();*/

                    String q1 = "SELECT DISTINCT part FROM Partida part "
                            + "LEFT JOIN FETCH part.movimientos movPart " + "LEFT JOIN movPart.almacen alm "
                            + "where part.ordenByIdOrden.idOrden=" + Integer.parseInt(t_orden.getText())
                            + " and alm!=" + null + complemento;

                    /*String q2="SELECT DISTINCT partEx FROM PartidaExterna partEx "
                        + "LEFT JOIN FETCH partEx.movimientos movEx "
                        + "LEFT JOIN movEx.almacen alm "
                        + "where alm.operacion in (3, 5) and partEx.pedido.partida.ordenByIdOrden.idOrden="+Integer.parseInt(t_orden.getText())+complemento2;*/
                    String q2 = "SELECT DISTINCT partEx FROM PartidaExterna partEx "
                            + "LEFT JOIN FETCH partEx.movimientos movEx " + "LEFT JOIN movEx.almacen alm "
                            + "where alm.operacion in (3, 5) and partEx.pedido.orden.idOrden="
                            + Integer.parseInt(t_orden.getText()) + complemento2;

                    Query query = session.createQuery(q1);
                    List partidas = query.list();

                    Query query1 = session.createQuery(q2);
                    List partidasExternas = query1.list();

                    model = new MyModel(partidas.size() + partidasExternas.size(), columnas, types);
                    t_datos.setModel(model);
                    for (int a = 0; a < partidas.size(); a++) {
                        Partida par = (Partida) partidas.get(a);
                        Movimiento[] mov = (Movimiento[]) par.getMovimientos().toArray(new Movimiento[0]);
                        double entradas = 0, devoluciones = 0, entregadas = 0, devueltas = 0;
                        for (int b = 0; b < mov.length; b++) {
                            Almacen alm = mov[b].getAlmacen();
                            //Entradas por pedido interno
                            if (alm.getTipoMovimiento() == 1 && alm.getOperacion() == 1)
                                entradas += mov[b].getCantidad();
                            if (alm.getTipoMovimiento() == 2 && alm.getOperacion() == 1)
                                devoluciones += mov[b].getCantidad();
                            //entrada por compaia
                            if (alm.getTipoMovimiento() == 1 && alm.getOperacion() == 4)
                                entradas += mov[b].getCantidad();
                            if (alm.getTipoMovimiento() == 2 && alm.getOperacion() == 4)
                                devoluciones += mov[b].getCantidad();
                            if (alm.getTipoMovimiento() == 1 && alm.getOperacion() == 5)
                                devueltas += mov[b].getCantidad();
                            if (alm.getTipoMovimiento() == 2 && alm.getOperacion() == 5)
                                entregadas += mov[b].getCantidad();
                        }
                        double total_Pedido = entradas - devoluciones;
                        double total_operario = entregadas - devueltas;
                        double total = total_Pedido - total_operario;
                        model.setValueAt(par.getIdPartida(), a, 0);
                        model.setValueAt(par.getIdEvaluacion() + "-" + par.getSubPartida(), a, 1);
                        if (par.getPedido() == null)
                            model.setValueAt("COM.", a, 2);
                        else
                            model.setValueAt("PED.", a, 2);
                        if (par.getEjemplar() != null)
                            model.setValueAt(par.getEjemplar().getIdParte(), a, 3);
                        else
                            model.setValueAt("", a, 3);
                        model.setValueAt(par.getCatalogo().getNombre(), a, 4);
                        model.setValueAt(par.getMed(), a, 5);
                        model.setValueAt(total, a, 6);
                        model.setValueAt(total_operario, a, 7);
                        model.setValueAt(0.0d, a, 8);
                        //model.setValueAt(par.getPerdidases().size(), a, 9);
                        model.setValueAt(par.getOp(), a, 9);
                    }
                    for (int a = 0; a < partidasExternas.size(); a++) {
                        PartidaExterna par = (PartidaExterna) partidasExternas.get(a);
                        Movimiento[] mov = (Movimiento[]) par.getMovimientos().toArray(new Movimiento[0]);
                        double entradas = 0, devoluciones = 0, entregadas = 0, devueltas = 0;
                        for (int b = 0; b < mov.length; b++) {
                            Almacen alm = mov[b].getAlmacen();
                            if (alm.getTipoMovimiento() == 1 && alm.getOperacion() == 3)
                                entradas += mov[b].getCantidad();
                            if (alm.getTipoMovimiento() == 2 && alm.getOperacion() == 3)
                                devoluciones += mov[b].getCantidad();
                            if (alm.getTipoMovimiento() == 1 && alm.getOperacion() == 5)
                                devueltas += mov[b].getCantidad();
                            if (alm.getTipoMovimiento() == 2 && alm.getOperacion() == 5)
                                entregadas += mov[b].getCantidad();
                        }
                        double total_Pedido = entradas - devoluciones;
                        double total_operario = entregadas - devueltas;
                        double total = total_Pedido - total_operario;
                        model.setValueAt(par.getIdPartidaExterna(), a + partidas.size(), 0);
                        //model.setValueAt(par.getPedido().getPartida().getIdEvaluacion()+"-"+par.getPedido().getPartida().getSubPartida(), a+partidas.size(), 1);
                        model.setValueAt("-", a + partidas.size(), 1);
                        model.setValueAt("ADI.", a + partidas.size(), 2);
                        if (par.getNoParte() != null)
                            model.setValueAt(par.getNoParte(), a + partidas.size(), 3);
                        else
                            model.setValueAt("", a + partidas.size(), 3);
                        //model.setValueAt(par.getPedido().getPartida().getCatalogo().getNombre()+"/"+par.getDescripcion(), a+partidas.size(), 4);
                        model.setValueAt(par.getDescripcion(), a + partidas.size(), 4);
                        model.setValueAt(par.getUnidad(), a + partidas.size(), 5);
                        model.setValueAt(total, a + partidas.size(), 6);
                        model.setValueAt(total_operario, a + partidas.size(), 7);
                        model.setValueAt(0.0d, a + partidas.size(), 8);
                        //model.setValueAt(0, a+partidas.size(), 9);
                        model.setValueAt(par.getOp(), a + partidas.size(), 9);
                    }
                }
            }
        }
    } catch (Exception e) {
        e.printStackTrace();
    }
    if (session != null)
        if (session.isOpen())
            session.close();
    formatoTabla();
}

From source file:Almacen.consultaPartidaPedido.java

public void busca(String tipo, String valor, String movimiento) {
    Session session = HibernateUtil.getSessionFactory().openSession();
    try {//from  ww w  . j a  v  a  2  s .  c om
        session.beginTransaction().begin();
        if (tipo.compareTo("Pedido") == 0) {
            Pedido pedido = (Pedido) session.get(Pedido.class, Integer.parseInt(t_pedido.getText()));
            if (valor.compareTo("Interno") == 0) {
                session.beginTransaction().begin();
                if (movimiento.compareTo("Entrada") == 0) {
                    String[] columnas = new String[] { "Id", "N", "#", "N Parte", "Descripcin", "Medida",
                            "Pedidos", "X Surtir", "Entrada", "Costo c/u", "Total" }; //,"OK"}; //para antes de entrada
                    Class[] types = new Class[] { java.lang.String.class, java.lang.String.class,
                            java.lang.String.class, java.lang.String.class, java.lang.String.class,
                            java.lang.String.class, java.lang.Double.class, java.lang.Double.class,
                            java.lang.Double.class, java.lang.Double.class, java.lang.Double.class
                            //, java.lang.Boolean.class //para antes de entrada
                    };
                    Query query = session.createQuery("SELECT DISTINCT par FROM Partida par "
                            + "LEFT JOIN FETCH par.movimientos movPart " + "LEFT JOIN movPart.almacen alm "
                            + "where par.pedido.idPedido=" + Integer.parseInt(t_pedido.getText())); //where alm.operacion=1 and 
                    //+ "and par.pedido!="+null);
                    List partidas = query.list();
                    model = new MyModel(partidas.size(), columnas, types);
                    t_datos.setModel(model);
                    for (int a = 0; a < partidas.size(); a++) {
                        Partida par = (Partida) partidas.get(a);
                        Movimiento[] mov = (Movimiento[]) par.getMovimientos().toArray(new Movimiento[0]);
                        double entradas = 0, devoluciones = 0;
                        for (int b = 0; b < mov.length; b++) {
                            Almacen alm = mov[b].getAlmacen();
                            if (alm.getTipoMovimiento() == 1 && alm.getOperacion() == 1)
                                entradas += mov[b].getCantidad();
                            if (alm.getTipoMovimiento() == 2 && alm.getOperacion() == 1)
                                devoluciones += mov[b].getCantidad();
                        }
                        double total_almacen = entradas - devoluciones;
                        double total = par.getCantPcp() - total_almacen;

                        model.setValueAt(par.getIdPartida(), a, 0);
                        model.setValueAt(par.getIdEvaluacion(), a, 1);
                        model.setValueAt(par.getSubPartida(), a, 2);
                        if (par.getEjemplar() != null)
                            model.setValueAt(par.getEjemplar().getIdParte(), a, 3);
                        else
                            model.setValueAt("", a, 3);
                        model.setValueAt(par.getCatalogo().getNombre(), a, 4);
                        model.setValueAt(par.getMed(), a, 5);
                        model.setValueAt(par.getCantPcp(), a, 6);
                        model.setValueAt(total, a, 7);
                        model.setValueAt(0.0d, a, 8);

                        if (par.getPcp() != null)
                            model.setValueAt(par.getPcp(), a, 9);
                        else
                            model.setValueAt(par.getPcp(), a, 9);
                        model.setValueAt(0.0d, a, 10);
                        //model.setValueAt(par.getOp(), a, 11); //para antes de entrada
                    }
                }
                if (movimiento.compareTo("Salida") == 0) {
                    String[] columnas = new String[] { "Id", "N", "#", "N Parte", "Descripcin", "Medida",
                            "Pedidos", "En almacen", "Devolucin", "Costo c/u", "Total" };
                    Class[] types = new Class[] { java.lang.String.class, java.lang.String.class,
                            java.lang.String.class, java.lang.String.class, java.lang.String.class,
                            java.lang.String.class, java.lang.Double.class, java.lang.Double.class,
                            java.lang.Double.class, java.lang.Double.class, java.lang.Double.class };
                    Query query = session.createQuery("SELECT DISTINCT par FROM Partida par "
                            + "LEFT JOIN FETCH par.movimientos movPart " + "LEFT JOIN movPart.almacen alm "
                            + "where alm.operacion=1 and par.pedido.idPedido="
                            + Integer.parseInt(t_pedido.getText()));
                    //+ "and par.pedido!="+null);
                    List partidas = query.list();
                    model = new MyModel(partidas.size(), columnas, types);
                    t_datos.setModel(model);
                    for (int a = 0; a < partidas.size(); a++) {
                        Partida par = (Partida) partidas.get(a);
                        Movimiento[] mov = (Movimiento[]) session.createCriteria(Movimiento.class)
                                .add(Restrictions.eq("partida.idPartida", par.getIdPartida())).list()
                                .toArray(new Movimiento[0]);
                        double entradas = 0.0d, devoluciones = 0.0d, entregadas = 0.0d, devueltas = 0.0d;
                        for (int b = 0; b < mov.length; b++) {
                            Almacen alm = mov[b].getAlmacen();
                            if (alm.getTipoMovimiento() == 1 && alm.getOperacion() == 1)
                                entradas += mov[b].getCantidad();
                            if (alm.getTipoMovimiento() == 2 && alm.getOperacion() == 1)
                                devoluciones += mov[b].getCantidad();
                            if (alm.getTipoMovimiento() == 1 && alm.getOperacion() == 5)
                                devueltas += mov[b].getCantidad();
                            if (alm.getTipoMovimiento() == 2 && alm.getOperacion() == 5)
                                entregadas += mov[b].getCantidad();
                        }
                        double total_Pedido = entradas - devoluciones;
                        double total_operario = entregadas - devueltas;
                        double total = total_Pedido - total_operario;
                        model.setValueAt(par.getIdPartida(), a, 0);
                        model.setValueAt(par.getIdEvaluacion(), a, 1);
                        model.setValueAt(par.getSubPartida(), a, 2);
                        if (par.getEjemplar() != null)
                            model.setValueAt(par.getEjemplar().getIdParte(), a, 3);
                        else
                            model.setValueAt("", a, 3);
                        model.setValueAt(par.getCatalogo().getNombre(), a, 4);
                        model.setValueAt(par.getMed(), a, 5);
                        model.setValueAt(par.getCantPcp(), a, 6);
                        model.setValueAt(total, a, 7);
                        model.setValueAt(0.0d, a, 8);
                        if (par.getPcp() != null)
                            model.setValueAt(par.getPcp(), a, 9);
                        else
                            model.setValueAt(par.getPcp(), a, 9);
                        model.setValueAt(0.0d, a, 10);
                    }
                }
                session.beginTransaction().commit();
            }

            if (valor.compareTo("Externo") == 0) {
                try {
                    session.beginTransaction().begin();
                    if (movimiento.compareTo("Entrada") == 0) {
                        String[] columnas = new String[] { "Id", "N Parte", "Descripcin", "Medida",
                                "Pedidos", "X Surtir", "Entrada", "Costo c/u", "Total" };
                        Class[] types = new Class[] { java.lang.String.class, java.lang.String.class,
                                java.lang.String.class, java.lang.String.class, java.lang.Double.class,
                                java.lang.Double.class, java.lang.Double.class, java.lang.Double.class,
                                java.lang.Double.class };
                        Query query = session.createQuery("SELECT DISTINCT part FROM PartidaExterna part "
                                + "where part.pedido.idPedido=" + Integer.parseInt(t_pedido.getText()));
                        //+ "and part.pedido!="+null);
                        List partidas = query.list();
                        model = new MyModel(partidas.size(), columnas, types);
                        t_datos.setModel(model);
                        for (int a = 0; a < partidas.size(); a++) {
                            PartidaExterna par = (PartidaExterna) partidas.get(a);
                            Movimiento[] mov = (Movimiento[]) par.getMovimientos().toArray(new Movimiento[0]);
                            double entradas = 0.0d, devoluciones = 0.0d;
                            for (int b = 0; b < mov.length; b++) {
                                Almacen alm = mov[b].getAlmacen();
                                if (alm.getTipoMovimiento() == 1 && alm.getOperacion() == 2)
                                    entradas += mov[b].getCantidad();
                                if (alm.getTipoMovimiento() == 2 && alm.getOperacion() == 2)
                                    devoluciones += mov[b].getCantidad();
                            }
                            double total_almacen = entradas - devoluciones;
                            double total = par.getCantidad() - total_almacen;
                            model.setValueAt(par.getIdPartidaExterna(), a, 0);
                            if (par.getNoParte() != null)
                                model.setValueAt(par.getNoParte(), a, 1);
                            else
                                model.setValueAt("", a, 1);
                            model.setValueAt(par.getDescripcion(), a, 2);
                            model.setValueAt(par.getUnidad(), a, 3);
                            model.setValueAt(par.getCantidad(), a, 4);
                            model.setValueAt(total, a, 5);
                            model.setValueAt(0.0d, a, 6);
                            model.setValueAt(par.getCosto(), a, 7);
                            model.setValueAt(0.0d, a, 8);
                        }
                    }
                    if (movimiento.compareTo("Salida") == 0) {
                        String[] columnas = new String[] { "Id", "N Parte", "Descripcin", "Medida",
                                "Pedidos", "En almacen", "Devolucin", "Costo c/u", "Total" };
                        Class[] types = new Class[] { java.lang.String.class, java.lang.String.class,
                                java.lang.String.class, java.lang.String.class, java.lang.Double.class,
                                java.lang.Double.class, java.lang.Double.class, java.lang.Double.class,
                                java.lang.Double.class };
                        Query query = session.createQuery("SELECT DISTINCT part FROM PartidaExterna part "
                                + "LEFT JOIN FETCH part.movimientos movPart " + "LEFT JOIN movPart.almacen alm "
                                + "where alm.operacion=2 and part.pedido.idPedido="
                                + Integer.parseInt(t_pedido.getText()));
                        //+ "and part.pedido!="+null);
                        List partidas = query.list();
                        model = new MyModel(partidas.size(), columnas, types);
                        t_datos.setModel(model);
                        for (int a = 0; a < partidas.size(); a++) {
                            PartidaExterna par = (PartidaExterna) partidas.get(a);
                            Movimiento[] mov = (Movimiento[]) session
                                    .createCriteria(Movimiento.class).add(Restrictions
                                            .eq("partidaExterna.idPartidaExterna", par.getIdPartidaExterna()))
                                    .list().toArray(new Movimiento[0]);
                            double entradas = 0, devoluciones = 0, entregadas = 0, devueltas = 0;
                            ;
                            for (int b = 0; b < mov.length; b++) {
                                Almacen alm = mov[b].getAlmacen();
                                if (alm.getTipoMovimiento() == 1 && alm.getOperacion() == 2)
                                    entradas += mov[b].getCantidad();
                                if (alm.getTipoMovimiento() == 2 && alm.getOperacion() == 2)
                                    devoluciones += mov[b].getCantidad();
                                if (alm.getTipoMovimiento() == 1 && alm.getOperacion() == 6)
                                    devueltas += mov[b].getCantidad();
                                if (alm.getTipoMovimiento() == 2 && alm.getOperacion() == 6)
                                    entregadas += mov[b].getCantidad();
                            }
                            double total_Pedido = entradas - devoluciones;
                            double total_operario = entregadas - devueltas;
                            double total = total_Pedido - total_operario;
                            model.setValueAt(par.getIdPartidaExterna(), a, 0);
                            if (par.getNoParte() != null)
                                model.setValueAt(par.getNoParte(), a, 1);
                            else
                                model.setValueAt("", a, 1);
                            model.setValueAt(par.getDescripcion(), a, 2);
                            model.setValueAt(par.getUnidad(), a, 3);
                            model.setValueAt(par.getCantidad(), a, 4);
                            model.setValueAt(total, a, 5);
                            model.setValueAt(0.0d, a, 6);

                            if (par.getCosto() != null)
                                model.setValueAt(par.getCosto(), a, 7);
                            else
                                model.setValueAt(0.0d, a, 7);
                            model.setValueAt(0.0d, a, 8);
                        }
                    }
                    session.beginTransaction().commit();
                } catch (Exception e) {
                    e.printStackTrace();
                    session.beginTransaction().rollback();
                } finally {
                    if (session.isOpen() == true)
                        session.close();
                }
            }

            if (valor.compareTo("Adicional") == 0) {
                try {
                    session.beginTransaction().begin();
                    if (movimiento.compareTo("Entrada") == 0) {
                        String[] columnas = new String[] { "Id", "N", "#", "N Parte", "Descripcin",
                                "Medida", "Pedidos", "X Surtir", "Entrada", "Costo c/u", "Total" };//, "Ok"};//para antes de entrada
                        Class[] types = new Class[] { java.lang.String.class, java.lang.String.class,
                                java.lang.String.class, java.lang.String.class, java.lang.String.class,
                                java.lang.String.class, java.lang.Double.class, java.lang.Double.class,
                                java.lang.Double.class, java.lang.Double.class, java.lang.Double.class
                                //, java.lang.Boolean.class //para antes de entrada
                        };
                        Query query = session.createQuery("SELECT DISTINCT part FROM PartidaExterna part "
                                + "where part.pedido.idPedido=" + Integer.parseInt(t_pedido.getText()));
                        List partidas = query.list();
                        model = new MyModel(partidas.size(), columnas, types);
                        t_datos.setModel(model);
                        for (int a = 0; a < partidas.size(); a++) {
                            PartidaExterna par = (PartidaExterna) partidas.get(a);
                            Movimiento[] mov = (Movimiento[]) par.getMovimientos().toArray(new Movimiento[0]);
                            double entradas = 0, devoluciones = 0;
                            for (int b = 0; b < mov.length; b++) {
                                Almacen alm = mov[b].getAlmacen();
                                if (alm.getTipoMovimiento() == 1 && alm.getOperacion() == 3)
                                    entradas += mov[b].getCantidad();
                                if (alm.getTipoMovimiento() == 2 && alm.getOperacion() == 3)
                                    devoluciones += mov[b].getCantidad();
                            }
                            double total_almacen = entradas - devoluciones;
                            double total = par.getCantidad() - total_almacen;
                            model.setValueAt(par.getIdPartidaExterna(), a, 0);
                            //model.setValueAt(par.getPedido().getPartida().getIdEvaluacion(), a, 1);
                            //model.setValueAt(par.getPedido().getPartida().getSubPartida(), a, 2);
                            model.setValueAt(0, a, 1);
                            model.setValueAt(0, a, 2);
                            if (par.getNoParte() != null)
                                model.setValueAt(par.getNoParte(), a, 3);
                            else
                                model.setValueAt("", a, 3);
                            //model.setValueAt(par.getPedido().getPartida().getCatalogo().getNombre()+"/"+par.getDescripcion(), a, 4);
                            model.setValueAt(par.getDescripcion(), a, 4);
                            model.setValueAt(par.getUnidad(), a, 5);
                            model.setValueAt(par.getCantidad(), a, 6);
                            model.setValueAt(total, a, 7);
                            model.setValueAt(0.0d, a, 8);
                            model.setValueAt(par.getCosto(), a, 9);
                            model.setValueAt(0.0d, a, 10);
                            //model.setValueAt(par.getOp(), a, 11); //para antes de entrada
                        }
                    }
                    if (movimiento.compareTo("Salida") == 0) {
                        String[] columnas = new String[] { "Id", "N", "#", "N Parte", "Descripcin",
                                "Medida", "Pedidos", "En almacen", "Devolucin", "Costo c/u", "Total" };
                        Class[] types = new Class[] { java.lang.String.class, java.lang.String.class,
                                java.lang.String.class, java.lang.String.class, java.lang.String.class,
                                java.lang.String.class, java.lang.Double.class, java.lang.Double.class,
                                java.lang.Double.class, java.lang.Double.class, java.lang.Double.class };
                        Query query = session.createQuery("SELECT DISTINCT part FROM PartidaExterna part "
                                + "LEFT JOIN FETCH part.movimientos movPart " + "LEFT JOIN movPart.almacen alm "
                                + "where alm.operacion=3 and part.pedido.idPedido="
                                + Integer.parseInt(t_pedido.getText()) + "and part.pedido!=" + null);
                        List partidas = query.list();
                        model = new MyModel(partidas.size(), columnas, types);
                        t_datos.setModel(model);
                        for (int a = 0; a < partidas.size(); a++) {
                            PartidaExterna par = (PartidaExterna) partidas.get(a);
                            Movimiento[] mov = (Movimiento[]) session
                                    .createCriteria(Movimiento.class).add(Restrictions
                                            .eq("partidaExterna.idPartidaExterna", par.getIdPartidaExterna()))
                                    .list().toArray(new Movimiento[0]);
                            double entradas = 0, devoluciones = 0, entregadas = 0, devueltas = 0;
                            ;
                            for (int b = 0; b < mov.length; b++) {
                                Almacen alm = mov[b].getAlmacen();
                                if (alm.getTipoMovimiento() == 1 && alm.getOperacion() == 3)
                                    entradas += mov[b].getCantidad();
                                if (alm.getTipoMovimiento() == 2 && alm.getOperacion() == 3)
                                    devoluciones += mov[b].getCantidad();
                                if (alm.getTipoMovimiento() == 1 && alm.getOperacion() == 5)
                                    devueltas += mov[b].getCantidad();
                                if (alm.getTipoMovimiento() == 2 && alm.getOperacion() == 5)
                                    entregadas += mov[b].getCantidad();
                            }
                            double total_Pedido = entradas - devoluciones;
                            double total_operario = entregadas - devueltas;
                            double total = total_Pedido - total_operario;
                            model.setValueAt(par.getIdPartidaExterna(), a, 0);
                            //model.setValueAt(par.getPedido().getPartida().getIdEvaluacion(), a, 1);
                            //model.setValueAt(par.getPedido().getPartida().getSubPartida(), a, 2);
                            model.setValueAt("", a, 1);
                            model.setValueAt("", a, 2);
                            if (par.getNoParte() != null)
                                model.setValueAt(par.getNoParte(), a, 3);
                            else
                                model.setValueAt("", a, 3);
                            //model.setValueAt(par.getPedido().getPartida().getCatalogo().getNombre()+"/"+par.getDescripcion(), a, 4);
                            model.setValueAt(par.getDescripcion(), a, 4);
                            model.setValueAt(par.getUnidad(), a, 5);
                            model.setValueAt(par.getCantidad(), a, 6);
                            model.setValueAt(total, a, 7);
                            model.setValueAt(0.0d, a, 8);
                            model.setValueAt(par.getCosto(), a, 9);
                            model.setValueAt(0.0d, a, 10);
                        }
                    }
                    session.beginTransaction().commit();
                } catch (Exception e) {
                    e.printStackTrace();
                    session.beginTransaction().rollback();
                } finally {
                    if (session.isOpen() == true)
                        session.close();
                }
            }
        }

        if (tipo.compareTo("Venta") == 0) {
            Pedido pedido = (Pedido) session.get(Pedido.class, Integer.parseInt(t_pedido.getText()));
            session.beginTransaction().begin();
            if (movimiento.compareTo("Entrada") == 0) {
                Class[] types = new Class[] { java.lang.String.class, java.lang.String.class,
                        java.lang.String.class, java.lang.String.class, java.lang.Double.class,
                        java.lang.Double.class };
                String[] columnas = new String[] { "Id", "N Parte", "Descripcin", "Medida", "Entregados",
                        "Devueltos" };
                Query query = session.createQuery("SELECT DISTINCT part FROM PartidaExterna part "
                        + "LEFT JOIN FETCH part.movimientos movPart " + "LEFT JOIN movPart.almacen alm "
                        + "where alm.operacion=2 and part.pedido.idPedido="
                        + Integer.parseInt(t_pedido.getText()) + "and part.pedido!=" + null);
                List partidas = query.list();
                model = new MyModel(partidas.size(), columnas, types);
                t_datos.setModel(model);
                for (int a = 0; a < partidas.size(); a++) {
                    PartidaExterna par = (PartidaExterna) partidas.get(a);
                    Movimiento[] mov = (Movimiento[]) session.createCriteria(Movimiento.class)
                            .add(Restrictions.eq("partidaExterna.idPartidaExterna", par.getIdPartidaExterna()))
                            .list().toArray(new Movimiento[0]);
                    double entregados = 0.0d, devoluciones = 0.0d;
                    for (int b = 0; b < mov.length; b++) {
                        Almacen alm = mov[b].getAlmacen();
                        if (alm.getTipoMovimiento() == 1 && alm.getOperacion() == 6)
                            devoluciones += mov[b].getCantidad();
                        if (alm.getTipoMovimiento() == 2 && alm.getOperacion() == 6)
                            entregados += mov[b].getCantidad();
                    }
                    double total = entregados - devoluciones;
                    model.setValueAt(par.getIdPartidaExterna(), a, 0);
                    if (par.getNoParte() != null)
                        model.setValueAt(par.getNoParte(), a, 1);
                    else
                        model.setValueAt("", a, 1);
                    model.setValueAt(par.getDescripcion(), a, 2);
                    model.setValueAt(par.getUnidad(), a, 3);
                    model.setValueAt(total, a, 4);
                    model.setValueAt(0.0d, a, 5);
                }
            }
            if (movimiento.compareTo("Salida") == 0) {
                Class[] types = new Class[] { java.lang.String.class, java.lang.String.class,
                        java.lang.String.class, java.lang.String.class, java.lang.Double.class,
                        java.lang.Double.class, java.lang.Double.class, java.lang.Double.class };
                String[] columnas = new String[] { "Id", "N Parte", "Descripcin", "Medida", "Pedidos",
                        "Entregadas", "Existencias", "Salida" };
                Query query = session.createQuery("SELECT DISTINCT part FROM PartidaExterna part "
                        + "LEFT JOIN FETCH part.movimientos movPart " + "LEFT JOIN movPart.almacen alm "
                        + "where alm.operacion=2 and part.pedido.idPedido="
                        + Integer.parseInt(t_pedido.getText()) + "and part.pedido!=" + null);
                List partidas = query.list();
                model = new MyModel(partidas.size(), columnas, types);
                t_datos.setModel(model);
                for (int a = 0; a < partidas.size(); a++) {
                    PartidaExterna par = (PartidaExterna) partidas.get(a);
                    Movimiento[] mov = (Movimiento[]) session.createCriteria(Movimiento.class)
                            .add(Restrictions.eq("partidaExterna.idPartidaExterna", par.getIdPartidaExterna()))
                            .list().toArray(new Movimiento[0]);
                    double entradas = 00.d, devoluciones = 0.0d, entregadas = 0.0d, devueltas = 0.0d;
                    for (int b = 0; b < mov.length; b++) {
                        Almacen alm = mov[b].getAlmacen();
                        if (alm.getTipoMovimiento() == 1 && alm.getOperacion() == 2)
                            entradas += mov[b].getCantidad();
                        if (alm.getTipoMovimiento() == 2 && alm.getOperacion() == 2)
                            devoluciones += mov[b].getCantidad();
                        if (alm.getTipoMovimiento() == 1 && alm.getOperacion() == 6)
                            devueltas += mov[b].getCantidad();
                        if (alm.getTipoMovimiento() == 2 && alm.getOperacion() == 6)
                            entregadas += mov[b].getCantidad();
                    }
                    double total_Existencias = entradas - devoluciones;
                    double total_cliente = entregadas - devueltas;
                    double total = total_Existencias - total_cliente;
                    model.setValueAt(par.getIdPartidaExterna(), a, 0);
                    if (par.getNoParte() != null)
                        model.setValueAt(par.getNoParte(), a, 1);
                    else
                        model.setValueAt("", a, 1);
                    model.setValueAt(par.getDescripcion(), a, 2);
                    model.setValueAt(par.getUnidad(), a, 3);
                    model.setValueAt(par.getCantidad(), a, 4);
                    model.setValueAt(total_cliente, a, 5);
                    model.setValueAt(total, a, 6);
                    model.setValueAt(0.0d, a, 7);
                }
            }
            session.beginTransaction().commit();
        }
    } catch (Exception e) {
        e.printStackTrace();
    }
    if (session != null)
        if (session.isOpen())
            session.close();
    formatoTabla(tipo, valor, movimiento);
}