In order for this site to work correctly we need to store a small file (called a cookie) on your computer. Most every site in the world does this, however since the 25th of May 2011, by law we have to get your permission first. Please abandon the forum if you disagree.

Para que este foro funcione correctamente es necesario guardar un pequeño fichero (llamado cookie) en su ordenador. La mayoría de los sitios de Internet lo hacen, no obstante desde el 25 de Marzo de 2011 y por ley, necesitamos de su permiso con antelación. Abandone este foro si no está conforme.

BOF/EOF siempre a False en Dataset - dbBrowse

Foro público de Xailer en español
Responder
jose.luis
Mensajes: 1633
Registrado: Vie Oct 14, 2005 10:56 pm

BOF/EOF siempre a False en Dataset - dbBrowse

Mensaje por jose.luis »

Hola a todos,
Me encuentro con un problema que no se resolver.
Dado un TSqlQuery que está enlazado con un dbBrowse... quiero, mediante las
instrucciones del dbBrowse, navegar por código y controlar cuando se llega
al principio y/o fin del recordset.
Algo así­:
METHOD Sube() CLASS tForm1
::oDbBrowse:GoUp
IF ::oDbBrowse:oDataset:Bof()
MsgInfo("BOF")
ENDIF
RETURN NIL
El caso es que nunca veo (en mis pruebas) el msginfo indicando que se ha
llegado al BOF.
He dejado un ejemplo modificado (AdoData3) que muestra lo que quiero hacer.
También me pasa con el EOF.
Si alguien me puede ayudar...
Saludos y gracias,
José Luis Capel

--

Attached files Test.zip (3 KB)Â
Avatar de Usuario
ignacio
Site Admin
Mensajes: 9459
Registrado: Lun Abr 06, 2015 8:00 pm
Ubicación: Madrid, Spain
Contactar:

BOF/EOF siempre a False en Dataset - dbBrowse

Mensaje por ignacio »

José Luis,
Navegando por el Browse NUNCA se llega ni a Eof() ni a Bof(). Deberás
utilizar directamente el objeto TDataset en conjunción con el método SKIP
(nunca Nskip()).
Saludos
--
Ignacio Ortiz de Zúñiga
[Equipo de Xailer / Xailer team]
http://www.xailer.com
http://www.xailer.info
http://www.xailer.com/forum
http://www.xailer.com/dokuwiki
"José Luis Capel" <jose.luis@capelsoft.com> escribió en el mensaje de
noticias:4c288e11$[email=1@svctag-j7w3v3j....]1@svctag-j7w3v3j....[/email]
> Hola a todos,
>
> Me encuentro con un problema que no se resolver.
>
> Dado un TSqlQuery que está enlazado con un dbBrowse... quiero, mediante
> las
> instrucciones del dbBrowse, navegar por código y controlar cuando se llega
> al principio y/o fin del recordset.
>
> Algo así­:
>
> METHOD Sube() CLASS tForm1
> ::oDbBrowse:GoUp
> IF ::oDbBrowse:oDataset:Bof()
> MsgInfo("BOF")
> ENDIF
> RETURN NIL
>
> El caso es que nunca veo (en mis pruebas) el msginfo indicando que se ha
> llegado al BOF.
>
> He dejado un ejemplo modificado (AdoData3) que muestra lo que quiero
> hacer.
>
> También me pasa con el EOF.
>
> Si alguien me puede ayudar...
>
> Saludos y gracias,
> José Luis Capel
>
>
Ignacio Ortiz de Zúñiga
[OZ Software]
https://www.ozs.es
--
[Equipo de Xailer / Xailer team]
https://www.xailer.com
jose.luis
Mensajes: 1633
Registrado: Vie Oct 14, 2005 10:56 pm

BOF/EOF siempre a False en Dataset - dbBrowse

Mensaje por jose.luis »

Ignacio,
Gracias por la respuesta.
>
> Navegando por el Browse NUNCA se llega ni a Eof() ni a Bof(). Deberás
> utilizar directamente el objeto TDataset en conjunción con el método SKIP
> (nunca Nskip()).
>
Gracias. Ya he cambiado el método de navegación y todo stupendo.
Saludos,
José Luis Capel
METHOD Button3Click( oSender ) CLASS TForm1
::oDBBrowse2:oDataset:Skip(-1)
IF ::oDBBrowse2:oDataset:Bof()
::oDBBrowse2:oDataset:Skip()
::oDBBrowse2:Refresh()
MsgInfo("BOF")
ENDIF
RETURN Nil
//---------------------------------------------------------- --------------------
METHOD Button4Click( oSender ) CLASS TForm1
::oDBBrowse2:oDataset:Skip()
IF ::oDBBrowse2:oDataset:Eof()
::oDBBrowse2:oDataset:Skip(-1)
::oDBBrowse2:Refresh()
MsgInfo("EOF")
ENDIF
RETURN Nil
//---------------------------------------------------------- --------------------
Responder