Access - contador para codigo de clientes

 
Vista:

contador para codigo de clientes

Publicado por pedro roque (2 intervenciones) el 08/10/2001 20:53:30
quisiera seber como puedo crear un contador no autonimerico que cada vez que crease un codigo nuevo de cliente se me incrementara el valor en +1 como hace el autonumerico pero que ademas cuando diese de baja un cliente ese codigo que a quedado libre me lo diese automaticamente al crear otro cliente nuevo.
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

RE:contador para codigo de clientes

Publicado por Mela (13 intervenciones) el 08/10/2001 22:39:57
Puedes hacerlo usando la función DMAX("campo", "tabla") de la siguiente manera:

Cada vez que insertes un registro, ejecutas una macro que ejecute la función: código=DMAX("código","tabla")+1

Esta función te devuelve el mayor valor que tiene el campo código.

No se si hay una forma mejor de hacerlo. Espero que esto te sirva.
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

RE:contador para codigo de clientes

Publicado por Jose Luis (46 intervenciones) el 09/10/2001 09:43:30
Creo que la respuesta anterior no vale, porque si se elimina un registro a media tabla, es decir una tabla con valores del uno al cuarenta y se elimina el veinte, creo que el valor de veinte tambien quiere asignarlo.
Yo creo que deberias hacer una consulta que te devolviese los valores numericos filtrando los "no" utilizados y despues usar el valor mas pequeño para el nuevo registro. Esa consulta creo que deberia usarse en automatico, por ejemplo, al recibir el foco el campo donde quieras ingresar el valor, de manera que te lo ponga el access automaticamente.
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

RE:contador para codigo de clientes

Publicado por Ignacio Soler (231 intervenciones) el 10/10/2001 14:48:54
Lo que pretendes hacer es bastante sencillo. En el formulario que uses te debes crear un procedimiento en el evento "antes de insertar" que te haga lo siguiente. Te creas un recordset de la tabla ordenado por el código. Comparas el último código con en número de registros y si coincide es que no tienes ningún codigo sin asignar y debes asignar al último mas uno, es decir poner en el cuadro de texto del código el último mas 1. Si en la comparación no coinciden debes recorrer el recordset desde el principio con un bucle y comparando el valor de la variable del bucle con el valor del código del recordset hasta que no coincidan y ese será el código que tienes que asignar. Para esto es fundamental que el recordset esté ordenado ppor el código.
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

RE:contador para codigo de clientes

Publicado por falko (13 intervenciones) el 02/11/2001 17:30:03
....y si la tabla de la que hablamos está vinculada. He probado lo que dices y funciona (gracias a dios), pero cuando divido la base de datos y vinculo la tabla no funciona ¿?¿?¿?
Muchas gracias y un saludo
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