Foro de elhacker.net

Programación => Programación Visual Basic => Mensaje iniciado por: polodimar en 16 Junio 2005, 03:04 am



Título: Refrescar un DBgrid
Publicado por: polodimar en 16 Junio 2005, 03:04 am
Tengo el siguiente codigo

Private Sub Command2_Click()

Set rs = db.OpenRecordset("SELECT * FROM Customer WHERE FirstName LIKE '" & Text1.Text & "'", dbOpenDynaset)
With rs
If Not (rs.EOF Or rs.BOF) Then
  rs.Delete
  rs.MoveNext
 
End If
End With
End Sub


Pero no se como hacer para refrescar la base o el DBGRID para que desaparesca el registro

puse DBGRID.REFRESH pero queda la pura Shit y no sirve
no tengo data's por lo que no puedo hacer un data1.refresh directamente

ojala me puedan ayudar
gracias


Título: Re: Refrescar un DBgrid
Publicado por: DaSystem en 16 Junio 2005, 15:44 pm
Para actualizar un Datagrid tenes que abrir y cerarr conexion de la base de datos te muestro un ejemplo.-

Private Sub Form_Load()
If de.rsGrillaEmpresas.State = adStateOpen Then de.rsGrillaEmpresas.Close
 de.GrillaEmpresas
 Set frmAbmEmpresas.dgEmpresas.DataSource = de.rsGrillaEmpresas
End Sub

para esto va a tener que creear un comando (cm) a traves de una conexion date enviroment.-

simpre y cdo este agregando datos, modificando e eliomando datos va a tener q llamar a atro formulario donde acepte los datos correspondiente y el data grid de esta forma se va a actualizar.-
salu2


Título: Re: Refrescar un DBgrid
Publicado por: soplo en 16 Junio 2005, 23:35 pm
Hola
Creo que tienes puesto el dbgrid en modo read only. En este modo lee el recordset una sola vez y no vuelve a mirar hasta que lo cierres y vuelvas a abrir.

Si es esto  debes darte cuenta que estás cometiendo un error de bulto porque estás habriendo un recordset dynaset con acceso lectura/escritura (y por lo tanto lento) para solo leer puesto que en el dbgrid tienes puesto read-only.

Si es esto, debes abrir el recordset como snapshot y poner el dbrid como read-write.

Un saludo