Discussion:
Numero de registro
(demasiado antiguo para responder)
IGGV
2013-06-07 20:21:47 UTC
Permalink
Hola a todos.
Después de muchos años otra vez por acá.
Tengo un pregunta en cuanto a numeración de registros
Necesito numerar de forma consecutiva los registros de una tabla a medida que los voy cargando. La carga de datos la hago mediante una consulta de datos anexados que los toma de otra tabla y que traspasa registros de a uno (Tengo un form donde busco el registro a traspasar y una vez seleccionado mediante un botón lanzo la consulta de datos anexados y empiezo otra vez)
Primero pensé en un campo autonumerico, pero el problema es que en caso de algún error o enmienda, llámese tener que eliminar un registro por selección errónea, el campo autonumérico mantiene "memoria" del ultimo asignado y al próximo numero le pone un numero que no es consecutivo con el inmediato anterior.
Por ejemplo: cargo 50 registros pero detecto un error en la carga del numero 51 y lo elimino de la tabla. Cuando cargo el próximo registro el numero que pone el autonumérico es el 52 y no el 51 ya que este pertenecía al que fue eliminado, por lo que la numeración queda así: 48, 49, 50, 52 (salta el 51).
Como hago para poder generar este numero de control?
desde ya muchas gracias por su ayuda
IGGV
2013-06-07 20:24:39 UTC
Permalink
Perdon olvide decir que utilizo Access 2003
Post by IGGV
Hola a todos.
Después de muchos años otra vez por acá.
Tengo un pregunta en cuanto a numeración de registros
Necesito numerar de forma consecutiva los registros de una tabla a medida que los voy cargando. La carga de datos la hago mediante una consulta de datos anexados que los toma de otra tabla y que traspasa registros de a uno (Tengo un form donde busco el registro a traspasar y una vez seleccionado mediante un botón lanzo la consulta de datos anexados y empiezo otra vez)
Primero pensé en un campo autonumerico, pero el problema es que en caso de algún error o enmienda, llámese tener que eliminar un registro por selección errónea, el campo autonumérico mantiene "memoria" del ultimo asignado y al próximo numero le pone un numero que no es consecutivo con el inmediato anterior.
Por ejemplo: cargo 50 registros pero detecto un error en la carga del numero 51 y lo elimino de la tabla. Cuando cargo el próximo registro el numero que pone el autonumérico es el 52 y no el 51 ya que este pertenecía al que fue eliminado, por lo que la numeración queda así: 48, 49, 50, 52 (salta el 51).
Como hago para poder generar este numero de control?
desde ya muchas gracias por su ayuda
José Mª Fueyo
2013-06-10 08:08:40 UTC
Permalink
Hola
Tendrás que generar el ID en el momento de guardar el archivo. Para el tema de los huecos, tendrás que crear una tabla donde se almacenen los ID de los registros borrados.
En resumen, tendrás que crear un proceso que en el momento de borrar guarde el ID del registro borrado, y en el momento de insertar, haga uso primero del ID almacenado en esta tabla, y en caso contrario, calcule el próximo ID usando una función que a su vez haga uso (por ejemplo) de la función DMax.

Salu2
--
José Mª Fueyo
[MS MVP Access]
IGGV
2013-06-10 15:34:13 UTC
Permalink
Ok, entendido.
Gracias

Loading...