Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Solucion Examenunidadiiidetallerdeprogramacion 130214140501 Phpapp01
Solucion Examenunidadiiidetallerdeprogramacion 130214140501 Phpapp01
NET y Ms SQL Server, basada en la arquitectura tres capas, para la siguiente base de datos de nombre pedidos:
Se le pide lo siguiente: 1. Formulario Mantenimiento de Categoras (Reportar, Insertar, Actualizar y Eliminar) 2. Bsqueda por cdigo, nombre y precio 3. Formulario Mantenimiento de Productos(Reportar, Insertar, Actualizar y Eliminar) 4. Bsqueda por Nombre de categora Ayuda: Crear para cada tabla una clase: Primeramente empezamos con la creacin de la base de datos y nuestros procedimientos almacenados: Procedimientos para generar los cdigos de los nuevos registros.
Procedimiento almacenado para llenar el ComboBox categora Claro siempre y cuando desee recuperar solo algunos registros o en todo caso usar el listar categoras:
End Sub Public Property idCategoria() As Integer Get Return midCategoria End Get Set(ByVal value As Integer) midCategoria = value End Set End Property Public Property NombreCategoria() As String Get Return mNombreCategoria End Get Set(ByVal value As String) mNombreCategoria = value End Set End Property Public Property DescripcionCategoria() As String Get Return mDescripcionCategoria End Get Set(ByVal value As String) mDescripcionCategoria = value End Set End Property End Class
2. Clase Producto
Public Class Producto Private midproducto As Integer Private mDescripcion As String Private mprecio As Decimal Private midCategorias As String Private mStock As String Public Property idProducto() As Integer Get Return midproducto End Get Set(ByVal value As Integer) midproducto = value End Set End Property Public Property DescripcionProducto() As String Get Return mDescripcion End Get Set(ByVal value As String) mDescripcion = value End Set End Property Public Property PrecioProducto() As Decimal Get Return mprecio End Get Set(ByVal value As Decimal)
mprecio = value End Set End Property Public Property StockProducto() As String Get Return mStock End Get Set(ByVal value As String) mStock = value End Set End Property Public Property idCategoriaProducto() As String Get Return midCategorias End Get Set(ByVal value As String) midCategorias = value End Set End Property End Class
cmdProducto.Parameters.Clear() objConexion.obtenerconexion.Close() End Function Public Function ActualizarProductos(ByVal objProductoE As Producto) As String Dim mensaje As String cmdProducto.CommandType = CommandType.StoredProcedure 'Nombre procedimiento almacenado cmdProducto.CommandText = "SP_Actualizar_Producto" 'obtener la conexion con la base de datos cmdProducto.Connection = objConexion.obtenerconexion 'Verificar el estado de la conexin If objConexion.obtenerconexion.State = ConnectionState.Open Then objConexion.obtenerconexion.Close() Else objConexion.obtenerconexion.Open() End If 'Creamos los parmetros 'Todos los atributos de la tabla Producto With cmdProducto.Parameters 'Obtenemos el IdProducto, usando el objProductoE .Add("@idProducto", SqlDbType.Int).Value = objProductoE.idProducto .Add("@descripcion", SqlDbType.VarChar).Value = objProductoE.DescripcionProducto .Add("@precio", SqlDbType.Decimal).Value = objProductoE.PrecioProducto .Add("@stock", SqlDbType.Int).Value = objProductoE.StockProducto .Add("@idcategoria", SqlDbType.Int).Value = CInt(objProductoE.idCategoriaProducto) End With Dim registros As Integer registros = cmdProducto.ExecuteNonQuery() If registros = 1 Then mensaje = "Registro Actualizado correctamente" Return mensaje Else mensaje = "Error en la transaccion" Return mensaje End If cmdProducto.Parameters.Clear() objConexion.obtenerconexion.Close() End Function Public Function listarProductos() As List(Of Producto) Dim lista As New List(Of Producto) Dim lector As SqlDataReader Dim objProducto As Producto cmdProducto = New SqlCommand("SP_Listar_Producto", objConexion.obtenerconexion) lector = cmdProducto.ExecuteReader While lector.Read objProducto = New Producto objProducto.IdProducto = lector(0) objProducto.DescripcionProducto = lector(1) objProducto.PrecioProducto = lector(2) objProducto.StockProducto = lector(3) Dim objeCategoria = New Categoria(lector(4)) objProducto.idCategoriaProducto = objeCategoria.NombreCategoria 'objProducto.idCategoriaProducto = lector(4) lista.Add(objProducto) End While Return lista End Function Public Function listarProducto(ByVal codigo As Integer) As Producto Dim lista As New List(Of Producto) Dim lector As SqlDataReader Dim objProducto As Producto
objProducto = New Producto Dim objProducto1 As New Producto cmdProducto.CommandType = CommandType.StoredProcedure 'Nombre procedimiento almacenado cmdProducto.CommandText = "Sp_BuscarProducto" 'obtener la conexion con la base de datos cmdProducto.Connection = objConexion.obtenerconexion 'Verificar el estado de la conexin 'cmdProducto = New SqlCommand("Sp_BuscarProducto", objConexion.obtenerconexion) With cmdProducto.Parameters 'Obtenemos el IdProducto, usando el objProductoE .Add("@codigo", SqlDbType.Int).Value = codigo End With If objConexion.obtenerconexion.State = ConnectionState.Open Then objConexion.obtenerconexion.Close() Else objConexion.obtenerconexion.Open() End If lector = cmdProducto.ExecuteReader 'objProducto = New Producto If lector.Read Then objProducto.idProducto = lector(0) objProducto.DescripcionProducto = lector(1) objProducto.PrecioProducto = lector(2) objProducto.StockProducto = lector(3) Dim objeCategoria = New Categoria(lector(4)) objProducto.idCategoriaProducto = objeCategoria.NombreCategoria End If Return objProducto End Function Public Function codProducto() As Integer Dim codigo As Integer Dim lector As SqlDataReader cmdProducto = New SqlCommand("SP_Generar_Codigo_Producto", objConexion.obtenerconexion) lector = cmdProducto.ExecuteReader If lector.Read Then codigo = lector(0) End If Return codigo End Function End Class
Clase: CategoriaDAO
Imports Conexion Imports Entidades Imports System.Data Imports System.Data.SqlClient Public Class CategoriaDAO Public daCategoria As SqlDataAdapter Public cmdCategoria As New SqlCommand Public dsCategoria As DataSet Public drCategoria As SqlDataReader 'Dim conn As New SqlConnection("Data Source=.;Initial Catalog=SistemaFacturacion;Integrated Security=True") Dim objConexion As New conexionbd Public Function AgregarCategoria(ByVal objCategoriaE As Categoria) As String Dim mensaje As String cmdCategoria.CommandType = CommandType.StoredProcedure cmdCategoria.CommandText = "SP_Inserta_Categoria"
cmdCategoria.Connection = objConexion.obtenerconexion If objConexion.obtenerconexion.State = ConnectionState.Open Then objConexion.obtenerconexion.Close() Else objConexion.obtenerconexion.Open() End If With cmdCategoria.Parameters .Add("@idCategoria", SqlDbType.Int).Value = objCategoriaE.idCategoria .Add("@nombre", SqlDbType.VarChar).Value = objCategoriaE.NombreCategoria .Add("@descripcion", SqlDbType.VarChar).Value = objCategoriaE.DescripcionCategoria End With Dim registros As Integer registros = cmdCategoria.ExecuteNonQuery() If registros = 1 Then mensaje = "Registro guardado correctamente" Return mensaje Else mensaje = "Error en la transaccion" Return mensaje End If cmdCategoria.Parameters.Clear() objConexion.obtenerconexion.Close() End Function Public Function ActualizarCategorias(ByVal objCategoriaE As Categoria) As String Dim mensaje As String cmdCategoria.CommandType = CommandType.StoredProcedure cmdCategoria.CommandText = "SP_Actualizar_Categoria" cmdCategoria.Connection = objConexion.obtenerconexion If objConexion.obtenerconexion.State = ConnectionState.Open Then objConexion.obtenerconexion.Close() Else objConexion.obtenerconexion.Open() End If 'cmdCliente.Connection = With cmdCategoria.Parameters .Add("@idCategoria", SqlDbType.Int).Value = objCategoriaE.idCategoria .Add("@nombre", SqlDbType.VarChar).Value = objCategoriaE.NombreCategoria .Add("@descripcion", SqlDbType.VarChar).Value = objCategoriaE.DescripcionCategoria End With Dim registros As Integer registros = cmdCategoria.ExecuteNonQuery() If registros = 1 Then mensaje = "Registro Actualizado correctamente" Return mensaje Else mensaje = "Error en la transaccion" Return mensaje End If cmdCategoria.Parameters.Clear() objConexion.obtenerconexion.Close() End Function Public Function listarCategorias() As List(Of Categoria) Dim lista As New List(Of Categoria) Dim lector As SqlDataReader Dim objCategoria As Categoria cmdCategoria = New SqlCommand("SP_Listar_Categoria", objConexion.obtenerconexion)
lector = cmdCategoria.ExecuteReader While lector.Read objCategoria = New Categoria objCategoria.idCategoria = lector(0) objCategoria.NombreCategoria = lector(1) objCategoria.DescripcionCategoria = lector(2) lista.Add(objCategoria) End While Return lista End Function Public Function listarCategoria(ByVal codigo As Integer) As Categoria Dim lista As New List(Of Categoria) Dim lector As SqlDataReader Dim objCategoria As Categoria objCategoria = New Categoria Dim objCategoria1 As New Producto cmdCategoria.CommandType = CommandType.StoredProcedure 'Nombre procedimiento almacenado cmdCategoria.CommandText = "Sp_Buscar_Categoria" 'obtener la conexion con la base de datos cmdCategoria.Connection = objConexion.obtenerconexion 'Verificar el estado de la conexin 'cmdProducto = New SqlCommand("Sp_BuscarProducto", objConexion.obtenerconexion) With cmdCategoria.Parameters 'Obtenemos el IdProducto, usando el objProductoE .Add("@idCategoria", SqlDbType.Int).Value = codigo End With If objConexion.obtenerconexion.State = ConnectionState.Open Then objConexion.obtenerconexion.Close() Else objConexion.obtenerconexion.Open() End If lector = cmdCategoria.ExecuteReader 'objProducto = New Producto If lector.Read Then objCategoria.idCategoria = lector(0) objCategoria.NombreCategoria = lector(1) objCategoria.DescripcionCategoria = lector(2) End If Return objCategoria End Function Public Function buscarCodxNombre(ByVal nombre As String) As Categoria Dim lista As New List(Of Categoria) Dim lector As SqlDataReader Dim objCategoria As Categoria objCategoria = New Categoria cmdCategoria.CommandType = CommandType.StoredProcedure 'Nombre procedimiento almacenado cmdCategoria.CommandText = "sp_categoria_buscaridxnombre" 'obtener la conexion con la base de datos cmdCategoria.Connection = objConexion.obtenerconexion 'Verificar el estado de la conexin 'cmdProducto = New SqlCommand("Sp_BuscarProducto", objConexion.obtenerconexion) With cmdCategoria.Parameters 'Obtenemos el IdProducto, usando el objProductoE .Add("@nombre", SqlDbType.VarChar).Value = nombre End With If objConexion.obtenerconexion.State = ConnectionState.Open Then objConexion.obtenerconexion.Close() Else
objConexion.obtenerconexion.Open() End If lector = cmdCategoria.ExecuteReader 'objProducto = New Producto If lector.Read Then objCategoria.idCategoria = lector(0) objCategoria.NombreCategoria = lector(1) objCategoria.DescripcionCategoria = lector(2) End If Return objCategoria End Function Public Function llenarComboCategoria() As Categoria Dim lista As New List(Of Categoria) Dim lector As SqlDataReader Dim objCategoria As Categoria objCategoria = New Categoria cmdCategoria = New SqlCommand("sp_combo_categoria", objConexion.obtenerconexion) If objConexion.obtenerconexion.State = ConnectionState.Open Then objConexion.obtenerconexion.Close() Else objConexion.obtenerconexion.Open() End If lector = cmdCategoria.ExecuteReader If lector.Read Then objCategoria.idCategoria = lector(0) objCategoria.NombreCategoria = lector(1) End If Return objCategoria End Function Public Function codCategoria() As Integer Dim codigo As Integer Dim lector As SqlDataReader cmdCategoria = New SqlCommand("SP_Generar_Codigo_Categoria", objConexion.obtenerconexion) lector = cmdCategoria.ExecuteReader If lector.Read Then codigo = lector(0) End If Return codigo End Function End Class
Return objProductoDAO.codProducto() End Function Public Function listarProductos() As List(Of Producto) Return objProductoDAO.listarProductos End Function Public Function listarProducto(ByVal codigo As Integer) As Producto Return objProductoDAO.listarProducto(codigo) End Function Public Function llenarComboProducto() As Producto Return objProductoDAO.llenarComboProducto End Function End Class
Clase: CategoriaNE
Imports Datos Imports Entidades Public Class CategoriaNE Private objCategoriaDAO As CategoriaDAO Public Sub New() objCategoriaDAO = New CategoriaDAO End Sub Public Function AgregarCategoria(ByVal objCategoriaE As Categoria) As String Return objCategoriaDAO.AgregarCategoria(objCategoriaE) End Function Public Function ActualizarCategoria(ByVal objCategoriaE As Categoria) As String Return objCategoriaDAO.ActualizarCategorias(objCategoriaE) End Function Public Function listarCategorias() As List(Of Categoria) Return objCategoriaDAO.listarCategorias End Function Public Function listarCategoria(ByVal codigo As Integer) As Categoria Return objCategoriaDAO.listarCategoria(codigo) End Function Public Function buscarCodxNombre(ByVal nombre As String) As Categoria Return objCategoriaDAO.buscarCodxNombre(nombre) End Function Public Function CodCategoria() As Integer Return objCategoriaDAO.codCategoria() End Function End Class
Public Function AbrirConexion() As SqlConnection Dim con As SqlConnection con = New SqlConnection(cadena) con.Open() Return con End Function Public Function CerrarConexion() As SqlConnection Dim con As SqlConnection con = New SqlConnection(cadena) If con.State = ConnectionState.Open Then con.Close() End If con.Close() Return con End Function End Class
Formularios: FrmProducto
FrmCategoria
Imports Entidades Imports Negocio Public Class FrmProducto Dim objCategoria As List(Of Categoria) Dim objCategoriaNE As CategoriaNE Dim objProductoNE As New ProductoNE Private Sub FrmProducto_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load Dim objProductoNE1 As ProductoNE objProductoNE1 = New ProductoNE dgvProducto.DataSource = objProductoNE1.listarProductos ConfigurarDataGrid() BuscarProductos(1) cargarCategorias() HabilitarCajas(False) habilitarBotones(True, False, False, False) End Sub Private Sub btnNuevo_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnNuevo.Click cargarCategorias() Me.txtcodigo.Text = objProductoNE.CodProducto limpiar_cajas() End Sub Private Sub btnGrabar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnGrabar.Click Nuevo_Producto() End Sub
Private Sub btnActualizar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnActualizar.Click actualizarProductos() End Sub Private Sub btnCancelar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnCancelar.Click cancelar_producto() cargarCategorias() End Sub Private Sub btnBuscar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnBuscar.Click Dim objProductoNE As ProductoNE objProductoNE = New ProductoNE Dim objProductoE As New Producto Dim codigo As Integer = CInt(InputBox("Ingrese Cdigo Producto")) BuscarProductos(codigo) End Sub Sub cargarCategorias() Dim producto1 As New Producto objCategoria = New List(Of Categoria) objCategoriaNE = New CategoriaNE objCategoria = objCategoriaNE.listarCategorias cboCategoria.DataSource = Nothing cboCategoria.DataSource = objCategoria cboCategoria.DisplayMember = "NombreCategoria" cboCategoria.ValueMember = "idCategoria" End Sub Sub limpiar_cajas() HabilitarCajas(True) LimpiarCajas() habilitarBotones(False, True, False, True) Dim objProductoNE = New ProductoNE Me.txtcodigo.Text = objProductoNE.CodProducto() End Sub Sub Nuevo_Producto() Dim objProductoE = New Producto Dim objProductoNE = New ProductoNE objProductoE.idProducto = CInt(txtcodigo.Text) objProductoE.DescripcionProducto = txtDescripcion.Text objProductoE.PrecioProducto = txtprecio.Text objProductoE.idCategoriaProducto = cboCategoria.SelectedValue objProductoE.StockProducto = txtStock.Text Dim salida As String = objProductoNE.AgregarProducto(objProductoE) MsgBox(salida) dgvProducto.DataSource = objProductoNE.listarProductos habilitarBotones(True, False, False, False) HabilitarCajas(False) End Sub Sub actualizarProductos() If txtcodigo.Text <> "" Then Dim objProductoE = New Producto Dim objProductoNE = New ProductoNE objProductoE.idProducto = CInt(txtcodigo.Text) objProductoE.DescripcionProducto = txtDescripcion.Text objProductoE.PrecioProducto = txtprecio.Text objProductoE.idCategoriaProducto = cboCategoria.SelectedValue objProductoE.StockProducto = txtStock.Text Dim salida As String = objProductoNE.ActualizarProducto(objProductoE) MsgBox(salida) dgvProducto.DataSource = objProductoNE.listarProductos Else MsgBox("Ingrese los datos para actualizar")
End If habilitarBotones(True, False, False, False) HabilitarCajas(False) End Sub Sub cancelar_producto() BuscarProductos(1) HabilitarCajas(False) habilitarBotones(True, False, False, False) End Sub Private Sub dgvProductos_CellClick(ByVal sender As Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles dgvProducto.CellClick If dgvProducto.Rows.Count > 0 Then Dim dgvFila As DataGridViewRow = Me.dgvProducto.CurrentRow() Me.txtcodigo.Text = dgvFila.Cells(0).Value Me.txtDescripcion.Text = dgvFila.Cells(1).Value Me.txtprecio.Text = dgvFila.Cells(2).Value Me.txtStock.Text = dgvFila.Cells(3).Value Me.cboCategoria.Text = dgvFila.Cells(4).Value Else MsgBox("No hay ningun registro seleccionado") End If habilitarBotones(False, False, True, True) HabilitarCajas(True) End Sub Sub LimpiarCajas() Me.txtcodigo.Clear() Me.txtDescripcion.Clear() Me.txtprecio.Clear() 'Me.cboCategoria.DataSource = Nothing Me.txtStock.Clear() End Sub Sub HabilitarCajas(ByVal estado) Me.txtcodigo.Enabled = False Me.txtDescripcion.Enabled = estado Me.txtprecio.Enabled = estado Me.cboCategoria.Enabled = estado Me.txtStock.Enabled = estado Me.txtDescripcion.Focus() End Sub Sub ConfigurarDataGrid() dgvProducto.RowsDefaultCellStyle.BackColor = Color.LightYellow dgvProducto.AlternatingRowsDefaultCellStyle.BackColor = Color.LightGreen End Sub Sub habilitarBotones(ByVal btnnuevo As Boolean, ByVal btnAgregar As Boolean, ByVal btnActualizar As Boolean, ByVal btncancelar As Boolean) Me.btnNuevo.Enabled = btnnuevo Me.btnGrabar.Enabled = btnAgregar Me.btnActualizar.Enabled = btnActualizar Me.btnCancelar.Enabled = btncancelar End Sub Sub BuscarProductos(ByVal codigo As Integer) Dim objProductoNE As ProductoNE objProductoNE = New ProductoNE Dim objProductoE As New Producto Dim idProducto As Integer idProducto = objProductoNE.CodProducto() - 1 If codigo > idProducto Then MsgBox("Registros no encontrado") Else objProductoE = objProductoNE.listarProducto(codigo)
Me.txtcodigo.Text = objProductoE.idProducto Me.txtDescripcion.Text = objProductoE.DescripcionProducto Me.txtprecio.Text = objProductoE.PrecioProducto ' cboCategoria.DataSource = Nothing Me.cboCategoria.Text = objProductoE.idCategoriaProducto Me.txtStock.Text = objProductoE.StockProducto End If habilitarBotones(False, False, True, True) HabilitarCajas(True) End Sub End Class
Formulario: FrmCategoria
Imports Entidades Imports Negocio Public Class FrmCategoria Private Sub FrmCategoria_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load Dim objCategoriaNE1 As CategoriaNE objCategoriaNE1 = New CategoriaNE dgvCategoria.DataSource = objCategoriaNE1.listarCategorias ConfigurarDataGrid() BuscarCategorias(1) HabilitarCajas(False) habilitarBotones(True, False, False, False) End Sub Private Sub btnNuevo_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnNuevo.Click Limpiar_Categoria() End Sub Private Sub btnGrabar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnGrabar.Click Nueva_Categoria() End Sub Private Sub btnActualizar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnActualizar.Click actualizar_Categorias() End Sub Private Sub btnCancelar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnCancelar.Click Cancelar_Categoria() End Sub Private Sub btnBuscar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnBuscar.Click Buscar_Categoria() End Sub Sub LimpiarCajas() Me.txtCodigo.Clear() Me.txtNombre.Clear() Me.txtdescripcion.Clear() End Sub Sub HabilitarCajas(ByVal estado) Me.txtCodigo.Enabled = False Me.txtNombre.Enabled = estado Me.txtDescripcion.Enabled = estado Me.txtNombre.Focus() End Sub
Sub ConfigurarDataGrid() dgvCategoria.RowsDefaultCellStyle.BackColor = Color.LightYellow dgvCategoria.AlternatingRowsDefaultCellStyle.BackColor = Color.LightGreen End Sub Sub habilitarBotones(ByVal btnnuevo As Boolean, ByVal btnAgregar As Boolean, ByVal btnActualizar As Boolean, ByVal btncancelar As Boolean) Me.btnNuevo.Enabled = btnnuevo Me.btnGrabar.Enabled = btnAgregar Me.btnActualizar.Enabled = btnActualizar Me.btnCancelar.Enabled = btncancelar End Sub Sub Limpiar_Categoria() HabilitarCajas(True) LimpiarCajas() habilitarBotones(False, True, False, True) Dim objCategoriaNE = New CategoriaNE Me.txtCodigo.Text = objCategoriaNE.CodCategoria() End Sub Sub Nueva_Categoria() Dim objCategoriaE = New Categoria Dim objCategoriaNE = New CategoriaNE objCategoriaE.idCategoria = CInt(txtCodigo.Text) objCategoriaE.NombreCategoria = txtNombre.Text objCategoriaE.DescripcionCategoria = txtdescripcion.Text Dim salida As String = objCategoriaNE.AgregarCategoria(objCategoriaE) MsgBox(salida) dgvCategoria.DataSource = objCategoriaNE.listarCategorias habilitarBotones(True, False, False, False) HabilitarCajas(False) End Sub Sub actualizar_Categorias() If txtCodigo.Text <> "" Then Dim objCategoriaE = New Categoria Dim objCategoriaNE = New CategoriaNE objCategoriaE.idCategoria = CInt(txtCodigo.Text) objCategoriaE.NombreCategoria = txtNombre.Text objCategoriaE.DescripcionCategoria = txtdescripcion.Text Dim salida As String = objCategoriaNE.ActualizarCategoria(objCategoriaE) MsgBox(salida) dgvCategoria.DataSource = objCategoriaNE.listarCategorias Else MsgBox("Ingrese los datos para actualizar") End If habilitarBotones(True, False, False, False) HabilitarCajas(False) End Sub Sub Cancelar_Categoria() BuscarCategorias(1) HabilitarCajas(False) habilitarBotones(True, False, False, False) End Sub Sub BuscarCategorias(ByVal codigo As Integer) Dim objCategoriaNE As CategoriaNE objCategoriaNE = New CategoriaNE Dim objCategoriaE As New Categoria Dim idCategoria As Integer idCategoria = objCategoriaNE.CodCategoria() - 1 If codigo > idCategoria Then MsgBox("Registros no Encontrado") Else objCategoriaE = objCategoriaNE.listarCategoria(codigo) Me.txtCodigo.Text = objCategoriaE.idCategoria
Me.txtNombre.Text = objCategoriaE.NombreCategoria Me.txtdescripcion.Text = objCategoriaE.DescripcionCategoria End If habilitarBotones(False, False, True, True) HabilitarCajas(True) End Sub Sub Buscar_Categoria() Dim objCategoriaNE As CategoriaNE objCategoriaNE = New CategoriaNE Dim objCategoriaE As New Categoria Dim codigo As Integer = CInt(InputBox("Ingrese Cdigo Categoria")) BuscarCategorias(codigo) End Sub Private Sub dgvCategoria_CellClick(ByVal sender As Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles dgvCategoria.CellClick If dgvCategoria.Rows.Count > 0 Then Dim dgvFila As DataGridViewRow = Me.dgvCategoria.CurrentRow() Me.txtCodigo.Text = dgvFila.Cells(0).Value Me.txtNombre.Text = dgvFila.Cells(1).Value Me.txtdescripcion.Text = dgvFila.Cells(2).Value Else MsgBox("No hay ningun registro seleccionado") End If habilitarBotones(False, False, True, True) HabilitarCajas(True) End Sub
End Class
Opciones: Nuevo: Clic en el botn nuevo, y nos genera automticamente el cdigo del nuevo producto, procedemos a ingresar los datos del producto y seleccionamos la categora:
Grabar: Despus de haber ingresado los datos, hacemos clic en el botn Grabar, y observamos que el registro fue guardado con xito.
Actualizar: Para Actualizar tenemos dos opciones, respecto al registro a modificar, podemos seleccionar el DataGridView, o realizar la bsqueda por el cdigo del producto que deseamos modificar. Actualizamos los datos del producto de cdigo 7.
Cancelar: Sirve para deshacer alguna accin que no estamos seguros de hacerlo.
Por ejemplo ac intentamos modificar los datos pero abortamos dicha accin por lo tanto cancelamos y nos muestra el primer registro.
Ahora ya podemos actualizar los datos del producto. Si este existiera en la base de datos. 3. Men Mantenimiento: Opcin Categora
Grabar: Hacemos clic en grabar, para registrar la nueva categora en la base de datos.
Actualizar: Ahora es parecido al proceso que se realiza para el producto, en este caso vamos actualizar los datos de la categora de cdigo 4: