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




Вниз

Индексы в отдельном каталоге 


Viktor Erko   (2002-04-08 08:49) [0]

Понимаю, что это извращение но не я писал оригинальную версию ПО.
Мне нужно только викачивать информацию.
...program\dbf\*.dbf
...........\cdx\*.cdx
Посоветуйте как научить Delphi искать индексы в другом каталоге и имитировать виполнение команды REINDEX

C Уважением
Виктор



Сергей Иванов   (2002-04-08 09:25) [1]

//Не претендую на элегантость решения, но работает уже более года ;)
//Открывать попробуй так:
const CDXPath = "f:\Bumi1\IDX";
procedure TParusServer.OpenTbl(Tbl: TTable);
var FullName :string;
cdx :TStringList;
begin
if not Tbl.Active then Tbl.Active := true;
FullName:=UpperCase(fDbiFormFullName(Tbl));
if Pos("DBF", FullName) > 0 then
Insert("IDX", FullName, Pos("DBF", FullName));
Delete(FullName, Pos("DBF", FullName), 3);
if Pos("DBF", FullName) > 0 then
Insert("CDX", FullName, Pos("DBF", FullName));
Delete(FullName, Pos("DBF", FullName), 3);
cdx := TStringList.Create;
cdx.Add(FullName);
if Tbl.Active then Tbl.Active := false;
Tbl.IndexFiles := cdx;
if not Tbl.Active then Tbl.Active := true;
end;

function fDbiFormFullName(Tbl: TTable): string;
var Props: CurProps;
begin
Check(DbiGetCursorProps(Tbl.Handle,Props));
SetLength(Result, DBIMAXPATHLEN);
Check(DbiFormFullName(Tbl.DBHandle, PChar(Tbl.TableName),
Props.szTableType, PChar(Result)));
end;

//закрываем
procedure CloseTbl(Tbl: TTable);
begin
if not Tbl.Active then exit;
Tbl.Active := false;
Tbl.IndexFiles.Free;
end;

//не Парус ли у тебя случАем?



Сергей Иванов   (2002-04-08 09:28) [2]

PS. А вот REINDEX я не пробовал, но апдейты в базу проходят нормально. Пиши, как (не)получится чего...




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




Наверх





Память: 0.72 MB
Время: 0.029 c
3-94346           62mkv                 2002-04-10 10:27  2002.04.29  
Ребята, есть ли у кого-нибудь отдельный дистрибут QReport 3 ?


1-94369           kull                  2002-04-17 12:21  2002.04.29  
Имя метода или функции


6-94526           cypher                2002-02-17 17:01  2002.04.29  
NetFileEnum в 9x


1-94374           SashaK                2002-04-17 14:34  2002.04.29  
Сжатие потока


1-94442           lipskiy               2002-04-05 21:43  2002.04.29  
Как описать входной параметр процедуры многовариантно?