![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Ошибка метода GetIndexForFields [D7, IB6.x]
Deshifrator © (2005-04-28 07:41:00)Привет всем!!! Вот решил проконсультироваться по одному вопросу.
Вот например я создаю убывающий индекс:
CD.AddIn('Index','Cust'[ixDescending','','',0) то когда я пытаюсь найти этот индекс с помощью метода
Showmessage(CD.IndexDefs.GetIndexForField('Cust',False).Name) то выскакивает ошибка. Хотя в Хэлпе написано что этоо метод может производить поиск индексов по убывающим полям.Вот я и хотел узнать может кто подскажет почему так происходит. И еще сдесь в качаестве CD я использовал ClientDataSet.
Deshifrator (2005-04-28 12:57:00) [1]Спасибо за совет!!!
DSKalugin (2005-04-28 11:44:00) [2]забыл обновить список индексов перед тем как прочитать изменения
схема такая
Ttansaction.StartTransaction; // <=+++
ClientDataSet.AddIndex()
Ttansaction.Commit;!!! // обязательно подтвердить
ClientDataSet.IndexDefs.Update; // освежить инфу
ClientDataSet.IndexDefs.GetIndexForFields //прочитать его
а вообще с IB6.x надо работать средствами SQL,
а не старинными методами BDE
выполни следующий запрос через компонент IBSQL с подтверждением транзакции
CREATE DESCENDING INDEX ИмяИндекса
ON ИмяТаблицы (ИмяПоля)