Contextualización y aproximación al objeto de estudio de investigación cualit...
Desarrollo de práctica para un modelo de tres capas
1. DESARROLLO DE PRÁCTICA PARA UN MODELO DE TRES CAPAS
USUARIO
ENTIDADES
Public Class Usuario
Private _codigo As String
Public Property Codigo() As String
Get
Return _codigo
End Get
Set(ByVal value As String)
_codigo = value
End Set
End Property
Private _nombre As String
Public Property Nombre() As String
Get
Return _nombre
End Get
Set(ByVal value As String)
_nombre = value
End Set
End Property
Private _apellido As String
Public Property Apellido() As String
Get
Return _apellido
End Get
Set(ByVal value As String)
_apellido = value
End Set
End Property
Private _edad As Integer
Public Property Edad() As Integer
Get
Return _edad
End Get
Set(ByVal value As Integer)
_edad = value
End Set
End Property
Private _salario As Double
Public Property Salario() As Double
Get
Return _salario
End Get
Set(ByVal value As Double)
_salario = value
End Set
End Property
Private _departamento As String
Public Property Departamento() As String
1
2. Get
Return _departamento
End Get
Set(ByVal value As String)
_departamento = value
End Set
End Property
End Class
BLL USUARIO
Imports ENTIDADES
Imports DAL
Public Class BLLUsuario
Function Insertar_Usuario(ByVal art As Usuario) As Boolean
Dim dal_usuario As New DALUsuario
Dim resultado As Boolean
resultado = dal_usuario.BuscarCod_Usuario(art.Codigo) 'Primero
mandamos a buscar si existe el codigo
If resultado = False Then 'En caso de no existir se ingresa el
usuario
resultado = dal_usuario.Insertar_Usuario(art)
Return True
Else
Return False
End If
End Function
Function Actualizar_Usuario(ByVal art As Usuario) As Boolean
Dim dal_usuario As New DALUsuario
Dim resultado As Boolean
resultado = dal_usuario.Actualizar_Usuario(art)
Return resultado
End Function
Function Eliminar_Usuario(ByVal codigo As String) As Boolean
Dim dal_usuario As New DALUsuario
Dim resultado As Boolean
resultado = dal_usuario.Eliminar_Usuario(codigo)
Return resultado
End Function
Function Cargar_Departamentos() As DataTable
Dim dal_usuario As New DALUsuario
Dim resultado As DataTable
resultado = dal_usuario.Cargar_Departamentos()
Return resultado
End Function
Function BuscaPorDepartamento(ByVal codigo As String) As DataTable
Dim dal_usuario As New DALUsuario
Dim resultado As DataTable
resultado = dal_usuario.BuscaPorDepartamento(codigo)
Return resultado
End Function
End Class
2
3. DALL USUARIO
Imports ENTIDADES
Imports System.Data.SqlClient
Public Class DALUsuario
Function Insertar_Usuario(ByVal art As Usuario) As Boolean
Dim cadena As New SqlConnectionStringBuilder
cadena.DataSource = "."
cadena.InitialCatalog = "USUARIO"
cadena.IntegratedSecurity = True
Dim conn As New SqlConnection
conn.ConnectionString = cadena.ConnectionString
Dim comando As New SqlCommand
comando.CommandType = CommandType.StoredProcedure
comando.CommandText = "INS_USUARIO"
comando.Parameters.AddWithValue("@CODIGO", art.Codigo)
comando.Parameters.AddWithValue("@NOMBRE", art.Nombre)
comando.Parameters.AddWithValue("@APELLIDO", art.Apellido)
comando.Parameters.AddWithValue("@EDAD", art.Edad)
comando.Parameters.AddWithValue("@SALARIO", art.Salario)
comando.Parameters.AddWithValue("@DEPARTAMENTO",
art.Departamento)
comando.Connection = conn
conn.Open()
comando.ExecuteNonQuery()
conn.Close()
Return True
End Function
Function Actualizar_Usuario(ByVal art As Usuario) As Boolean
Dim cadena As New SqlConnectionStringBuilder
cadena.DataSource = "."
cadena.InitialCatalog = "USUARIO"
cadena.IntegratedSecurity = True
Dim conn As New SqlConnection
conn.ConnectionString = cadena.ConnectionString
Dim comando As New SqlCommand
comando.CommandType = CommandType.StoredProcedure
comando.CommandText = "ACT_USUARIO"
comando.Parameters.AddWithValue("@NOMBRE", art.Nombre)
comando.Parameters.AddWithValue("@APELLIDO", art.Apellido)
comando.Parameters.AddWithValue("@EDAD", art.Edad)
comando.Parameters.AddWithValue("@SALARIO", art.Salario)
comando.Parameters.AddWithValue("@DEPARTAMENTO",
art.Departamento)
comando.Connection = conn
conn.Open()
comando.ExecuteNonQuery()
conn.Close()
Return True
End Function
3
4. Function Eliminar_Usuario(ByVal codigo As String) As Boolean
Dim cadena As New SqlConnectionStringBuilder
cadena.DataSource = "."
cadena.InitialCatalog = "USUARIO"
cadena.IntegratedSecurity = True
Dim conn As New SqlConnection
conn.ConnectionString = cadena.ConnectionString
Dim comando As New SqlCommand
comando.CommandType = CommandType.StoredProcedure
comando.CommandText = "ELI_USUARIO"
comando.Parameters.AddWithValue("@CODIGO", codigo)
comando.Connection = conn
conn.Open()
comando.ExecuteNonQuery()
conn.Close()
Return True
End Function
'Aqui usamos el tipo datatable, se lo usara para llenar el combobox
Function Cargar_Departamentos() As DataTable
Dim cadena As New SqlConnectionStringBuilder
cadena.DataSource = "."
cadena.InitialCatalog = "USUARIO"
cadena.IntegratedSecurity = True
Dim conn As New SqlConnection
conn.ConnectionString = cadena.ConnectionString
Dim comando As New SqlCommand
comando.CommandType = CommandType.StoredProcedure
comando.CommandText = "CARGAR_DEPARTAMENTO"
comando.Connection = conn
Dim da As New SqlDataAdapter 'Permite realizar diferentes
acciones en memoria ram
Dim dt As New DataTable 'La tabla dinamica en donde se guardan
los datos
da.SelectCommand = comando
da.Fill(dt) 'Aqui se encarga de abrir la base, poner en el
datatable los datos y luego cerrar la conexion
Return dt 'Aqui retorno en datatable
End Function
'Esta funcion servira para buscar por codigo de departamentos para el
formulario consulta
Function BuscaPorDepartamento(ByVal codigo As String) As DataTable
Dim cadena As New SqlConnectionStringBuilder
cadena.DataSource = "."
cadena.InitialCatalog = "USUARIO"
cadena.IntegratedSecurity = True
Dim conn As New SqlConnection
conn.ConnectionString = cadena.ConnectionString
Dim comando As New SqlCommand
4
5. comando.CommandType = CommandType.StoredProcedure
comando.CommandText = "BUSCAR_DEPARTAMENTO" 'La busqueda se la
realiza por codigo de departamento
comando.Parameters.AddWithValue("@DEPARTAMENTO", codigo)
comando.Connection = conn
Dim da As New SqlDataAdapter 'Permite realizar diferentes
acciones en memoria ram
Dim dt As New DataTable 'La tabla dinamica en donde se guardan
los datos
da.SelectCommand = comando
da.Fill(dt) 'Aqui se encarga de abrir la base, poner en el
datatable los datos y luego cerrar la conexion
Return dt 'Aqui retorno en datatable
End Function
'Este sera usado en la funcion Ingresar de la clase BllUsuario
Function BuscarCod_Usuario(ByVal codigo As String) As Boolean
Dim cadena As New SqlConnectionStringBuilder
cadena.DataSource = "."
cadena.InitialCatalog = "USUARIO"
cadena.IntegratedSecurity = True
Dim conn As New SqlConnection
conn.ConnectionString = cadena.ConnectionString
Dim comando As New SqlCommand
comando.CommandType = CommandType.StoredProcedure
comando.CommandText = "BUSCAR_CODIGO"
comando.Parameters.AddWithValue("@CODIGO", codigo)
comando.Connection = conn
'Aqui hacemos este procedimiento para obtener el valor otorgado
por la consulta realizada mediante count en la base de datos "Select"
Dim valor As Integer
conn.Open()
valor = comando.ExecuteScalar
comando.ExecuteNonQuery()
conn.Close()
If valor = 0 Then
Return False
Else
Return True
End If
End Function
End Class
FORMULARIO MANTENIMIENTO DE USUARIO
Imports BLL
Imports ENTIDADES
Public Class UsuarioMant
'Cargamos desde la base de datos, la
informacion correspondiente a los
departamentos
5
6. Private Sub Usuario_Load(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles MyBase.Load
Dim bll_cargar As New BLLUsuario
Dim dt As New DataTable
dt = bll_cargar.Cargar_Departamentos
cbodepartamento.DataSource = dt
cbodepartamento.DisplayMember = "DESCRIPCION" 'Muestra los datos
a mostrarse desde el datatable
cbodepartamento.ValueMember = "CODIGODEP" 'Valor asociado de los
datos del datatable, este no se mostrara
End Sub
Private Sub btnIngresar_Click(ByVal sender As System.Object, ByVal e
As System.EventArgs) Handles btnIngresar.Click
Dim us As New Usuario
us.Codigo = txtcodigo.Text
us.Nombre = txtnombre.Text
us.Apellido = txtapellido.Text
us.Edad = txtedad.Text
us.Salario = txtsalario.Text
us.Departamento = cbodepartamento.SelectedValue
Dim bll_usuario As New BLLUsuario
Dim resultado As Boolean
resultado = bll_usuario.Insertar_Usuario(us)
If resultado = True Then
MessageBox.Show("Datos guardados")
Else
MessageBox.Show("Datos no guardados")
End If
End Sub
Private Sub btnActualizar_Click(ByVal sender As System.Object, ByVal
e As System.EventArgs) Handles btnActualizar.Click
Dim us As New Usuario
us.Codigo = txtcodigo.Text
us.Nombre = txtnombre.Text
us.Apellido = txtapellido.Text
us.Edad = txtedad.Text
us.Salario = txtsalario.Text
us.Departamento = cbodepartamento.SelectedValue
Dim bll_usuario As New BLLUsuario
Dim resultado As Boolean
resultado = bll_usuario.Actualizar_Usuario(us)
If resultado = True Then
MessageBox.Show("Datos Actualizados")
End If
End Sub
Private Sub btnEliminar_Click(ByVal sender As System.Object, ByVal e
As System.EventArgs) Handles btnEliminar.Click
Dim bll_usuario As New BLLUsuario
Dim resultado As Boolean
resultado = bll_usuario.Eliminar_Usuario(txtcodigo.Text)
6
7. If resultado = True Then
MessageBox.Show("Datos Eliminados")
End If
End Sub
End Class
FORMULARIO DE CONSULTA MEDIANTE COMBOBOX
Imports BLL
Imports ENTIDADES
Public Class Consultar
Private Sub Consultar_Load(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles MyBase.Load
Dim bll_cargar As New BLLUsuario
Dim dt As New DataTable
dt = bll_cargar.Cargar_Departamentos
cboconsulta.DataSource = dt
cboconsulta.DisplayMember = "DESCRIPCION" 'Muestra los datos a
mostrarse desde el datatable
cboconsulta.ValueMember = "CODIGODEP" 'Valor asociado de los
datos del datatable, este no se mostrara
End Sub
Private Sub btnBuscar_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles btnBuscar.Click
Dim bll_us As New BLLUsuario
Dim dt As New DataTable
dt = bll_us.BuscaPorDepartamento(cboconsulta.SelectedValue)
dgvConsulta.DataSource = dt
End Sub
7