Beruflich Dokumente
Kultur Dokumente
Este ejemplo nos muestra un Formulario de Pedido usando LINQ, por cuestiones
de Documentación, es posible que NO ESTE USANDO CORRECTAMENTE todo el
potencial de LINQ, asi que espero sugerencias para mejoras, asi mismo debo
decirles que hago un abuso de métodos a nivel de formulario las cuales estarían
mejor dentro de clases pero creo que para un inicio esto esta bien y cumple con su
objetivo.
Obviamente los Tipos de Datos funciones y demas, estan dentro del archivo para
descargar, asi que no se preocupen, por cierto me olvidaba, estoy usando Ms SQL
Server Express.
Agregando el Objeto LINQ to SQL
Lo primero que debemos hacer es presionar la siguiente combinacion de teclas
Ctrl + Shift + A, inmediatamente nos aparecera la siguiente ventana en la cual
seleccionaremos la opcion el Elemento LINQ to SQL classes, a la cual le
pondremos de nombre "bdVentasLinq.dbml".
Module mensajes
Public Sub msginformacion(ByVal mensaje As String)
MessageBox.Show(mensaje, "Sis. Ventas", MessageBoxButtons.OK, _
MessageBoxIcon.Information)
End Sub
End Module
Diseñando el Programa
Diseño del Formulario de Busqueda de Clientes
Ya sabemos que debemos presionar Ctrl + Shift + A, y acontinuacion agregamos
un elemento Dialog y le ponemos de nombre frmClientes, el cual luego de
agregar los siguientes controles.
1 DataGridView
1 Label
1 TextBox
No menciono los 2 Button ya que etos viene por defecto en el Objeto Dialog,
luego de agregados los controles deberia quedar algo asi...
Codificando Nuestro Formulario frmClientes
DataContext:
Se encarga de traducir las peticiones de objetos en consultas SQL (ver el
esquema de la arquitectura de LINQ) y devolver los resultados como
objetos.
Imports System.Windows.Forms
1 DataGridView
1 Label
1 TextBox
No menciono los 2 Button ya que etos viene por defecto en el Objeto Dialog,
luego de agregados los controles deberia quedar algo asi...
Codificando Nuestro Formulario frmClientes
Imports System.Windows.Forms
6 TextBox
6 Label
1 DataGridView
8 Button
Me.txtNombreProducto.Text = query.ToList.Item(0).Modelo.ToString
Me.txtPrecioProducto.Text =
query.ToList.Item(0).pre_arti.ToString("C")
nombreArticulo = query.ToList.Item(0).Modelo.ToString
idArticulo = query.ToList.Item(0).IdArticulo.ToString
precioArticulo =
Convert.ToDouble(query.ToList.Item(0).pre_arti.ToString)
stockArticulo =
Convert.ToInt32(query.ToList.Item(0).stock_arti.ToString)
txtCantidad.Focus()
Else
mensajes.msginformacion("No ha seleccionado Ningun Producto")
Me.txtNombreProducto.Text = ""
Me.txtPrecioProducto.Text = ""
nombreArticulo = ""
idArticulo = ""
precioArticulo = ""
End If
End Sub
Sub limpiar_producto()
'Metodo para limpiasr TextBox
Me.txtCantidad.Clear()
Me.txtNombreProducto.Clear()
Me.txtPrecioProducto.Clear()
End Sub
Sub calcular_total()
'Metodo para Calcular El Total del Pedido
Dim sum As Double
For Each i As clsDetalleVenta In ArrDetVta
sum += i._subtotal
Next
Me.txtTotal.Text = sum.ToString("C")
End Sub
Sub limpiar_cliente()
'Metodo para limpiar los textBox Asociados al Cliente
Me.txtDNI.Clear()
Me.txtNombre.Clear()
End Sub
Sub limpiar_venta()
'Limpiamos el LIST usando su Metodo CLEAR
ArrDetVta.Clear()
'Vovlemos a Asociar nuestro LIST como origen de Datos del
DataGridView
Me.DataGridView1.DataSource = ArrDetVta.ToList
End Sub