E
G
T UT
DA
OS
UP
IN S T I
G IC O
Computacin e Informtica
Unidad Didctica: Programacin Concurrente
AN
O
PE D R
DE
LL O C
ER I O R P
E
G
T UT
DA
OS
UP
IN S T I
G IC O
Computacin e Informtica
Unidad Didctica: Programacin Concurrente
AN
O
PE D R
DE
LL O C
Function Filtrar_grdClientes(ByVal Columna As String, ByVal texto As String, ByVal BindingSource As BindingSource, ByVal DataGridView As DataGridView, Optional ByVal
Opcion_Filtro As e_FILTER_OPTION = Nothing) As Integer
' verificar que el DataSource no est vacio
If BindingSource1.DataSource Is Nothing Then
Return 0
End If
Try
Dim filtro As String = String.Empty
' Seleccionar la opcin
Select Case Opcion_Filtro
Case e_FILTER_OPTION.CADENA_QUE_COMIENCE_CON
filtro = "like '" & texto.Trim & "%'"
Case e_FILTER_OPTION.CADENA_QUE_NO_COMIENCE_CON
filtro = "Not like '" & texto.Trim & "%'"
Case e_FILTER_OPTION.CADENA_QUE_NO_CONTENGA
filtro = "Not like '%" & texto.Trim & "%'"
Case e_FILTER_OPTION.CADENA_QUE_CONTENGA
filtro = "like '%" & texto.Trim & "%'"
Case e_FILTER_OPTION.CADENA_IGUAL
filtro = "='" & texto.Trim & "'"
End Select
' Opcin para no filtrar
If Opcion_Filtro = e_FILTER_OPTION.SIN_FILTRO Then
filtro = String.Empty
End If
' armar el sql
If filtro <> String.Empty Then
filtro = "[" & Columna & "]" & filtro
End If
' asigar el criterio a la propiedad Filter del BindingSource
BindingSource.Filter = filtro
' enlzar el datagridview al BindingSource
DataGridView.DataSource = BindingSource.DataSource
' retornar la cantidad de registros encontrados
Return BindingSource.Count
' errores
Catch ex As Exception
MsgBox(ex.Message.ToString, MsgBoxStyle.Critical)
End Try
Return 0
End Function
ER I O R P
E
G
T UT
DA
OS
UP
IN S T I
G IC O
Computacin e Informtica
Unidad Didctica: Programacin Concurrente
AN
O
PE D R
DE
LL O C
Private Const cs As String = "Data Source=CENCACI\DSI;" & "Integrated Security=True;" & "Initial Catalog=BD_Prueba"
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
cn = New SqlConnection
cn.ConnectionString = "Data Source=CENCACI\DSI;Initial Catalog=BD_Prueba;Integrated Security=True"
da = New SqlDataAdapter("SELECT * FROM Clientes", cn)
comando = New SqlCommandBuilder(da)
ds = New DataSet()
cn.Open()
da.Fill(ds, "Clientes")
cn.Close()
' asignar el dataset al DataGridView
grdClientes.DataSource = ds
grdClientes.DataMember = "Clientes"
VerDatos()
Try
' Inicializar la conexin y abrir
Using cn As SqlConnection = New SqlConnection(cs)
cn.Open()
' Inicializar DataAdapter indicando el sql para recuperar
'los registros de la tabla
Dim da As New SqlDataAdapter("SELECT * FROM Clientes", cn)
Dim dt As New DataTable ' crear un DataTable
' llenarlo
da.Fill(dt)
' enlazar el DataTable al BindingSource
BindingSource1.DataSource = dt
' agregar las opciones al combobox
With (ComboBox1)
'cargar los items de opciones para filtrar
.Items.Add("No filtrar")
.Items.Add("Que comience con")
.Items.Add("Que No comience con")
.Items.Add("Que contenga")
.Items.Add("Que No contenga")
.Items.Add("Que sea igual")
.DropDownStyle = ComboBoxStyle.DropDownList
.SelectedIndex = 1
End With
End Using
ER I O R P
E
G
T UT
DA
OS
UP
IN S T I
G IC O
Computacin e Informtica
Unidad Didctica: Programacin Concurrente
AN
O
PE D R
DE
LL O C
' errores
Catch ex As Exception
MsgBox(ex.Message.ToString)
End Try
End Sub
ER I O R P
E
G
T UT
DA
OS
UP
IN S T I
G IC O
Computacin e Informtica
Unidad Didctica: Programacin Concurrente
AN
O
PE D R
DE
LL O C
End Sub
Private Sub BtnGrabar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnGrabar.Click
If estado = "Actualizar" Then
If MsgBox("deseas modificar el registro?", MsgBoxStyle.YesNo, "Aviso") = MsgBoxResult.Yes Then
dr = Me.ds.Tables("Clientes").Rows(Me.fil)
dr("Codigo") = Me.TxtId_Cliente.Text
dr("Nombres") = Me.TxtNombres.Text
dr("Apellidos") = Me.TxtApellidos.Text
dr("DNI") = Me.TxtDNI.Text
estado = ""
End If
Else
If MsgBox("Deseas grabar el registro?", MsgBoxStyle.YesNo, "Aviso") = MsgBoxResult.Yes Then
dr = Me.ds.Tables("Clientes").NewRow()
dr("Codigo") = Me.TxtId_Cliente.Text
dr("Nombres") = Me.TxtNombres.Text
dr("Apellidos") = Me.TxtApellidos.Text
dr("DNI") = Me.TxtDNI.Text
Me.ds.Tables("Clientes").Rows.Add(dr)
End If
End If
da.Update(ds, "Clientes")
End Sub
ER I O R P
E
G
T UT
DA
OS
UP
IN S T I
G IC O
Computacin e Informtica
Unidad Didctica: Programacin Concurrente
AN
O
PE D R
DE
LL O C