Level Extreme platform
Subscription
Corporate profile
Products & Services
Support
Legal
Français
DataEnvironment deve abrir tabelas do diretório certo.
Message
General information
Forum:
Visual FoxPro
Category:
Databases,Tables, Views, Indexing and SQL syntax
Miscellaneous
Thread ID:
00649798
Message ID:
00649920
Views:
13
Isto acontece porque a propriedade database, do cursor dentro do ambiente de dados, esta setada para o ambiente de desenvolvimento. E o criador de formulários do VFP, necessita desta informação para poder trabalhar. Solução :
Vc tem dois caminhos:
1) colocar no evento BeforeOpenTables de cada DataEnvironment de cada form um código que altere este path, para o seu desejado.

2) Definir a propriedade AutoOpenTables= .F., e no init do form, colocar o código que altere o path para o desejado. Após isto execute o método .OpenTables, do dataEnvironment, e tudo esta ok.

Amanhã posto a rotina completa para vc.

Estou tentando lembrar, mas não estou conseguindo, sei que utiliza a função AMEMBERS(), para criar um array com os objetos contidos no dataenvironment.


>Problema:
>Estou abrindo minhas tabelas no dataEnvironment do form
>AutOpenTables = .T.
>Form.DataSession = Private
>
>O programa pode trabalhar(deveria), com os dados em diversos dietórios diferentes.
>Ao iniciar o Programa o usuário seleciona em qual diretório ele quer trabalhar.
>Então adiciono este diretório ao meu path com um "set path".
>Ao criar os forms, evidentemente trabalhei com as tabelas de um diretório padrão.
>
>Acontece que o fox só abre as tabelas daquele diretório que foi usado ao criar os forms (o diretório pdarão).
>Mesmo que o usuário selecione outro diretório eu eu o coloque no path.
>
>Quando o diretório padrão não existe, as tabelas são abertas do lugar certo.
>Quando abro com o comando 'use', também funciona corretamente.
>
>Obs.: O diretório padrão Não está no meu 'path'
>
>
>Pergunta:
>Existe forma de fazer com que o Dataenvironment abra as tabelas no local certo sem precisar que eu remova o diretório padrão?
Paulo Cesar Carneiro
desenvolvimento@controplan.com.br


"My God, what have we done?"
-- Capt. Robert Lewis, co-pilot of the Enola Gay, recalling the moment the atomic bomb exploded over Hiroshima

At 8:15 a.m. on August 6 1945
Previous
Reply
Map
View

Click here to load this message in the networking platform