Netbeans - No acumula los productos en la Jtable

 
Vista:

No acumula los productos en la Jtable

Publicado por Facundo Diaz (1 intervención) el 03/07/2021 05:50:49
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
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
//el sistema tiene que agregar en una Jtable cada producto traidos de la base de datos.
//pero lo que hace el metodo es sobrescribirme en la Jtable el primer producto que ingrese.
//como puedo hacer que la Jtable vaya acumulando los productos??
 
public void AgregaCarrito(){
 
    String campo = frm_producto.txtBusquedaClave.getText();
 
    String where= "";
 
    if(!"".equals(campo)){
 
        where=" WHERE Clave = '" + campo + "'";
 
    }
 
 
 
    try{
 
        DefaultTableModel modelo = new DefaultTableModel();
 
        frm_producto.jtVentas.setModel(modelo);
 
        PreparedStatement ps= null;
 
        ResultSet rs=null;
 
        Conexion conn= new Conexion();
 
        Connection con=conn.getConexion();
 
        String sql ="SELECT Clave,Nombre,Precio,Cantidad FROM producto" + where;
 
        ps= con.prepareStatement(sql);
 
        rs = ps.executeQuery();
 
        ResultSetMetaData rsMd= rs.getMetaData(); //le damos los datos de la consulta a la tabla.
 
        int cantidadColumnas  = 4;
 
        modelo.addColumn("Clave"); //cada vuelta que reinicie la tabla perdera los nombres de las columnas
        modelo.addColumn("Nombre");//por eso los tenemos que reasignar.
        modelo.addColumn("Precio");
        modelo.addColumn("Cantidad Total");
        modelo.addColumn("Cantidad a llevar");
 
       Object[] filas=new Object[5];
 
       while(rs.next()){ //va a ir recorriendo los datos y los ira trayendo fila por fila el ciclo while.
 
 
 
            for(int i=0;i<cantidadColumnas;i++){
 
                filas[i] = rs.getObject(i+1); //trae fila por fila
 
            }
 
            filas[4] = frm_producto.txtCantidadAllevar.getText();
 
 
       }
 
        modelo.addRow(filas); //guarda en la tabla el vector que guardo todos los datos de la base de datos
 
 
    }catch(SQLException e){
 
        System.out.println(e);
 
    }
 
}
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