Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

При переходе с Paradox таблица на DBF таблицу программа ругается [D5, dBase, FoxPro, Paradox]


Мефодий ©   (2002-06-13 20:58:00) 

В программе есть TTable, который использую для промежуточных файлов типа DBF(нужно для создания специальных индексов) или Paradox (без индексов дает возможность нормального скроллинга в DBGrid EhLib). Cоздав DBF таблицу:
with DM.Table1 do
begin
Close;
TableType := ttDBase;
TableName := "A1";
with FieldDefs do
begin
Clear;
Add("Field1",ftInteger, 0,False);
Add("Field2",ftDate, 0,False);
...
end;
with IndexDefs do
begin
Clear;
Add("Date","Dtos(Field2)",[ixExpression]);
end;
CreateTable;
Open;
IndexName := "Date";

с индексом (под названием "Date") заканчиваю с ней работу командами

Table1.Close;
Table1.DeleteTable;

В другом месте программы создаю уже Paradox таблицу:

with DM.Table1 do
begin
Close;
TableType := ttParadox;
TableName := "A2";
with FieldDefs do
begin
Clear;
Add("Field1",ftString, 10,False);
Add("Field2",ftInteger, 0,False);
...
end;
IndexDefs.Clear;
CreateTable;
Open;

Проблема в том, что в строке Open возникает ошибка:
Index "Date" not found.
О каком индексе идет речь ? Ведь я закрыл файл и уничтожил его. А перед CreateTable почистил индекы (IndexDefs.Clear).
Что только не пробовал, ничего не помогает.
Может кто встречался с подобной проблемой ?
Спасибо.


Мефодий   (2002-06-14 17:07:00) [1]

Спасибо. Сработало.


vads   (2002-06-14 13:50:00) [2]

Все правильно, индекса уже нет ни в "природе" ни в IndexDefs,
а IndexName у тебя все равно равен "Date", вот он его и пытается найти, те IndexName := ""


Наверх

Титульная страница Поиск, карта сайта Написать письмо