Login en power builder

Lo que quiero hacer es un login algo así
usuario : sle_1
password: sle_2
[iniciar sesion] [cancelar]
Button1 button2
Io tengo una tabla en sql llamada "usuarios" sus campo son "cod_emple" y "password"
Y en dicha tabla tengo varios usuarios lo que quiero es que cualquier usuario pueda entrar a través del login
por ejemplo tengo a: cod_emple :E0001
                                        password:12345
                                ---------------------------
                                     cod_emple :E0002
                                      Password:154856
y así tengo varios como dije antes quiero que cualquiera de estos usuarios pueda entrar a través del login..
...
Man hace poco tm te hic una consulta sobre como poner fotos en el datawindows espero que te acuerdes es que tengo problemas...
Cuando quiero guardar tu sabes que en power builder tienes que tener todo bien para poder guardar sino no c puede guardar lo digo para decirte el error que me sale el error que me sale es Undefined variable: ls_ruta_Archivos, creo que falta declarar esa variable o no c que cosa estará mal aquí te paso el código que me diste
Después por encima del dw, colocamos un objeto Picture y un buttom, (guiate de la imagen de arriba)
Bueno empecemos con la codificación, me imagino que ya tienes implementado tus botones Nuevo, Modificar, Eliminar, bueno la codificación del menu de direcciones [<<][<][>][>>] es la siguiente:
[<<] PRIMERO
// Nos dirigimos al primer registro
dw_1.ScrollToRow( 1)
// Esta linea de codigo muestra en el contro Picture la ruta de la imagen de los datos del Cliente que estamos viendo
p_1.PictureName = dw_1.Object.foto[dw_1.GetRow( )]
[<] ANTERIOR
// Nos dirigimos al registro anterior
dw_1.ScrollPriorRow( )
// Esta linea de codigo muestra en el contro Picture la ruta de la imagen de los datos del Cliente que estamos viendo
p_1.PictureName = dw_1.Object.foto[dw_1.GetRow( )]
[>] SIGUIENTE
// Nos dirigitemos al registro siguiente
dw_1.ScrollNextRow( )
// Esta linea de codigo muestra en el contro Picture la ruta de la imagen de los datos del Cliente que estamos viendo
p_1.PictureName = dw_1.Object.foto[dw_1.GetRow( )]
[>>] ULTIMO
// Nos dirigiremos al ultimo registro
dw_1.ScrollToRow( dw_1.RowCount( ))
// Esta linea de codigo muestra en el contro Picture la ruta de la imagen de los datos del Cliente que estamos viendo
p_1.PictureName = dw_1.Object.foto[dw_1.GetRow( )]
BOTON FOTO (Abrira una ventana para buscar un archivo de tipo imagen)
// Creamos variables de tipo String
String ls_nombre_archivo, ls_formatos, ls_ruta_archivo
// Declaramos las rutas que nos filtrara
ls_formatos = "JPEG Files (*.jpg),*.jpg" + "GIF Files (*.gif),*.gif" + "PNG Files (*.png),*.png" + "BMP Files (*.bmp),*.bmp"
// Abrimos la ventana de busqueda, si no hay error nos retornara, tambien almacenamos en las variables, la ruta y el nombre del archivo
IF GetFileOpenName("Buscar Foto para el Cliente", ls_ruta_archivo, ls_nombre_archivo, "jpg", ls_formatos) = 0 THEN RETURN
// la ruta almacenada lo mostramos en el control Picture
p_1.PictureName = ls_ruta_archivos
// Tambien colocamos la ruta en el campo FOTO del dw para almacenarlo en la base de datos
dw_1.Object.foto[dw_1.GetRow( )] = ls_ruta_archivo
//

1 respuesta

Respuesta
1
Bueno para empezar con tu Login recuerda que en power builder la herramienta más potente son los datawindows, entonces vamos a hacer con un NVO: DataStore (No Visual Object, Objetos No Visuales)
Empecemos, debes de creare un objeto datawindows, con los campos cod_emple y password, lo guardas con el nombre "dwo_login" pero este dw debe tener dos argumentos: código y nombre, ambos tienen que hacer referencia a los campos cod_emple y password.
En tu Ventana de Acceso (Login) Tienes:
sle_usuario
sle_pass
bt_iniciar
bt_cancelar
BT_INICIAR (Evento Clicked)
// Declaramos las variables
DataStore lds_login
// Instanciamos el objeto
lds_login = Create DataStore
// Asignamos el dwo_login
lds_login.DataObject = "dwo_login"
// Asignamos el Objeto Transaccion
lds_login.SetTransObject(SQLCA)
// Retrieve, ingresando los argumentos, las cajas de texo usuario y contraseña
lds_login. Retrieve( sle_usuario. Text, sle_pass.Text)
// Entonces hacemos una verificacion
If lds.login.RowCount( ) = 0 Then
   MessageBox("ERROR", "Los datos de acceso son erroneos", StopSing!)
Else
   MessageBox("BIENVENIDO", "Usuario Correcto")
   // Aqui podemos abrir la ventana principal
End If
Eso seria todo, si tienes más dudas, hasmelas saber.
*************************************************************
Ahora con respecto al tema anterior, fíjate cometí un erro en la variable:
BOTÓN FOTO (Abrirá una ventana para buscar un archivo de tipo imagen)
// Creamos variables de tipo String
String ls_nombre_archivo, ls_formatos, ls_ruta_archivo
// Declaramos las rutas que nos filtrara
ls_formatos = "JPEG Files (*.jpg),*.jpg" + "GIF Files (*.gif),*.gif" + "PNG Files (*.png),*.png" + "BMP Files (*.bmp),*.bmp"
// Abrimos la ventana de busqueda, si no hay error nos retornara, tambien almacenamos en las variables, la ruta y el nombre del archivo
IF GetFileOpenName("Buscar Foto para el Cliente", ls_ruta_archivo, ls_nombre_archivo, "jpg", ls_formatos) = 0 THEN RETURN
// la ruta almacenada lo mostramos en el control Picture
p_1.PictureName = ls_ruta_archivos // debio se solamente "ls_ruta_archivo"
// Tambien colocamos la ruta en el campo FOTO del dw para almacenarlo en la base de datos
dw_1.Object.foto[dw_1.GetRow( )] = ls_ruta_archivo
Creo que eso es todo, si tienes más dudas, házmelo saber.
Me olvidaba en el Login, al final de todo el código que te di, me olvide de destruir el objeto (se debe de hacer siempre, porque ocupa espacio en memoria)
Al final debe de ir:
// Destruir objeto DataStore
Destroy lds_login
Eso es todo, se me olvidaba, Saludos =)

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas