Duda??

24/06/2004 - 15:27 por Carlanga | Informe spam
Hola amigos siempre he tenido la siguiente duda

existe una mejor manera de hacer esto

sele mitabla
seek eldatto
do while !eof() .and. eldato=elcampo
.. bla
..bla
skip
enddo

algo asi como usar el scan o parecido???
y lo otro afecta en algo el order de :

!eof() and eldato=elcampo

!eof() and elcampo=eldato

es lo mismo???


saludos y gracias




-
PortalFox :: Nada corre como un zorr
http://www.portalfox.co

PortalFox - NNTP Forum Gatewa

Preguntas similare

Leer las respuestas

#1 Jorge Pérez
24/06/2004 - 17:51 | Informe spam
Es más facil si utilizas Scan:

Scan for eldato = Elcampo
EndScan

No necesitas hacer prueba de fín de archivo y el skip está implicito.
Rushmore optimiza estas consultas, por lo que son muy rápidas.

"Carlanga" escribió en el mensaje
news:
Hola amigos siempre he tenido la siguiente duda

existe una mejor manera de hacer esto

sele mitabla
seek eldatto
do while !eof() .and. eldato=elcampo
.. bla
..bla
skip
enddo

algo asi como usar el scan o parecido???
y lo otro afecta en algo el order de :

!eof() and eldato=elcampo

!eof() and elcampo=eldato

es lo mismo???


saludos y gracias





PortalFox :: Nada corre como un zorro
http://www.portalfox.com

PortalFox - NNTP Forum Gateway
Respuesta Responder a este mensaje
#2 Carlanga
24/06/2004 - 22:51 | Informe spam
ok lo entiendo pero que pasa con el seek??

es decir si yo realizo lo siguiente:

sele mitabla
seek eldatto
do while !eof() .and. eldato=elcampo


y lo cambio por:

sele mitabla
seek eldatto
scan for eldato=elcampo

pierdo el indice del registro ya que el scan me posiciona al top de los
registros por defecto? es asi o no?


saludos



PortalFox :: Nada corre como un zorro
http://www.portalfox.com

PortalFox - NNTP Forum Gateway
Respuesta Responder a este mensaje
#3 Jorge Pérez
25/06/2004 - 00:21 | Informe spam
No es necesario. La cláusula For se encarga de recorrer unicamente los
registros que cumplan con la condición

"Carlanga" escribió en el mensaje
news:
ok lo entiendo pero que pasa con el seek??

es decir si yo realizo lo siguiente:

sele mitabla
seek eldatto
do while !eof() .and. eldato=elcampo


y lo cambio por:

sele mitabla
seek eldatto
scan for eldato=elcampo

pierdo el indice del registro ya que el scan me posiciona al top de los
registros por defecto? es asi o no?


saludos



PortalFox :: Nada corre como un zorro
http://www.portalfox.com

PortalFox - NNTP Forum Gateway
Respuesta Responder a este mensaje
#4 Alex Feldstein
25/06/2004 - 04:33 | Informe spam
On Thu, 24 Jun 2004 13:51:27 -0700, "Carlanga"
wrote:


y lo cambio por:

sele mitabla
seek eldatto
scan for eldato=elcampo

pierdo el indice del registro ya que el scan me posiciona al top de los
registros por defecto? es asi o no?




Si es asi. SCAN FOR comienza al principio.

Lo que buscas es:

sele mitabla
seek eldatto
scan while eldato=elcampo


Alex Feldstein
________________________________
Microsoft Visual FoxPro MVP
Please respond in the public groups so that everybody
can benefit from the exchange.
Favor de responder en los foros públicos asi todos se benefician.
(Address scrambled with ROT-13)
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida