La Web del Programador: Comunidad de Programadores
 
    Pregunta:  951 - LISTA DE USUARIOS
Autor:  Miguel Fonseca
Hola, soy programador en FoxPro 2.6 for windows y actualmente, estoy tratando de crear un módulo, en el cual mediante una opción desde una screen, pueda saber que usuarios están utilizando mis bases de datos, es decir: tengo un sistema creado en ambiente compartido ( de red ), y desearía saber que usuarios están utilizando dicho programa y en que módulo se encuentra dicho usuario, esto es con la finalidad de detectar si algún usuario no deseado de mi red se encuentra utilizando este sistema.
Buscando en la ayuda que ofrece foxpro pude encontrar que si utilizo SYS(0), me devuelve el nombre de la máquina en la que actualmente me encuentro, pero quiero hacer esto para todos los usuarios en uso.
Tengo una red NT(4.0) y no encuentro como hacerlo y la verdad estoy un poquito apresurado de tiempo para liberar dicho sistema.
gracias

  Respuesta:  Joan Duran
bueno amigo debes crear una tabla de usuarios donde guardes los datos del mismo (login. password,nombres,etc.) y una tabla donde registres el usuario que entró al sistema, la hora y fecha
en el formulario de ingreso al sistema cuando el login y password sean correctos debes acceder a la tabla usuario y buscar el nombre del usuario al que pertenescan ambos registros y almacenarlos en una variable de memoria todo esto debes hacerlo en el boton entrar, luego cada formulario de dicho sistema colocarle una etiqueta y a dicha etiqueta asignarle la variable publica en el int del form para visualizar el nombre del usuario que entro
para saber a la hora que entro el usuario al sistema cargar la tabla de usuarios que entraron puedes contabilizar las entradas de los usuarios etc.
T.S.U En Informatica Joan Duran
cualquier cosa te envio un programita con la programacion

  Respuesta:  Gerson Antonio Arenas Rangel
Mira yo tengo la lista de mis usuarios creando una base de datos de usuarios donde esta mi aplicación, es decir como una clave de ingreso
si es un usuario que no esta permitido el acceso n o ingresa y si es un usuario permitido entra puedo ademas hacer otra base de datos para tener un registro diario de los usarios que han entrado a mi sistema a que horas fecha ect. cree lo siguiete:

paso 1 crear tu formulario irte para el entorno de datos y agregar la tabla de usuarios y de registro

paso 2 colocas los textos del login puede ser
y le colocas y boton de aceptar y salir.

paso 3 dentro del boton del login el el keypressç
programaras lo siguiente.

supongamos que las tablas se llama usuarios, la de registro la llamaremos registro ok

crearemos en usuarios el campo de busqueda es decir el indice vea el set order

y por ultimo el texto lo llamaremos login, ingresas a las propiedados de textbox y el la parte del control source aparecera mas o menos

nombre de la base de datos.nombre del campo
usuarios.login
esto lo remplazaremos por el memvar y quedaria
M.login

*opcioneal en la parte del activate del formularo programas lo siguiente si quieres con intentos..

************activate del formulario*********
public int
int=0
********************************************

******************textbox keypress**********
if lastkey()=13 then
select usuarios
set order to login
go top
seek alltrim(thisform.login.value)
if found()
r=messagebox("Usuario autorizado",0+32,"Mi Aplicación")
*y llamarias la aplicacion tuya si la clave es incorrecta veremos..
*aqui haremos los replaces convenientes para para llenas nuestra base de transaciones o de registro esto para saber en caso de algo quienes entraron en mi sistema.
select registro
appen blank
replace login with thisform.login.value
replace fecha with date()
replace hora with time()
* y los campos que creeas convenientes
thisform.refresh
else
r=messagebox("Usuario no autorizado",0+32,"Mi Aplicación")
* ademas le puedes hacer un contados es decir al los tantos intentos salga de la aplicación.
*ejemplo
inte=inte+1
if inte=3 then
wair windows "intruso acceso denegado..." timeout
close all
quit
endif
endif
endif

*con esto podras sabes que usuarios estan conectados en su aplicacion ya tienes la base de datos donde los tines conectados luego cuando se salgan los puedes marcar con delete

y haces un filtro con la base de datos de registro
del dia

con la fecha ejemplo

select registro
go top
set filter to delete()
browse()
set filter to

supongamos que sea mostrar has los demas alguna cosa te lo especifico mejor y te mando ejemplos

gracias y suerte atte. T.S.U Gerson Arenas de Venezuela San Cristobal

  Respuesta:  Carlos
Por la largada de la respuesta, esta en el archivo resp951.txt.

  Respuesta:  Manuel R. Bercian
Se me ocurre que podrias usar una tabla, para grabar al usuario que esta ingresando al programa por medio de una pantalla de login, cuando ingrese lo grabas a la tabla y tu puedes estar revisando esa tabla para saber quienes estan adentro, cuando alguien se salga lo borras de la misma tabla, y aparte de eso podrias usar otra tabla para ir guardando a que hora entro y a que hora salio...
Saludes desde Guatemala... y espero haberte ayudado...