Generar log de sesión en access

Como te mencione, quisiera que cuando un usuario ingrese a la aplicación luego de haberse identificado con su usuario y contraseña, se cree un archivo de texto, como un log de inicio de sesión en el cual se muestre que usuario ingreso, en que fecha y hora.

1 respuesta

Respuesta
1
La primera pregunta es: ¿Porqué quieres hacer el log en un fichero externo a Access cuando lo más fácil es ir registrándolo en una tabla del propio access.
Si aun quieres hacerlo, prueba este código:
Private Sub Comando4_Click()
 Dim ruta As String
 ruta = "C:\CARPETA\log.txt"
 Close
 Open ruta For Append As #1
 Write #1, Date, Me.Nombre, Me.Contrasena
 Close #1
End Sub
Jose excelente, si ayer cuando estaba mirando también pensé en hacerlo en la misma bd, cree una tabla con los campos usuario, fecha, hora, en este caso serian la fecha y la hora en la que el usuario ingresa, pero al momento de hacer el insert into no me ingresa datos en la tabla, agradezco me puedas ayudar con esto, es lo ultimo que me queda pendiente. Muchísimas gracias por tu ayuda. Quedo a la espera de tu comentario.
Ok. Ponme el texto del insert into que utilizabas.
¿Lo probaste primero como consulta de anexar, antes que hacerlo desde visual basic?
Hola, pues tengo esto, ya con las variables declaradas:
strcadena2 = "INSERT INTO CONTROLINGRESO (USUARIO, FECHA, HORA, CONTRASEÑA) VALUES (me.Text1, #date#, #time#, me.Text2);"
Set dbdatos = CurrentDb()
De este modo no me ingresa información a la tabla algo debe estar mal en cuanto a la fecha y hora.
Sin embargo al formulario en las propiedades el origen del registro, le coloque la tabla donde quiero que guarde, y a los cuadros de texto en la propiedad origen del control, el campo que quiero que inserte, pero lo que no he podido es insertar en esa tabla la fecha y la hora actual cuando el usuario ingresa.
Aun sigo revisando, pero si tu sabes como ayudarme, te lo agradezco mucho.
Tu formulario NO tiene que tener como origen de registro la tabla donde lo guardas, ni los controles de origen de registro los campos.
Prueba a crear una consulta de anexar datos a la tabla.
En la fila donde pones los valores a anexar para cada campo, incluye una referencia a los controles del formulario. Por ejemplo
Formularios! NombreDelFormulario! NombreDelControl
Y en el valor del campo fecha puedes poner la función Fecha() y en la de hora, Hora().
Abre el formulario, introduce unos valores y SIN CERRAR el formulario, ejecuta la consulta.
¿Funciona?
Hasta que no funcione así, no te plantees más.
Jose, tal vez no me hice entender, el usuario ingresa con su usuario y contraseña, cuando da clic en ingresar, el sistema hace ciertas validaciones e ingresa a la aplicación. Lo que necesito es que apenas el le de click en el botón ingresar me agregue a una tabla los datos del usuario que ingreso, la fecha y la hora.
Cree la consulta de anexar como me dices, pero entonces cuando le doy ingresar 1. dice que va a insertar 0 filas, 2. aparecen varios cuadros de dialogo que el usuario no va a entender de que son, y son precisamente producto de la ejecución de esta consulta.
Mi pregunta es: como seria la sintaxis para hacer un insert into, ¿después de todo el código que tiene el botón ingresar? Es simplemente eso. Agradezco tu aporte
Si cuando le das a ingresar dice que va a insertar 0 filas es que la consulta esta mal. Es más, todos los mensajes que dices no aparecerían si la consulta estuviera bien. El código que hay que ingresar depende de que crees bien la consulta. Cuando esta funcione, basta con que mires la vista SQL de la consulta para ver cual tiene que ser el código que tienes que poner.
Jose, buenos días, ya me funciono la consulta, finalmente quedo así:
strcadena2 = "INSERT INTO CONTROLINGRESO ( USUARIO, CONTRASEÑA, FECHA, HORA )SELECT Usuarios.Usuario, Usuarios.Contrasena, Date() as FECHA, Time() AS HORA FROM Usuarios WHERE (((usuarios.usuario)='" & Me.Text1 & "'));"
DoCmd.RunSQL (strcadena2)
Cuando le doy click en el botón ingresar, me inserta el registro, pero me sale el cuadro de dialogo diciendo "Va a inserta 01 filas..." como hago para que ese cuadro de dialogo no le salga al usuario ya que no va a entender a que se refiere. Muchísimas gracias por toda tu ayuda y que pena tantas molestias.
No te preocupes. Para eso estamos.
En las opciones de Access, apartado avanzadas, hay un check que pone: Confirmar Consultas de acción. Desactívalo.
Hola Jose, buenas tardes, muchísimas gracias por toda tu ayuda, en todo lo que me orientaste, ya con eso doy por finalizada la pregunta y te doy puntaje de excelente, por la atención y el apoyo. Espero contar contigo en próximas oportunidades. Éxitos!

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas