Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

EderDias

Paradox - Alias

Recommended Posts

Ola...

 

Pessoal...eu tenho uma tabela chamada xxxx.db que armazena os dados de 2007, ou seja na entrada de 2008 tenho que parar de usar esta tabela e criar uma outra com o mesmo nome xxxx.db mas que armazena dados de 2008.

 

Obs.: esta tabela é só pra consultas e relatorio....na verdade ela é criada em cima de um arquivo *.csv(convertida).

 

Porem o aplicativo que vai acessar estes dados é o mesmo...até aqui beleza..pois como tem o mesmo nome de tabela não vai ter problema(devido ao ALIAS).

 

O problema vem agora...como os dados de 2007 vão estar armazenados na pasta 2007 e consequentemente os dados de 2008 vão estar na pasta 2008...eu teria que criar no Oncreate do aplicativo um codigo que manipulasse o ALIAS do aplicativo.

 

a minha ideia e jogar o executavel em cada pasta dos dados, ou seja, um aplicativo na pasta 2007 e outra copia do aplicativo na pasta 2008 e usar este codigo abaixo no OnCreate do formprincipal.

 

 

if not Session.IsAlias('MeuAlias') then begin { Adiciona o alias } Session.AddStandardAlias('MeuAlias', ExtractFilePath(ParamStr, 'PARADOX'); { Salva o arquivo de configuração do BDE } Session.SaveConfigFile; end;
Pois este codigo acima trabalha os dados junto com o executavel..(alias).

 

O problema é que o codigo só cria o ALIAS se ele não existir....mas eu precisa de um codigo que sempre qdo eu entrasse no programa ele sempre ALTERASSE o caminho do ALIAS....ai sim resolveria o problema, pois qdo fosse acessado o aplicativo na pasta 2007 ele usava dados 2007, e qdo acessado o aplicativo na pasta 2008 usava dados 2008.

Acho que funcionaria....

 

Alguem poderia me ajudar?? :unsure:

 

Grato

Compartilhar este post


Link para o post
Compartilhar em outros sites

Caro colega,

 

Você está trabalhando com 1 executável por ano por causa do Alias?

 

Porque você estaria fazendo dessa forma?

 

No caso você não precisaria usar Alias, poderia fazer a conexão direto pelo objeto DATABASE do BDE...

 

E fazer ele carregar as configs de um arquivo texto...

 

No caso para a sua dúvida... de uma olhada nesse link...

http://delphi.about.com/od/dbbde/a/bdealiases.htm

 

 

E se puder explicar um pouco melhor a situação, e se quiser também, podemos tentar procurar uma alternativa melhor para você...

 

Abrass... http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif

Compartilhar este post


Link para o post
Compartilhar em outros sites

Você está trabalhando com 1 executável por ano por causa do Alias?

R.: não o mesmo mas o dados fica separado em arquivos com o mesmo nome.

 

Porque você estaria fazendo dessa forma?

R.: Devido ao tamanho do arquivo ser mto grande e os relatorios e consultas fica mto lento, é um aplicativo que somente gera consultas e relatorios, mas é uns 120 mb´s

então na virada do ano em separo....limpo a tabela e começa tudo de novo em 2008

 

mas um amigo me deu uma luz e fiz assim:

 

procedure TForm1.FormCreate(Sender: TObject);Beginif not Session.IsAlias('MEUALIAS') thenbeginSession.DeleteAlias('MEUALIAS');Session.AddStandardAlias('MEUALIAS', ExtractFilePath(ParamStr(0)), 'PARADOX');Session.SaveConfigFile;   end elseif Session.IsAlias('MEUALIAS')then  beginSession.DeleteAlias('MEUALIAS');Session.AddStandardAlias('MEUALIAS', ExtractFilePath(ParamStr(0)), 'PARADOX');Session.SaveConfigFile;END;END;
E AI resolveu o problema.....

mas eu precisaria que este codigo me alterasse o ENABLE BCD=TRUE e o NETDIR='CAMINHO'

 

demais resolveria o problema.....ai eu criaria duas pastas umas com a tabela de 2007 e com o executavel junto e outra pasta com a tabela 2008 e o executavel

 

A cada abertura do aplicativo ele excluiria o alias e criaria em tempo de execução...testei e funcionou beleza...só precisaria agora configurar tbem no codigo o ENABLE BCD=TRUE e o NETDIR='CAMINHO'

 

tens alguma ideia de como colocar junto??

 

Grato

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.