¿Por qué me marca error en compartir tabla en vfp?

Hola Devilzito, en la ultima respuesta que me mandaste si la valore y la finalice. Perdón parece que hubo un error y me llego un correo por no valorarte. Si te valoro, gracias.
Fíjate que mi aplicación ya trabaja en red, pero en una forma, en un grid abro una tabla por y de ahí ejecuto otra forma que utiliza la misma tabla por y me dice que no la encuentra en C:\sistema. Cuando en realidad la estoy accediendo a una unidad virtual.
¿En la primer forma si la encuentra y en la forma interna no. Por que?
Ayudame por favor.
1

1 Respuesta

79.975 pts. Ingeniero de Sistemas Computacionales
Puedes abrir la misma tabla en tantas "formas" necesites. No hay límites para eso. Por tanto con la información que me brindas no te puedo dar una respuesta concreta.
Así que sólo puedo filosofar e interrogar:
1. Dices que tu sistema ya trabaja en red. Varios usuarios accediendo la misma aplicación y los mismos datos. Excelente.
2. Para ti que es un unidad virtual. ¿Una máquina virtual?. Si es así, está en tu misma pc o en un servidor aparte. Háblame de eso.
3. ¿Cómo abres tus tablas en cada "forma"?. ¿Son tablas libres? ¿Base de datos?
4. Evita el dataenvironment.
Que el Señor te bendiga.
Hola Devilzito, gracias por contestarme como siempre.
Mira, la aplicación que tengo ya trabaja en red gracias a tus consejos (me sirvieron mucho). Utilizo tablas libres para poder compartir la información. En el servidor (una pc cualquiera) direccione la carpeta donde tengo el ejecutable y los datos a una unidad lógica, por ejemplo R:. En la terminal no tengo ni el exe ni los datos, acceso a la unidad de red lógica (R:). Trabajo perfectamente en una forma que utiliza un grid de una tabla por y trabaja sin problema. Pero esa misma forma llama a otra forma que también utiliza esa tabla por y ahí manda un mensaje de que no encuentra la carpeta en C:, cuando en realidad esta accediendo la de R:. Cabe mencionar que solo en una parte de la aplicación da problema, comparto 4 tablas libres y solo en una de esas tablas me marca el error.
No se si se expliqué. ¿Entonces debo evitar el environment?, lo utilizo casi siempre.
Gracias y feliz navidad !
Es probable que el dataenvironment está llamando al cursor a través de una ruta en C:, sin tomar en cuenta que la aplicación está en R:. Fíjate por ejemplo qué tienes en la propiedad CursorSource del objeto cursor en tu dataenvironment.
Hay personas que delegan la apertura y cierre de sus tablas con el dataenvironment, relaciones entre tablas, etc. Pero soy de la línea de programadores que prefiere hacer eso manualmente y tener control sobre esas cosas.
Por ejemplo, en mi proyecto, el archivo inicial es un prg que tiene toda una serie de instrucciones para la aplicación: objectos, comandos sets, propiedades del objecto screen y el llamado a todas las tablas libres que se necesiten. Y para esto último, un solo llamado algo así por ejemplo:
Use tabla1 shared in 0
Use tabla2 shared in 0
Use tabla3 shared in 0
Use tablan shared in 0
Y sólo hago referencia a ellas cuando lo necesite desde cualquier pantalla que haya diseñado.
Avísame...

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas