SlideShare una empresa de Scribd logo
1 de 7
Descargar para leer sin conexión
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
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
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
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
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
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
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

Más contenido relacionado

La actualidad más candente

Fundamentos de Programación Visual Basic 2010
Fundamentos de Programación Visual Basic 2010Fundamentos de Programación Visual Basic 2010
Fundamentos de Programación Visual Basic 2010Luis Ruiz Ch
 
Ejercicios en Netbeans
Ejercicios en NetbeansEjercicios en Netbeans
Ejercicios en Netbeansedgar muñoz
 
Charla congreso web introducción programación funcional en JavaScript
Charla congreso web introducción programación funcional en JavaScriptCharla congreso web introducción programación funcional en JavaScript
Charla congreso web introducción programación funcional en JavaScriptRicardo Pallás Román
 
jQuery 1.3 Eghost Julio2009
jQuery 1.3 Eghost Julio2009jQuery 1.3 Eghost Julio2009
jQuery 1.3 Eghost Julio2009Irontec
 
Proyecto de un formulario de facturacion
Proyecto de un formulario de facturacionProyecto de un formulario de facturacion
Proyecto de un formulario de facturacionRoyer Tuesta Salas
 
Formulario De Registro De Boleta De Ventay Mantenimiento De Cliente
Formulario De Registro De Boleta De Ventay Mantenimiento De ClienteFormulario De Registro De Boleta De Ventay Mantenimiento De Cliente
Formulario De Registro De Boleta De Ventay Mantenimiento De Clientejameszx
 

La actualidad más candente (15)

Trabajo de consulta
Trabajo de consultaTrabajo de consulta
Trabajo de consulta
 
Lista de funciones de excel
Lista de funciones de excelLista de funciones de excel
Lista de funciones de excel
 
Fundamentos de Programación Visual Basic 2010
Fundamentos de Programación Visual Basic 2010Fundamentos de Programación Visual Basic 2010
Fundamentos de Programación Visual Basic 2010
 
Objetos
ObjetosObjetos
Objetos
 
Ejercicios en Netbeans
Ejercicios en NetbeansEjercicios en Netbeans
Ejercicios en Netbeans
 
Objetos
ObjetosObjetos
Objetos
 
Charla congreso web introducción programación funcional en JavaScript
Charla congreso web introducción programación funcional en JavaScriptCharla congreso web introducción programación funcional en JavaScript
Charla congreso web introducción programación funcional en JavaScript
 
jQuery 1.3 Eghost Julio2009
jQuery 1.3 Eghost Julio2009jQuery 1.3 Eghost Julio2009
jQuery 1.3 Eghost Julio2009
 
Proyecto de un formulario de facturacion
Proyecto de un formulario de facturacionProyecto de un formulario de facturacion
Proyecto de un formulario de facturacion
 
Programas en netbeans
Programas en netbeansProgramas en netbeans
Programas en netbeans
 
Introducion al excel
Introducion al excelIntroducion al excel
Introducion al excel
 
Acmar trucos de visual basic(2)
Acmar   trucos de visual basic(2)Acmar   trucos de visual basic(2)
Acmar trucos de visual basic(2)
 
Funciones de ecxel
Funciones de ecxelFunciones de ecxel
Funciones de ecxel
 
Clase nro2 vb net 2010 rivera & g
Clase nro2 vb net 2010 rivera & gClase nro2 vb net 2010 rivera & g
Clase nro2 vb net 2010 rivera & g
 
Formulario De Registro De Boleta De Ventay Mantenimiento De Cliente
Formulario De Registro De Boleta De Ventay Mantenimiento De ClienteFormulario De Registro De Boleta De Ventay Mantenimiento De Cliente
Formulario De Registro De Boleta De Ventay Mantenimiento De Cliente
 

Similar a Desarrollo de práctica para un modelo de tres capas

Similar a Desarrollo de práctica para un modelo de tres capas (20)

Conexion mysql y usos
Conexion mysql y usosConexion mysql y usos
Conexion mysql y usos
 
consultas de visual estudio sistema de ventas
 consultas de visual estudio  sistema de  ventas consultas de visual estudio  sistema de  ventas
consultas de visual estudio sistema de ventas
 
Trabajando con Procedimientos Almacenados y VB.Net
Trabajando con Procedimientos Almacenados y VB.NetTrabajando con Procedimientos Almacenados y VB.Net
Trabajando con Procedimientos Almacenados y VB.Net
 
LABORATORIO DE PROGRAMACIÓN I.
LABORATORIO DE PROGRAMACIÓN I.LABORATORIO DE PROGRAMACIÓN I.
LABORATORIO DE PROGRAMACIÓN I.
 
OBJETO SQLCOMMAND.
OBJETO SQLCOMMAND.OBJETO SQLCOMMAND.
OBJETO SQLCOMMAND.
 
Codigo proceso
Codigo procesoCodigo proceso
Codigo proceso
 
Codigo proceso
Codigo procesoCodigo proceso
Codigo proceso
 
Guia n5 tam 2009 1
Guia n5 tam 2009 1Guia n5 tam 2009 1
Guia n5 tam 2009 1
 
Separata java script
Separata java scriptSeparata java script
Separata java script
 
Precentacion de sql visual
Precentacion de sql visualPrecentacion de sql visual
Precentacion de sql visual
 
Bases de Datos en Java - Intro a JDBC
Bases de Datos en Java - Intro a JDBCBases de Datos en Java - Intro a JDBC
Bases de Datos en Java - Intro a JDBC
 
Arreglos, Procedimientos y Funciones
Arreglos, Procedimientos y FuncionesArreglos, Procedimientos y Funciones
Arreglos, Procedimientos y Funciones
 
Codigo tarea deposito
Codigo tarea depositoCodigo tarea deposito
Codigo tarea deposito
 
Codigo tarea deposito
Codigo tarea depositoCodigo tarea deposito
Codigo tarea deposito
 
Java::Acceso a Bases de Datos
Java::Acceso a Bases de DatosJava::Acceso a Bases de Datos
Java::Acceso a Bases de Datos
 
U5. Arreglos de Objetos.pdf
U5. Arreglos de Objetos.pdfU5. Arreglos de Objetos.pdf
U5. Arreglos de Objetos.pdf
 
3152
31523152
3152
 
LABORATORIO DE PROGRAMACIÓN I.
LABORATORIO DE PROGRAMACIÓN I.LABORATORIO DE PROGRAMACIÓN I.
LABORATORIO DE PROGRAMACIÓN I.
 
Clase sqldatareader
Clase sqldatareaderClase sqldatareader
Clase sqldatareader
 
Intro aplicaciones web con php
Intro aplicaciones web con phpIntro aplicaciones web con php
Intro aplicaciones web con php
 

Más de Nelson Salinas

Se necesita realizar el tco a 3 años
Se necesita realizar el tco a 3 añosSe necesita realizar el tco a 3 años
Se necesita realizar el tco a 3 añosNelson Salinas
 
Code igniter spanish_userguide
Code igniter spanish_userguideCode igniter spanish_userguide
Code igniter spanish_userguideNelson Salinas
 
Encuesta javier landivar
Encuesta javier landivarEncuesta javier landivar
Encuesta javier landivarNelson Salinas
 
Plan de desarrollo de trabajo de marketing
Plan de desarrollo de trabajo de marketingPlan de desarrollo de trabajo de marketing
Plan de desarrollo de trabajo de marketingNelson Salinas
 
Sentencias básicas en oracle
Sentencias básicas en oracleSentencias básicas en oracle
Sentencias básicas en oracleNelson Salinas
 
Ecuador educacion analisis
Ecuador educacion analisisEcuador educacion analisis
Ecuador educacion analisisNelson Salinas
 
Solicitud de inscripcion
Solicitud de inscripcionSolicitud de inscripcion
Solicitud de inscripcionNelson Salinas
 
Manual del sistema de finanzas
Manual del sistema de finanzasManual del sistema de finanzas
Manual del sistema de finanzasNelson Salinas
 
Administración Estratégica - Grupo 4
Administración Estratégica - Grupo 4Administración Estratégica - Grupo 4
Administración Estratégica - Grupo 4Nelson Salinas
 
Pronósticos en los negocios parte 2 - Grupo 4
Pronósticos en los negocios parte 2 - Grupo 4Pronósticos en los negocios parte 2 - Grupo 4
Pronósticos en los negocios parte 2 - Grupo 4Nelson Salinas
 
Pronósticos en los negocios- Grupo 4
Pronósticos en los negocios- Grupo 4Pronósticos en los negocios- Grupo 4
Pronósticos en los negocios- Grupo 4Nelson Salinas
 
Informe de pronosticos
Informe de pronosticosInforme de pronosticos
Informe de pronosticosNelson Salinas
 

Más de Nelson Salinas (20)

Se necesita realizar el tco a 3 años
Se necesita realizar el tco a 3 añosSe necesita realizar el tco a 3 años
Se necesita realizar el tco a 3 años
 
Code igniter spanish_userguide
Code igniter spanish_userguideCode igniter spanish_userguide
Code igniter spanish_userguide
 
Investigacion
InvestigacionInvestigacion
Investigacion
 
Encuesta javier landivar
Encuesta javier landivarEncuesta javier landivar
Encuesta javier landivar
 
Plan de desarrollo de trabajo de marketing
Plan de desarrollo de trabajo de marketingPlan de desarrollo de trabajo de marketing
Plan de desarrollo de trabajo de marketing
 
Triptico kerly
Triptico kerlyTriptico kerly
Triptico kerly
 
Sentencia sql
Sentencia sqlSentencia sql
Sentencia sql
 
Sentencias básicas en oracle
Sentencias básicas en oracleSentencias básicas en oracle
Sentencias básicas en oracle
 
Curso de net
Curso de netCurso de net
Curso de net
 
Modelo relacional
Modelo relacionalModelo relacional
Modelo relacional
 
Trabajo de .net
Trabajo de .netTrabajo de .net
Trabajo de .net
 
Guía operacional
Guía operacionalGuía operacional
Guía operacional
 
Ecuador educacion analisis
Ecuador educacion analisisEcuador educacion analisis
Ecuador educacion analisis
 
Cuaderno conceptos
Cuaderno conceptosCuaderno conceptos
Cuaderno conceptos
 
Solicitud de inscripcion
Solicitud de inscripcionSolicitud de inscripcion
Solicitud de inscripcion
 
Manual del sistema de finanzas
Manual del sistema de finanzasManual del sistema de finanzas
Manual del sistema de finanzas
 
Administración Estratégica - Grupo 4
Administración Estratégica - Grupo 4Administración Estratégica - Grupo 4
Administración Estratégica - Grupo 4
 
Pronósticos en los negocios parte 2 - Grupo 4
Pronósticos en los negocios parte 2 - Grupo 4Pronósticos en los negocios parte 2 - Grupo 4
Pronósticos en los negocios parte 2 - Grupo 4
 
Pronósticos en los negocios- Grupo 4
Pronósticos en los negocios- Grupo 4Pronósticos en los negocios- Grupo 4
Pronósticos en los negocios- Grupo 4
 
Informe de pronosticos
Informe de pronosticosInforme de pronosticos
Informe de pronosticos
 

Último

Fichas de MatemáticA QUINTO DE SECUNDARIA).pdf
Fichas de MatemáticA QUINTO DE SECUNDARIA).pdfFichas de MatemáticA QUINTO DE SECUNDARIA).pdf
Fichas de MatemáticA QUINTO DE SECUNDARIA).pdfssuser50d1252
 
FICHA DE MONITOREO Y ACOMPAÑAMIENTO 2024 MINEDU
FICHA DE MONITOREO Y ACOMPAÑAMIENTO  2024 MINEDUFICHA DE MONITOREO Y ACOMPAÑAMIENTO  2024 MINEDU
FICHA DE MONITOREO Y ACOMPAÑAMIENTO 2024 MINEDUgustavorojas179704
 
TUTORIA II - CIRCULO DORADO UNIVERSIDAD CESAR VALLEJO
TUTORIA II - CIRCULO DORADO UNIVERSIDAD CESAR VALLEJOTUTORIA II - CIRCULO DORADO UNIVERSIDAD CESAR VALLEJO
TUTORIA II - CIRCULO DORADO UNIVERSIDAD CESAR VALLEJOweislaco
 
SIMULACROS Y SIMULACIONES DE SISMO 2024.docx
SIMULACROS Y SIMULACIONES DE SISMO 2024.docxSIMULACROS Y SIMULACIONES DE SISMO 2024.docx
SIMULACROS Y SIMULACIONES DE SISMO 2024.docxLudy Ventocilla Napanga
 
Estas son las escuelas y colegios que tendrán modalidad no presencial este lu...
Estas son las escuelas y colegios que tendrán modalidad no presencial este lu...Estas son las escuelas y colegios que tendrán modalidad no presencial este lu...
Estas son las escuelas y colegios que tendrán modalidad no presencial este lu...fcastellanos3
 
SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024
SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024
SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024gharce
 
periodico mural y sus partes y caracteristicas
periodico mural y sus partes y caracteristicasperiodico mural y sus partes y caracteristicas
periodico mural y sus partes y caracteristicas123yudy
 
Día de la Madre Tierra-1.pdf día mundial
Día de la Madre Tierra-1.pdf día mundialDía de la Madre Tierra-1.pdf día mundial
Día de la Madre Tierra-1.pdf día mundialpatriciaines1993
 
DETALLES EN EL DISEÑO DE INTERIOR
DETALLES EN EL DISEÑO DE INTERIORDETALLES EN EL DISEÑO DE INTERIOR
DETALLES EN EL DISEÑO DE INTERIORGonella
 
Fichas de Matemática TERCERO DE SECUNDARIA.pdf
Fichas de Matemática TERCERO DE SECUNDARIA.pdfFichas de Matemática TERCERO DE SECUNDARIA.pdf
Fichas de Matemática TERCERO DE SECUNDARIA.pdfssuser50d1252
 
Tema 8.- Gestion de la imagen a traves de la comunicacion de crisis.pdf
Tema 8.- Gestion de la imagen a traves de la comunicacion de crisis.pdfTema 8.- Gestion de la imagen a traves de la comunicacion de crisis.pdf
Tema 8.- Gestion de la imagen a traves de la comunicacion de crisis.pdfDaniel Ángel Corral de la Mata, Ph.D.
 
4º SOY LECTOR PART2- MD EDUCATIVO.p df PARTE
4º SOY LECTOR PART2- MD  EDUCATIVO.p df PARTE4º SOY LECTOR PART2- MD  EDUCATIVO.p df PARTE
4º SOY LECTOR PART2- MD EDUCATIVO.p df PARTESaraNolasco4
 
EDUCACION FISICA 1° PROGRAMACIÓN ANUAL 2023.docx
EDUCACION FISICA 1°  PROGRAMACIÓN ANUAL 2023.docxEDUCACION FISICA 1°  PROGRAMACIÓN ANUAL 2023.docx
EDUCACION FISICA 1° PROGRAMACIÓN ANUAL 2023.docxLuisAndersonPachasto
 
Mapa Mental de estrategias de articulación de las areas curriculares.pdf
Mapa Mental de estrategias de articulación de las areas curriculares.pdfMapa Mental de estrategias de articulación de las areas curriculares.pdf
Mapa Mental de estrategias de articulación de las areas curriculares.pdfvictorbeltuce
 
Actividad transversal 2-bloque 2. Actualización 2024
Actividad transversal 2-bloque 2. Actualización 2024Actividad transversal 2-bloque 2. Actualización 2024
Actividad transversal 2-bloque 2. Actualización 2024Rosabel UA
 
Contextualización y aproximación al objeto de estudio de investigación cualit...
Contextualización y aproximación al objeto de estudio de investigación cualit...Contextualización y aproximación al objeto de estudio de investigación cualit...
Contextualización y aproximación al objeto de estudio de investigación cualit...Angélica Soledad Vega Ramírez
 

Último (20)

TL/CNL – 2.ª FASE .
TL/CNL – 2.ª FASE                       .TL/CNL – 2.ª FASE                       .
TL/CNL – 2.ª FASE .
 
Fichas de MatemáticA QUINTO DE SECUNDARIA).pdf
Fichas de MatemáticA QUINTO DE SECUNDARIA).pdfFichas de MatemáticA QUINTO DE SECUNDARIA).pdf
Fichas de MatemáticA QUINTO DE SECUNDARIA).pdf
 
FICHA DE MONITOREO Y ACOMPAÑAMIENTO 2024 MINEDU
FICHA DE MONITOREO Y ACOMPAÑAMIENTO  2024 MINEDUFICHA DE MONITOREO Y ACOMPAÑAMIENTO  2024 MINEDU
FICHA DE MONITOREO Y ACOMPAÑAMIENTO 2024 MINEDU
 
TUTORIA II - CIRCULO DORADO UNIVERSIDAD CESAR VALLEJO
TUTORIA II - CIRCULO DORADO UNIVERSIDAD CESAR VALLEJOTUTORIA II - CIRCULO DORADO UNIVERSIDAD CESAR VALLEJO
TUTORIA II - CIRCULO DORADO UNIVERSIDAD CESAR VALLEJO
 
La luz brilla en la oscuridad. Necesitamos luz
La luz brilla en la oscuridad. Necesitamos luzLa luz brilla en la oscuridad. Necesitamos luz
La luz brilla en la oscuridad. Necesitamos luz
 
SIMULACROS Y SIMULACIONES DE SISMO 2024.docx
SIMULACROS Y SIMULACIONES DE SISMO 2024.docxSIMULACROS Y SIMULACIONES DE SISMO 2024.docx
SIMULACROS Y SIMULACIONES DE SISMO 2024.docx
 
Tema 7.- E-COMMERCE SISTEMAS DE INFORMACION.pdf
Tema 7.- E-COMMERCE SISTEMAS DE INFORMACION.pdfTema 7.- E-COMMERCE SISTEMAS DE INFORMACION.pdf
Tema 7.- E-COMMERCE SISTEMAS DE INFORMACION.pdf
 
Estas son las escuelas y colegios que tendrán modalidad no presencial este lu...
Estas son las escuelas y colegios que tendrán modalidad no presencial este lu...Estas son las escuelas y colegios que tendrán modalidad no presencial este lu...
Estas son las escuelas y colegios que tendrán modalidad no presencial este lu...
 
SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024
SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024
SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024
 
VISITA À PROTEÇÃO CIVIL _
VISITA À PROTEÇÃO CIVIL                  _VISITA À PROTEÇÃO CIVIL                  _
VISITA À PROTEÇÃO CIVIL _
 
periodico mural y sus partes y caracteristicas
periodico mural y sus partes y caracteristicasperiodico mural y sus partes y caracteristicas
periodico mural y sus partes y caracteristicas
 
Día de la Madre Tierra-1.pdf día mundial
Día de la Madre Tierra-1.pdf día mundialDía de la Madre Tierra-1.pdf día mundial
Día de la Madre Tierra-1.pdf día mundial
 
DETALLES EN EL DISEÑO DE INTERIOR
DETALLES EN EL DISEÑO DE INTERIORDETALLES EN EL DISEÑO DE INTERIOR
DETALLES EN EL DISEÑO DE INTERIOR
 
Fichas de Matemática TERCERO DE SECUNDARIA.pdf
Fichas de Matemática TERCERO DE SECUNDARIA.pdfFichas de Matemática TERCERO DE SECUNDARIA.pdf
Fichas de Matemática TERCERO DE SECUNDARIA.pdf
 
Tema 8.- Gestion de la imagen a traves de la comunicacion de crisis.pdf
Tema 8.- Gestion de la imagen a traves de la comunicacion de crisis.pdfTema 8.- Gestion de la imagen a traves de la comunicacion de crisis.pdf
Tema 8.- Gestion de la imagen a traves de la comunicacion de crisis.pdf
 
4º SOY LECTOR PART2- MD EDUCATIVO.p df PARTE
4º SOY LECTOR PART2- MD  EDUCATIVO.p df PARTE4º SOY LECTOR PART2- MD  EDUCATIVO.p df PARTE
4º SOY LECTOR PART2- MD EDUCATIVO.p df PARTE
 
EDUCACION FISICA 1° PROGRAMACIÓN ANUAL 2023.docx
EDUCACION FISICA 1°  PROGRAMACIÓN ANUAL 2023.docxEDUCACION FISICA 1°  PROGRAMACIÓN ANUAL 2023.docx
EDUCACION FISICA 1° PROGRAMACIÓN ANUAL 2023.docx
 
Mapa Mental de estrategias de articulación de las areas curriculares.pdf
Mapa Mental de estrategias de articulación de las areas curriculares.pdfMapa Mental de estrategias de articulación de las areas curriculares.pdf
Mapa Mental de estrategias de articulación de las areas curriculares.pdf
 
Actividad transversal 2-bloque 2. Actualización 2024
Actividad transversal 2-bloque 2. Actualización 2024Actividad transversal 2-bloque 2. Actualización 2024
Actividad transversal 2-bloque 2. Actualización 2024
 
Contextualización y aproximación al objeto de estudio de investigación cualit...
Contextualización y aproximación al objeto de estudio de investigación cualit...Contextualización y aproximación al objeto de estudio de investigación cualit...
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