Como hago una ventana de login? Parte II
Publicado por Isaac (38 intervenciones) el 20/10/2005 21:57:55
En base a la siguiente pregunta:
Como hago una ventana de login usando el objeto conexion que hace el wizard de Builder 9?
Es decir, tengo usuario y password. Imagino que debe haber alguna forma de pasar esos parametros al objeto n_connectservice que crea el wizard de conexiones de builder. No he podido configurarlo correctamente!
Agradezco sus respuestas!
Recibi la siguiente respuesta:
Solución propuesta
------------------------------------------------------------------------------------------
Para utilizar el mismo objeto, puedes hacer los siguiente:
* Creas una nueva función con dos parametros de tipo string ( ejem: of_init(String as_user, String as_password) ) que no retorna nada.
* Cortas el código del evento constructor y lo pegas en esta función.
* Cambia las propiedades del SQLCA (LogID y LogPass) por los argumentos
SQLCA.LogID = as_user
SQLCA.LogPass = as_password
* A la funcion of_connectdb() agrégale dos parámetros de tipo string (ejem : as_user y as_password )
* A la función of_connectdb agrégale el siguiente código antes de la conexión
of_init(as_user,as_password)
Connect using SQLCA;
..........
* En la función of_getconnectioninfo las variables as_logid y as_logpass deben estar así:
as_logid = ""
as_logpass = ""
* El evento open de la aplicación debe quedar así:
this.ToolBarFrameTitle = "MDI Application Toolbar"
this.ToolBarSheetTitle = "MDI Application Toolbar"
Open ( w_login )
// el resto del código pasa a la ventana w_login
* Creas una ventana de tipo Response (ejem: w_login) con los siguientes objetos:
sle_user
sle_password
cb_ok
cb_cancel
* En el boton cb_ok debe esta el siguiente código:
n_genapp_connectservice lnv_connectserv
lnv_connectserv = Create using "n_genapp_connectservice"
If lnv_connectserv.of_ConnectDB (sle_user.text,sle_password.text ) = 0 Then
/* Open MDI frame window */
Open ( w_genapp_frame )
Close(Parent)
End if
Destroy lnv_connectserv
------------------------------------------------------------------------------------------
Pero:
Todo bien pero hay un problema! Ocurre que luego de que sale mi pantalla de login, al dar clic o.k entonces me sale la pantalla de conexion de builder solicitando de nuevo el usuario y password. Peor aun es que cada vez que solicita una transacción sale esa misma ventana pidiendo usuario y password.
Alguien sabe cual puede ser la solución?
Como hago una ventana de login usando el objeto conexion que hace el wizard de Builder 9?
Es decir, tengo usuario y password. Imagino que debe haber alguna forma de pasar esos parametros al objeto n_connectservice que crea el wizard de conexiones de builder. No he podido configurarlo correctamente!
Agradezco sus respuestas!
Recibi la siguiente respuesta:
Solución propuesta
------------------------------------------------------------------------------------------
Para utilizar el mismo objeto, puedes hacer los siguiente:
* Creas una nueva función con dos parametros de tipo string ( ejem: of_init(String as_user, String as_password) ) que no retorna nada.
* Cortas el código del evento constructor y lo pegas en esta función.
* Cambia las propiedades del SQLCA (LogID y LogPass) por los argumentos
SQLCA.LogID = as_user
SQLCA.LogPass = as_password
* A la funcion of_connectdb() agrégale dos parámetros de tipo string (ejem : as_user y as_password )
* A la función of_connectdb agrégale el siguiente código antes de la conexión
of_init(as_user,as_password)
Connect using SQLCA;
..........
* En la función of_getconnectioninfo las variables as_logid y as_logpass deben estar así:
as_logid = ""
as_logpass = ""
* El evento open de la aplicación debe quedar así:
this.ToolBarFrameTitle = "MDI Application Toolbar"
this.ToolBarSheetTitle = "MDI Application Toolbar"
Open ( w_login )
// el resto del código pasa a la ventana w_login
* Creas una ventana de tipo Response (ejem: w_login) con los siguientes objetos:
sle_user
sle_password
cb_ok
cb_cancel
* En el boton cb_ok debe esta el siguiente código:
n_genapp_connectservice lnv_connectserv
lnv_connectserv = Create using "n_genapp_connectservice"
If lnv_connectserv.of_ConnectDB (sle_user.text,sle_password.text ) = 0 Then
/* Open MDI frame window */
Open ( w_genapp_frame )
Close(Parent)
End if
Destroy lnv_connectserv
------------------------------------------------------------------------------------------
Pero:
Todo bien pero hay un problema! Ocurre que luego de que sale mi pantalla de login, al dar clic o.k entonces me sale la pantalla de conexion de builder solicitando de nuevo el usuario y password. Peor aun es que cada vez que solicita una transacción sale esa misma ventana pidiendo usuario y password.
Alguien sabe cual puede ser la solución?
Valora esta pregunta


0