![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Что посоветуете использовать. [D7, Paradox]
beglec © (2006-03-18 23:54:00)У меня есть приложение, использует компоненты TTable и TQuery. Но когда я ставлю программу на другой компьютер - начинает ругаться мол нет BDE
А можно ли каким то обраом сделать так, что бы не спрашивалось BDe!? но использовались теже компонены. Файлы сохранять не нужно. то есть так что бы в памяти все крутилось.
Это нужно чтобы данные отображались в сортировоном виде.
Спасибо
Desdechado (2006-03-19 16:57:00) [1]возьми TClientDataSet
в проекте припиши uses MidasLib
умеет много, к БД подключать не обязательно, внешних файлов не требует
beglec (2006-03-19 16:53:00) [2]
> Anatoly Podgoretsky
я бы рад, но чем занименить, посоветуйте как бывалый ;)
> vovnuke
а можно чтонибудь построить на StringGrid ???
QwertyKz (2006-03-19 16:50:00) [3]torry.net там поищите
Anatoly Podgoretsky (2006-03-19 16:43:00) [4]beglec © (19.03.06 16:23) [5]
Не используй компоненты со вкладки БДЕ
vovnuke (2006-03-19 16:32:00) [5]можно, например, листы.
beglec (2006-03-19 16:23:00) [6]Да нет же.
Я хочу сказать следующее:
Какие компоненты мне использовать (на какие компоненты перейти), что бы они потом не требовали и не обращались к драйверу BDE. На подобие EhLIB, подходящая вещь, но не могу найти описание по нему :(
Просто у меня даные хранятся все в памяти и в принцепе не требуют сохранения на диск. Но пока данные в памяти, требуется их сортировка, или выборка.
делать самому всю обработку и сортировку довольно затратное занятие, скорее всего кто то этим уже занимался и более детально, а повторять велосепед котрый уже многие сделали зачем ?
tesseract (2006-03-19 12:17:00) [7]Absolute database такую фишку держит. Я просто открываю файлы с диска и копирую в память.
пример такой операции в Ad personal(5.04):
function TdmData.openTables: boolean;
begin
if not DbFound then
begin
NewDataBase;
end;
CloseTables;
dbCollection.DatabaseFileName:=dbPath+'index.abs';
dbCollection.Open;
if not (readOnly and UseMemTables) then
begin
tIndex.TableName:='project';
tStatus.TableName:='status';
tSupport.TableName:='project';
tIndex.ReadOnly:=ReadOnly;
tSupport.ReadOnly:=ReadOnly;
tStatus.ReadOnly:=ReadOnly;
end
else
// Копировать в память
begin
tIndex.TableName:='mem_project';
tStatus.TableName:='mem_status';
tSupport.TableName:='mem_project';
tIndex.TableName:='project';
tStatus.TableName:='status';
tSupport.TableName:='project';
tIndex.DatabaseName:='MEMORY';
tStatus.DatabaseName:='MEMORY';
tSupport.DatabaseName:='MEMORY';
tIndex.InMemory:=true;
tStatus.InMemory:=true;
tSupport.InMemory:=true;
dbCollection.Open;
tTempIndex.Open;
tTempStatus.Open;
tTempIndex.CopyTable(tIndex.TableName,'MEMORY');
tTempStatus.CopyTable(tStatus.TableName,'MEMORY');
tIndex.Open;
tStatus.Open;
TTempIndex.Close;
tTempStatus.Close;
dbCollection.Close;
end;
try
dbCollection.Open;
tIndex.Open;
tStatus.Open;
tSupport.Open;
result:=tIndex.Active;
except
result:=false;
exit;
end;
end;
Anatoly Podgoretsky (2006-03-19 12:16:00) [8]Не ставить и при этом использовать. Тогда попроси другого сделать это.
beglec (2006-03-19 12:14:00) [9]короче что бы BDE не ставить на компьютер клиента
Kerk (2006-03-19 01:07:00) [10]Установить BDЕ или не использовать BDE