Practica A - Acceso A Datos Con
Practica A - Acceso A Datos Con
1.4. En la ventana del explorador de soluciones seleccionar el archivo frmListaCategorias, hacer clic
derecho y seleccionar Ver código
1.5. En la parte superior del código (antes de la clase) definir el NameSpace del proveedor de SQL:
Import System.Data.SqlClient
1.6. Codificamos el procedimiento en el evento “Load” del formulario. Así debe quedar el código
Private Sub Form1_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles
MyBase.Load
'Declaramos un variable del tipo SqlConnection pasando como parametro
'la cadena de conexion
Dim con As New SqlConnection("uid=sa;server=IDAT10;database=NorthWind")
'Declaramos una variable del tipo SqlDataAdapter pasando como parametros
'instrucción sql y la conexion usada
Dim dap As New SqlDataAdapter("Select CategoryID, CategoryName From Categories",
con)
'Declaramos una variable tipo DataSet
Dim dst As New DataSet
'Ejecutamos la instrucción Select mediante el métdo Fill del SqlAdapterpasando como
'parametros el DataSet y el nombre de la tabal del DataSet
dap.Fill(dst, "Categories")
dgdCategoria.DataSource = dst.Tables(0)
End Sub
2.4. En la ventana del explorador de soluciones seleccionar el archivo frmListaDetallesOrden, hacer clic
derecho y seleccionar Ver código
2.5. En la parte superior del código (antes de la clase) definir el NameSpace del proveedor de SQL:
Import System.Data.SqlClient
2.6. Codificamos el procedimiento en el evento “Load” del formulario. Así debe quedar el código.
Private Sub frmListaDetallesOrden_Load(ByVal sender As Object, ByVal e As
System.EventArgs) Handles MyBase.Load
Dim con As New SqlConnection("uid=sa;pwd=123456;server=INFO1;database=Northwind")
'Declaramos una variable del tipo SqlDataAdapter pasando como parametros
'instrucción sql y la conexion usada
Dim dap As New SqlDataAdapter("", con)
'Declaramos una variable tipo DataSet
Dim dst As New DataSet
'Modifica la propiedad CommanText del objeto SelectCommand del SqlDataAdapter
'para escribir el primer comando
dap.SelectCommand.CommandText = "Select OrderID, OrderDate,EmployeeID From Orders"
'Ejecuta la instrucción Select mediante el método Fill del SqlDataAdapter pasando
como
'parametros el Data Set y el nombre de la primera tabla
dap.Fill(dst, "Ordenes")
'Modifica la propiedad CommanText del objeto SelectCommand del SqlDataAdapter
'para escribir el primer comando
dap.SelectCommand.CommandText = "Select OrderID, ProductID,UnitPrice From [Order
Details]"
'Ejecuta la instrucción Select mediante el método Fill del SqlDataAdapter pasando
como
'parametros el Data Set y el nombre de la segunda tabla
dap.Fill(dst, "Detalles")
'Declara una variable del tipo DataRelation pasando 3 parametros, primero el nombre
de la relacion,
'segundo la columna en la tabla padre y tercero la columna hija
Dim drn As New DataRelation("Detalles_Orden", dst.Tables(0).Columns(0),
dst.Tables(1).Columns(0))
'Agrega la realación creada al DataSet, mediante el método Add de la colección
Relations
dst.Relations.Add(drn)
'Enlaza la tabla padre al DataGrid
dgdDetallesOrden.DataSource = dst.Tables(0)
'El método Expand permite expander el nodo con el índice de la fila especificada
dgdDetallesOrden.Expand(0)
End Sub
2.7. Investigue:
2.7.1. Clase DataRelacion, Propiedades
3. MANTENIMIENTO DE UNA TABLA DEL DATASET: Esta demostración tiene por objetivo
enseñar a realizar mantenimiento en una tabla del DataSet y luego enviar los cambios realizados por
lotes (Batch)
3.1. Crear un Aplicación Windows en Visual Basic.Net llamada Demo47
3.2. En la ventana del exploradro de soluciones seleccionar el archivo Form1 y en la ventana de
propiedades cambiar la propiedad FileName a frmListaEmpleados
3.3. En el diseñador de forumularios Windows, arrastrar un control DataGrid y 4 Buttons, luego
configurar las propiedades, tal como se muestra en el siguiente cuadro.
Tag 1
Text Nuevo
Button2 Name btnEditar
Cursor Hand
Location X=78, Y=238
Size Width=60, Height=23
Tag 1
Text Nuevo
Button3 Name btnEliminar
Cursor Hand
Location X=14, Y=238
Size Width=60, Heght=23
Tag 3
Text Eliminar
Button4 Name btnEnviarCambios
Cursor Hand
Location X=202, Y=238
Size Width=100, Height=23
Text Enviar Cambios
3.4. Agregar un segundo formulario al proyecto “Project” seleccionar “AddWindowsForm” y escribir
como nombre frmManteEmpleado, luego clic en “Open”
3.5. En el diseñador de formularios Windows, arrastrar un control GroupBox y 2 Buttons, luego
configurar las propiedades, tal como se muestra en el siguiente cuadro.
Objeto Propiedad Valor
Form1 Name frmManteEmpleado
FormBorderStyle FixedSigle
MaximizeBox False
MinimizeBox False
Size Width=300, Height=300
StartPosition CenterScreen
Text
GroupBox1 Name grpEmpleado
Location X=16, Y =12
Size Width=290, Height=214
Text Datos del Empleado
Button1 Name btnAceptar
Cursor Hand
DialogResult Ok
Location X=16, Y=170
Size Width=75, Height=23
Text Aceptar
Button2 Name btnCancelar
Cursor Hand
DialogResult Cancel
Location X=196, Y=170
Size Width=75, Height=23
Text Cancelar
3.6. Sobre el grpEmpleado arrastrar 3 controles Label y 3 TextBox, configurando sus propiedades, tal
como se muestra en el siguiente cuadro:
3.7. Como la aplicación usa dos formularios donde se desea mantener datos, insertamos un módulo para
declarar variables. Del menú “Project” seleccionar “AddModule”, escribir como nombre
modEmpleado y clic en “Open”
3.8. Definir en el módulo las siguientes enumeraciones y variables públicas:
Module modEmpleado
Public dst As New DataSet()
Public pos As Integer
Public opera As Operacion
3.9. Regresar al primer formulario frmListaEmpleados y en ventana explorador de soluciones dar clic en
el boton “View Code”
3.10. En la parte superior del código (antes de la clase) definir el NameSpace del provedor de SQL:
Imports System.Data.SqlClient
3.11. Definir la variables a nivel de la clase
3.12. Crear el procedimiento ListarEmpleados, que ocurran en el evento “Load” del formulario y
escribir el siguiente codigo
3.13. Crear un procedimiento de evento llamado MostrarDetalle que muestre el segundo formulario
al ocurrir el evento “Click” sobre los botones “btnNuevo”, “btnEditar”, “btnEliminar”
3.14. Crear un procedimiento de evento llamado EnviarCambios que envie todos los cambios
desde la tabla hacia la base de datos, este debe ocurrir en el evento “Clic” del botón
“btnEnviarCambios”
3.17. Crear otro procedimiento general llamado MostrarEmpleado que permita mostrar en los
cuadros de texto los datos de los empleados en el primer formulario, de acuerdo a la posición pos
Private Sub MostrarEmpleado()
With dst.Tables(0).Rows(pos)
txtCodigo.Text = .Item(0)
txtApellido.Text = .Item(1)
txtNombre.Text = .Item(2)
End With
End Sub
3.18. Crear el procedimiento de evento MostrarDatos, que ocurran en el evento “Load” del
formulario que permita representar un dialogo distinto dependiendo de la operación elegida (opera)