Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2003.04.10;
Скачать: [xml.tar.bz2];

Вниз

Как ComboBox в своей программе сделать выборку алиасов,   Найти похожие ветки 

 
Yura88   (2003-03-20 15:53) [0]

зарегистрированных в системе? Например, мне нужен только один, и далее, например делаю, OnClick, во второе ComboBox загружается список доступных таблиц от этого алиаса?


 
Clickmaker   (2003-03-20 15:55) [1]

Session.GetAliasNames


 
Yura88   (2003-03-20 16:15) [2]

С этим заданием справился, а вот теперь "прыгая" с таблицы на таблицу, через 5 минут стала вылетать ошибка, что памяти в каком то месте мало,

procedure TForm1.FileListBox1Click(Sender: TObject);
begin
Table1.Active:=false;
Table1.TableName:=FileListBox1.FileName;
Table1.Active:=true;
end;

Процедура "перехода" выше, наверное надо как то выгружаться?


 
stone   (2003-03-20 16:17) [3]

2 Yura88 (20.03.03 16:15)

Приведи весь код.

Не понятно зачем тут FileListBox1


 
ufff   (2003-03-20 16:19) [4]

ты лучше покажи что делаешь при выборе алиаса


 
Yura88   (2003-03-20 16:34) [5]

Это весь код и есть, щёлкаю на файл-лист-бох, где DBF лежат, и на DBGrid выскакивает новая таблица (по крайней мере когда то выскакивала..)
на форме только файл-лист и DBGrid.


 
Yura88   (2003-03-20 16:55) [6]

Т.е. я алиасы не выбираю, отказался от них, а выбираю файлы из FileListBox1 при клике, считывается отмеченный файл,
записываю в table имя файла
Table1.TableName:=FileListBox1.FileName;
и далее активизирую:
Table1.Active:=true;
Но вот что то при раз так 50 щелканий, не стало памяти гдето хватать, что ещё нужно добавить, чтобы при переходе с одной на другую таблицу, предыдущая затиралась в памяти? Т.е. Table1.Active:=false;
мало.


 
Eugie   (2003-03-21 07:15) [7]

К загрузке алиасов BDE в ComboBox (в примере CB_Alias) на локальной машине. В закомментированных строках-дополнительные свойства алиаса. Загузка в примере выполняется при создании формы.

procedure TF_Main.FormCreate(Sender: TObject);
var
TmpCursor: hDbiCur;
Database_: DBDesc;
rslt: DbiResult;
begin
CB_Alias.Items.Clear;
//Добавление в список имён алиасов
Check(dbiInit(nil));
Check(DbiOpenDatabaseList(TmpCursor));
Repeat
rslt:=DbiGetNextRecord(TmpCursor, dbiNOLOCK, @Database_, nil);
if (rslt <> DBIERR_EOF) then
begin
//DatabaseList.Add(StrPas(Database_.szName)
// + " - " + StrPas(Database_.szPhyName)
// + " - " + StrPas(Database_.szDbType))
CB_Alias.Items.Add(StrPas(Database_.szName));
end;
until (rslt <> DBIERR_NONE);
Check(DbiCloseCursor(TmpCursor));
//Добавили
CB_Alias.ItemIndex:=0;
end;


 
Yura88   (2003-03-21 08:17) [8]

Eugie ©, спасибо за код, я его сохранил, очень думаю пригодится, только вот вопрос, обязательно ли открывать БД через алиас, если можно открыть через путь на диске и всё. Через алиасы доступ, имеет ли какие преимущества? (Скорость...)


 
eugie   (2003-03-21 08:40) [9]

В случае, если работа с таблицами БД осуществляется через BDE вопрос только в удобстве интерфейса программной оболочки. Лично я тоже придерживаюсь того, чтобы поьзователь просто указал путь к файлам БД. А на счет списка алиасов в ComboBox - просто увидел вопрос, на который у меня есть ответ.


 
Lord Warlock   (2003-03-21 09:22) [10]

Table1.TableName:=FileListBox1.FileName возвращает имя файла с путем. В случае таблиц их надо разносить, те само имя файла в TableName, а путь в DatabaseName



Страницы: 1 вся ветка

Форум: "Базы";
Текущий архив: 2003.04.10;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.47 MB
Время: 0.007 c
1-30346
AlexandrKu
2003-03-31 07:36
2003.04.10
У меня маленький вопросик по QRChart


14-30531
alex134
2003-03-23 18:28
2003.04.10
Какой ассемблер взять?


14-30542
Дмитрий К.К.
2003-03-24 12:37
2003.04.10
Именинники 24 марта


4-30660
KDenis
2003-02-10 23:07
2003.04.10
Как убить процесс, зная его Handle?


9-30201
APTEMKA
2002-11-05 00:45
2003.04.10
Коллизия в 3D





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский