Java tutorial
/* * To change this license header, choose License Headers in Project Properties. * To change this template file, choose Tools | Templates * and open the template in the editor. */ package Calendar; import Visual.Feriados; import Visual.TablaCheques; import conexiones.DBconection; import java.beans.PropertyChangeEvent; import java.beans.PropertyChangeListener; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.IOException; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; import java.util.Date; import java.util.logging.Level; import java.util.logging.Logger; import javax.swing.JFileChooser; import javax.swing.JOptionPane; import org.apache.poi.hssf.usermodel.HSSFCell; import org.apache.poi.hssf.usermodel.HSSFRichTextString; import org.apache.poi.hssf.usermodel.HSSFRow; import org.apache.poi.hssf.usermodel.HSSFSheet; import org.apache.poi.hssf.usermodel.HSSFWorkbook; /** * * @author martin */ public class Calendario extends javax.swing.JPanel { /** * Creates new form Calendario */ DBconection con; double total; double totalp; public Calendario() { initComponents(); Date fecha = new Date(); Mes.setMonth(fecha.getMonth()); Anio.setYear(fecha.getYear() + 1900); llenarMes(); Mes.addPropertyChangeListener(new PropertyChangeListener() { @Override public void propertyChange(PropertyChangeEvent e) { llenarMes(); } }); Anio.addPropertyChangeListener(new PropertyChangeListener() { @Override public void propertyChange(PropertyChangeEvent e) { llenarMes(); } }); } public Date setMesAnio() { Date fecha = new Date(); fecha.setDate(1); fecha.setMonth(Mes.getMonth()); fecha.setYear(Anio.getYear() - 1900); System.out.print(fecha.getYear()); monthclass.setMes(fecha); return fecha; } public void llenarMes() { try { String s; total = 0; double num; Date fechaIni = setMesAnio(); Date fechaFin = (Date) fechaIni.clone(); fechaFin = Feriados.sumarMes(fechaFin); con = new DBconection(); ResultSet rs1, rs2; Statement st; st = con.conectar().createStatement(); rs2 = st.executeQuery("SELECT * FROM `Feriados` WHERE Feriado>='" + TablaCheques.convFecha(fechaIni) + "' AND Feriado<'" + TablaCheques.convFecha(fechaFin) + "'"); while (rs2.next()) { monthclass.agregarFeriado(rs2.getString("Feriado")); } rs1 = st.executeQuery("SELECT * FROM `Cheques` WHERE FechaPago>='" + TablaCheques.convFecha(fechaIni) + "' AND FechaPago<'" + TablaCheques.convFecha(fechaFin) + "'"); while (rs1.next()) { s = new String("$"); s = s.concat(rs1.getString("Importe")); num = Double.parseDouble(s.substring(1)); s = s.concat(" "); s = s.concat(rs1.getString("Beneficiario")); monthclass.agregarEvento(s, num, rs1.getString("FechaPago"), Integer.parseInt(rs1.getString("Pagado"))); total += num; } total = monthclass.getTotalMes(); ImpMes.setText(TablaCheques.moneyFormat(total)); Impsem1.setText(TablaCheques.moneyFormat(monthclass.getTotalSemana(0))); Impsem2.setText(TablaCheques.moneyFormat(monthclass.getTotalSemana(1))); Impsem3.setText(TablaCheques.moneyFormat(monthclass.getTotalSemana(2))); Impsem4.setText(TablaCheques.moneyFormat(monthclass.getTotalSemana(3))); Impsem5.setText(TablaCheques.moneyFormat(monthclass.getTotalSemana(4))); totalp = monthclass.getTotalPagadoMes(); ImpMesp.setText(TablaCheques.moneyFormat(totalp)); Impsemp1.setText(TablaCheques.moneyFormat(monthclass.getTotalPagadoSemana(0))); Impsemp2.setText(TablaCheques.moneyFormat(monthclass.getTotalPagadoSemana(1))); Impsemp3.setText(TablaCheques.moneyFormat(monthclass.getTotalPagadoSemana(2))); Impsemp4.setText(TablaCheques.moneyFormat(monthclass.getTotalPagadoSemana(3))); Impsemp5.setText(TablaCheques.moneyFormat(monthclass.getTotalPagadoSemana(4))); ImpTotalMes.setText(TablaCheques.moneyFormat(totalp + total)); } catch (SQLException ex) { Logger.getLogger(Calendario.class.getName()).log(Level.SEVERE, null, ex); JOptionPane.showMessageDialog(null, "Error al conectarse con la Base de Datos. Intente establecer la conexion o contacte con el administrador"); System.out.println(ex); System.exit(0); } } /** * This method is called from within the constructor to initialize the form. * WARNING: Do NOT modify this code. The content of this method is always * regenerated by the Form Editor. */ @SuppressWarnings("unchecked") // <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents private void initComponents() { jPanel1 = new javax.swing.JPanel(); jLabel1 = new javax.swing.JLabel(); jLabel2 = new javax.swing.JLabel(); Anio = new com.toedter.calendar.JYearChooser(); Mes = new com.toedter.calendar.JMonthChooser(); GenerarPlanilla = new javax.swing.JButton(); monthclass = new Calendar.Mes(); jPanel2 = new javax.swing.JPanel(); jLabel3 = new javax.swing.JLabel(); jLabel4 = new javax.swing.JLabel(); jLabel5 = new javax.swing.JLabel(); jLabel6 = new javax.swing.JLabel(); Impsem4 = new javax.swing.JLabel(); Impsem2 = new javax.swing.JLabel(); Impsem3 = new javax.swing.JLabel(); Impsem1 = new javax.swing.JLabel(); jLabel10 = new javax.swing.JLabel(); Impsemp1 = new javax.swing.JLabel(); jLabel11 = new javax.swing.JLabel(); Impsemp2 = new javax.swing.JLabel(); jSeparator1 = new javax.swing.JSeparator(); jLabel12 = new javax.swing.JLabel(); jSeparator2 = new javax.swing.JSeparator(); Impsemp3 = new javax.swing.JLabel(); jSeparator3 = new javax.swing.JSeparator(); jLabel13 = new javax.swing.JLabel(); Impsemp4 = new javax.swing.JLabel(); jSeparator4 = new javax.swing.JSeparator(); jLabel7 = new javax.swing.JLabel(); Impsem5 = new javax.swing.JLabel(); jLabel14 = new javax.swing.JLabel(); Impsemp5 = new javax.swing.JLabel(); jPanel3 = new javax.swing.JPanel(); ImpMesp = new javax.swing.JLabel(); jLabel9 = new javax.swing.JLabel(); ImpMes = new javax.swing.JLabel(); jLabel8 = new javax.swing.JLabel(); jLabel15 = new javax.swing.JLabel(); ImpTotalMes = new javax.swing.JLabel(); jPanel1.setBackground(new java.awt.Color(198, 228, 243)); jPanel1.setBorder(new javax.swing.border.SoftBevelBorder(javax.swing.border.BevelBorder.RAISED)); jLabel1.setText("Seleccionar Mes"); jLabel2.setText("Seleccionar Ao"); GenerarPlanilla.setText("Generar Planilla de Excel"); GenerarPlanilla.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { GenerarPlanillaActionPerformed(evt); } }); javax.swing.GroupLayout jPanel1Layout = new javax.swing.GroupLayout(jPanel1); jPanel1.setLayout(jPanel1Layout); jPanel1Layout.setHorizontalGroup(jPanel1Layout .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(jPanel1Layout.createSequentialGroup().addGap(15, 15, 15).addComponent(jLabel1) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED) .addComponent(Mes, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) .addGap(89, 89, 89).addComponent(jLabel2) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED) .addComponent(Anio, javax.swing.GroupLayout.PREFERRED_SIZE, 55, javax.swing.GroupLayout.PREFERRED_SIZE) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) .addComponent(GenerarPlanilla).addGap(83, 83, 83))); jPanel1Layout.setVerticalGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(jPanel1Layout.createSequentialGroup().addContainerGap() .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel1Layout.createSequentialGroup().addComponent(GenerarPlanilla) .addGap(0, 0, Short.MAX_VALUE)) .addComponent(Mes, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) .addComponent(jLabel1, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) .addComponent(jLabel2, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) .addComponent(Anio, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)) .addContainerGap())); jLabel3.setHorizontalAlignment(javax.swing.SwingConstants.CENTER); jLabel3.setText("Importe a pagar de la semana:"); jLabel4.setHorizontalAlignment(javax.swing.SwingConstants.CENTER); jLabel4.setText("Importe a pagar de la semana:"); jLabel5.setHorizontalAlignment(javax.swing.SwingConstants.CENTER); jLabel5.setText("Importe a pagar de la semana:"); jLabel6.setHorizontalAlignment(javax.swing.SwingConstants.CENTER); jLabel6.setText("Importe a pagar de la semana:"); Impsem4.setHorizontalAlignment(javax.swing.SwingConstants.CENTER); Impsem2.setHorizontalAlignment(javax.swing.SwingConstants.CENTER); Impsem3.setHorizontalAlignment(javax.swing.SwingConstants.CENTER); Impsem1.setHorizontalAlignment(javax.swing.SwingConstants.CENTER); jLabel10.setHorizontalAlignment(javax.swing.SwingConstants.CENTER); jLabel10.setText("Importe pagado:"); Impsemp1.setHorizontalAlignment(javax.swing.SwingConstants.CENTER); jLabel11.setHorizontalAlignment(javax.swing.SwingConstants.CENTER); jLabel11.setText("Importe pagado:"); Impsemp2.setHorizontalAlignment(javax.swing.SwingConstants.CENTER); jLabel12.setHorizontalAlignment(javax.swing.SwingConstants.CENTER); jLabel12.setText("Importe pagado:"); Impsemp3.setHorizontalAlignment(javax.swing.SwingConstants.CENTER); jLabel13.setHorizontalAlignment(javax.swing.SwingConstants.CENTER); jLabel13.setText("Importe pagado:"); Impsemp4.setHorizontalAlignment(javax.swing.SwingConstants.CENTER); jLabel7.setHorizontalAlignment(javax.swing.SwingConstants.CENTER); jLabel7.setText("Importe a pagar de la semana:"); Impsem5.setHorizontalAlignment(javax.swing.SwingConstants.CENTER); jLabel14.setHorizontalAlignment(javax.swing.SwingConstants.CENTER); jLabel14.setText("Importe pagado:"); Impsemp5.setHorizontalAlignment(javax.swing.SwingConstants.CENTER); javax.swing.GroupLayout jPanel2Layout = new javax.swing.GroupLayout(jPanel2); jPanel2.setLayout(jPanel2Layout); jPanel2Layout.setHorizontalGroup(jPanel2Layout .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel2Layout.createSequentialGroup() .addContainerGap() .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING) .addComponent(Impsemp5, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) .addComponent(jLabel5, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) .addComponent(Impsemp2, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) .addComponent(Impsem2, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) .addComponent(Impsemp1, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) .addComponent(Impsem1, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) .addGroup(jPanel2Layout.createSequentialGroup() .addComponent(jLabel3, javax.swing.GroupLayout.DEFAULT_SIZE, 310, Short.MAX_VALUE) .addGap(6, 6, 6)) .addComponent(jLabel10, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) .addComponent(jSeparator1) .addComponent(jLabel11, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) .addComponent(jSeparator2) .addComponent(Impsem3, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) .addComponent(jLabel12, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) .addGroup(jPanel2Layout.createSequentialGroup().addGap(6, 6, 6).addComponent( jLabel4, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)) .addComponent(Impsemp3, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) .addComponent(jSeparator3) .addComponent(jLabel6, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) .addComponent(Impsem4, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) .addComponent(jLabel13, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) .addComponent(Impsemp4, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) .addComponent(jSeparator4) .addComponent(jLabel7, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) .addComponent(Impsem5, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) .addComponent(jLabel14, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)) .addContainerGap())); jPanel2Layout.setVerticalGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(jPanel2Layout.createSequentialGroup().addContainerGap() .addComponent(jLabel3, javax.swing.GroupLayout.PREFERRED_SIZE, 30, javax.swing.GroupLayout.PREFERRED_SIZE) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addComponent(Impsem1, javax.swing.GroupLayout.PREFERRED_SIZE, 26, javax.swing.GroupLayout.PREFERRED_SIZE) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addComponent(jLabel10, javax.swing.GroupLayout.PREFERRED_SIZE, 30, javax.swing.GroupLayout.PREFERRED_SIZE) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addComponent(Impsemp1, javax.swing.GroupLayout.PREFERRED_SIZE, 26, javax.swing.GroupLayout.PREFERRED_SIZE) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addComponent(jSeparator1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED).addComponent(jLabel4) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addComponent(Impsem2, javax.swing.GroupLayout.PREFERRED_SIZE, 26, javax.swing.GroupLayout.PREFERRED_SIZE) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addComponent(jLabel11, javax.swing.GroupLayout.PREFERRED_SIZE, 30, javax.swing.GroupLayout.PREFERRED_SIZE) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addComponent(Impsemp2, javax.swing.GroupLayout.PREFERRED_SIZE, 26, javax.swing.GroupLayout.PREFERRED_SIZE) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addComponent(jSeparator2, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED).addComponent(jLabel5) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addComponent(Impsem3, javax.swing.GroupLayout.PREFERRED_SIZE, 26, javax.swing.GroupLayout.PREFERRED_SIZE) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addComponent(jLabel12, javax.swing.GroupLayout.PREFERRED_SIZE, 30, javax.swing.GroupLayout.PREFERRED_SIZE) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addComponent(Impsemp3, javax.swing.GroupLayout.PREFERRED_SIZE, 26, javax.swing.GroupLayout.PREFERRED_SIZE) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addComponent(jSeparator3, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED).addComponent(jLabel6) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addComponent(Impsem4, javax.swing.GroupLayout.PREFERRED_SIZE, 26, javax.swing.GroupLayout.PREFERRED_SIZE) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addComponent(jLabel13, javax.swing.GroupLayout.PREFERRED_SIZE, 30, javax.swing.GroupLayout.PREFERRED_SIZE) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addComponent(Impsemp4, javax.swing.GroupLayout.PREFERRED_SIZE, 26, javax.swing.GroupLayout.PREFERRED_SIZE) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addComponent(jSeparator4, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED).addComponent(jLabel7) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addComponent(Impsem5, javax.swing.GroupLayout.PREFERRED_SIZE, 26, javax.swing.GroupLayout.PREFERRED_SIZE) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addComponent(jLabel14, javax.swing.GroupLayout.PREFERRED_SIZE, 30, javax.swing.GroupLayout.PREFERRED_SIZE) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addComponent(Impsemp5, javax.swing.GroupLayout.PREFERRED_SIZE, 26, javax.swing.GroupLayout.PREFERRED_SIZE) .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))); jLabel9.setFont(new java.awt.Font("Lucida Grande", 0, 15)); // NOI18N jLabel9.setText("Importe Total Pagado del Mes:"); jLabel8.setFont(new java.awt.Font("Lucida Grande", 0, 15)); // NOI18N jLabel8.setText("Importe Total A Pagar del Mes:"); javax.swing.GroupLayout jPanel3Layout = new javax.swing.GroupLayout(jPanel3); jPanel3.setLayout(jPanel3Layout); jPanel3Layout .setHorizontalGroup( jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(jPanel3Layout.createSequentialGroup().addContainerGap() .addComponent(jLabel8).addGap(18, 18, 18) .addComponent(ImpMes, javax.swing.GroupLayout.PREFERRED_SIZE, 225, javax.swing.GroupLayout.PREFERRED_SIZE) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addComponent(jLabel9).addGap(18, 18, 18).addComponent(ImpMesp, javax.swing.GroupLayout.DEFAULT_SIZE, 326, Short.MAX_VALUE) .addContainerGap())); jPanel3Layout.setVerticalGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(jPanel3Layout.createSequentialGroup().addContainerGap().addGroup(jPanel3Layout .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addComponent(jLabel8, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.PREFERRED_SIZE, 28, javax.swing.GroupLayout.PREFERRED_SIZE) .addComponent(ImpMes, javax.swing.GroupLayout.PREFERRED_SIZE, 28, javax.swing.GroupLayout.PREFERRED_SIZE)) .addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) .addComponent(jLabel9, javax.swing.GroupLayout.PREFERRED_SIZE, 28, javax.swing.GroupLayout.PREFERRED_SIZE) .addComponent(ImpMesp, javax.swing.GroupLayout.PREFERRED_SIZE, 28, javax.swing.GroupLayout.PREFERRED_SIZE))) .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))); jLabel15.setFont(new java.awt.Font("Lucida Grande", 0, 15)); // NOI18N jLabel15.setText("Importe Total Emitido del Mes:"); javax.swing.GroupLayout layout = new javax.swing.GroupLayout(this); this.setLayout(layout); layout.setHorizontalGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addComponent(jPanel1, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) .addGroup(layout.createSequentialGroup().addContainerGap().addGroup(layout .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(layout.createSequentialGroup().addGap(6, 6, 6).addComponent(jLabel15) .addGap(18, 18, 18) .addComponent(ImpTotalMes, javax.swing.GroupLayout.PREFERRED_SIZE, 225, javax.swing.GroupLayout.PREFERRED_SIZE) .addGap(0, 0, Short.MAX_VALUE)) .addComponent(jPanel3, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) .addComponent(monthclass, javax.swing.GroupLayout.PREFERRED_SIZE, 0, Short.MAX_VALUE)) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addComponent(jPanel2, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) .addContainerGap())); layout.setVerticalGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(layout.createSequentialGroup() .addComponent(jPanel1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addComponent(jPanel2, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) .addComponent(monthclass, javax.swing.GroupLayout.PREFERRED_SIZE, 714, javax.swing.GroupLayout.PREFERRED_SIZE)) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addComponent(jPanel3, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addComponent(jLabel15, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.PREFERRED_SIZE, 28, javax.swing.GroupLayout.PREFERRED_SIZE) .addComponent(ImpTotalMes, javax.swing.GroupLayout.PREFERRED_SIZE, 28, javax.swing.GroupLayout.PREFERRED_SIZE)) .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))); }// </editor-fold>//GEN-END:initComponents private void GenerarPlanillaActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_GenerarPlanillaActionPerformed JFileChooser file = new JFileChooser(); int dir = file.showSaveDialog(this); String name; if (dir == JFileChooser.APPROVE_OPTION) { name = file.getSelectedFile().getAbsolutePath(); if (name.endsWith(".xls")) { name = name.substring(0, name.length() - 4); } if (name == null || name.equals("")) { JOptionPane.showMessageDialog(null, "Debe ingresar un nombre para el archivo de la planilla"); } else { boolean ok = false; FileInputStream test; try { test = new FileInputStream(name + ".xls"); int seleccion = JOptionPane.showOptionDialog(this, // Componente padre "El archivo con el nombre " + name + " ya existe, Desea sobreescribirlo?", //Mensaje "Advertencia", // Ttulo JOptionPane.YES_NO_CANCEL_OPTION, JOptionPane.QUESTION_MESSAGE, null, // null para icono por defecto. new Object[] { "Si", "No" }, // null para YES, NO y CANCEL "Si"); if (seleccion != -1) { if ((seleccion + 1) == 1) { ok = true; } } } catch (FileNotFoundException ex) { ok = true; } if (ok) { Dia[][] aux = new Dia[5][5]; double[][] excel = new double[5][5]; aux = monthclass.getDias(); for (int i = 0; i < 5; i++) { System.out.println(); for (int j = 0; j < 5; j++) { if (aux[j][i].isVisible() == true) { excel[i][j] = aux[j][i].getTotal(); } else { excel[i][j] = -1; } } } crearExcel(excel, name); } } } }//GEN-LAST:event_GenerarPlanillaActionPerformed // Variables declaration - do not modify//GEN-BEGIN:variables private com.toedter.calendar.JYearChooser Anio; private javax.swing.JButton GenerarPlanilla; private javax.swing.JLabel ImpMes; private javax.swing.JLabel ImpMesp; private javax.swing.JLabel ImpTotalMes; private javax.swing.JLabel Impsem1; private javax.swing.JLabel Impsem2; private javax.swing.JLabel Impsem3; private javax.swing.JLabel Impsem4; private javax.swing.JLabel Impsem5; private javax.swing.JLabel Impsemp1; private javax.swing.JLabel Impsemp2; private javax.swing.JLabel Impsemp3; private javax.swing.JLabel Impsemp4; private javax.swing.JLabel Impsemp5; private com.toedter.calendar.JMonthChooser Mes; private javax.swing.JLabel jLabel1; private javax.swing.JLabel jLabel10; private javax.swing.JLabel jLabel11; private javax.swing.JLabel jLabel12; private javax.swing.JLabel jLabel13; private javax.swing.JLabel jLabel14; private javax.swing.JLabel jLabel15; private javax.swing.JLabel jLabel2; private javax.swing.JLabel jLabel3; private javax.swing.JLabel jLabel4; private javax.swing.JLabel jLabel5; private javax.swing.JLabel jLabel6; private javax.swing.JLabel jLabel7; private javax.swing.JLabel jLabel8; private javax.swing.JLabel jLabel9; private javax.swing.JPanel jPanel1; private javax.swing.JPanel jPanel2; private javax.swing.JPanel jPanel3; private javax.swing.JSeparator jSeparator1; private javax.swing.JSeparator jSeparator2; private javax.swing.JSeparator jSeparator3; private javax.swing.JSeparator jSeparator4; private Calendar.Mes monthclass; // End of variables declaration//GEN-END:variables private void crearExcel(double[][] excel, String name) { HSSFWorkbook libro = new HSSFWorkbook(); HSSFSheet hoja = libro.createSheet(); HSSFRow fila; HSSFCell celda; fila = hoja.createRow(2); celda = fila.createCell(3); HSSFRichTextString texto = new HSSFRichTextString("prueba"); celda.setCellValue(texto); celda = fila.createCell(4); celda.setCellValue("prueba2"); /* for (int i = 0; i < modelo.getColumnCount(); i++) { celda = fila.createCell(i); HSSFRichTextString texto = new HSSFRichTextString((String) (modelo.getColumnName(i))); celda.setCellValue(texto); } for (int i = 0; i < modelo.getRowCount(); i++) { fila = hoja.createRow(i + 1); for (int k = 0; k < modelo.getColumnCount(); k++) { celda = fila.createCell(k); HSSFRichTextString texto = new HSSFRichTextString((String) (modelo.getValueAt(i, k))); celda.setCellValue(texto); } }*/ FileOutputStream elFichero; try { elFichero = new FileOutputStream(name + ".xls"); libro.write(elFichero); elFichero.close(); JOptionPane.showMessageDialog(null, "Se genero la planilla correctamente"); } catch (IOException ex) { JOptionPane.showMessageDialog(null, "Error al crear la planilla de Excel. Recuerde que el nombre del archivo no puede contener ninguno de los siguientes caracteres: \\ / : * ? \"< > | Intentelo nuevamente y si el problema persiste contacte con el administrador."); System.out.println(ex); System.exit(0); } } }