Hola a todos, estoi realizando un programa con manejo de base de datos en el cual realiza busquedas, las cuales las realizo con sentencias SQL y de la busqueda resultante cargo un datagrid, esta es realizada a la perfeccion la primera vez, el problema esta en la segunda q peta al cargar el datagrid de la busqueda. He probado varias cosas, limpiar dataset y demas pero no doy con el problema. Haber si me echais una mano y me ayudais. Gracias de todos modos por leerlo.
Imports System.Data.SqlClient
Imports System.Data.SqlServerCe
Imports System.Data.Common
Imports System.data
Module Module1
Dim oCon As System.Data.SqlServerCe.SqlCeConnection
Dim ocom As System.Data.SqlServerCe.SqlCeCommand
Dim oDA As System.Data.SqlServerCe.SqlCeDataAdapter
Dim oDS As Data.DataSet
Dim oCon1 As System.Data.SqlServerCe.SqlCeConnection
Dim ocom1 As System.Data.SqlServerCe.SqlCeCommand
Dim oDA1 As System.Data.SqlServerCe.SqlCeDataAdapter
Dim oDS1 As Data.DataSet
Public Sub main()
Gestion_de_cobros.Show()
Application.Run(Gestion_de_cobros)
End Sub
Public Sub cargar_Gestion_de_cobros()
Dim Tabla As New Data.DataTable 'asi se los mete a pelo
Tabla.Columns.Add(New Data.DataColumn("factura"))
Tabla.Columns.Add(New Data.DataColumn("cliente"))
'Tabla.Columns.Add(New Data.DataColumn("Pdte "))
'Tabla.Columns.Add(New Data.DataColumn("Cobrar "))
Dim fila As Data.DataRow
fila = Tabla.NewRow()
Tabla.Rows.Add(fila)
Gestion_de_cobros.DataGrid1.DataSource = Tabla
End Sub
Public Sub cargar_Busqueda_cliente()
Busqueda_cliente.Show()
'oDA.Update(oDS, "clientes")
Dim cad As String = ""
cad = "SELECT * FROM clientes where codigo like '" & Gestion_de_cobros.filtrobox.Text & "%'"
oCon = New System.Data.SqlServerCe.SqlCeConnection("Data Source=\aps_movilidad_1.sdf")
ocom = New System.Data.SqlServerCe.SqlCeCommand(cad, oCon)
oDA = New System.Data.SqlServerCe.SqlCeDataAdapter(ocom)
oDS = New Data.DataSet '("clientes")
oCon.Open()
Try
ocom.ExecuteNonQuery()
oDS.Clear()
oDA.Fill(oDS, "clientes")
oCon.Close()
Catch ex As SqlCeException
MessageBox.Show(ex.Message)
Finally
oDA.Dispose()
Busqueda_cliente.DataGrid1.DataSource = oDS.Tables(0).DefaultView
End Try
End Sub
Public Sub selecciona_factura()
Dim numcli As Char
numcli = Busqueda_cliente.DataGrid1.Item(Busqueda_cliente.D ataGrid1.CurrentRowIndex, 0)
Dim cad As String = ""
cad = "SELECT * FROM prueba where cliente like '" & numcli & "'"
oCon1 = New System.Data.SqlServerCe.SqlCeConnection("Data Source=\aps_movilidad_1.sdf")
ocom1 = New System.Data.SqlServerCe.SqlCeCommand(cad, oCon1)
oDA1 = New System.Data.SqlServerCe.SqlCeDataAdapter(ocom1)
oDS1 = New Data.DataSet '("prueba")
oCon1.Open()
Try
ocom1.ExecuteNonQuery()
oDS1.Clear()
oDA1.Fill(oDS1, "prueba")
oCon1.Close()
Catch ex As SqlCeException
MessageBox.Show(ex.Message)
Finally
oDA1.Dispose()
Gestion_de_cobros.DataGrid1.DataSource = oDS1.Tables(0).DefaultView
End Try
Busqueda_cliente.Close()
'oDS.Clear()
'Busqueda_cliente.DataGrid1.DataSource = Nothing
End Sub