<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta content="text/html;charset=ISO-8859-1" http-equiv="Content-Type">
<title></title>
</head>
<body bgcolor="#ffffff" text="#000000">
Hola, si no son muchos registros también puedes usar el filtrado de
registros con la propiedad "filtered" y el evento onfilter y en el
evento onchange del tcombobox simplemente hacer un first del tdataset
para que refresque ... luego lo del bookmark sigue siendo igual.<br>
<br>
Sólo por dar otra idea ... Un saludo.<br>
<br>
<br>
Fredy Gonzales escribió:
<blockquote cite="mid:B89D19356B47488F8A2EA28862E308CB@gcg.com.pe"
type="cite">
<meta content="text/html; charset=iso-8859-1"
http-equiv="Content-Type">
<meta name="GENERATOR" content="MSHTML 8.00.6001.18854">
<style></style>
<div><font face="Arial" size="2">Amigos,</font></div>
<div> </div>
<div><font face="Arial" size="2">Tengo un formulario con tres
TDBGrid, pero uno de ellos es dinamico (se carga con data de mysql
cuando el usuario mueve un combobox)</font></div>
<div> </div>
<div><font face="Arial" size="2">mi modulo de carga dinamica lo pongo
en el evento combochange y es este, para esto utilizo los dataset de
Zeos 6 y mysql</font></div>
<div> </div>
<div><font color="#0000ff" face="Arial" size="2"> With
global.lstmovimientos do begin;<br>
Close;<br>
SQL.Text:='select * from servicios Where ser_estado="' +
comobo.text + '"'; </font></div>
<div><font color="#0000ff" face="Arial" size="2"> Open;<br>
end;<br>
dsmovimiento.DataSet:= global.lstmovimientos; </font></div>
<div> </div>
<div><font face="Arial" size="2">ok, En un timer tengo el evento que
refresca el TDBGrid cada minuto ( dbservicios es el TDBGrid y el
DataSource asignado es el dsmovimiento)</font></div>
<div><font face="Arial" size="2">y es este el codigo </font></div>
<div> </div>
<div><font color="#0000ff" face="Arial" size="2">procedure
Tfrmservicios.Timer1Timer(Sender: TObject);<br>
var<br>
p:TBookMark;<br>
begin<br>
Timer1.Enabled:=False;</font></div>
<font face="Arial" size="2"></font>
<div><font face="Arial" size="2"><br>
<font color="#0000ff"> if
(dbservicios.DataSource.DataSet.RecNo>0) then;<br>
Begin<br>
dbservicios.DataSource.DataSet.DisableControls;<br>
p:= dbservicios.DataSource.DataSet.GetBookmark;<br>
dbservicios.DataSource.DataSet.Refresh;<br>
dbservicios.DataSource.DataSet.GotoBookmark(p);<br>
dbservicios.DataSource.DataSet.FreeBookmark(p);<br>
dbservicios.DataSource.DataSet.EnableControls;<br>
end;</font></font></div>
<div><font face="Arial" size="2"><br>
</font><font color="#0000ff" face="Arial" size="2">
Timer1.Enabled:=True;</font></div>
<div> </div>
<div><font color="#0000ff" face="Arial" size="2">end;</font></div>
<div> </div>
<div><font face="Arial" size="2">Como veran yo consulto si
dbservicios (el tdbgrid) esta con registros o no, dado que siempre
existe cambios y puede quedar vacio, pero por alguna razon no me esta
funcionado el RecNo del dbservicios.</font></div>
<div><font face="Arial" size="2">Mejor dicho, cuando el tdbgrid esta
vacio, el lo asume como lleno y pasa me da un error al no poder ubicar
el puntero del bookmark, asi que el programa se bloquea.</font></div>
<div> </div>
<div><font face="Arial" size="2">Espero no haberlos cansado y gracias
por su colaboracion.</font></div>
<div> </div>
<div><font face="Arial" size="2">FG</font></div>
<div><font face="Arial" size="2">Lima - Peru</font></div>
<div> </div>
<div> </div>
<div> </div>
<div> </div>
<div> </div>
<pre wrap="">
<hr size="4" width="90%">
_______________________________________________
Lazarus-es mailing list
<a class="moz-txt-link-abbreviated" href="mailto:Lazarus-es@lists.lazarus.freepascal.org">Lazarus-es@lists.lazarus.freepascal.org</a>
<a class="moz-txt-link-freetext" href="http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus-es">http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus-es</a>
</pre>
</blockquote>
<br>
</body>
</html>