Cita:
Empezado por Caral
Hola
Yo lo que hago es muy simple.
Tengo usuarios que entran al programa por medio de un login.
Una vez que esta autorizado cambio un campo activo por SI.
Una vez que el usuario sale del programa el campo activo vuelve a cambiar a NO.
Simple, en una pantalla puedo ver los usuarios que estan usando el programa en tiempo real, incluso si quisiera podria poner hora y dia de entrada y salida.
Saludos
|
no me actualiza la lista
1. al iniciar usuario
Código Delphi
[-]
DMDatos.CambiarUsuario(CBUsuarios.Text,'Conectado');
Procedure TDMDatos.CambiarUsuario(PUsuario,PEstado:String);
Begin
With ConsultaFlash do
Begin
close;
SQL.Clear;
SQL.Add('Update Usuarios Set US_ESTADO=''' +PEstado+''' where US_USUARIO =''' +PUsuario+''' ');
ExecQuery;
end;
DMDatos.IBTransaction.CommitRetaining;
End;
2. al salir
Código Delphi
[-]
DMDatos.CambiarUsuario(CBUsuarios.Text,'DesConectado');
3. el timer q me muestra los usuarios
Código Delphi
[-]
if Temporizador.Interval = 5000 then
begin
TreeView1.Items.Clear;
With DMDatos.IBConsultaSql do
Begin
Sql.Clear;
Sql.Add('Select * From USUARIOS ');
Open;
DMDatos.IBConsultaSql.First;
While Not DMDatos.IBConsultaSql.Eof Do
Begin
if 'Conectado' = DMDatos.IBConsultaSql.fieldbyname('US_ESTADO').AsString THEN
TreeView1.Items.AddChild(nil, DMDatos.IBConsultaSql.fieldbyname('US_USUARIO').AsString );
DMDatos.IBConsultaSql.Next;
End;
End;
end;
pero al momento de otro pc q esta en la red entra no me actualiza la lista. parece que no reconociera los cambios de la bdatos, lo la refrescara no se si algun trigger o procedure me pueda solucionar esto.