Los formularios almacenan el path de las tablas definidas en el Entorno de Datos.
Por desgracia cuando se distribuye la aplicación, estos formularios pueden apuntar al directorio donde se desarrollaron. Estos paths deben ser reseteados en tiempo de ejecución para asegurarnos que apuntan a las tablas correctas.
* en el programa principal o en la de conexion determinar el directorio actual * almacenarlo en variables globalos o del objeto aplicación. gcAppPath = sys(2003) gcDBPath = alltrim(gcAppPath)+"datos" gcDBName = "mibasededatos.dbc"
Poner en el entorno de datos la propiedad AutoOpenTables = .F.
modificar la clase base del formulario (o cambialo en cada formulario) en el Metodo Load:
* apuntar todas las tablas al directorio y base de datos correcto thisform.SetAll("Database",gcDbPath+gcDbname,"Cursor") * abrir las tablas thisform.dataenvironment.opentables()
NOTA: esto funciona con tablas de una base de datos, este codigo debe ser modificado si se usan tablas libres.
Pablo Roca