Tenemos problemas con Harbour en un programa en FWPPC porque no borra los registros de un DBF.
Al hacer PACK no se borran los registros y ademas no se queda con la marca de borrado el primer registro.
ZAP tampoco funciona
No hay indices en la base de datos
*
USE FALLIN
GO TOP
DO WHILE .not. Eof()
DELETE
SKIP 1
ENDDO
PACK
CLOSE
USE FALLIN
GO TOP
IF .not. Eof()
MsgInfo("Hay Datos","Atencion")
ENDIF
CLOSE
Saludos
PACK no borra los registros.
- Antonio Linares
- Site Admin
- Posts: 37481
- Joined: Thu Oct 06, 2005 5:47 pm
- Location: Spain
- Contact:
- Antonio Linares
- Site Admin
- Posts: 37481
- Joined: Thu Oct 06, 2005 5:47 pm
- Location: Spain
- Contact:
Daniel,
Por lo visto la solución es no usar PACK, sino ZAP, si lo que deseas es eliminar todos los registros. Para eliminar sólo los borrados, tienes que crear una DBF temporal con la misma estructura, copiar los registros no borrados, eliminar la original y renombrar la temporal al nombre inicial.
Así funciona correctamente. Y es realmente curioso, porque en el emulador funciona bien sin necesidad de esto, pero en la Pocket PC real es necesario.
Por lo visto la solución es no usar PACK, sino ZAP, si lo que deseas es eliminar todos los registros. Para eliminar sólo los borrados, tienes que crear una DBF temporal con la misma estructura, copiar los registros no borrados, eliminar la original y renombrar la temporal al nombre inicial.
Así funciona correctamente. Y es realmente curioso, porque en el emulador funciona bien sin necesidad de esto, pero en la Pocket PC real es necesario.