FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin para Harbour/xHarbour O.T. velocidad de ADS LOCAL con archivos ADT
Posts: 1088
Joined: Fri Oct 07, 2005 03:33 PM
O.T. velocidad de ADS LOCAL con archivos ADT
Posted: Fri Feb 10, 2006 04:31 PM

Holas,

una duda pero hoy realmente me quede preocupado al hacer un ciclo sobre un archivos ADT y este tardo minutos sobre 10000 registros, un ejemplo tan simple como este

dbf -> ( DBGoTop() )
DO WHILE ! dbf -> ( EOF() )
dbf -> fielld1 := dbf -> field2
dbf -> ( DBSkip() )
ENDDO

nada mas que eso y me ponia a dormir, sera que esto es normal o estoy haciendo algo mal, o hay alguna alternativa para que esto vuele como con los DBFCDX nativos
comentarios?? Rene?

saludos

Marcelo

Posts: 840
Joined: Thu Oct 13, 2005 07:05 PM
O.T. velocidad de ADS LOCAL con archivos ADT
Posted: Fri Feb 10, 2006 05:42 PM

Como esta tu archivo de configuracion ADSLOC32.CFG ?

Saludos

R.F.
Posts: 1088
Joined: Fri Oct 07, 2005 03:33 PM
O.T. velocidad de ADS LOCAL con archivos ADT
Posted: Fri Feb 10, 2006 06:37 PM

Rene,

gracias por el interes, abajo adjunto el mencionado archivo de configuracion que esta en el mismo directorio de la aplicacion (le quite parte de los comentarios para bajar el peso del mensaje)

No se que podria ser, espero tengas alguna idea

saludos y gracias

Marcelo

[SETTINGS]
; Advantage Local Server configuration file

; Number of Connections
; Default = 20; Range = 1 - No upper limit
CONNECTIONS=20
;
; Number of Tables
; Default = 50; Range = 1 - No upper limit
TABLES=50
;
; Number of Index Files
; Default = 75; Range = 1 - No upper limit
INDEXES=75
;
; Number of Data Locks
; Default = 500; Range = 1 - No upper limit
LOCKS=500
;
; Maximum Size of Error Log (in KBytes)
; Default = 1000 KBytes; Range = 1 KByte - No upper limit
ERROR_LOG_MAX=1000
;
; Error Log and Assert Log Path
; Default = C:\
ERROR_ASSERT_LOGS=
;
ANSI_CHAR_SET=
;
OEM_CHAR_SET=
;
; Local File Flush Frequency (in milliseconds)
; Default = 20000 ms (20 seconds); Range = 0 ms - No upper limit
FLUSH_FREQUENCY=20000
;
LOWERCASE_ALL_PATHS=

Posts: 1088
Joined: Fri Oct 07, 2005 03:33 PM
O.T. velocidad de ADS LOCAL con archivos ADT
Posted: Fri Feb 10, 2006 07:14 PM

Mas pistas,

si utilizo SQL, y creo primero una tabla temporal la cosa va mucho mas rapido, esto es un ejemplo

  AdsConnect( ".\data\"  ,1)
  adsRightsCheck( .F. )

  Select 100
  ADSCreateSQLStatement("SQLarea",3)

  AdsExecuteSqlDirect( " select * into #temo from dbf " )
  sqlarea -> ( DBCLOSEAREA() )
  ADSCreateSQLStatement("SQLarea",3)
  AdsExecuteSqlDirect( " update #temp set field1=field2" )

esto va miles que digo millones de veces mas rapido

que raro?????????? creo que debere escribir al foro de xHarbour, solo que mi problema sera que no podre actualizarme con el ultimo xHarbour creo ya que utilizo FWH 2.6 de abril 2005

saludos

Posts: 1088
Joined: Fri Oct 07, 2005 03:33 PM
O.T. velocidad de ADS LOCAL con archivos ADT
Posted: Mon Feb 13, 2006 03:09 PM

Holas,

he solucionado el problema, para la gente que le interese, el problema se ocasiona cuando uno hace uso de ARC para importar tablas DBF a CDX, ya tuve prioblemas con campos que tenian espacios al final, la importacion trunca esta informacion.

Conclusion, no utilizar ARC para importar tablas, mejor hacerlo a mano

saludos y gracias

Marcelo

Continue the discussion