En un módulo colocaremos el siguiente código:
Module Validaciones
Function ValidarRegistroUsuarios(ByVal Nombre As String, ByVal Usuario As String, ByVal Clave As String) As Boolean
If Nombre = "" Then MsgBox("Debe introducir su nombre para poder realizar el registro", vbCritical, "Campo obligatorio") : Return False : Exit Function
If Usuario = "" Then MsgBox("Debe introducir su nombre de usuario para realizar el registro", vbCritical, "Campo obligatorio") : Return False : Exit Function
If Clave = "" Then MsgBox("Debe introducir una clave de usuario para poder realizar el registro", vbCritical, "Campo obligatorio") : Return False : Exit Function
Return True
End Function
End Module
Function ValidarRegistroUsuarios(ByVal Nombre As String, ByVal Usuario As String, ByVal Clave As String) As Boolean
If Nombre = "" Then MsgBox("Debe introducir su nombre para poder realizar el registro", vbCritical, "Campo obligatorio") : Return False : Exit Function
If Usuario = "" Then MsgBox("Debe introducir su nombre de usuario para realizar el registro", vbCritical, "Campo obligatorio") : Return False : Exit Function
If Clave = "" Then MsgBox("Debe introducir una clave de usuario para poder realizar el registro", vbCritical, "Campo obligatorio") : Return False : Exit Function
Return True
End Function
End Module
Y una vez que hemos colocado ese código en el modulo, ahora podremos programar nuestro formulario.
Dim MisDatos As New ConexBD 'Como siempre almacenamos una nueva instacia de la clase que tenemos creada
Public Consulta As String 'Esta variable almacenara una consulta sql
Private Sub Frm_Registro_Usuarios_Load(sender As Object, e As EventArgs) Handles MyBase.Load
Me.Text = "Registro de nuevos usuarios " & Now.Date
Me.BackgroundImage = My.Resources.fondo
Me.Icon = My.Resources.Logo
Me.ToolTip1.SetToolTip(CmbNuevoUsuario, "Guarda los datos de un nuevo usuario")
Me.ToolTip1.SetToolTip(CmbCerrarRegistro, "Vuelve al inicio de sesión")
Me.ToolTip1.SetToolTip(CmbBuscarFoto, "Permite buscar una foto para el nuevo usuario")
Me.ToolTip1.SetToolTip(ImgUsuario, "Muestra la foto del nuevo usuario")
End Sub
Private Sub CmbNuevoUsuario_Click(sender As Object, e As EventArgs) Handles CmbNuevoUsuario.Click
'Si la validación del registro de usuarios devuelve true, es que los campos obligatorios tienen datos
If ValidarRegistroUsuarios(TxtNombre.Text, TxtUsuario.Text, TxtClaveUsuario.Text) Then
'y por lo tanto, debemos validar el nombre de usuario
'entonces, si esta validación devuelve true, es que el usuario existe, y por lo tanto no podemos registrar el usuario
If MisDatos.BuscarRegistros("Tb_Usuarios", "NombreUsuario='" & TxtUsuario.Text & "'") Then
'entonces mostraremos un mensaje
MsgBox("El usuario que desea registrar ya existe en la base de datos", vbCritical, "Error en el registro de usuarios")
TxtUsuario.Clear()
TxtUsuario.Focus()
Exit Sub
Else 'en caso contrario, es decir si devuelve falso, entonces es que el usuario no existe, por lo tanto podemos
'realizar el registro.
'entonces si podemos realizar el registro, comprobaremos si el usuario tiene alguna foto seleccionada
If TxtFotoUsuario.Text = "" Then
'Si el textbox de la foto (que guardará la ruta de la imagen), esta vacio, es que no se ha seleccionado la foto
'por tanto preguntamos
If MsgBox("¿Desea agregar una foto a su perfil de usuario?", vbQuestion + vbYesNo, "¿Agregar fotografía?") = vbYes Then
'si respondemos que si, entonces dejamos de ejecutar codigo
Exit Sub
End If
Else 'si por el contrario el textbox de la foto no está vacío, entonces agregamos el registro
'Para ello, primero construimos la consulta de inserción
Consulta = "Insert Into Tb_Usuarios(NombrePersona,NombreUsuario,ClaveUsuario,FotoUsuario)Values('" & TxtNombre.Text & "','" & TxtUsuario.Text & "','" & TxtClaveUsuario.Text & "','" & TxtFotoUsuario.Text & "')"
'Luego verificamos que la consulta esté construida y contenga datos
If Consulta = "" Then MsgBox("Debe introducir los valores que desea agregar a la base de datos", vbCritical, "Introduzca los datos") : Exit Sub
'Una vez que tenemos todo verificado, hacemos lo siguiente.
'Sabemos que tenemos un metodo el cual nos agrega registros y el cual se encuentra en una clase.
'Esa clase esta almacenada en la variable MisDatos, así que solo tenemos que hacer referencia a la variable
'y llamar a la función que nos agrega el registro.
MisDatos.AgregarRegistros(Consulta)
Call LimpiarTextos(Me.GroupBox1)
ImgUsuario.ImageLocation = Nothing
'Recordar que para agregar, eliminar o actualizar registros, debemos primero conectarnos a la base de datos,
'pero este proceso ya se realiza dentro de la función de agregado, actualización o eliminación
'por eso no lo llamamos desde el botón de nuevo usuario
End If
End If
End If
End Sub
Private Sub CmbCerrarRegistro_Click(sender As Object, e As EventArgs) Handles CmbCerrarRegistro.Click
Me.Close()
End Sub
Private Sub CmbBuscarFoto_Click(sender As Object, e As EventArgs) Handles CmbBuscarFoto.Click
If OpenFileDialog1.ShowDialog = Windows.Forms.DialogResult.Cancel Then
MsgBox("Debe seleccionar la imagen de su perfil", vbCritical, "Seleccione una imagen")
Exit Sub
Else
TxtFotoUsuario.Text = OpenFileDialog1.FileName
ImgUsuario.ImageLocation = OpenFileDialog1.FileName
End If
End Sub
'Procedimiento limpiar los textbox del formulario
Private Sub LimpiarTextos(ByVal Grupo As Windows.Forms.GroupBox)
Dim miControl As Object
For Each miControl In Grupo.Controls
If miControl.GetType Is GetType(System.Windows.Forms.TextBox) Then
miControl.Clear()
End If
System.Windows.Forms.Application.DoEvents()
Next
End Sub
Public Consulta As String 'Esta variable almacenara una consulta sql
Private Sub Frm_Registro_Usuarios_Load(sender As Object, e As EventArgs) Handles MyBase.Load
Me.Text = "Registro de nuevos usuarios " & Now.Date
Me.BackgroundImage = My.Resources.fondo
Me.Icon = My.Resources.Logo
Me.ToolTip1.SetToolTip(CmbNuevoUsuario, "Guarda los datos de un nuevo usuario")
Me.ToolTip1.SetToolTip(CmbCerrarRegistro, "Vuelve al inicio de sesión")
Me.ToolTip1.SetToolTip(CmbBuscarFoto, "Permite buscar una foto para el nuevo usuario")
Me.ToolTip1.SetToolTip(ImgUsuario, "Muestra la foto del nuevo usuario")
End Sub
Private Sub CmbNuevoUsuario_Click(sender As Object, e As EventArgs) Handles CmbNuevoUsuario.Click
'Si la validación del registro de usuarios devuelve true, es que los campos obligatorios tienen datos
If ValidarRegistroUsuarios(TxtNombre.Text, TxtUsuario.Text, TxtClaveUsuario.Text) Then
'y por lo tanto, debemos validar el nombre de usuario
'entonces, si esta validación devuelve true, es que el usuario existe, y por lo tanto no podemos registrar el usuario
If MisDatos.BuscarRegistros("Tb_Usuarios", "NombreUsuario='" & TxtUsuario.Text & "'") Then
'entonces mostraremos un mensaje
MsgBox("El usuario que desea registrar ya existe en la base de datos", vbCritical, "Error en el registro de usuarios")
TxtUsuario.Clear()
TxtUsuario.Focus()
Exit Sub
Else 'en caso contrario, es decir si devuelve falso, entonces es que el usuario no existe, por lo tanto podemos
'realizar el registro.
'entonces si podemos realizar el registro, comprobaremos si el usuario tiene alguna foto seleccionada
If TxtFotoUsuario.Text = "" Then
'Si el textbox de la foto (que guardará la ruta de la imagen), esta vacio, es que no se ha seleccionado la foto
'por tanto preguntamos
If MsgBox("¿Desea agregar una foto a su perfil de usuario?", vbQuestion + vbYesNo, "¿Agregar fotografía?") = vbYes Then
'si respondemos que si, entonces dejamos de ejecutar codigo
Exit Sub
End If
Else 'si por el contrario el textbox de la foto no está vacío, entonces agregamos el registro
'Para ello, primero construimos la consulta de inserción
Consulta = "Insert Into Tb_Usuarios(NombrePersona,NombreUsuario,ClaveUsuario,FotoUsuario)Values('" & TxtNombre.Text & "','" & TxtUsuario.Text & "','" & TxtClaveUsuario.Text & "','" & TxtFotoUsuario.Text & "')"
'Luego verificamos que la consulta esté construida y contenga datos
If Consulta = "" Then MsgBox("Debe introducir los valores que desea agregar a la base de datos", vbCritical, "Introduzca los datos") : Exit Sub
'Una vez que tenemos todo verificado, hacemos lo siguiente.
'Sabemos que tenemos un metodo el cual nos agrega registros y el cual se encuentra en una clase.
'Esa clase esta almacenada en la variable MisDatos, así que solo tenemos que hacer referencia a la variable
'y llamar a la función que nos agrega el registro.
MisDatos.AgregarRegistros(Consulta)
Call LimpiarTextos(Me.GroupBox1)
ImgUsuario.ImageLocation = Nothing
'Recordar que para agregar, eliminar o actualizar registros, debemos primero conectarnos a la base de datos,
'pero este proceso ya se realiza dentro de la función de agregado, actualización o eliminación
'por eso no lo llamamos desde el botón de nuevo usuario
End If
End If
End If
End Sub
Private Sub CmbCerrarRegistro_Click(sender As Object, e As EventArgs) Handles CmbCerrarRegistro.Click
Me.Close()
End Sub
Private Sub CmbBuscarFoto_Click(sender As Object, e As EventArgs) Handles CmbBuscarFoto.Click
If OpenFileDialog1.ShowDialog = Windows.Forms.DialogResult.Cancel Then
MsgBox("Debe seleccionar la imagen de su perfil", vbCritical, "Seleccione una imagen")
Exit Sub
Else
TxtFotoUsuario.Text = OpenFileDialog1.FileName
ImgUsuario.ImageLocation = OpenFileDialog1.FileName
End If
End Sub
'Procedimiento limpiar los textbox del formulario
Private Sub LimpiarTextos(ByVal Grupo As Windows.Forms.GroupBox)
Dim miControl As Object
For Each miControl In Grupo.Controls
If miControl.GetType Is GetType(System.Windows.Forms.TextBox) Then
miControl.Clear()
End If
System.Windows.Forms.Application.DoEvents()
Next
End Sub
0 comentarios:
Publicar un comentario