EderDias 0 Denunciar post Postado Agosto 25, 2007 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
Hugo Slepicka 0 Denunciar post Postado Agosto 26, 2007 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
EderDias 0 Denunciar post Postado Agosto 27, 2007 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´sentã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