do while vs scan

30/09/2003 - 00:54 por Noe diego Velazquez Hernandez | Informe spam
Hola foro !!

tengo una duda dentro del scan puedo utilizar un (select 1) no pierde la
secuencia del primer archivo ?

close data
select 1
use tabla1
select 2
use tabla2

scan
num=numemp
select 1
locate for num = keynumemp
if found()
ordenes
endif
endscan








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

PortalFox - NNTP Forum Gateway

Preguntas similare

Leer las respuestas

#16 Ana María Bisbé York
03/10/2003 - 17:26 | Informe spam
Víctor:

Gracias por el aliento, jajajaja, toca a menos , no?
Ya lo dije, es increible lo que se aprende aquí.
En Cuba, cuando alguien tiene una idea fantástica se dice que se quedó
vacío como que se quedó sin neuronas pa más nada y el / los que
inventaron las news group "se quedaron vacíos" no me cansaré de dar las
gracias.

Saludos,

Ana

"Victor Espina" escribió en el mensaje
news:
Pues ya somos dos: yo hubiera jurado que tu respuesta era 100% correcta.
Hasta el día de hoy SIEMPRE hago un SELECT alias ANTES del ENDSCAN


pero
tal y como tu misma dices: menos mal que siempre hay alguien que nos


aclara
los malos entendidos.

En cuanto a la diferencia de SCAN con DO WHILE, para mi la más


significativa
es la necesidad del SKIP con el DO WHILE. Antes de que empezara a usar el
SCAN, no puedo decirte la cantidad de veces que se me colgó un programa


por
entrar en un ciclo infinito de DO WHILE... solo porque olvidé poner el


SKIP
antes del ENDDO... :-)

Saludos

Victor Espina


"Ana María Bisbé York" wrote in message
news:
> Alex:
>
> La verdad es que estaba convencida de lo contrario. Para mí la única
> diferencia entre estos comandos estaba en el skip automático que realiza
el
> scan.
> He mirado hasta en las ayudas y en VFP8 se dice explícitamente; pero en


el
> VFP6 no y fue el que siempre utilicé.
>
> Menos mal que siempre uno de ustedes está atento y "ataja" los


despistes.
Es
> increible lo que se aprende desde aquí. Muy agradecida como siempre,
>
> Ana
>
> "Alex Feldstein [MVP]" escribió en el mensaje
> news:
> > On Tue, 30 Sep 2003 02:01:16 +0200, "Ana María Bisbé York"
> > wrote:
> >
> > >Pero te digo más, como te quedas parado en la tabla1, si el resultado
de
> la
> > >búsqueda es negativo pues la tabla1 va a fin de fichero y sale del
ciclo
> del
> > >scan aunque la tabla2 tenga miles de registros que comprobar.
> >
> > Ana:
> >
> > Estas en lo cierto en los comentarios que haces en tu respuesta en
> > este hilo, excepto en este último. SCAN vuelve al area original (tabla
> > 2 en el ejemplo) y continúa.
> >
> >
> > 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)
> > How To make good Newsgroups posts
> > http://dts-l.org/goodpost.htm
> > RFC 1855: Netiquette Guidelines
> > http://www.dtcc.edu/cs/rfc1855.html
> > How To Ask Questions The Smart Way
> > http://www.catb.org/~esr/faqs/smart-questions.html
> > Cómo hacer preguntas de manera inteligente:
> > http://www.sindominio.net/ayuda/pre...entes.html
>
>


Respuesta Responder a este mensaje
#17 Heberto Villavicencio
04/10/2003 - 03:35 | Informe spam
Hasta donde se (por mensajes leidos en este foro) el SCAN...ENDSCAN se
ejecuta mas rapido que el DO WHILE.. ENDDO

"Victor Espina" escribió en el mensaje
news:
Pues ya somos dos: yo hubiera jurado que tu respuesta era 100% correcta.
Hasta el día de hoy SIEMPRE hago un SELECT alias ANTES del ENDSCAN


pero
tal y como tu misma dices: menos mal que siempre hay alguien que nos


aclara
los malos entendidos.

En cuanto a la diferencia de SCAN con DO WHILE, para mi la más


significativa
es la necesidad del SKIP con el DO WHILE. Antes de que empezara a usar el
SCAN, no puedo decirte la cantidad de veces que se me colgó un programa


por
entrar en un ciclo infinito de DO WHILE... solo porque olvidé poner el


SKIP
antes del ENDDO... :-)

Saludos

Victor Espina


"Ana María Bisbé York" wrote in message
news:
> Alex:
>
> La verdad es que estaba convencida de lo contrario. Para mí la única
> diferencia entre estos comandos estaba en el skip automático que realiza
el
> scan.
> He mirado hasta en las ayudas y en VFP8 se dice explícitamente; pero en


el
> VFP6 no y fue el que siempre utilicé.
>
> Menos mal que siempre uno de ustedes está atento y "ataja" los


despistes.
Es
> increible lo que se aprende desde aquí. Muy agradecida como siempre,
>
> Ana
>
> "Alex Feldstein [MVP]" escribió en el mensaje
> news:
> > On Tue, 30 Sep 2003 02:01:16 +0200, "Ana María Bisbé York"
> > wrote:
> >
> > >Pero te digo más, como te quedas parado en la tabla1, si el resultado
de
> la
> > >búsqueda es negativo pues la tabla1 va a fin de fichero y sale del
ciclo
> del
> > >scan aunque la tabla2 tenga miles de registros que comprobar.
> >
> > Ana:
> >
> > Estas en lo cierto en los comentarios que haces en tu respuesta en
> > este hilo, excepto en este último. SCAN vuelve al area original (tabla
> > 2 en el ejemplo) y continúa.
> >
> >
> > 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)
> > How To make good Newsgroups posts
> > http://dts-l.org/goodpost.htm
> > RFC 1855: Netiquette Guidelines
> > http://www.dtcc.edu/cs/rfc1855.html
> > How To Ask Questions The Smart Way
> > http://www.catb.org/~esr/faqs/smart-questions.html
> > Cómo hacer preguntas de manera inteligente:
> > http://www.sindominio.net/ayuda/pre...entes.html
>
>


Respuesta Responder a este mensaje
#18 Carlos Yohn Zubiria
06/10/2003 - 11:47 | Informe spam
Cierto.
Pero ¿qué ocurre en funciones recursivas donde los recorridos anidados se
deben efectuar no solo en la misma tabla sino en el mismo alias, volver al
registro adecuado y continuar... no estoy seguro de que funcione bien con
scan. Digo: no estoy seguro. Hace tiempo encontré ciertos problemas con esto
y cambié al do while para estos casos.

Saludos,
A.G.P.


"Heberto Villavicencio" escribió en el mensaje
news:
Hasta donde se (por mensajes leidos en este foro) el SCAN...ENDSCAN se
ejecuta mas rapido que el DO WHILE.. ENDDO

"Victor Espina" escribió en el mensaje
news:
> Pues ya somos dos: yo hubiera jurado que tu respuesta era 100% correcta.
> Hasta el día de hoy SIEMPRE hago un SELECT alias ANTES del ENDSCAN
pero
> tal y como tu misma dices: menos mal que siempre hay alguien que nos
aclara
> los malos entendidos.
>
> En cuanto a la diferencia de SCAN con DO WHILE, para mi la más
significativa
> es la necesidad del SKIP con el DO WHILE. Antes de que empezara a usar


el
> SCAN, no puedo decirte la cantidad de veces que se me colgó un programa
por
> entrar en un ciclo infinito de DO WHILE... solo porque olvidé poner el
SKIP
> antes del ENDDO... :-)
>
> Saludos
>
> Victor Espina
>
>
> "Ana María Bisbé York" wrote in message
> news:
> > Alex:
> >
> > La verdad es que estaba convencida de lo contrario. Para mí la única
> > diferencia entre estos comandos estaba en el skip automático que


realiza
> el
> > scan.
> > He mirado hasta en las ayudas y en VFP8 se dice explícitamente; pero


en
el
> > VFP6 no y fue el que siempre utilicé.
> >
> > Menos mal que siempre uno de ustedes está atento y "ataja" los
despistes.
> Es
> > increible lo que se aprende desde aquí. Muy agradecida como siempre,
> >
> > Ana
> >
> > "Alex Feldstein [MVP]" escribió en el mensaje
> > news:
> > > On Tue, 30 Sep 2003 02:01:16 +0200, "Ana María Bisbé York"
> > > wrote:
> > >
> > > >Pero te digo más, como te quedas parado en la tabla1, si el


resultado
> de
> > la
> > > >búsqueda es negativo pues la tabla1 va a fin de fichero y sale del
> ciclo
> > del
> > > >scan aunque la tabla2 tenga miles de registros que comprobar.
> > >
> > > Ana:
> > >
> > > Estas en lo cierto en los comentarios que haces en tu respuesta en
> > > este hilo, excepto en este último. SCAN vuelve al area original


(tabla
> > > 2 en el ejemplo) y continúa.
> > >
> > >
> > > 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)
> > > How To make good Newsgroups posts
> > > http://dts-l.org/goodpost.htm
> > > RFC 1855: Netiquette Guidelines
> > > http://www.dtcc.edu/cs/rfc1855.html
> > > How To Ask Questions The Smart Way
> > > http://www.catb.org/~esr/faqs/smart-questions.html
> > > Cómo hacer preguntas de manera inteligente:
> > > http://www.sindominio.net/ayuda/pre...entes.html
> >
> >
>
>


Respuesta Responder a este mensaje
#19 Victor Espina
07/10/2003 - 14:15 | Informe spam
De hecho no funciona. El SCAN-ENDSCAN funciona muy bien mientras no muevas
manualmente el puntero de registro. Por ejemplo, lo siguiente genera
problemas:


SELECT tabla
GO TOP
SCAN
...
SELECT tabla
GO RECORD nLastPos
...
SELECT tabla
ENDSCAN

Al menos en mi experiencia, cuando me ha tocado hacer algo como eso he
tenido que usar el DO WHILE porque el SCAN se comporta de manera errática
luego del GO RECORD.

¿Alguien más puede confirmar esto?

Saludos

Victor Espina

"Carlos Yohn Zubiria" wrote in message
news:uGSNt8%
Cierto.
Pero ¿qué ocurre en funciones recursivas donde los recorridos anidados se
deben efectuar no solo en la misma tabla sino en el mismo alias, volver al
registro adecuado y continuar... no estoy seguro de que funcione bien con
scan. Digo: no estoy seguro. Hace tiempo encontré ciertos problemas con


esto
y cambié al do while para estos casos.

Saludos,
A.G.P.


"Heberto Villavicencio" escribió en el


mensaje
news:
> Hasta donde se (por mensajes leidos en este foro) el SCAN...ENDSCAN se
> ejecuta mas rapido que el DO WHILE.. ENDDO
>
> "Victor Espina" escribió en el mensaje
> news:
> > Pues ya somos dos: yo hubiera jurado que tu respuesta era 100%


correcta.
> > Hasta el día de hoy SIEMPRE hago un SELECT alias ANTES del ENDSCAN
> pero
> > tal y como tu misma dices: menos mal que siempre hay alguien que nos
> aclara
> > los malos entendidos.
> >
> > En cuanto a la diferencia de SCAN con DO WHILE, para mi la más
> significativa
> > es la necesidad del SKIP con el DO WHILE. Antes de que empezara a


usar
el
> > SCAN, no puedo decirte la cantidad de veces que se me colgó un


programa
> por
> > entrar en un ciclo infinito de DO WHILE... solo porque olvidé poner el
> SKIP
> > antes del ENDDO... :-)
> >
> > Saludos
> >
> > Victor Espina
> >
> >
> > "Ana María Bisbé York" wrote in message
> > news:
> > > Alex:
> > >
> > > La verdad es que estaba convencida de lo contrario. Para mí la única
> > > diferencia entre estos comandos estaba en el skip automático que
realiza
> > el
> > > scan.
> > > He mirado hasta en las ayudas y en VFP8 se dice explícitamente; pero
en
> el
> > > VFP6 no y fue el que siempre utilicé.
> > >
> > > Menos mal que siempre uno de ustedes está atento y "ataja" los
> despistes.
> > Es
> > > increible lo que se aprende desde aquí. Muy agradecida como siempre,
> > >
> > > Ana
> > >
> > > "Alex Feldstein [MVP]" escribió en el mensaje
> > > news:
> > > > On Tue, 30 Sep 2003 02:01:16 +0200, "Ana María Bisbé York"
> > > > wrote:
> > > >
> > > > >Pero te digo más, como te quedas parado en la tabla1, si el
resultado
> > de
> > > la
> > > > >búsqueda es negativo pues la tabla1 va a fin de fichero y sale


del
> > ciclo
> > > del
> > > > >scan aunque la tabla2 tenga miles de registros que comprobar.
> > > >
> > > > Ana:
> > > >
> > > > Estas en lo cierto en los comentarios que haces en tu respuesta en
> > > > este hilo, excepto en este último. SCAN vuelve al area original
(tabla
> > > > 2 en el ejemplo) y continúa.
> > > >
> > > >
> > > > 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)
> > > > How To make good Newsgroups posts
> > > > http://dts-l.org/goodpost.htm
> > > > RFC 1855: Netiquette Guidelines
> > > > http://www.dtcc.edu/cs/rfc1855.html
> > > > How To Ask Questions The Smart Way
> > > > http://www.catb.org/~esr/faqs/smart-questions.html
> > > > Cómo hacer preguntas de manera inteligente:
> > > > http://www.sindominio.net/ayuda/pre...entes.html
> > >
> > >
> >
> >
>
>


Respuesta Responder a este mensaje
#20 Carlos Yohn Zubiria
07/10/2003 - 16:08 | Informe spam
¿No bastamos nosotros? :-))

Saludos,
A.G.P.


"Victor Espina" escribió en el mensaje
news:%239h$
De hecho no funciona. El SCAN-ENDSCAN funciona muy bien mientras no


muevas
manualmente el puntero de registro. Por ejemplo, lo siguiente genera
problemas:


SELECT tabla
GO TOP
SCAN
...
SELECT tabla
GO RECORD nLastPos
...
SELECT tabla
ENDSCAN

Al menos en mi experiencia, cuando me ha tocado hacer algo como eso he
tenido que usar el DO WHILE porque el SCAN se comporta de manera errática
luego del GO RECORD.

¿Alguien más puede confirmar esto?

Saludos

Victor Espina

"Carlos Yohn Zubiria" wrote in message
news:uGSNt8%
> Cierto.
> Pero ¿qué ocurre en funciones recursivas donde los recorridos anidados


se
> deben efectuar no solo en la misma tabla sino en el mismo alias, volver


al
> registro adecuado y continuar... no estoy seguro de que funcione bien


con
> scan. Digo: no estoy seguro. Hace tiempo encontré ciertos problemas con
esto
> y cambié al do while para estos casos.
>
> Saludos,
> A.G.P.
>
>
> "Heberto Villavicencio" escribió en el
mensaje
> news:
> > Hasta donde se (por mensajes leidos en este foro) el SCAN...ENDSCAN se
> > ejecuta mas rapido que el DO WHILE.. ENDDO
> >
> > "Victor Espina" escribió en el mensaje
> > news:
> > > Pues ya somos dos: yo hubiera jurado que tu respuesta era 100%
correcta.
> > > Hasta el día de hoy SIEMPRE hago un SELECT alias ANTES del


ENDSCAN
> > pero
> > > tal y como tu misma dices: menos mal que siempre hay alguien que nos
> > aclara
> > > los malos entendidos.
> > >
> > > En cuanto a la diferencia de SCAN con DO WHILE, para mi la más
> > significativa
> > > es la necesidad del SKIP con el DO WHILE. Antes de que empezara a
usar
> el
> > > SCAN, no puedo decirte la cantidad de veces que se me colgó un
programa
> > por
> > > entrar en un ciclo infinito de DO WHILE... solo porque olvidé poner


el
> > SKIP
> > > antes del ENDDO... :-)
> > >
> > > Saludos
> > >
> > > Victor Espina
> > >
> > >
> > > "Ana María Bisbé York" wrote in message
> > > news:
> > > > Alex:
> > > >
> > > > La verdad es que estaba convencida de lo contrario. Para mí la


única
> > > > diferencia entre estos comandos estaba en el skip automático que
> realiza
> > > el
> > > > scan.
> > > > He mirado hasta en las ayudas y en VFP8 se dice explícitamente;


pero
> en
> > el
> > > > VFP6 no y fue el que siempre utilicé.
> > > >
> > > > Menos mal que siempre uno de ustedes está atento y "ataja" los
> > despistes.
> > > Es
> > > > increible lo que se aprende desde aquí. Muy agradecida como


siempre,
> > > >
> > > > Ana
> > > >
> > > > "Alex Feldstein [MVP]" escribió en el mensaje
> > > > news:
> > > > > On Tue, 30 Sep 2003 02:01:16 +0200, "Ana María Bisbé York"
> > > > > wrote:
> > > > >
> > > > > >Pero te digo más, como te quedas parado en la tabla1, si el
> resultado
> > > de
> > > > la
> > > > > >búsqueda es negativo pues la tabla1 va a fin de fichero y sale
del
> > > ciclo
> > > > del
> > > > > >scan aunque la tabla2 tenga miles de registros que comprobar.
> > > > >
> > > > > Ana:
> > > > >
> > > > > Estas en lo cierto en los comentarios que haces en tu respuesta


en
> > > > > este hilo, excepto en este último. SCAN vuelve al area original
> (tabla
> > > > > 2 en el ejemplo) y continúa.
> > > > >
> > > > >
> > > > > 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)
> > > > > How To make good Newsgroups posts
> > > > > http://dts-l.org/goodpost.htm
> > > > > RFC 1855: Netiquette Guidelines
> > > > > http://www.dtcc.edu/cs/rfc1855.html
> > > > > How To Ask Questions The Smart Way
> > > > > http://www.catb.org/~esr/faqs/smart-questions.html
> > > > > Cómo hacer preguntas de manera inteligente:
> > > > > http://www.sindominio.net/ayuda/pre...entes.html
> > > >
> > > >
> > >
> > >
> >
> >
>
>


Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaSiguiente AnteriorRespuesta Tengo una respuesta
Search Busqueda sugerida