Você está na página 1de 24

PROGRAMA HECHO EN VISUAL STUDIO 2010 CON CONEXIN A SQL

2012

I.E.S.T.P JOS PARDO

MANUAL PROGRAMA EN V.NET

ENCISO CHANG, CHRISTIAN EDUARDO

INTRODUCCION
El siguiente trabajo es sobre un programa realizado en Microsoft Visual Studio 2010 con una conexin a una base de datos alojada en SQL Server Management Studio 2012. Programando con el lenguaje visual basic.net. La siguiente elaboracin es sobre la explicacin de este programa, sus funcionalidades, caractersticas, cdigo del programa y el script de la base de datos alojada en SQL Server.

FUNCIONALIDAD
A continuacin las capturas de pantalla del programa y sus caractersticas, explicando en cada imagen sus funcionalidades:

Computacin e Informtica III

I.E.S.T.P JOS PARDO

MANUAL PROGRAMA EN V.NET

Pantalla de bienvenida del programa donde se puede apreciar a travs de una barra de progreso cmo el programa est cargando todos los datos, al llegar la barra de progreso a un 100% se abrir la siguiente ventana:

Ventana principal de nuestro programa en donde se alojaran los dems formularios, esta ventana tiene la caracterstica de minimizarse, maximizarse y cerrarse, podemos observar que el ttulo de la ventana es TIENDA DE DON JOS.

En la parte superior izquierda de la ventana anterior observamos que hay un men desplegable, el cual nos ofrece las siguientes opciones.

Computacin e Informtica III

I.E.S.T.P JOS PARDO

MANUAL PROGRAMA EN V.NET

La primera opcin o men llamado PRODUCTOS, el siguiente; CLIENTES, y por ltimo la opcin SALIR.

Computacin e Informtica III

I.E.S.T.P JOS PARDO

MANUAL PROGRAMA EN V.NET

De la primera opcin de nuestro men; PRODUCTO, nos saldr la ventana llamada REGISTRO DE PRODUCTOS, en dnde; como su mismo nombre lo dice, vamos a pasar a registrar los productos que ingresaremos a nuestra base de datos; podemos apreciar diversas herramientas como son cajas de texto, botones, combobox, Radiobutton entre otros

Computacin e Informtica III

I.E.S.T.P JOS PARDO

MANUAL PROGRAMA EN V.NET

En la tercera opcin de nuestro men aparecer un pequeo mensaje de texto el cual nos pregunta si queremos salir de la aplicacin y nos da la opcin S y la opcin No.

MATERIALES
Para realizar el siguiente trabajo requerimos lo siguiente: Tener instalado Microsoft Visual Studio 2010 (existe tambin la posibilidad de tener otras versiones, se recomienda versiones posteriores). Tener instalado SQL Server Management Studio 2012, al igual que el Visual Studio se da la posibilidad de otras versiones. Conexin a Internet, no es indispensable.

PROGRAMANDO
Para comenzar a realizar nuestro programa empezaremos por crear nuestra base de datos en SQL en donde realizaremos lo siguiente: 1. PASO: Abriremos nuestro SQL Server, en la barra superior de herramientas pondremos NEW QUERY, para crear una nueva consulta:

2. PASO: A continuacin en nuestra nueva consulta escribiremos los siguientes cdigos:

Computacin e Informtica III

I.E.S.T.P JOS PARDO

MANUAL PROGRAMA EN V.NET

Como solo vamos a acoplar tres tablas ms a nuestra base de datos comenzaremos por poner en uso nuestra BD llamada PARDITO y agregaremos otras tablas:

USE pardito ---------------------CREAMOS TRES TABLAS MS----------------------------TABLA DISTRITO

Creamos la tabla DISTRITO la cual va a tener los campos iddis el cual es el cdigo del distrito que solo admitir un mximo de 4 letras y ser llave primaria, el segundo campo ser nomdis que es el nombre del distrito, campo que admitir un mximo de 25 letras
if exists (select*from sysobjects where type = 'u' and name = 'distritos') drop table distritos go create table distritos (iddis char(4) primary key, nomdis varchar(25)) go ------TABLA PROVEEDORES

Creamos la tabla PROVEEDORES la cual va a tener los campos codpro el cual es el cdigo del proveedor que solo admitir un mximo de 5 letras y ser llave primaria, el segundo campo ser nompro que es el nombre del proveedor, campo que admitir un mximo de 30 letras, el tercer campo es el cdigo de distrito dato que jalara de la tabla distrito ya creada, por ello lo creamos como llave fornea y, el ultimo campo telpro que es el telfono del proveedor
if exists (select*from sysobjects where type = 'u' and name = 'proveedores') drop table proveedores go create table proveedores (codpro char(5) primary key, nompro varchar(30), iddis char(4) foreign key references distritos, telpro char(10)) go ------TABLA PRODUCTOA

Creamos la tabla PRODUCTOA la cual va a tener los campos cod el cual es el cdigo del producto que solo admitir un mximo de 8 letras y ser llave primaria, el segundo campo ser nom que es el nombre del producto, campo que admitir un mximo de 30 letras, le sigue el campo precioc que es precio costo, luego marca de tipo varchar(20) y codpro el cual se jala el dato de la tabla proveedores a travs de un foreign key.
if exists (select*from sysobjects where type = 'u' and name = 'productoA')

Computacin e Informtica III

I.E.S.T.P JOS PARDO

MANUAL PROGRAMA EN V.NET

drop table productoA go create table productoA (cod char(8) primary key, nom varchar(30), precioc decimal(10,2), marca varchar(20), codpro char(5) foreign key references proveedores) go ------TABLA PRODUCTOB

Creamos la tabla PRODUCTOB la cual va a tener los campos COD el cual es el cdigo del producto que ser llave fornea de la tabla PRODUCTOA, el segundo campo ser detalle que es el detalle del producto, campo que admitir un mximo de 30 letras, luego la cantidad del producto, el margen de tipo decimal que admite como mximo 10 enteros y 2 decimales, presentacin que es el tipo de presentacin del producto y por ltimo, la fecha de ingreso del producto de tipo date.
if exists (select*from sysobjects where type = 'u' and name = 'productoB') drop table productoB go create table productoB (cod char(8) foreign key references productoA on delete cascade, detalle varchar(30), cantidad int, preciov decimal(10,2) null, margen decimal(10,2), presentacion VARCHAR(20), fecha date) go

OBSERVACION 1:
if exists (select*from sysobjects where type = 'u' and name = 'ZZZ') drop table productoB go create table zzz go

El cdigo de arriba nos indica que realiza una bsqueda de una tabla llamada ZZZ en el sysobjects (son todos los objetos dentro de la BASE DE DATOS) si esta tabla ya existe que la elimine, sino que la cree OBSERVACION 2:
cod char(8) foreign key references productoA on delete cascade,

El cdigo de arriba nos indica que realiza un borrado en cascada para que a la hora de hacer un procedimiento de eliminado podamos eliminar registros en ambas tablas relacionadas

Computacin e Informtica III

I.E.S.T.P JOS PARDO

MANUAL PROGRAMA EN V.NET

---------------------PROCEDIMIENTOS------------------------------DISTRITOS

Procedimiento que ingresa registros dentro de la tabla DISTRITOS a travs de alias como @iddis y @nomdis
create procedure ingresard @iddis char(4), @nomdis varchar(25) as insert into distritos values(@iddis,@nomdis) return go

Procedimiento que muestra todos los datos de la tabla DISTRITOS.


create procedure verd as select*from distritos return go --------PROVEEDORES

Procedimiento que ingresa registros dentro de la tabla PROVEEDORES a travs de alias.


create procedure ingresarpro @codpro char(5), @nompro varchar(30), @iddis char(4), @telpro char(10) as insert into proveedores values (@codpro,@nompro,@iddis,@telpro) return go

Procedimiento que muestra todos los datos de la tabla PROVEEDORES


create procedure verpro as select*from proveedores return go ----------PRODUCTOS

Procedimiento que ingresa registros dentro de las tablas PRODUCTOA y PRODUCTOB


create procedure ingresar_productos

Computacin e Informtica III

I.E.S.T.P JOS PARDO

MANUAL PROGRAMA EN V.NET

@cod char(8), @nom varchar(30), @precioc decimal(10,2), @marca varchar(20), @codpro char(5), @detalle varchar(30), @cantidad int, @preciov decimal(10,2) null, @margen decimal(10,2), @presentacion VARCHAR (20), @fecha date as begin insert into productoA values (@cod, @nom, @precioc, @marca, @codpro) insert into productoB values (@cod, @detalle, @cantidad, @preciov, @margen, @presentacion,@fecha) end return go

Procedimiento que elimina registros de las tablas PRODUCTOA y PRODUCTOB en donde recibir un parmetro para compararlo con el campo cod de PRODUCTOA y pasara a eliminar dicho registro si ambos coinciden, tanto el parmetro ingresado como el campo cod; solo en necesario hacer referencia a PRODUCTOA ya que en PRODUCTOB declaramos a el campo cod como on delete cascade
create procedure eliminar_p @cod char(8) as begin delete from productoA where @cod = cod end go

Procedimiento que nos muestra todos los datos de las tablas PRODUCTOA y PRODUCTOB.
create procedure ver_productos as select a.cod,a.nom,b.cantidad,a.precioc,b.preciov,b.presentacion,a.marca from productoA a inner join productoB b on a.cod = b.cod return go

Procedimiento que sirve para actualizar los registros de las tablas PRODUCTOA y PRODUCTOB a travs de alias.
create procedure modificar_pro1

Computacin e Informtica III

10

I.E.S.T.P JOS PARDO

MANUAL PROGRAMA EN V.NET

@cod char(8), @nom varchar(30), @precioc decimal(10,2), @marca varchar(20), @codpro char(5), @detalle varchar(30), @cantidad int, @preciov decimal(10,2), @margen decimal(10,2), @presentacion VARCHAR (20), @fecha date as begin update productoA set cod = @cod,nom = @nom, precioc = @precioc,marca = @marca, codpro = @codpro where cod = @cod update productoB set cod = @cod, detalle = @detalle, cantidad = @cantidad, margen = @margen, presentacion = @presentacion, fecha = @fecha, preciov = @preciov where cod = @cod end return go

Procedimiento que sirve para buscar algn producto por su cdigo, cdigo que el usuario ingresara.
create procedure buscar_pro @busca char(8) as select a.cod,a.nom,b.cantidad,a.precioc,b.preciov,b.presentacion,a.marca from productoA a inner join productoB b on a.cod = b.cod and a.cod = @busca return go

3. Luego de haber hecho todo el cdigo en nuestro query, y de haber, claro est, restaurado nuestra base de datos; pasamos a ejecutar todo nuestro query.

Computacin e Informtica III

11

I.E.S.T.P JOS PARDO

MANUAL PROGRAMA EN V.NET

4. Despus de haber ejecutado todo nuestro cdigo correctamente. Pasaremos a programar; para ello debemos abrir nuestro VISUAL STUDIO.

5. Pasamos a crear un nuevo proyecto y a ponerle el nombre deseado y a guardarlo en donde queramos. 6. A g r e g a r e m o

Computacin e Informtica III

12

I.E.S.T.P JOS PARDO

MANUAL PROGRAMA EN V.NET

s a nuestro proyecto un mdulo llamado CONEXIN, en el cual tipearemos el siguiente cdigo, el cual nos servir para conectarnos a nuestra BD alojada en SQL Server.

CODIGO:
*Importamos las libreras que necesitamos
Imports System.Data Imports System.Data.SqlClient Module CONEXION

*Creamos una variable SqlClient.Sqlconnection

pblica

llamada

CONECTAR

de

tipo

Public CONECTAR As New SqlClient.SqlConnection *Creamos un procedimiento llamado CONECTARBD el cual nos servir para poder conectarnos a nuestra BD en SQL Server Public Sub CONECTARBD() *Si el estado de nuestra conexin es cerrado entonces a travs de un .ConnectionString asignamos todos los datos de la BD a la cual se va a dirigir para abrirla. En nuestro caso la BD se llama PARDITO, nuestro Uid (usuario) es lucerito y nuestro password es 123456. If CONECTAR.State = ConnectionState.Closed Then CONECTAR.ConnectionString = "Server=(local); Database=PARDITO; Uid=lucero; password=123456;" "MultipleActiveResultSets=true"

*Pasamos a abrir nuestra conexin. CONECTAR.Open() *Si ahora el estado de nuestra conexin es abierto, entonces lanzamos una caja de mensaje que nos diga CONEXIN ESTABLECIDAD, de lo contrario que nos bote una caja de texto diciendo ERROR AL CONECTAR If CONECTAR.State = ConnectionState.Open Then MsgBox("Conexion establecida") Else MsgBox("Error al conectar ") End If End If End Sub

Computacin e Informtica III

13

I.E.S.T.P JOS PARDO

MANUAL PROGRAMA EN V.NET

*Creamos el procedimiento DESCONECTARBD el cual nos servir para cerrar la conexin con nuestra BD Public Sub desconectarbd() *Al tratar de salir de la aplicacin nos aparecer una caja de texto preguntndonos si queremos salir de la aplicacin, y nos da dos opciones con un botn SI y con otro botn NO. If MessageBox.Show("QUIERE SALIR DE LA APLICACION", "TIENDA DON JOSE", MessageBoxButtons.YesNo, MessageBoxIcon.Question) = DialogResult.Yes Then *Si nuestra eleccin fue el botn SI el estado de nuestra conexin est abierto pasamos a cerrarlo. If CONECTAR.State = ConnectionState.Open Then CONECTAR.Close() *Si despus de cerrar la conexin nuestra conexin est cerrada lanzaremos un mensaje de texto dicindonos CONEXIN CERRADA CON EXITO, de lo contrario nos lanzara un mensaje de texto dicindonos NO SE LOGRO UNA CONEXION If CONECTAR.State = ConnectionState.Closed Then MsgBox("CONEXION CERRADA CON EXITO") End If Else : MsgBox("NO SE LOGRO UNA CONEXION") End If *Al salir nos saldr un pitido y saldremos de la aplicacin. Beep() Application.Exit() End If End Sub End Module

OBSERVACION 1:

"MultipleActiveResultSets=true"

El cdigo de arriba sirve para la habilitacin de varios conjuntos de resultados activos dentro de nuestra BD, como los DATAREADER y para evitar algn problema o error usamos este cdigo.

Computacin e Informtica III

14

I.E.S.T.P JOS PARDO

MANUAL PROGRAMA EN V.NET

7. Al crear nuestro proyecto nos aparece un formulario llamado form1, lo utilizaremos para que sea nuestro formulario principal en el cual cambiaremos algunas caractersticas. En primer lugar pasaremos a integrar un MenuStrip, luego en nuestra barra de propiedades buscaremos la propiedad IsMdiContainer en true.

8. Agregamos a nuestro Menustrip1 un ttulo MENU, luego en la barra despegable pondremos PRODUCTOS, CLIENTES, SALIR.

Computacin e Informtica III

15

I.E.S.T.P JOS PARDO

MANUAL PROGRAMA EN V.NET

9. Luego agregaremos un formulario ms y lo llamaremos PRODUCTOS.

10. Volvemos a nuestro formulario principal llamado Form1, en el modo grafico daremos doble clic en nuestro men PRODUCTOS, nos redirigir al modo cdigo, en donde escribiremos:
Private Sub PRODUCTOSToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles PRODUCTOSToolStripMenuItem.Click *Especificaremos que nuestro formulario actual es el formulario actual y que dentro de este aparecer el formulario PRODCUTOS PRODUCTOS.MdiParent = Me PRODUCTOS.Show() End Sub

Computacin e Informtica III

16

I.E.S.T.P JOS PARDO

MANUAL PROGRAMA EN V.NET

11. Repetiremos los pasos 9 y 10 pero ahora al formulario lo llamaremos CLIENTES y haremos doble clic en el men CLIENTES. 12. Luego en el evento Load de nuestro formulario llamaremos al procedimiento CONECTARBD creado en nuestro modulo CONEXIN. Adems asignaremos un ContextMenustrip a nuestro DatagridView Debe quedar as:
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load CONECTARBD() Me.DataGridView1.ContextMenuStrip = Me.ContextMenuStrip1 End Sub

13. Para terminar con nuestro formulario principal Form1 haremos doble clic en el men SALIR y llamaremos al mtodo DESCONECTARBD declarada en nuestro mdulo CONEXION.
Private Sub SALIRToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles SALIRToolStripMenuItem.Click desconectarbd() End Sub

14. Ya que acabamos con el Form1 comenzaremos a programar en el formulario PRODUCTOS. En el modo grafico empezaremos por agregar las siguientes herramientas y le daremos el siguiente formato.

Computacin e Informtica III

17

I.E.S.T.P JOS PARDO

MANUAL PROGRAMA EN V.NET

15. Empezaremos creando las siguientes variables para luego utilizarlas en todo el programa:
Dim INDICE As Integer Dim CONT As Integer = 1 Public DATO As String Dim tipopresentacion As String Dim monto, venta As Decimal

16. Pasaremos a crear una regin llamada MIO en donde crearemos los siguientes procedimientos.
#Region "MIO"

*Creamos el procedimiento nuevo en el cual limpiaremos todas las cajas de texto, y diremos que todos los Radiobutton no estn checados, adems daremos el enfoque al textbox1, que es la caja de texto de cdigo del producto.
Sub nuevo() TextBox1.Clear() TextBox2.Clear() TextBox3.Clear() TextBox4.Clear() TextBox5.Clear() TextBox6.Clear() TextBox7.Clear() TextBox8.Clear() RadioButton1.Checked = False

Computacin e Informtica III

18

I.E.S.T.P JOS PARDO

MANUAL PROGRAMA EN V.NET

RadioButton2.Checked RadioButton3.Checked RadioButton4.Checked RadioButton5.Checked ComboBox1.Text = "" TextBox1.Focus() End Sub

= = = =

False False False False

*Creamos otro procedimiento llamado tipopresent el cual nos indica que si seleccionamos un Radiobutton este retornara una cadena de texto a nuestra variable tipopresentacion y si se elige el Radiobutton que dice otros pues tomara el valor que escribamos en la caja de texto que est a su costado.
Sub tipopresent() If Me.RadioButton1.Checked Then tipopresentacion = "CAJA" End If If Me.RadioButton2.Checked Then tipopresentacion = "BOLSA" End If If Me.RadioButton3.Checked Then tipopresentacion = "BOTELLA" End If If Me.RadioButton4.Checked Then tipopresentacion = "GRANEL" End If If Me.RadioButton5.Checked Then tipopresentacion = Me.TextBox7.Text End If End Sub

*Creamos un ltimo procedimiento el cual nos mostrara los cdigos de los proveedores que tenemos en nuestra BD
Sub llenarcombo() Dim cD As New SqlCommand("verpro", CONECTAR) Dim daD As New SqlDataAdapter Dim dtD As New DataTable cD.CommandType = CommandType.StoredProcedure Try daD = New SqlDataAdapter(cD) daD.Fill(dtD) With Me.ComboBox2 .DataSource = dtD .DisplayMember = "codpro" End With Catch ex As Exception MsgBox(ex.Message) End Try End Sub

Computacin e Informtica III

19

I.E.S.T.P JOS PARDO

MANUAL PROGRAMA EN V.NET

#End Region

17. Retornaremos al modo grafico de nuestro formulario PRODUCTOS y haremos doble clic en nuestro botn y escribiremos el siguiente cdigo, que nos debe quedar as:
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click *Llamaremos al procedimiento nuevo declarado en nuestra regin para poder borrar las cajas de texto. nuevo() End Sub

18. Ahora daremos doble clic en nuestro botn salir para cerrar nuestra ventana PRODUCTOS, el cdigo es el siguiente:
Private Sub Button6_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button6.Click *Cerraremos la ventana actual y al salir realizara un pitido. Me.Dispose() Beep() End Sub

19. Continuando le daremos funcionalidad a nuestro botn VER, escribiremos el siguiente cdigo:
Private Sub Button7_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button7.Click

*Creamos una variable del tipo Sqlcommand la cual va a llamar el procedimiento ver declarado en nuestra BD y se le asignara de tipo StoredProcedure con la conexin CONECTAR, adems se crear un SqlDataAdapter (adaptador de datos de SQL), y un DataTable.
Dim CMDV As New SqlCommand Dim DA As New SqlDataAdapter Dim DT As New DataTable CMDV.CommandType = CommandType.StoredProcedure CMDV.CommandText = "ver_productos" CMDV.Connection = CONECTAR

*Decimos que el DataAdapter obtendr los datos de nuestro procedimiento almacenado.


DA = New SqlDataAdapter(CMDV)

Computacin e Informtica III

20

I.E.S.T.P JOS PARDO

MANUAL PROGRAMA EN V.NET

*Dentro de un try filtramos todos los datos del adaptador de datos a nuestro datatable, para luego mostrar nuestro datatable en nuestro datagridview1.
Try DA.Fill(DT) Me.DataGridView1.DataSource = DT

*En caso de algn error que nos salga un mensaje dicindonos el error.
Catch ex As Exception MsgBox(ex.Message) End Try End Sub

20. Continuaremos con el programa y comenzaremos a trabajar en nuestro datagridview1, en donde colocaremos los siguientes cdigos, en el evento MouseUp:
Private Sub DataGridView1_MouseUp(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles DataGridView1.MouseUp If (e.Button = System.Windows.Forms.MouseButtons.Right) Then Dim info As DataGridView.HitTestInfo info = Me.DataGridView1.HitTest(e.X, e.Y) If info.Type = DataGridViewHitTestType.Cell Then If info.RowIndex >= 0 Then INDICE = info.RowIndex Me.DataGridView1.CurrentCell = Me.DataGridView1.Rows(info.RowIndex).Cells(info.ColumnIndex) Me.DataGridView1.Rows(info.RowIndex).Selected = True While CONT = 1 Me.ContextMenuStrip1.Items.Add("Eliminar", Nothing, New EventHandler(AddressOf EliminarFila)) Me.DataGridView1.ContextMenuStrip = Me.ContextMenuStrip1 CONT = CONT + 1 End While End If End If End If End Sub

Computacin e Informtica III

21

I.E.S.T.P JOS PARDO

MANUAL PROGRAMA EN V.NET

21. Crearemos un procedimiento el cual utilizaremos en nuestro datagridview:


Private Sub EliminarFila(ByVal sender As Object, ByVal e As EventArgs) Dim i = DataGridView1.CurrentRow.Index DATO = DataGridView1.Item(0, i).Value If MessageBox.Show("Esta seguro de eliminar este registro?", "CONFIRMACION", MessageBoxButtons.YesNo, MessageBoxIcon.Question) = DialogResult.Yes Then Dim cDP As New SqlCommand("eliminar_p", CONECTAR) cDP.CommandType = CommandType.StoredProcedure Try cDP.Parameters.AddWithValue("@cod", DATO) cDP.ExecuteNonQuery() Me.DataGridView1.Rows.RemoveAt(INDICE) Catch ex As Exception End Try Else Return End If End Sub

22. Daremos funcionalidad al botn AGREGAR:


Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click venta = (Val(Me.TextBox5.Text) * Val(TextBox6.Text)) + Val(Me.TextBox5.Text) monto = Me.TextBox8.Text Dim cI As New SqlCommand("ingresar_productos", CONECTAR) Dim daI As New SqlDataAdapter Dim dsI As New DataSet Try ''---------------------COMANDO GUARDAR cI.CommandType = CommandType.StoredProcedure cI.Parameters.AddWithValue("@cod", TextBox1.Text) cI.Parameters.AddWithValue("@nom", TextBox2.Text) cI.Parameters.AddWithValue("@precioc", Val(TextBox5.Text)) cI.Parameters.AddWithValue("@marca", Me.ComboBox1.Text) cI.Parameters.AddWithValue("@codpro", Me.ComboBox2.Text) cI.Parameters.AddWithValue("@detalle", Me.TextBox3.Text) cI.Parameters.AddWithValue("@cantidad", Val(Me.TextBox4.Text)) cI.Parameters.AddWithValue("@preciov", venta) cI.Parameters.AddWithValue("@margen", Val(Me.TextBox6.Text)) cI.Parameters.AddWithValue("@presentacion", tipopresentacion) cI.Parameters.AddWithValue("@fecha", Me.DateTimePicker1.Value.ToShortDateString) cI.ExecuteNonQuery()

Computacin e Informtica III

22

I.E.S.T.P JOS PARDO

MANUAL PROGRAMA EN V.NET

Dim CMD1 As New SqlCommand Dim DA1 As New SqlDataAdapter Dim Ds1 As New DataTable CMD1.CommandText = ("ver_productos") CMD1.Connection = CONECTAR DA1.SelectCommand = CMD1 DA1.Fill(Ds1) Me.DataGridView1.DataSource = Ds1.DefaultView Catch ex As Exception End Try End Sub

23. Haremos doble clic sobre el botn BUSCAR y le daremos una funcin:
Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click Dim busca As String = InputBox("Escribe codigo", "Buscar Producto") Dim cB As New SqlCommand("buscar_pro", CONECTAR) cB.CommandType = CommandType.StoredProcedure Try cB.Parameters.AddWithValue("busca", busca) Dim d As New SqlDataAdapter d.SelectCommand = cB Dim ds As New DataSet cB.ExecuteNonQuery() d.Fill(ds, "buscar") Me.DataGridView1.DataSource = ds.Tables("buscar") Catch ex As Exception MessageBox.Show(ex.Message) End Try End Sub

24. Para terminar con los botones daremos funcin a nuestro botn MODIFICAR:
Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click If MessageBox.Show("Esta seguro de modificar este registro?", "CONFIRMACION", MessageBoxButtons.YesNo, MessageBoxIcon.Question) = DialogResult.Yes Then Dim cM As New SqlCommand("modificar_pro1", CONECTAR) cM.CommandType = CommandType.StoredProcedure venta = (Val(Me.TextBox5.Text) * Val(TextBox6.Text)) + Val(Me.TextBox5.Text) monto = Me.TextBox8.Text Dim daM As New SqlDataAdapter Dim dsM As New DataSet cM.CommandType = CommandType.StoredProcedure

Computacin e Informtica III

23

I.E.S.T.P JOS PARDO

MANUAL PROGRAMA EN V.NET

Try cM.Parameters.AddWithValue("@cod", TextBox1.Text) cM.Parameters.AddWithValue("@nom", TextBox2.Text) cM.Parameters.AddWithValue("@precioc", Val(TextBox5.Text)) cM.Parameters.AddWithValue("@marca", Me.ComboBox1.Text) cM.Parameters.AddWithValue("@codpro", Me.ComboBox2.Text) cM.Parameters.AddWithValue("@detalle", Me.TextBox3.Text) cM.Parameters.AddWithValue("@cantidad", Val(Me.TextBox4.Text)) cM.Parameters.AddWithValue("@preciov", venta) cM.Parameters.AddWithValue("@margen", Val(Me.TextBox6.Text)) cM.Parameters.AddWithValue("@presentacion", tipopresentacion) cM.Parameters.AddWithValue("@fecha", Me.DateTimePicker1.Value.ToShortDateString) cM.ExecuteNonQuery() Dim CMD As New SqlCommand("ver_productos", CONECTAR) Dim DA As New SqlDataAdapter Dim Ds As New DataTable DA.SelectCommand = CMD DA.Fill(Ds) Me.DataGridView1.DataSource = Ds.DefaultView MsgBox("MODIFICADO CON EXITO") Catch ex As Exception MsgBox("ERROR:" + ex.Message) End Try End If End Sub

Computacin e Informtica III

24

Você também pode gostar