![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Сортировка в TClientDataSet [D5]
serg128 © (2004-08-03 09:49:00)Народ, подскажите, как можно сделать сортировку данных в TClientDataSet (без участия SQL)? Если можно - кусок кода. Пасиба.
serg128 (2004-08-03 17:35:00) [1]Проскролил -> непомогает :(
Nikolay M. (2004-08-03 17:21:00) [2]
> Romkin © (03.08.04 10:59) [4]
> Nikolay M. © (03.08.04 10:55) [3] Телепат, да?
Ага :)
> Если мне память не изменяет
Изменяет :(
> есть такой код (по щелчку на заголовке), но он иногда работает
> не корректно (появляются левые записи).
На первый взгляд все правильно. Может, DBGrid остается неперерисованным? Проскролль его вверх-вниз.
serg128 (2004-08-03 17:03:00) [3]Ну помогите ж блин!!!!
serg128 (2004-08-03 11:17:00) [4]У меня есть такой код (по щелчку на заголовке), но он иногда работает не корректно (появляются левые записи). Подскажите, где ошибка.
if((ioCur!=smNone) && (dynamic_cast(DBG->DataSource->DataSet)->IndexName != ""))
dynamic_cast(DBG->DataSource->DataSet)->DeleteIndex(dynamic_cast(DBG->DataSource->Data Set)->IndexName);
switch (ioCur)
{
case smUp:
dynamic_cast(DBG->DataSource->DataSet)->AddIndex(Field->FullName, Field->FullName, TIndexOptions()DataSet)->IndexName = Field->FullName;
SortStr = Field->FullName;
ioCur = smDown;
break;
case smDown:
if(ioCur!=smNone && dynamic_cast(DBG->DataSource->DataSet)->IndexName!="")
dynamic_cast(DBG->DataSource->DataSet)->DeleteIndex(dynamic_cast(DBG->DataSource->Data Set)->IndexName);
dynamic_cast(DBG->DataSource->DataSet)->IndexName="";
SortStr = Field->FullName;
ioCur = smNone;
break;
case smNone:
dynamic_cast(DBG->DataSource->DataSet)->AddIndex(Field->FullName, Field->FullName, TIndexOptions(), "", "", 0);
dynamic_cast(DBG->DataSource->DataSet)->IndexName = Field->FullName;
SortStr = Field->FullName;
ioCur = smUp;
break;
}
serg128 (2004-08-03 11:14:00) [5]> Romkin
там нету сортировки
Romkin (2004-08-03 10:59:00) [6]Nikolay M. © (03.08.04 10:55) [3] Телепат, да?
http://rsdn.ru/article/db/midas.xml
Если мне память не изменяет, то в клиенте для этой статьи я сделал сортировку при нажатии на заголовок...
Nikolay M. (2004-08-03 10:55:00) [7]
> Romkin © (03.08.04 10:20) [2]
> Какой код?!
Он хочет по клику на Title DBGrid-a DataSet сортировать, имхо :)
Так что ему это программно нужно :)
Romkin (2004-08-03 10:20:00) [8]Какой код?! IndexFieldNames - через ; без пробелов вписать имена полей. и все.
Nikolay M. (2004-08-03 10:03:00) [9]F1 по TClientDataSet.IndexDefs, например.