![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Проблема с TSession [D5, Paradox]
wHammer © (2003-10-10 12:07:00)
Помогите решить следующую проблему. Необходимо чтобы при начале работы программы пользователь мог выбрать информационную базу, т.е. одно клиентское приложение может работать с несколькими базами (Paradox 7). При начале работы реализую следующий код (базы находяться в списке TextListBox1):
List_ := TStringList.Create;
Alias_ := "Plan Development";
Session1.GetAliasParams(Alias_, List_);
Path_ := DataPathList.Strings[TextListBox1.ItemIndex];
List_.Strings[0] := "PATH=" + Path_;
Session1.ModifyAlias(Alias_, List_);
Session1.NetFileDir := Path_;
List_.Free;
DataPathList.Free;
А затем начинаю открывать таблицы:
DataModule1.Table1.Open;
...
Но "переключение" не происходит с первого раза, лишь после повторного, второго запуска программы. Что я не учел?
С наилучшими...
Александр.
Anatoly Podgoretsky (2003-10-10 13:55:00) [1]
Влиасы удобны, но присязываться стоит к алиасу TDatabase, а в нем менять только путь до базы, все нужное для этого указывать, а работа без TDatabase в данном случае не очень удобна.
wHammer (2003-10-10 13:32:00) [2]
Ну раз вы настаиваете :)
Спасибо.
Reindeer Moss Eater (2003-10-10 13:17:00) [3]
Именно.
Скрипач не нужен.
wHammer (2003-10-10 13:10:00) [4]
Т.е работаем вообще без алиаса...
Reindeer Moss Eater (2003-10-10 13:09:00) [5]
Как я понял, в данном случае меняется алиас, у меня он один необходимо при начале работы приложения переопределять путь (PATH) в нем к базе.
Неправильно ты понял. Я же написал MyPath а не MyAlias.
Это путь к каталогу с БД
wHammer (2003-10-10 13:06:00) [6]
to Reindeer Moss Eater © (10.10.03 13:02) [3]
TTable.DatabaseName:=MyPath;
Как я понял, в данном случае меняется алиас, у меня он один необходимо при начале работы приложения переопределять путь (PATH) в нем к базе.
С наилучшими...
Александр.
DenK_vrtz (2003-10-10 13:05:00) [7]
Reindeer Moss Eater ©, каждый вибирает свой путь! :)
Reindeer Moss Eater (2003-10-10 13:04:00) [8]
Не перстаю удивляться патологической привязанности к алиасам
DenK_vrtz (2003-10-10 13:03:00) [9]
А просто имя алиаса сменить в свойстве DatabaseName?
Reindeer Moss Eater (2003-10-10 13:02:00) [10]
TTable.DatabaseName:=MyPath;
wHammer (2003-10-10 13:01:00) [11]
Дело в том, что в данном приложение связь идет не через TDatabase, а непосредственно обращаясь к таблицам (TTable), переделывать будет проблематично.
С наилучшими...
Александр.
Reindeer Moss Eater (2003-10-10 12:13:00) [12]
Зачем так сложно?
Database1.DriverName:="STANDARD";
Session.GetDriverParams(Database1.DriverName,Database1.Params);
Database1.Params.Values["PATH"]:=MyPath;
Database1.Open;