Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 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
14-35903
Constanta
2002-08-19 12:20
2002.09.12
Помогите найти нормально работающий компонент для DDE!


14-35867
Феликс
2002-08-17 17:02
2002.09.12
Прикольно. Я 4 не распознал.


3-35546
Старик
2002-08-21 14:16
2002.09.12
Визуализация таблиц


14-35891
VictorT
2002-08-19 13:05
2002.09.12
*.swf


6-35836
OlegG
2002-07-07 13:53
2002.09.12
Помогите разобраться с приемом файлов чере Сокет