Pack y progress
Posted: Sun Feb 04, 2007 11:41 am
Hola amigos:
Para hacer una organizacion de ficheros vengo haciendo lo siguiente:
Primero pack:
***************
if lalb=.T.
dbusearea(.f.,,Publicas:cUnidad+Publicas:cSubd+"\Albaran",,.f.) // Exclusiva
if !neterr()
pack
treg+=(albaran->(reccount())*10)
endif
******************
Después index
****************
index on _field->Albaran tag "Albaran" ;
eval(oMeter1:Set(recno()),oMeter2:Set(++parci),SysRefresh())
oMeter1:nTotal =reccount()
otext:SetText(otextos[6])
*****************
Y sobre éste tema tengo algunas preguntas
1º Pack se me está haciendo cada vez más tedioso al crecer las bases de datos (en una de 500.000 registros te puedes echar la siesta). Hay algo que cumpla ésta función y que no tarde tanto ?
2º Como se ve, al hacer índices puedo utilizar o bien progress, o bien msgmeter, ya que acepta la condición eval, pero utilizando pack, como puedo saber por dónde vamos, ya que como tarda tanto, a veces la gente apaga la máquina creyendo que se ha colgado.
Saludos
Jose Luis
Para hacer una organizacion de ficheros vengo haciendo lo siguiente:
Primero pack:
***************
if lalb=.T.
dbusearea(.f.,,Publicas:cUnidad+Publicas:cSubd+"\Albaran",,.f.) // Exclusiva
if !neterr()
pack
treg+=(albaran->(reccount())*10)
endif
******************
Después index
****************
index on _field->Albaran tag "Albaran" ;
eval(oMeter1:Set(recno()),oMeter2:Set(++parci),SysRefresh())
oMeter1:nTotal =reccount()
otext:SetText(otextos[6])
*****************
Y sobre éste tema tengo algunas preguntas
1º Pack se me está haciendo cada vez más tedioso al crecer las bases de datos (en una de 500.000 registros te puedes echar la siesta). Hay algo que cumpla ésta función y que no tarde tanto ?
2º Como se ve, al hacer índices puedo utilizar o bien progress, o bien msgmeter, ya que acepta la condición eval, pero utilizando pack, como puedo saber por dónde vamos, ya que como tarda tanto, a veces la gente apaga la máquina creyendo que se ha colgado.
Saludos
Jose Luis