Java - Consulta Jtable para grabar

 
Vista:
sin imagen de perfil
Val: 106
Ha mantenido su posición en Java (en relación al último mes)
Gráfica de Java

Consulta Jtable para grabar

Publicado por Hector (63 intervenciones) el 17/07/2019 18:36:52
Hola amigos del foro he aquí nuevamente molestando y tratando de que me ayuden en este problema, lo que quiero hacer es lo siguiente tengo una tabla que se llama orden_trabajo de la cual hay 28 columnas, pero para realizar una llamada de consulta y crear un reporte solos e necesita 10 de estos, los cuales me carga bien, hasta ahí no hay problema, el problema surge cuando quiero grabar los datos resultantes en otra tabla llamada registro1, ya que me dice que el indice esta fuera de rango, por lo que les pido ayuda para que me digan en donde esta el error.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
public void grabar1() {
    int filas;
    DefaultTableModel dtm = (DefaultTableModel) tblDatos.getModel();
    filas = dtm.getRowCount();
    if (filas >= 1) {
        sql1 = "insert into registro1 (N_Orden, Nombre_Asegurado, Nombre_Compañia, Fecha_Recepcion, Patente_Vehiculo, Marca_Vehiculo, Modelo_Vehiculo, Valor_Costo, Mes_Trato, "
                + "Año_Trato, Activo) VALUES(?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)";
    }
    try {
        Statement st = (Statement) cn.createStatement();
        PreparedStatement pre = (PreparedStatement) cn.prepareStatement(sql1);
        int b = 0;
        for (int j = 0; j <= (filas-1); j++) {
            pre.setString(1 + b, (String) tblDatos.getValueAt(j, 0));
            pre.setString(2 + b, (String) tblDatos.getValueAt(j, 1));
            pre.setString(3 + b, (String) tblDatos.getValueAt(j, 2));
            pre.setString(4 + b, (String) tblDatos.getValueAt(j, 3));
            pre.setString(5 + b, (String) tblDatos.getValueAt(j, 4));
            pre.setString(6 + b, (String) tblDatos.getValueAt(j, 5));
            pre.setString(7 + b, (String) tblDatos.getValueAt(j, 6));
            pre.setString(8 + b, (String) tblDatos.getValueAt(j, 7));
            pre.setString(9 + b, (String) tblDatos.getValueAt(j, 8));
            pre.setString(10 + b, (String) tblDatos.getValueAt(j, 9));
            pre.setString(11 + b, (String) tblDatos.getValueAt(j, 10));
            b = b + 11;
        }
        int c = pre.executeUpdate();
        if (c > 0) {
            JOptionPane.showMessageDialog(null, "no corresponde.");
        }
    } catch (SQLException ex) {
        JOptionPane.showMessageDialog(null, ex);
    }
}
ojala que me puedan ayudar y desde ya muchas gracias.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder