¿Cómo crear registro de modificaciones realizadas por los usuarios?

Actualmente tengo una base de datos y un formulario que la alimenta.

Inserte un cuadro en el formulario que me muestra la ultima fecha y hora de modificación de cada registro, pero deseo también que me muestre el nombre del usuario que realizó alguna modificación. ¿Cómo podría hacer esto?

3 Respuestas

Respuesta

Yo crearía una tabla "Auditoria" y desde el formulario insertar un renglón en la tabla "Auditoría" con los valores del formulario. El usuario actual esta en la variable currentuser.

Respuesta
2

David: Creo que éste ejemplo de Neckkito te irá bien para lo que pretendes hacer.

http://siliconproject.com.ar/neckkito/index.php/ejemplos-explicados/seguridad/97-ejemplos-explicados/ejemplos-especiales/150-control-de-cambios 

Un saludo>> Jacinto

Lo que busco es algo más simple. La base de datos y el formulario tiene 10 usuarios, de la misma manera que cuando se efectúa una modificación un textbox me arroja la fecha de modificación quisiera que me arrojara que usuario modifico dicho registro y hasta ahí. Igual gracias por la respuesta.

David: En el ejemplo audita varios Campos como puedes ver y tiene un alcance completo de Modificaciones y Eliminaciones.

Si tú solo necesitas el Usuario y la Fecha, con esa misma estructura adapta el código a esos campos solo.

Si es que tienes dificultades de hacerlo porque no domines mucho VBA, respetando la autoría de Neckkito, podría preparate un ejemplo.

No te lo hago ahora, porque voy muy limitado de tiempo.

Ya me comentarás. Saludos >> Jacinto

Trataré de simplificar el código de Neckkito y ver que sale.

Gracias

Llevo dos días tratando de simplificar el ejemplo de Necckito para lo que busco, pero hasta el momento solo me arroja errores de lenguaje y no me ha dado ningún fruto. Teniendo en cuenta el código o las funciones que tiene el ejemplo de Necckito, que parte del código o que funciones debo agregar a un nuevo formulario y tabla para poder lograr lo que necesito.

David: Tal como te comenta Ismael, si solo quieres mostrar además de lo que tienes, el Usuario Actual, haz lo siguiente:

Añade un TextBox a tu Formulario, con el Nombre de TxtUsuario, o el que a tí te parezca.

En el Evento Form_Load, que supongo lo tendrás y si no tendrás que crearlo. Pones >>

Me.TxtUsuario = CurrentUser

También lo puedes poner en el el Form_Open.

Si aún así no logras tu objetivo, te propongo que pongas tu BD aquí en un enlace, diciendo exactamente que Campos quieres guardar en el Histórico de cambios, y te la adecúo a lo que necesites.

Los datos de esa BD, mejor que sean ficticios, pero la estructura, deja la real que tengas.

Mis saludos >> Jacinto

Buen día Jacinto

El histórico de cambios que deseo guardar es el de la tabla HUR Seleccion, y en el formulario HurProcesofrm al lado del campo Fecha de Modificación me muestre el usuario que realizo dicha modificación y que modifico. Como verás hay una tabla llamada Usuarios la cual esta enlazada a un formulario de login el cual elimine pues no creo que lo necesites. Y en palabras mas resumidas es que los usuarios de esa tabla al ingresar y modificar la tabla Hur Seleccion a través del formulario HurProcesofrm quede guardado que ese usuario modificó algun registro y que campo modifico.

Muchisimas gracias por tu ayuda, mis intentos no tuvieron éxito.

http://www.mediafire.com/download/ww2v14noy62rs47/BD.accdb 

David: Descargado, lo miro y te contesto. Saludos >> Jacinto

David: Partiré de la Base de que el Campo de la Tabla Usuarios que quieres que se muestre y se registre es Nombre_Usuario

Si no es ese me dices por favor cual es.

En cuanto al Formulario Login, claro que lo necesitaré porque es de ese de donde se Captura el Usuario. Saludos >> Jacinto

David: He tenido un tiempo para dedicar a tu BD, y la he modificado en el sentido de poder guardar los cambios que se hagan en el Formulario que me citas.

Lo tienes en éste enlace >>

http://www.mediafire.com/download/bz4gsy7f4vuhw89/BDDavidCaicedo.rar 

Para el Acceso he improvisado un Formulario de apertura, pero lo puedes quitar y poner el que tu tengas. La contraseña coincide con el Nombre de usuario. Menos en el caso de PericoPalote que es Perico.

Tanto el Acceso, como el Guardar los cambios están sacados de Ejemplos de la Web de Neckkito. El enlace de ésta Web es>>

http://siliconproject.com.ar/neckkito/ 

Ya me contarás. Saludos >> Jacinto

Buen Día Jacinto 

Te confieso que me han dado ganas de llorar al ver como funcionaba así que antes que nada quiero darte mil gracias, no se como podría pagarte.

*He activado la tabla TPass para realizar el manejo de los usuarios y entender mejor el código que haz hecho.

*Respecto al cuadro con el mensaje "Estos dos controles son totalmente innecesarios" , quisiera saber a que te refieres.

*Quisiera saber si al Form FPass, puedo agregarle un botón para administrar usuarios sin necesidad de crearlos manualmente a través de la tabla TPass, es decir, un botón que al igual que cambiar contraseña me lance a otro formulario para crear o modificar los usuarios ya existentes, obviamente que solo al usuario Administrador lo deje hacerlo y esto no vaya a alterar la funcionalidad de lo demas.

*Respecto al formulario FCambio Pass es el de cambio de contraseña. FChivato imagino que es el que registra el usuario activo una vez que este se ha ha identificado correctamente en el usuario FPass, y por ello se ejecuta en modo oculto y es el que registra el usuario activo. Tengo dudas con los formularios FrmPermisos y FrmPermisosSubForm. Imagino que es para darle a cada usuario distintos permisos para acceder a los elementos de la base de datos. Por ello esta enlazado a la tabla TPass. Quiero saber si al crear otro usuario solo debo darle permisos a través del formulario FrmPersmisos y esto no afectara en nada lo demás y si al crear mas formularios solo debo debo añadirlo a la tabla TblUsuariosPermisos y luego darle acceso a cada usuario a dicho formulario. Y en conclusión saber más como funcionan más estos dos formularios, que vaya si son de muchísima utilidad para lo que busco.

Y para finalizar volver a agradecerte por el tiempo, dedicación y ayuda que me has brindado.

Disculparás mi falta de conocimiento en todo esto, pero hasta hace poco comencé a manejar Acces y aprender como utilizarlo.

Mil gracias por tu ayuda de nuevo y disculpa tantas molestias.

Saludos

David: No hay nada que disculpar, porque los que intentamos ayudar y algunas veces conseguimos algo, tenemos que asumir, que quien pide ayuda es porque tiene una fuerte motivación para crecer en conocimiento.

Después de esta parrafada:

Comoquiera que lo que pides, no tiene una explicación corta, si te parece me pones tu email aquí, y dedico un rato a explicarte detalles del funcionamiento de lo que te he enviado y si fuera necesario te modifico algo para completarte lo que dices. Saludos >> Jacinto

Respuesta

Se qué es un tema ya viejo pero muy útil, funciona muy bien pero sin importar que usuario seleccione invariablemente me pone la marca de la computadora donde se accede a la base en vez del nombre del usuario alguna pista?

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas