Fórum Problema com ALIAS #230963
09/05/2004
0
Estou fazendo uma aplicação que usa banco de dados paradox (sei que é velho, é ruim....) mas estou com um problema.
Eu preciso que o DatabaseName da Table1 siga o caminha da tabela onde ela estiver.
Por exemplo, ponho o executável na pasta C:\Arquivos de programas\gerenciamento preciso que a Table1 consiga ver de alguma maneira que a tabela está nessa pasta.
Como fazer algo assim, ou ao menos parecido sem ter que criar ALIAS no computador, pois o computador do cliente nao tem BDE.
Obrigado,
Rodrigo!
Ropesca
Curtir tópico
+ 0Posts
09/05/2004
Edilcimar
Gostei + 0
09/05/2004
Aroldo Zanela
Eu desconheço uma forma do paradox funcionar sem uma engine como o BDE, ADO ou algo do tipo. Como você mencionou ALIAS, acredito que você está utilizando BDE e na verdade estava se referindo que o cliente não possui BDE Administrator instalado.
Para criar um alias em tempo de execução, basta adicionar a unit DBTables na lista de uses e utilizar a seguinte rotina:
if not Session.IsAlias(´NomeAlias´) then begin Session.AddStandardAlias(´NomeAlias´, ExtractFilePath(ParamStr(0)), ´PARADOX´); Session.SaveConfigFile; end;
A função ParamStr(0) retorno o caminho e nome do executável;
A função ExtractFilePath extraí o nome do caminho onde o seu programa foi instalado.
Desta forma, o seu programa vai verificar se o alias já existe e se não existir o cria e aponta para o diretório onde o executário foi executado.
Gostei + 0
10/05/2004
Ropesca
Eu desconheço uma forma do paradox funcionar sem uma engine como o BDE, ADO ou algo do tipo. Como você mencionou ALIAS, acredito que você está utilizando BDE e na verdade estava se referindo que o cliente não possui BDE Administrator instalado.
Para criar um alias em tempo de execução, basta adicionar a unit DBTables na lista de uses e utilizar a seguinte rotina:
if not Session.IsAlias(´NomeAlias´) then begin Session.AddStandardAlias(´NomeAlias´, ExtractFilePath(ParamStr(0)), ´PARADOX´); Session.SaveConfigFile; end;
A função ParamStr(0) retorno o caminho e nome do executável;
A função ExtractFilePath extraí o nome do caminho onde o seu programa foi instalado.
Desta forma, o seu programa vai verificar se o alias já existe e se não existir o cria e aponta para o diretório onde o executário foi executado.[/quote:2f0f680536]
Olá amigo.
Obrigado pela ajuda, porém não consegui fazer isso funcionar.
Poderia explicar mais detalhadamento, por favor :wink:
Obrigado,
Rodrigo
Gostei + 0
10/05/2004
Ropesca
Consegui fazer funcionar este comando somente no meu computador (que tem BDE ADMINISTRATOR). Em outro computador que tentei rodar aqui já deu um erro de BORLANDO DATABASE ENGINE.
Como resolver este meu problema ?
Obrigado,
Rodrigo!
Gostei + 0
10/05/2004
Paulo_amorim
Perdão a ignorância, mas sempre que uso paradox eu nao crio ALIAS nenhum...eu simplesmente indico na propriedade Database o diretório que a tabela se encontra...
Não funcionaria no teu caso?
P.Ex. com uma query:
DataSet.DatabaseName := ExtractFilePath(Application.ExeName);
Até+
Gostei + 0
10/05/2004
Ropesca
Perdão a ignorância, mas sempre que uso paradox eu nao crio ALIAS nenhum...eu simplesmente indico na propriedade Database o diretório que a tabela se encontra...
Não funcionaria no teu caso?
P.Ex. com uma query:
DataSet.DatabaseName := ExtractFilePath(Application.ExeName);
Até+[/quote:426b7384f1]
Não consegui fazer este seu comando funcionar nao.
Alguem pode me ajudar ?
Obrigado,
Rodrigo
Gostei + 0
10/05/2004
Eduardo_lcouto
´ExtractFilePath( Application.ExeName )´
Faça o seguinte, no evento oncreate do form da aplicação coloque mais ou menos assim.
Gostei + 0
10/05/2004
Aroldo Zanela
Eu desconheço uma forma do paradox funcionar sem uma engine como o BDE, ADO ou algo do tipo.[/quote:070178b44c]
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)