El archivo ya esta en uso

Estoy haciendo un sistema para un consultorio medico (aclaro que son mis primeros pasos en foxpro) con 2 capas (capa de interface y capa de datos)
El problema que tengo es que aparentemente me quedan abiertas las tablas luego de una consulta y me sale el error "el archivo ya esta en uso".
El problema lo tengo con la pantalla de pacientes. Por ejemplo hago una consulta para pedir todos sus datos(id_paciente, apellido, nombre, etc..) luego por ejemplo cierro esta ventana y abro la de turnos. Cuando cierro la de turnos y abro nuevamente la de pacietes, al hacer la consulta de un paciente me salta el error dentro del método de la capa de datos.
El código del método es el siguiente:
if !used("pacientes")
<span style="white-space: pre;"> </span>use pacientes.dbf in 0
endif
select * from pacientes where pacientes.id_paciente = this.id_paciente into cursor curpaciente
Use in pacientes
Lo más raro es que ejecuto el programa paso a paso y el error salta cuando entra al if.
Lo raro es que si entra al if, tendría que ser porque no esta en uso la tabla, sin embargo cuando va a procesar "use pacientes.dbf in 0", me dice que el archivo esta en uso.
No se como solucionarlo.

1 Respuesta

Respuesta
1
Primero asegúrate de que la tabla no se abra en modo exclusivo.
Establece la propiedad Datasession del formulario a 2 (sesión privada) y obviamente debes abrir la tabla en modo compartido...
Con estas dos correcciones se solucionaría el problema...
Todas las tablas se me abren en modo exclusivo (lo veo en la barra de estado del fp)
¿Establecer la propiedad Datasession del formulario a 2 hace que la tabla no se abra en modo exclusivo?
¿Cómo hago para abrir la tabla en modo compartido?
Gracias nuevamente
Cambie la propiedad del formulario Datasession a 2, pero ahora no se porque no me reconoce los cursores.
Me aparece el error "no se encuentra el alias"
La aplicación que estoy realizando es monousuario
Para que se abran las tablas en modo compartido escribe la siguiente línea de comando:
Set Exclusive Off
Agrega la tabla pacientes al entorno de datos del formulario.
Establece la propiedad BufferMode del formulario a 2.
Gracias por las respuesta.
¿Cómo hago para agregar la tabla pacientes al entorno de datos del formulario?
Haz clic derecho sobre en formulario y en el menú haz clic en entorno de datos.
Cualquier cosa me avisas.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas