Java - Como aumentar numero de factura de 1 en 1?

 
Vista:
sin imagen de perfil

Como aumentar numero de factura de 1 en 1?

Publicado por antonio (12 intervenciones) el 27/07/2014 02:00:08
Hola que tal compañeros, mira tengo un pequeño inconveniente y queria saber si me podrian guiar un poco para resolverlo, resulta que la interfaz que tengo para hacer facturas, me incrementa el numero pero con muchos 0000 a la izquierda , entonces lo que de pronto me gustaria es que quedara normal osea aumentara de uno en uno la factura, no entiendo muy bien el codigo , y pues la verdad no se como hacerlo, por lo que pido asesoria de parte de ustedes , gracias de antemano, saludes y enhorabuena x la ayuda que prestan, este es el metodo que realiza la operacion de el numero de la factura:

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
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
void numeros()
     {
        int j;
        int cont=1;
        String num="";
        String c="";
         String SQL="select max(num_fac) from factura";
        //String SQL="select count(*) from factura";
        //String SQL="SELECT MAX(cod_clients) AS cod_emp FROM clients";
        //String SQL="SELECT @@identity AS ID";
        try {
            Statement st = cn.createStatement();
            ResultSet rs=st.executeQuery(SQL);
            if(rs.next())
            {
                 c=rs.getString(1);
            }
 
            if(c==null){
                txtfac.setText("00000001");
            }
            else{
                 j=Integer.parseInt(c);
                 GenerarNumero gen= new GenerarNumero();
                 gen.generar(j);
                 txtfac.setText(gen.serie());
 
            }
 
 
        } catch (SQLException ex) {
           Logger.getLogger(Factura1.class.getName()).log(Level.SEVERE, null, ex);
        }
    }
 
 
luego esta el metodo  GenerarNumero:
 
public class GenerarNumero {
 
    private int dato;
    private int cont=1;
    private String num="";
 
    public void generar(int dato) {
        this.dato = dato;
           if((this.dato>=10000000) || (this.dato<100000000))
           {
               int can=cont+this.dato;
               num = "" + can;
           }
           if((this.dato>=1000000) || (this.dato<10000000))
           {
               int can=cont+this.dato;
               num = "0" + can;
           }
           if((this.dato>=100000) || (this.dato<1000000))
           {
               int can=cont+this.dato;
               num = "00" + can;
           }
           if((this.dato>=10000) || (this.dato<100000))
           {
               int can=cont+this.dato;
               num = "000" + can;
           }
           if((this.dato>=1000) || (this.dato<10000))
           {
               int can=cont+this.dato;
               num = "0000" + can;
           }
           if((this.dato>=100) || (this.dato<1000))
           {
               int can=cont+this.dato;
               num = "00000" + can;
           }
           if((this.dato>=9) || (this.dato<100))
           {
                int can=cont+this.dato;
               num = "000000" + can;
           }
           if (this.dato<9)
           {
               int can=cont+this.dato;
               num = "0000000000" + can;
           }
 
    }
 
    public String serie()
    {
        return this.num;
    }
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

Como aumentar numero de factura de 1 en 1?

Publicado por Mauricio (6 intervenciones) el 29/07/2014 02:16:32
Cuando crees la base de datos, haz un índice autoincrementable y úsalo como número de factura y lo tienes hecho, sin implementar nada mas.

Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

Como aumentar numero de factura de 1 en 1?

Publicado por antonio (12 intervenciones) el 29/07/2014 18:31:55
Hola muchas gracias por tu respuesta campeón, me ha servido mucho de hecho la base de datos la tengo en numero de factura autoincrement, pero cuando llego a la factura 100, se me repite lo mismo, osea 0000000100 un ejemplo, yo creo que tengo malo es el método Generar Numero de este, igual te agradezco mucho por tu información, gracias.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de PepeNovato

Como aumentar numero de factura de 1 en 1?

Publicado por PepeNovato (1 intervención) el 19/02/2017 23:24:56
Buenas tardes, yo tengo el mismo código pero tengo otra pregunta, me almacena en la BD 0000001 como esta en el código, pero lo que yo quería almacenar de la siguiente manera 0010010000001, al modificar el txtfac.setText("00100100000001"); me un error no se cual seria el problema.. si alguien me puede dar una mano, ahh en la BD tengo marcado el zerofill y de igual manera me da error..
IMG-20170218-WA00531
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Como aumentar numero de factura de 1 en 1?

Publicado por nombre (1 intervención) el 28/10/2017 03:34:11
Lo que pasa es que estas ingresando datos que solo puede almacenar cierta cantidad int solo almacena 10 digitos utilza otro
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar