Si vas a usar varias tablas en un formulario, usa el entorno de datos. Abre más rápido que por código a mano.
En el entorno ya puedes activar indices (aunque normalmente no es necesario).
Si abres tablas a mano usa
USE tuTablaEnDisco IN 0 ALIAS tuTablaAbierta SHARED AGAIN
Luego seleccionas con
SELECT tuTablaAbierta
nunca SELECT número de área
Lo más probable que te olvides del número de área, pero no del nombre de la tabla
Las tareas de PACK deben hacerse en procesos específicos por separado, ya que en un entorno multiusuario, te va a dar error permanentemente.
Es inapropiado hacer DELETE y luego PACK, porque como te comente el proceso requiere uso exclusivo (y si hay otro usuario o formularios abiertos te dará error).
Si te da File en Use, es justamente porque estás intentando abrir la misma tabla más de una vez.
Si lees con detenimiento la ayuda de VFP (y hay algunos libros interesantes) vas a ver como se comparten archivos.
Saludos: Miguel, La Pampa (RA)
Larga Vida y Prosperidad
Que la Fuerza los acompañe