• Viernes 8 de Noviembre de 2024, 12:34

Mostrar Mensajes

Esta sección te permite ver todos los posts escritos por este usuario. Ten en cuenta que sólo puedes ver los posts escritos en zonas a las que tienes acceso en este momento.


Temas - boda

Páginas: [1]
1
VB .NET / codigo buscar, modificar y eliminar
« en: Miércoles 1 de Julio de 2009, 02:36 »
por favor ayuda urgente tengo problemas con el siguiente codigo se supone que tiene que hacer la funcion de buscar, modificar y elminar pero solo puedo hacer la busquedad lo demas no me da un error que dice "Referencia a objeto no establecida como instancia de un objeto"

PD: la declaracion de la cadena de conexion no aparece por que la tengo declarada publica por eso solo utilizo la variable "conexion"
el codigo es el siguiente

Código: vb.net
  1.  
  2. Imports System.data
  3. Imports System.Data.SqlClient
  4. Public Class GrdProyecto
  5.  
  6.     Private oDataAd As SqlDataAdapter
  7.     Private oDataSet As DataSet
  8.     'Private oDataTable As DataTable
  9.     Private Binding As Windows.Forms.BindingSource = New BindingSource
  10.     Private busquedad As String = "SELECT * FROM proyecto"
  11.     Public oDataTable As DataTable
  12.  
  13.     Private Sub GrdProyecto_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
  14.  
  15.         With DgrdProyecto
  16.             .MultiSelect = False
  17.             .RowsDefaultCellStyle.BackColor = Color.White
  18.             .AlternatingRowsDefaultCellStyle.BackColor = Color.AliceBlue
  19.             .SelectionMode = DataGridViewSelectionMode.FullRowSelect
  20.         End With
  21.  
  22.  
  23.         ' Declarar la conexión y abrir  
  24.         ' Crear un DataAdapter y pasarle el comando para traer los registros  
  25.         Dim oDataAd = New SqlDataAdapter("SELECT * FROM proyecto", conexion)
  26.         ' DataTable  
  27.         Dim oDataTable = New DataTable
  28.         'Dim oDataSet As New DataSet
  29.  
  30.         'oDataTable = oDataSet.Tables.Add("oDataTable")
  31.  
  32.         ' llenar el DataTable  
  33.         oDataAd.Fill(oDataTable)
  34.         conexion.Close()
  35.  
  36.  
  37.         ' enlazar el DataTable al BindingSource  
  38.         Binding.DataSource = oDataTable
  39.  
  40.         ' propiedades para el DataGridview  
  41.         '''''''''''''''''''''''''''''''''''''''  
  42.         DgrdProyecto.DataSource = oDataTable
  43.  
  44.  
  45.     End Sub
  46.     Function Buscar(ByVal Columna As String, ByVal texto As String, ByVal Binding As BindingSource) As Integer
  47.  
  48.         Try
  49.             ' si está vacio salir y no retornar nada  
  50.             If Binding.DataSource Is Nothing Then
  51.                 Return -1
  52.             End If
  53.  
  54.             ' Ejecutar el método Find pasándole los datos  
  55.             Dim fila As Integer = Binding.Find(Columna.Trim, texto)
  56.  
  57.             ' Mover el cursor a la fila obtenida  
  58.             Binding.Position = fila
  59.  
  60.             ' retornar el valor  
  61.             Return fila
  62.  
  63.             ' errores  
  64.         Catch ex As Exception
  65.             MsgBox(ex.Message.ToString, MsgBoxStyle.Critical)
  66.         End Try
  67.         ' no retornar nada  
  68.         Return -1
  69.  
  70.     End Function
  71.  
  72.     Private Sub BtBuscar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtBuscar.Click
  73.         ' Pasar el nombre del campo por el cual buscar ,  
  74.         ' el dato, y el BindingSource enlazado al DataGridView  
  75.         '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''  
  76.         Dim ret As Integer = Buscar("cod_proyecto", TextBox1.Text.Trim, Binding)
  77.  
  78.         ' si no se encontró ....  
  79.         If ret = -1 Then
  80.             ' mostrar un mensaje  
  81.             MsgBox("No se encontró la fila", MsgBoxStyle.Critical)
  82.         Else
  83.             With DgrdProyecto
  84.                 ' volver a enlazar  
  85.                 .DataSource = Binding
  86.                 ' Pasarle el índice para Visualizar la fila al comienzo de la grilla  
  87.                 .FirstDisplayedScrollingRowIndex = ret
  88.             End With
  89.         End If
  90.     End Sub
  91.     Private Sub BtEliminar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtEliminar.Click
  92.         Dim oDataSet As New DataSet
  93.         Me.DgrdProyecto.Rows.RemoveAt(0)
  94.         oDataAd.Update(oDataTable)
  95.         'Me.DgrdProyecto.Update()
  96.     End Sub
  97.     Private Sub BtModif_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtModif.Click
  98.         Me.DgrdProyecto.Update()
  99.         'Me.oDataAd.Update(oDataSet, "proyecto")
  100.     End Sub
  101. End Class
  102.  
  103.  

Páginas: [1]