Текущий архив: 2002.09.12;
Скачать: CL | DM;
Вниз
DbiRegenIndexes для FoxPro2.5! Помогите горю по срокам!!! Найти похожие ветки
← →
nic418 © (2002-08-22 09:19) [0]Есть файл F1.DBF и связанный с ним индексный файл F1.CDX(FoxPro2.5). Нужно в Delphi5(под BDE) переиндексировать файл.
AddIndex - нельзя из-за структуры одного из Тэг-ов F1.CDX(Создан в Фоксе и имеет фильтр).
Пробую DbiRegenIndexes(TabDbf.Handle) - что-то не так делаю наверное!?. Помогите новичку.
← →
Anatoly Podgoretsky © (2002-08-22 09:31) [1]А что не так?
Кстати учти что Борланд рекомендует использовать таблицы FoxPro только в режиме ReadOnly
← →
Виталий Панасенко (2002-08-22 09:34) [2]Попробуй через ODBC (Visual FoxPro driver). Должно получиться
← →
Mike Kouzmine (2002-08-22 09:40) [3]Наверное BDE не имеет полной поддержки индексов fox. Нужен другой путь.
← →
nic418 © (2002-08-22 09:48) [4]После запуска процедуры -> FI05.CDX УДАЛИЛАСЬ из папки(до запуска были DBF&CDX)!
//
← →
Desdechado © (2002-08-22 10:35) [5]помнится, было заявлено, что поддержка работы с DBF производится через MSSQL. так почему не дать ему переиндексировать БД? Если же он этого не умеет, то как он будет их использовать? Нафига такая поддержка и работа с DBF через MSSQL?!
← →
Tornado © (2002-08-22 11:13) [6]Регенерация индексов таблицы Базы Данных (проверялось только на файлах DBF)
Нужно подключить модули :
DBTables, DB, dbiProcs,DbiErrs,dbiTypes;
Здесь, если NrErr>0 , то вывод на экран сообщения об ошибке (если была ошибка).
function TableRegenIndexes(NrErr : byte;Tbl : TTable) : Boolean;
Var
YesEx,YesAct : byte;
S : String;
Res,Res1 : DBIResult;
CCC : array[0..255] of Char;
begin
YesEx:=0;
if Tbl.Exclusive then YesEx:=1;
YesAct:=0;
if Tbl.Active then YesAct:=1;
Tbl.Active:=FALSE;
Tbl.Exclusive:=TRUE;
Tbl.Active:=TRUE;
Res:=DbiRegenIndexes (Tbl.Handle);
Tbl.Active:=FALSE;
if YesEx<=0 then Tbl.Exclusive := FALSE;
if YesAct>0 then Tbl.Active:=TRUE;
if Res=0 then begin
Result:=TRUE;
end
else begin
if NrErr>0 then begin
Res1:=DbiGetErrorString (Res,CCC);
Str(Res,S);
S:="Ошибка реген.индекс.: "+S+" -> "+StrPAS(CCC)+" для : "+Tbl.TableName;
MessageBeep(mb_IconHand);
MessageDlg(S,mtError,[mbOk],0);
end;
end;
end;
← →
nic418 © (2002-08-22 11:41) [7]Desdechado
"помнится, было заявлено, что поддержка работы с DBF производится через MSSQL. так почему не дать ему переиндексировать БД? Если же он этого не умеет, то как он будет их использовать? Нафига такая поддержка и работа с DBF через MSSQL?!"
Несовсем такЖ
Часть комплексов переводятся на SQL2000, а часть старых-на Фоксе.
Я делаю ведение Нормативно-справочной информации. Ведётся под Делфой на SQL и синхронно должна корректировать и соответствующие файлы BF&CDX на сервере NOVELL. Должно обеспечиваться полное соответствие DBF-файлов и SQL -таблиц
Страницы: 1 вся ветка
Текущий архив: 2002.09.12;
Скачать: CL | DM;
Память: 0.48 MB
Время: 0.021 c