PDA

Ver la Versión Completa : [Sintaxis] Control de Usuario


jmeza
15 de mayo de 2020, 00:16
Hola, me podrían ayudar con un ejemplo si es posible, como se programa un menú de control de usuario, que solo pueda tener acceso a las opciones que está autorizado y restringir las otras opciones del menú.
En pawercobolv9
Sldos

Nitzer
15 de mayo de 2020, 09:51
Yo en mi caso, tengo una tabla con los usuarios y el menú y sus opciones son otra tabla con sus ids, con lo que la relación entre ambas es muy sencilla.
Tan solo tienes que enlazar mediante otra tabla o como quieras una relación entre ambas, yo además aprovecho para que esa unión además me de grados de permisos, es decir alguien podrá entrar a una opción de menu, pero no podrá hacer determinadas cosas, otros si, etc....

Me gustaría enviar videos, por con todo el tema de la privacidad, no se como podría montarlo y no tengo ganas de empezar de 0 con los datos :)))

Gusaiello
15 de mayo de 2020, 14:34
Yo hago lo mismo que propone @Nitzer :
1) en una tabla cargo a mano la lista de programas que componen el sistema
2) Por otra parte ingreso el personal con su nombre y contraseña.
3) Y finalmente hago una asociación entre el usuario y la lista de programas indicando a cual puede aceder y a cual no.

Fito
15 de mayo de 2020, 19:54
Hola Amigos:

Yo hago exactamente lo mismo, un archivo de usuarios y otro de programas y un tercero con el permiso. Lo que si que el archivo de programas lo hacía también cargando manualmente, hasta que me cansé porque crecían demasiado la cantidad de programas que hacía, así que lo resolvi que cuando ingreso con mi clave de supervisor a cualquier ventana, si no la tengo cargada tomo el nombre y el Caption de la ventana y lo grabo en el archivo.

Saludos.

Fito...

Gusaiello
16 de mayo de 2020, 15:07
Hola @Fito, una consulta : tu clave de supervisor la pedis al inicio o por cada programa al que vas a acceder?

Por que yo la pido al entrar al sistema o sea que para cambiar de usuario hay que salir y volver a ingresar.

Es solo pulsar Escape, pero tal vez se pueda mejorar.

Fito
16 de mayo de 2020, 17:34
Hola:

El logueo es al inicio, para cambiar de usuario tiene cerrar la sesion del que estan.

Saludos.

Fito...

jmeza
17 de mayo de 2020, 17:23
Una ultima duda

1) Tengo la lista de programas que componen el sistema
2) Tengo el personal con su nombre y contraseña
3) Tengo la lista de programas indicando a cual puede acceder y a cual no

¿En que momento hago la validación si el usuario en proceso tiene autorización para acceder a tal programa ?

Fito
18 de mayo de 2020, 06:19
Hola:

Lo podés haces en el menú cuando llama a la ventana, o en el evento opened de la ventana en cuestión.

Saludos.

Fito...

Gusaiello
18 de mayo de 2020, 17:48
Yo lo hago en el menú principal, antes de llamar al sub-programa hago la validación. Si esta autorizado pasa y de lo contrario o hace nada, o se puede mostrar un mensaje.

Fito
18 de mayo de 2020, 22:02
Hola:

Yo lo hago desde el Opened de la ventana, porque si la llamo de otro lado que no sea desde el menú me ejecuta la validación también...

Saludos.

Fito...

jmeza
29 de mayo de 2020, 21:18
Hola:

Yo lo hago desde el Opened de la ventana, porque si la llamo de otro lado que no sea desde el menú me ejecuta la validación también...

Saludos.

Fito...

Si no es mucho me podrías dar un ejemplo como lo haces al momento de hacer la validación,
tengo dudas como hacerlo.

Saludos

---------- Post añadido : 19:18 ---------- Post anterior : 22:03 ----------

Me podríais ayudar con un ejemplo practico de la programación al momento de validar el control de usuario, si esta autorizado o no para cuando ejecutar una opción del menú.

Sldos

Fito
31 de mayo de 2020, 18:06
Hola:

Leo un archivo que tiene como clave usuario y programa, y si no lo encuentra es que no tiene permiso:


open input habilita.
move usuario to habusuario.
move programa to habprograma.
read habilita not invalid
close habilita
invoke pow-self "callform" using "usu00" "usuarios.dll" *> muestro mensaje
invoke pow-self "closeform"
exit program
end-read.
close habilita.
move pow-true to "visible" of pow-self.


Saludos.

Fito...