Ir al último registro (no va)

Dudas sobre Tablas, Consultas, Formularios, Informes...
DEMON777
Nivel 2
Mensajes: 36
Registrado: Vie Jun 09, 2017 6:40 am

Ir al último registro (no va)

Mensajepor DEMON777 » Sab Dic 22, 2018 7:06 pm

Un grato saludo a todos.

Me da pena preguntar algo tan básico pero, ya no se me ocurre de que otra forma intentarlo, porque ni con macro, ni con código ni rezando consigo resolverlo.

tengo este formulario de creación de recibos:

Imagen0.png


Form 1, está como entrada de datos.
Form 2, está sólo para editar y eliminar, y sino está en modo de edición, el formulario está bloqueado.

El asunto que no me sale ni a patadas, es que después de agregar un registro nuevo en Form 1, quiero que Form 2 me muestre el último que se va agregando sin que se vuelva loco, porque cuando funciona la cuestión de ir al último, no puedo subir ni seleccionar otro de los de arriba, porque me manda al final.
El formulario principal maneja la tabla principal, y Form 1 y 2 manejan la misma tabla que es la secundaria. Hay una relación creada entre las dos tablas con un registro llamado ID.

De antemano agradezco cualquier información.

Avatar de Usuario
Fayad
Colaborador
Mensajes: 314
Registrado: Mié Oct 28, 2015 9:43 pm

Re: Ir al último registro (no va)

Mensajepor Fayad » Sab Dic 22, 2018 7:39 pm

Salu2.

DEMON777
Nivel 2
Mensajes: 36
Registrado: Vie Jun 09, 2017 6:40 am

Re: Ir al último registro (no va)

Mensajepor DEMON777 » Sab Dic 22, 2018 8:37 pm

Nuevamente un gusto Fayad. :D

Visité tu enlace y ya pude solucionar el asunto de ese mensaje necio.

Pero al parecer no tiene relación con el echo de no mostrar o no ir al último registro en Form 2, despúes de igresar uno nuevo en Form 1.
Sigo tratando y te agradecería si tienes alguna otra ayuda para mi problema.
Gracias.

Avatar de Usuario
Fayad
Colaborador
Mensajes: 314
Registrado: Mié Oct 28, 2015 9:43 pm

Re: Ir al último registro (no va)

Mensajepor Fayad » Sab Dic 22, 2018 9:03 pm

Hola!

Lo que puedes hace es interceptar el número del error con un "MSGBOX" y desactivarlo.

Código: Seleccionar todo

En el evento al ocurrir error del formulario pones:


Private Sub Form_Error(DataErr As Integer, Response As Integer)
'para saber el número de error
MsgBox DataErr

If DataErr = (aquí pones el numero sin paréntesis) Then

'Le decimos a Access que no  muestre el mensaje de error y que continúe
Response = acDataErrContinue
End If
End Sub


También prueba guardar previamente el registro que estas editando en el formulario con un "docmd.runcommand accmdsaverecord".
Salu2.

DEMON777
Nivel 2
Mensajes: 36
Registrado: Vie Jun 09, 2017 6:40 am

Re: Ir al último registro (no va)

Mensajepor DEMON777 » Sab Dic 22, 2018 9:33 pm

Pues hice lo que recomiendan en el enlace que me brindaste, y el error ya no aparece. En ese sentido todo bien.

El asunto es que sigo sin poder mostrar el último registro del Form 2, es decir, si agrego los suficientes para que llene la ventana de Form 2, el subformulario 2 me sigue mostrando los registros desde el primero, y yo quiero que me vaya mostrando el último que se ingresa. que vaya subiendo la lista de registros con forme se van agregando.
Si agrego GotoRecord, acLast, en el evento Form_Current de Form 2, al momento de editar no me deja ir a otro registro porque me devuelve al último, entonces, no me sirve, porque yo necesito poder moverme entre ellos para editarlos o eliminarlos.
Si pongo lo mismo en el evento al Cargar si lo hace, pero de nada me sirve porque cuando le pido un nuevo recibo, sigue sin mostrarme el último.

Avatar de Usuario
Sveinbjorn
Moderador
Mensajes: 1039
Registrado: Sab Oct 24, 2015 10:12 pm

Re: Ir al último registro (no va)

Mensajepor Sveinbjorn » Sab Dic 22, 2018 10:11 pm

¿ Y por qué no ordenas los registros de tu form 2 en el otro sentido? :roll:
Imagino que tendrás ( y si no, ya estás tardando en ponerlo) un campo autonumérico o de orden de los registros de esa tabla... Basta con ordenar de forma descendente por ese campo, y siempre tendrás como primer registro el último añadido, si necesidad de moverte por ellos...
Sveinbjorn El Rojo

DEMON777
Nivel 2
Mensajes: 36
Registrado: Vie Jun 09, 2017 6:40 am

Re: Ir al último registro (no va)

Mensajepor DEMON777 » Dom Feb 03, 2019 6:04 pm

Saludos a todos.

Algo tarde mi respuesta por mucho trabajo pero vuelvo a agradecer su ayuda y a contarles que sucede.

Sí Sveinbjorn, ya contaba con una casilla de autonumeración y tu solución funcionaba bien pero por algunos aspectos del formulario que ignoro su porqué, dejaba de detectar los totales del subformulario 2, y en el formulario principal los totales se veían a cero.

Al final lo solucioné, cambiando el RecordSource de Form2, a una consulta que genero con una SQL, que se va actualizando una y otra vez después de ingresar cada producto en Form1, siempre en orden descendente. Y a esa misma consulta , le saco con otra SQL el valor total de los productos ingresados.
Me gusta más esta solución, porque incluso se siente más fluido el desempeño del formulario.
Gracias por ese lado.

Por el otro lado, el Error Necio me sigue apareciendo aunque ya realicé lo que Fayad me recomienda, la propuesta de guardar primero y la de capturar el número de error, no me captura ningún número ¿Será posible?. Yo sé que me sucede cuando entro a eliminar un producto erróneo en Form2, debo decir que el producto lo elimino de la tabla con una SQL de eliminación, y es cuando le doy en el botón de Guardar Recibo que aparece ese mensaje. Igual ya me aparecía cuando el RecordSource todavía era la tabla.

Agradezco de antemano toda ayuda.

DEMON777
Nivel 2
Mensajes: 36
Registrado: Vie Jun 09, 2017 6:40 am

Re: Ir al último registro (no va)

Mensajepor DEMON777 » Dom Feb 03, 2019 8:01 pm

Fe de erratas

Por algún lapsus estupidus, cuando lo intenté hacer recién me dio la recomendación Fayad, no me funcionó, pero debo aclarar que volví a intentarlo y ahora sí me funcionó. Creo que la diferencia radica que ahora puse el código que captura el error para luego ignorarlo, en el formulario principal y también el los dos subformularios, Form1 y Form2. Ahora todo funciona de lujo.
El error es el número 7787, por si lo quieren.

Gracias Fayad. Gracias a todos. Son una Lumbre.


Volver a “Objetos Access”

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 1 invitado