Problema Access: consulta de Total no trae el Último registro

Tengo un problema que ya me sucedió un par de veces y las anteriores se solucionó solo, pero sería bueno poder solucionarlo yo y no esperar a la buena voluntad del error, paso a detallar, ejecuto una Consulta de Total con la condición Último y no me trae el último, sino uno anterior:

Si borro el registro 188 me toma el anterior, 187, pero no los siguientes. Es como que queda clavado en ese registro.

Me ha sucedido en otras oportunidades y jamas pude descubrir por que el error, y en un tiempo se solucionó solo, esta vez no puedo esperar, por eso, quisiera si alguien le paso lo mismo me diga

3 respuestas

Respuesta
2

Si lo que quieres que te devuelva la consulta es el Id_Cobros de mayor valor, agrupa por máximo, y no por último, porque aunque pueda parecerlo, no son lo mismo.

Respuesta
1

Es raro ... ¿tendrás abierta la consulta y sin actualizar? ¿La consulta de último está basada en la tabla que muestras?

Te cuento, la consulta funcionaba perfectamente, hace un mes atrás quedó clavada en un registro, intenté encontrar el problema y como no lo encontré la dejé, a los pocos días probé de nuevo y funcionaba bien, y hoy me pasó lo mismo. Es una base de datos que aún estoy construyendo pero la voy usando para darle forma, con un problema así se me cae el proyecto completo!

La consulta en realidad es otra pero con la misma tabla, hice ese ejemplo para que se vea claro el problema, no estaba abierta cuando dejó de funcionar, y la tabla es la que se ve en el print.

Tendrá que ver con algún problema de fecha de Windows? 

Las fechas la verdad es que a veces son bastante puñeteras..., ¿no le puedes agregar a tu tabla un campo autonumérico? Buscas el último numéricamente y ahí no debías tener problema

El campo que muestra el ejemplo es Autonumérico, Id_COBROS... obviamente hay otros Campos entre los cuales uno es la fecha...

Pues si es autonumérico no deberías tener problema. De todas formas, hazle caso a Sveinbjorn que sabe muchísimo de Access.

Respuesta
1

La unica respuesta es que hay manipulacion sobre la tabla, te explico tu puedes poner un autonumerico y este pondra el numero consecutivo, pero posterior a eso el registro (188 tu caso) fue eliminado y posteriormente agregado (ya sea manual o por codigo en un INSERT), esto lo reflejara como el ULTIMO en el SELECT.

1.-Recomiendo revises tu programa y veas si en algun lado se elimina y se agrega dicho registro por alguna situacion.

2.- Puedes usar MAX en lugar de ULTIMO.

3.- Quita el autonumerico y lleva tu el control (por codigo) del consecutivo.

Gracias por tu respuesta, manualmente no fue modificado...quizás el mismo access lo generó, pero de todas formas si borró el 188 toma como último el 187 y así sucesivamente, omitiendo los posteriores.

Intenté el cambio a Max pero el problema me surge por la tabla vinculada de la cual se toma el campo Apellido y Nombre, que me trae el Max guardado en esa tabla pero que no corresponde al Max de Id_cobro...y si cambio solo apellido y nombre a último me trae el correspondiente al Id_cobros 188...

Voy a intentar sacar el Autonumerico y te cuento, saludos.

Mucha suerte!

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas